Send Kubernetes API

API calls to the Kubernetes API server at the edge cluster can be made using the Send Kubernetes API action.

The form fields show the following parameters: CorrelationId, RequestMethod, Href, and RequestBody. This is a RESTful API.

The CorrelationId is any alphanumeric text string specified by the user in order to match the resulting Event message to the originating Action.

Implemented kubernetes API endpoints are a subset of https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.18/

Available Endpoints

GET /api/v1/namespaces/{namespace}/pods/{name}/status
GET /api/v1/namespaces/{namespace}/services/{name}/status
GET /api/v1/namespaces/{namespace}/configmaps/{name}
GET /api/v1/namespaces/{namespace}/pods/{name}
GET /api/v1/namespaces/{namespace}/secrets/{name}
GET /api/v1/namespaces/{namespace}/serviceaccounts/{name}
GET /api/v1/namespaces/{namespace}/services/{name}
GET /api/v1/namespaces/{namespace}/configmaps
GET /api/v1/namespaces/{namespace}/pods
GET /api/v1/namespaces/{namespace}/secrets
GET /api/v1/namespaces/{namespace}/serviceaccounts
GET /api/v1/namespaces/{namespace}/services
GET /api/v1/namespaces/{name}/status
GET /api/v1/namespaces/{name}
GET /api/v1/nodes/{name}/status
GET /api/v1/nodes/{name}
 
PATCH /api/v1/namespaces/{namespace}/pods/{name}/status
PATCH /api/v1/namespaces/{namespace}/services/{name}/status
PATCH /api/v1/namespaces/{namespace}/configmaps/{name}
PATCH /api/v1/namespaces/{namespace}/pods/{name}
PATCH /api/v1/namespaces/{namespace}/secrets/{name}
PATCH /api/v1/namespaces/{namespace}/serviceaccounts/{name}
PATCH /api/v1/namespaces/{namespace}/services/{name}
PATCH /api/v1/namespaces/{name}
PATCH /api/v1/nodes/{name}/status
PATCH /api/v1/nodes/{name}
 
PUT /api/v1/namespaces/{namespace}/pods/{name}/status
PUT /api/v1/namespaces/{namespace}/services/{name}/status
PUT /api/v1/namespaces/{namespace}/configmaps/{name}
PUT /api/v1/namespaces/{namespace}/pods/{name}
PUT /api/v1/namespaces/{namespace}/secrets/{name}
PUT /api/v1/namespaces/{namespace}/serviceaccounts/{name}
PUT /api/v1/namespaces/{namespace}/services/{name}
PUT /api/v1/namespaces/{name}
PUT /api/v1/nodes/{name}/status
PUT /api/v1/nodes/{name}
 
DELETE /api/v1/namespaces/{namespace}/configmaps/{name}
DELETE /api/v1/namespaces/{namespace}/pods/{name}
DELETE /api/v1/namespaces/{namespace}/secrets/{name}
DELETE /api/v1/namespaces/{namespace}/serviceaccounts/{name}
DELETE /api/v1/namespaces/{namespace}/services/{name}
DELETE /api/v1/namespaces/{name}
DELETE /api/v1/nodes/{name}
 
POST /api/v1/namespaces/{namespace}/configmaps
POST /api/v1/namespaces/{namespace}/pods
POST /api/v1/namespaces/{namespace}/secrets
POST /api/v1/namespaces/{namespace}/serviceaccounts
POST /api/v1/namespaces/{namespace}/services
 
GET /api/v1/configmaps
GET /api/v1/namespaces
GET /api/v1/nodes
GET /api/v1/pods
GET /api/v1/secrets
GET /api/v1/serviceaccounts
GET /api/v1/services
 
GET /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status GET /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}
GET /apis/apps/v1/namespaces/{namespace}/daemonsets 
GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status GET /apis/apps/v1/namespaces/{namespace}/deployments/{name}
GET /apis/apps/v1/namespaces/{namespace}/deployments
GET /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status GET /apis/apps/v1/namespaces/{namespace}/replicasts/{name}
GET /apis/apps/v1/namespaces/{namespace}/replicasts

PATCH /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status 
PATCH /apis/apps/v1/namespaces/{namespace}/daemonsets/{name} 
PATCH /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status 
PATCH /apis/apps/v1/namespaces/{namespace}/deployments/{name}
PATCH /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status 
PATCH /apis/apps/v1/namespaces/{namespace}/replicasets/{name}

PUT /apis/apps/v1/namespaces/{namespace}/daemonsets/{name}/status 
PUT /apis/apps/v1/namespaces/{namespace}/daemonsets/{name} 
PUT /apis/apps/v1/namespaces/{namespace}/deployments/{name}/status 
PUT /apis/apps/v1/namespaces/{namespace}/deployments/{name}
PUT /apis/apps/v1/namespaces/{namespace}/replicasets/{name}/status 
PUT /apis/apps/v1/namespaces/{namespace}/replicasets/{name}

DELETE /apis/apps/v1/namespaces/{namespace}/daemonsets/{name} 
DELETE /apis/apps/v1/namespaces/{namespace}/deployments/{name} 
DELETE /apis/apps/v1/namespaces/{namespace}/replicasets/{name} 

POST /apis/apps/v1/namespaces/{namespace}/daemonsets 
POST /apis/apps/v1/namespaces/{namespace}/deployments
POST /apis/apps/v1/namespaces/{namespace}/replicasets

GET /apis/apps/v1/daemonsets 
GET /apis/apps/v1/deployments
GET /apis/apps/v1/replicasets

GET /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}
GET /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}
GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}
GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name} GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles
GET /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings

PATCH /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}
PATCH /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}
PATCH /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}
PATCH /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}

PUT /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}
PUT /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}
PUT /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}
PUT /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}

DELETE /apis/rbac.authorization.k8s.io/v1/clusterroles/{name}
DELETE /apis/rbac.authorization.k8s.io/v1/clusterrolebindings/{name}
DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles/{name}
DELETE /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings/{name}

GET /apis/rbac.authorization.k8s.io/v1/clusterroles
GET /apis/rbac.authorization.k8s.io/v1/clusterrolebindings 
GET /apis/rbac.authorization.k8s.io/v1/roles
GET /apis/rbac.authorization.k8s.io/v1/rolebindings

POST /apis/rbac.authorization.k8s.io/v1/clusterroles
POST /apis/rbac.authorization.k8s.io/v1/clusterrolebindings
POST /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/roles
POST /apis/rbac.authorization.k8s.io/v1/namespaces/{namespace}/rolebindings

Custom Resource Endpoints:

GET /apis/helm.cattle.io/v1/namespaces/{namespace}/helmcharts
GET /apis/helm.cattle.io/v1/namespaces/{namespace}/helmchartconfigs

POST /apis/helm.cattle.io/v1/namespaces/{namespace}/helmcharts
POST /apis/helm.cattle.io/v1/namespaces/{namespace}/helmchartconfigs

GET /apis/helm.cattle.io/v1/namespaces/{namespace}/helmcharts/{name}
GET /apis/helm.cattle.io/v1/namespaces/{namespace}/helmchartconfigs/{name}

PUT /apis/helm.cattle.io/v1/namespaces/{namespace}/helmcharts/{name}
PUT /apis/helm.cattle.io/v1/namespaces/{namespace}/helmchartconfigs/{name}

DELETE /apis/helm.cattle.io/v1/namespaces/{namespace}/helmcharts/{name}
DELETE /apis/helm.cattle.io/v1/namespaces/{namespace}/helmchartconfigs/{name}

Custom Endpoints:

GET /apis/swx/v1/edge-apps

POST /apis/swx/v1/edge-apps

GET /apis/swx/v1/edge-apps/{edge-app-id}

PUT /apis/swx/v1/edge-apps/{edge-app-id}

DELETE /apis/swx/v1/edge-apps/{edge-app-id}

PUT /apis/swx/v1/apply

Request Body

The custom API endpoint "apply" is the equivalent of "kubectl apply" and accepts a URL as the request body or the actual yaml (string). The custom "edge-apps" endpoints also apply manifest, however with additional meta data for the edge-app-id, name, and namespace. These endpoints accept a URL as the request body or the actual yaml (string). The other endpoints use JSON (stringified).

See the kubernetes reference documentation for details.