Basics
Errors
Status codes, error codes and what to do about each.
Error body
Errors are JSON. Chat, audio and model endpoints use the OpenAI shape, { "error": { "message", "type", "code", "param" } }. Tool and connection endpoints return { "error", "type", "code", "requestId" }. Quote the requestId when you contact support.
Codes
| Status | Code | Meaning |
|---|---|---|
| 400 | invalid_request_error | A field is missing or invalid; param names it. |
| 400 | idempotency_key_required | POST /v1/executions needs an Idempotency-Key header. |
| 401 | invalid_api_key | The key is missing, wrong or revoked. |
| 402 | insufficient_credits | Not enough credits in your SUPREME AI account. |
| 403 | insufficient_scope | The key lacks the scope this endpoint needs. |
| 403 | model_not_available | The model needs a higher plan. |
| 404 | model_not_found | Unknown model id. See GET /v1/models. |
| 428 | connect_required | Your user has not connected the app yet. Send a connect link. |
| 429 | rate_limit_exceeded | Wait for Retry-After, then retry. |
| 502 | upstream_error | The model provider failed. Retry later. |
| 503 | spend_cap_paused | Paid calls are paused: the platform’s monthly spending limit was reached. Buying credits will not help. |
| 503 | media_disabled | Image generation is switched off. |
Not errors
- 202 with approval_required: a write action is waiting for approval.