Skip to main content
PATCH
/
machines
/
{id}
Update machine
curl --request PATCH \
  --url https://api.akua.dev/v1/machines/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'if-match: <if-match>' \
  --data '
{
  "name": "<string>",
  "instance_type": "<string>",
  "compute_config_id": "<string>"
}
'
{
  "id": "<string>",
  "workspace_id": "<string>",
  "cluster_id": "<string>",
  "compute_config_id": "<string>",
  "provider_id": "compute://hcloud/server-1234",
  "provider_resource": {
    "public_ip": "<string>",
    "floating_ip": {
      "id": "<string>",
      "ipv4": "<string>"
    }
  },
  "reconciling": true,
  "created_at": 1,
  "updated_at": 1,
  "etag": "<string>",
  "name": "<string>",
  "current_suspension": {
    "event_id": "<string>",
    "snapshot_ref": {
      "snapshot_id": 123,
      "size_gb": 123
    },
    "expires_at": 1,
    "monthly_cost_cents": 123
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.akua.dev/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

workspace API token (sk_akua_...) or OAuth2 JWT. Create tokens at https://akua.dev/developers/api-tokens

Headers

akua-context
string

Optional workspace/scope context for the request. Carries a single workspace wire id (ws_…) today. Only needed for broad tokens — a workspace-owned token implies its workspace.

Required string length: 1 - 53
Example:

"ws_j572abc123def456"

idempotency-key
string

Caller-supplied idempotency key. Repeated requests with the same key return the existing resource instead of creating a duplicate. Safe to retry after a timed-out or interrupted request.

Required string length: 1 - 64
Example:

"create-prod-2026-05-07"

if-match
string
required

The etag of the resource version the client last read. Required on writes when the resource exposes an etag field. Mismatch returns 409 ABORTED with the current etag in the error metadata.

Required string length: 1 - 256
Example:

"42"

Path Parameters

id
string
required
Required string length: 1 - 54

Body

application/json
name
string | null
Maximum string length: 120
instance_type
string
Minimum string length: 1
compute_config_id
string
Required string length: 1 - 54

Response

Machine updated

id
string
required
Required string length: 1 - 54
workspace_id
string
required
Required string length: 1 - 53
cluster_id
string
required
Required string length: 1 - 54
compute_config_id
string
required
Required string length: 1 - 54
provider_id
string
required

Provider URI identifier in canonical form (for example, compute://hcloud/server-1234).

Example:

"compute://hcloud/server-1234"

provider_resource
object
required
state
enum<string>
required

Machine lifecycle state.

Available options:
ACTIVE,
PROVISIONING,
SUSPENDING,
SUSPENDED,
RESUMING,
DELETING
reconciling
boolean
required
created_at
integer
required

Unix timestamp (seconds)

Required range: x >= 0
updated_at
integer
required

Unix timestamp (seconds)

Required range: x >= 0
etag
string
required
name
string
current_suspension
object