Skip to Content

Authentication

All public endpoints require a Bearer API key. The sections below cover headers, error formats, and billing.

API keys

Every public endpoint requires:

Authorization: Bearer YOUR_API_KEY

Create and manage keys in the dashboard  under API Keys. Keep keys secret — do not commit them to repositories.

If the header is missing or the key is invalid, the server returns 401.

Common headers

HeaderRequiredDescription
AuthorizationYesBearer <api-key>
Content-TypeFor JSON bodiesapplication/json
X-Request-IDNoClient request ID; server generates a UUID if omitted

Error formats

Plain JSON (browsing, transcribing, /api/chat)

{ "error": "..." }

OpenAI-style (/v1/chat/completions)

{ "error": { "message": "...", "type": "invalid_request_error", "param": null } }

HTTP status codes

CodeWhen
400Invalid JSON, missing required fields, validation errors
401Missing or invalid API key
402Insufficient credits
403Access denied (e.g. another account’s task, custom scripts not allowed)
404Task or resource not found
405Wrong HTTP method
413Audio file too large (transcribing, max 50 MB)
504Task or inference timeout

Billing

Task-creating endpoints (inference, browsing async/sync, transcribe async/sync) reserve credits before execution. If your account balance is too low, the server returns 402 with "Insufficient credits".