Base URL
Authentication
Send your API key as a bearer token:Endpoints
Inference
| Endpoint | Method | Description |
|---|---|---|
/v1/chat/completions | POST | Create a chat completion. |
/v1/responses | POST | Create a response (Responses API format). |
/v1/messages | POST | Create a message (Anthropic Messages format). |
/v1/embeddings | POST | Create text embeddings. |
/v1/models | GET | List models with providers, context windows, and pricing. |
is_tee boolean: is_tee: true means it can be served confidentially, on a
verified TEE provider. The receipt’s upstream.verified event confirms a specific response was. See
Confidential models.
Verification
| Endpoint | Method | Description |
|---|---|---|
/v1/aci/attestation | GET | Fresh TEE attestation report, bound to a caller-supplied nonce. |
/v1/aci/receipts/{id} | GET | Signed receipt for a response, by receipt id or chat id. |
/v1/aci/sessions/{id} | GET | Attested-session record referenced by a receipt. |
/v1/aci/sessions | GET | List a provider’s attested sessions (?provider=&model=). |
nonce, read the x-receipt-id
header on your response, fetch its signed receipt, then check the receipt signature under the attested
keyset and compare the request and response hashes. See Verify a response.
Legacy
Legacy endpoints kept for backward compatibility with earlier API clients. New integrations should use the canonical endpoints above.| Endpoint | Method | Canonical replacement |
|---|---|---|
/v1/completions | POST | /v1/chat/completions |
/v1/signature/{id} | GET | /v1/aci/receipts/{id} |
/v1/attestation/report | GET | /v1/aci/attestation |
Request format
POST requests use JSON:Response format
Response headers
Inference responses include verification headers:| Header | Description |
|---|---|
x-receipt-id | Id of the signed receipt for the response. |
x-aci-identity | The attested workload identity that served the request. |
x-aci-keyset-digest | Digest of the workload’s published keyset. |
x-aci-version | ACI version, for example aci/1. |
model field in the request body. For end-to-end encryption, send the
X-E2EE-* request headers from the E2EE guide.
Errors
Errors return a JSON body with an appropriate HTTP status:| Code | Meaning |
|---|---|
| 200 | Success |
| 400 | Bad request (invalid parameters) |
| 401 | Unauthorized (invalid API key) |
| 403 | Forbidden (insufficient credits) |
| 404 | Endpoint or model not found |
| 429 | Rate limit exceeded |
| 500 | Server error |
| 503 | Service unavailable |