Developers

Start

Servers API Reference

This section covers all endpoints related to servers.

Get Nonce

Generate a nonce for boot attestation.

This endpoint is called by VMs during boot before any registration. No authentication required as the VM doesn't exist in the system yet.

Endpoint:

Responses

Status CodeDescription
200Successful Response

Verify Boot Attestation

Verify boot attestation and return LUKS passphrase.

This endpoint verifies the TDX quote against expected boot measurements and returns the LUKS passphrase for disk decryption if valid. For VMs running version >= 1.3.0, also returns a luks_quote_nonce for the subsequent POST /luks/attest call.

Endpoint:

Parameters

ParameterTypeRequiredDescription
X-Chutes-Noncestring | nullNo

Request Body

FieldTypeRequiredDescription
quotestringYesBase64 encoded TDX quote
miner_hotkeystringYesMiner hotkey that owns this VM
vm_namestringYesVM name/identifier

Responses

Status CodeDescription
200Successful Response
422Validation Error

Sync Luks Passphrases

Sync LUKS passphrases for legacy VMs (version < 1.3.0).

VM sends its volume list; API returns keys for existing volumes, creates keys for new volumes, rekeys volumes in the rekey list, and prunes stored keys for volumes not in the list. Boot token is validated and consumed on success.

Endpoint:

Parameters

ParameterTypeRequiredDescription
vm_namestringYes
X-Chutes-Hotkeystring | nullNo
X-Boot-Tokenstring | nullNo

Request Body

FieldTypeRequiredDescription
volumesstring[]YesVolume names the VM is managing (defines full set)
rekeystring[] | nullNoVolume names that must receive new passphrases (no reuse); must be subset of volumes

Responses

Status CodeDescription
200Successful Response
422Validation Error

Attest Luks

Rotate LUKS passphrases for new-format VMs (version >= 1.3.0).

The VM embeds the luks_quote_nonce (received in the boot attestation response) in a TDX quote after extending RTMR3 in initramfs. require_luks_quote_nonce validates and consumes the nonce; the handler then calls verify_quote which checks the TDX signature and all RTMR measurements including RTMR3. Returns rotated passphrases, the k3s encryption key, and a confirm nonce.

Endpoint:

Parameters

ParameterTypeRequiredDescription
vm_namestringYes
X-Chutes-Hotkeystring | nullNo
X-Quote-Noncestring | nullNo

Request Body

FieldTypeRequiredDescription
quotestringYesBase64-encoded TDX quote (runtime type, RTMR3 extended)
volumesstring[]YesVolume names to rotate passphrases for

Responses

Status CodeDescription
200Successful Response
422Validation Error

Confirm Luks Rotation

Confirm or discard pending LUKS passphrase rotation results.

The VM reports per-volume success/failure. require_confirm_nonce validates and consumes the nonce before the handler runs. Volumes with rotated=True have pending passphrases promoted to current; rotated=False discards pending.

Endpoint:

Parameters

ParameterTypeRequiredDescription
vm_namestringYes
X-Chutes-Hotkeystring | nullNo
X-Confirm-Noncestring | nullNo

Request Body

FieldTypeRequiredDescription
volumesobjectYesPer-volume rotation result reported by the VM

Responses

Status CodeDescription
200Successful Response
422Validation Error

Create Server

Register a new server.

This is called via CLI after the server has booted and decrypted its disk. Links the server to any existing boot attestation history via server ip.

Endpoint:

Parameters

ParameterTypeRequiredDescription
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Request Body

FieldTypeRequiredDescription
hoststringYesPublic IP address or DNS Name of the server
idstringYesServer ID (e.g. k8s node uid)
namestring | nullNoServer name (defaults to server id if omitted)
gpusNodeArgs[]YesGPU info for this server

Responses

Status CodeDescription
201Successful Response
422Validation Error

Authentication

This endpoint requires authentication.


Get Tee Measurements

Return the list of currently accepted TEE measurement configurations.

These are the reference values (MRTD + RTMRs) that the platform accepts during boot and runtime attestation. Clients can use these to independently verify that a server is running approved software before trusting it. No authentication required — public transparency endpoint.

Endpoint:

Responses

Status CodeDescription
200Successful Response

Get Maintenance Policy

Return the active upgrade window, concurrency limits, and the miner's pending servers.

Endpoint:

Parameters

ParameterTypeRequiredDescription
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Responses

Status CodeDescription
200Successful Response
422Validation Error

Authentication

This endpoint requires authentication.


Patch Server Name

Update name for an existing server. Path is server_id; query param is the new name. The server row is updated when hotkey and server_id match.

Endpoint:

Parameters

ParameterTypeRequiredDescription
server_idstringYes
server_namestringYesNew VM name to set
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Responses

Status CodeDescription
200Successful Response
422Validation Error

Authentication

This endpoint requires authentication.


Get Server Details

Get details for a specific server by miner hotkey and server id.

Endpoint:

Parameters

ParameterTypeRequiredDescription
server_idstringYes
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Responses

Status CodeDescription
200Successful Response
422Validation Error

Authentication

This endpoint requires authentication.


Get Maintenance Preflight

Check maintenance eligibility for a server without entering maintenance.

Endpoint:

Parameters

ParameterTypeRequiredDescription
server_name_or_idstringYes
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Responses

Status CodeDescription
200Successful Response
422Validation Error

Authentication

This endpoint requires authentication.


Put Confirm Maintenance

Enter maintenance: purge instances and mark server for upgrade.

Endpoint:

Parameters

ParameterTypeRequiredDescription
server_name_or_idstringYes
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Responses

Status CodeDescription
200Successful Response
422Validation Error

Authentication

This endpoint requires authentication.


Remove Server

Remove a server by miner hotkey and server id or VM name (path param server_name_or_id).

Endpoint:

Parameters

ParameterTypeRequiredDescription
server_name_or_idstringYes
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Responses

Status CodeDescription
200Successful Response
422Validation Error

Authentication

This endpoint requires authentication.


Get Runtime Nonce

Generate a nonce for runtime attestation.

Endpoint:

Parameters

ParameterTypeRequiredDescription
server_idstringYes
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Responses

Status CodeDescription
200Successful Response
422Validation Error

Authentication

This endpoint requires authentication.


Verify Runtime Attestation

Verify runtime attestation with full measurement validation.

Endpoint:

Parameters

ParameterTypeRequiredDescription
server_idstringYes
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Request Body

FieldTypeRequiredDescription
quotestringYesBase64 encoded TDX quote

Responses

Status CodeDescription
200Successful Response
422Validation Error

Authentication

This endpoint requires authentication.


Get Attestation Status

Get current attestation status for a server by miner hotkey and server id.

Endpoint:

Parameters

ParameterTypeRequiredDescription
server_idstringYes
X-Chutes-Hotkeystring | nullNo
X-Chutes-Signaturestring | nullNo
X-Chutes-Noncestring | nullNo
Authorizationstring | nullNo

Responses

Status CodeDescription
200Successful Response
422Validation Error

Authentication

This endpoint requires authentication.