Skip to main content
PUT
Change Control Plane Instance Type Endpoint

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

authorization
string | null
x-ankra-organisation-id
string | null

Path Parameters

cluster_id
string<uuid>
required

Body

application/json
instance_type
string
required

The new instance type for every control plane node. On a stopped cluster it is applied at the next start; on a running cluster with at least three controllers it is rolled out live, one controller at a time, each drained and waited back to healthy before the next.

Minimum string length: 1
force_drain
boolean
default:false

Rolling lane only. Bypass PodDisruptionBudgets when draining each controller. Off by default: a PDB is a workload owner's stated availability requirement.

Response

Successful Response

mode
enum<string>
required

Which lane the request took: 'offline' rewrote a stopped cluster's plan, 'rolling' is the live one-controller-at-a-time path on a running cluster. It describes the lane, not whether work was dispatched - read operation_id for that.

Available options:
offline,
rolling
new_instance_type
string
required
previous_instance_type
string
required
updated
integer
required
operation_id
string<uuid> | null

The operation to poll, when the request dispatched one. Null whenever nothing was dispatched: on the offline lane, which applies the new size at the next cluster start (its own operation), and on either lane when the control planes already run the requested type (updated is 0). Decide whether to poll by testing operation_id for null, not by reading mode.