> ## Documentation Index
> Fetch the complete documentation index at: https://docs.capital.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Errors

Errors use standard HTTP status codes. The body is JSON:

```json theme={null}
{ "error": "this key lacks the `trade` scope" }
```

Validation errors carry a machine-readable `code`, and the offending `field` when the code alone doesn't say which:

```json theme={null}
{ "code": "invalid_gpus", "field": "gpus" }
```

| Status | Meaning |
| - | - |
| `400` | The request is invalid. The message or `code` says why. |
| `401` | Missing, unknown or revoked API key, or an endpoint the API doesn't serve to keys yet. |
| `403` | The key lacks the required scope, or the action isn't allowed for this account. |
| `404` | The resource doesn't exist, or isn't yours. |
| `409` | The request conflicts with the account's current state: a deployment that has moved on, an offer for anything other than all of a listing's remaining contracts. |
| `502` / `503` | A partner failed or is unavailable. `503` from a compute endpoint means the exchange is unreachable. Safe to retry `GET`s, and `POST`s that carry a request or idempotency key. |

Orders are different: the exchange's answer is a `200` with `status: REJECTED` and a `message`, not an HTTP error. See [Orders](https://docs.capital.ai/compute/orders.md#results).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.