Skip to content

Errors & limits

The API uses conventional HTTP status codes and returns errors in OpenAI’s format.

{
"error": {
"message": "A human-readable description of what happened.",
"type": "invalid_request_error",
"code": "..."
}
}
StatusMeaningHow to fix
400 Bad RequestInvalid body (malformed JSON, missing parameter)Check model and messages/input
401 UnauthorizedKey missing, invalid, or revokedCheck the Authorization header — see Authentication
403 ForbiddenModel not enabled on your planUse a model from your plan or upgrade
404 Not FoundEndpoint or model does not existCheck the URL and the model id
429 Too Many RequestsRequests/min limit reachedSlow down, apply backoff, or upgrade your plan
5xxTemporary server errorRetry with exponential backoff

Each plan has a requests-per-minute limit (fair-use). When you exceed it, the API responds with 429.

PlanRequests/min
Free5
Starter15
Standard40
Pro120