Update Kubernetes Cluster
Updates a Kubernetes cluster by scaling nodes or upgrading the Kubernetes version. The cluster must be in Provisioned phase to accept updates.
Scaling Operations
Exactly one of worker_count or control_plane_count must be provided per request. You cannot scale workers and control plane nodes in the same request.
When scaling up, the API validates that sufficient server stock is available for the requested delta (e.g., scaling from 2 to 5 workers checks for 3 available servers).
When scaling from 0 workers, you must provide a worker_plan since there is no existing configuration to inherit the plan from.
Control plane scaling has a minimum of 1 node. You cannot scale control plane nodes to zero.
Version Upgrades
Provide a kubernetes_version parameter to upgrade the cluster to a new Kubernetes version. Version upgrades follow these rules:
- No downgrades: You cannot downgrade to a lower version than currently installed
- One minor version at a time: You can only upgrade one minor version at a time (e.g., from 1.34 to 1.35, not from 1.34 to 1.36)
- Mutually exclusive: Version upgrades cannot be combined with scaling operations in the same request
- Available versions only: The target version must be in the list returned by
GET /kubernetes_clusters/available_versions
Returns 202 Accepted when an update operation is triggered. Poll the GET endpoint to monitor progress. Returns 200 OK if no change is needed (no-op).