# Errors


Errors are plain JSON with a `detail` field:

```json
{ "detail": "missing bearer token" }
```

| Status | When |
| --- | --- |
| `401` | Not authenticated — `missing bearer token` when the `Authorization: Bearer ...` header is absent or malformed, `invalid or expired token` when the key is unknown or revoked. |
| `403` | Authenticated but refused — the operation needs a feature flag the key does not carry (the `detail` names the flag), or is otherwise outside what this key may do. |
| `404` | The resource does not exist in your organization. Cross-organization access is indistinguishable from absence. |
| `409` | Conflict — the request is valid but collides with current state; the `detail` says how. |
| `422` | Validation error — the request body, path, or query parameters do not match the operation's schema. The response lists each offending field. |

Each operation's page in the [API Reference](/api) shows the response
schemas it declares.
