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.
curl -X GET "https://api.chutes.ai/servers/nonce"
-H "Content-Type: application/json"Authorization
Endpoint:
Responses
| Status Code | Description |
|---|---|
| 200 | Successful 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.
curl -X POST "https://api.chutes.ai/servers/boot/attestation"
-H "Content-Type: application/json"
-d '{}'Authorization
Request Body
Endpoint:
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Chutes-Nonce | string | null | No |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| quote | string | Yes | Base64 encoded TDX quote |
Responses
| Status Code | Description |
|---|---|
| 200 | Successful Response |
| 422 | Validation 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.
curl -X POST "https://api.chutes.ai/servers/"
-H "Content-Type: application/json"
-d '{}'Authorization
Request Body
Endpoint:
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Chutes-Hotkey | string | null | No | |
| X-Chutes-Signature | string | null | No | |
| X-Chutes-Nonce | string | null | No | |
| Authorization | string | null | No |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| id | string | Yes | Server ID, should come from the k8s node uid. |
| host | string | Yes | |
| gpus | NodeArgs | Yes | GPU info for this server |
Responses
| Status Code | Description |
|---|---|
| 201 | Successful Response |
| 422 | Validation Error |
Authentication
This endpoint requires authentication.
List User Servers
List all servers for the authenticated miner.
curl -X GET "https://api.chutes.ai/servers/"
-H "Content-Type: application/json"Authorization
Endpoint:
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| X-Chutes-Hotkey | string | null | No | |
| X-Chutes-Signature | string | null | No | |
| X-Chutes-Nonce | string | null | No | |
| Authorization | string | null | No |
Responses
| Status Code | Description |
|---|---|
| 200 | Successful Response |
| 422 | Validation Error |
Authentication
This endpoint requires authentication.
Get Server Details
Get details for a specific server.
curl -X GET "https://api.chutes.ai/servers/{server_id}"
-H "Content-Type: application/json"Authorization
Endpoint:
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| server_id | string | Yes | |
| X-Chutes-Hotkey | string | null | No | |
| X-Chutes-Signature | string | null | No | |
| X-Chutes-Nonce | string | null | No | |
| Authorization | string | null | No |
Responses
| Status Code | Description |
|---|---|
| 200 | Successful Response |
| 422 | Validation Error |
Authentication
This endpoint requires authentication.
Remove Server
Remove a server.
curl -X DELETE "https://api.chutes.ai/servers/{server_id}"
-H "Content-Type: application/json"Authorization
Endpoint:
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| server_id | string | Yes | |
| X-Chutes-Hotkey | string | null | No | |
| X-Chutes-Signature | string | null | No | |
| X-Chutes-Nonce | string | null | No | |
| Authorization | string | null | No |
Responses
| Status Code | Description |
|---|---|
| 200 | Successful Response |
| 422 | Validation Error |
Authentication
This endpoint requires authentication.
Get Runtime Nonce
Generate a nonce for runtime attestation.
curl -X GET "https://api.chutes.ai/servers/{server_id}/nonce"
-H "Content-Type: application/json"Authorization
Endpoint:
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| server_id | string | Yes | |
| X-Chutes-Hotkey | string | null | No | |
| X-Chutes-Signature | string | null | No | |
| X-Chutes-Nonce | string | null | No | |
| Authorization | string | null | No |
Responses
| Status Code | Description |
|---|---|
| 200 | Successful Response |
| 422 | Validation Error |
Authentication
This endpoint requires authentication.
Verify Runtime Attestation
Verify runtime attestation with full measurement validation.
curl -X POST "https://api.chutes.ai/servers/{server_id}/attestation"
-H "Content-Type: application/json"
-d '{}'Authorization
Request Body
Endpoint:
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| server_id | string | Yes | |
| X-Chutes-Hotkey | string | null | No | |
| X-Chutes-Signature | string | null | No | |
| X-Chutes-Nonce | string | null | No | |
| Authorization | string | null | No |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
| quote | string | Yes | Base64 encoded TDX quote |
Responses
| Status Code | Description |
|---|---|
| 200 | Successful Response |
| 422 | Validation Error |
Authentication
This endpoint requires authentication.
Get Attestation Status
Get current attestation status for a server.
curl -X GET "https://api.chutes.ai/servers/{server_id}/attestation/status"
-H "Content-Type: application/json"Authorization
Endpoint:
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| server_id | string | Yes | |
| X-Chutes-Hotkey | string | null | No | |
| X-Chutes-Signature | string | null | No | |
| X-Chutes-Nonce | string | null | No | |
| Authorization | string | null | No |
Responses
| Status Code | Description |
|---|---|
| 200 | Successful Response |
| 422 | Validation Error |
Authentication
This endpoint requires authentication.