Delete a node
Removes the node from the cluster and releases its host, draining it first unless drain is false, and drops its pool's count by one so the node is not replaced. Poll getKubernetesNode, which answers 404 once removal completes. The pool's last node is not deleted: that answers 409 LAST_NODE_IN_POOL, and deleting the pool removes it. A cluster that is deleting answers 409 INVALID_CLUSTER_STATE. A legacy API key needs clusters:write.
Required permission
Requires the kubernetes.write permission. See Permissions for the roles and API key permissions that include it.
Command line
The orl CLI wraps this endpoint:
orl kube node delete <id> <node-id>apiKeyAuthorizationBearer <token>OpenRelay API key. Send it as Authorization: Bearer or_… (legacy vl_… keys still work).
id*stringnodeId*stringdrain?booleanDrain the node before removing it.
trueRemoval started
application/json- response
A node removal was accepted; the node leaves the cluster in the removal order.
id*stringThe node being removed.
curl -X DELETE 'https://api.openrelay.inc/v1/kubernetes/clusters/string/nodes/string'{ "id": "string"}Get a node GET
Returns one node of the cluster: its registration and Ready state, its name in the cluster once it joins, the host's public IP and, on a GPU host, its GPUs. A legacy API key needs clusters:read.
Mint a cluster token POST
Exchanges the caller's API key or session for a bearer token that only this cluster accepts, returned as an ExecCredential. The token expires after one hour. The token carries the requested role; mint another rather than storing it. The response is an ExecCredential so a kubectl exec credential plugin can print it as is. `orl kube token` is such a plugin, and `orl kube kubeconfig` writes a kubeconfig that runs it. A cluster that is deleting or failed answers 409 INVALID_CLUSTER_STATE. A restricted or pending organization can still mint. A legacy API key needs clusters:write.