Skip to content

Limits and errors

Rate, concurrency and monthly limits, rate-limit headers, and what each error means.

Updated View as Markdown

Limits

Limit Default Over it
Requests per minute, per project 600, bursts of up to 100 429 too_many_requests with Retry-After
Input tokens per minute, per organization 1,000,000 429 too_many_requests with Retry-After
Concurrent requests, per organization 4 429 too_many_requests with Retry-After
Input tokens per UTC month, per organization 100,000,000 429 insufficient_quota, until the next UTC month

A request’s input tokens count once it has finished. To see the limits in force for a project, open Service quotas in the console, run ezgh inference limits --project <project>, or read them from the API (inference.limits.read). To raise a limit, contact support.

Each model also has per-request limits, its properties in the catalog: for qwen3-embedding-0.6b, 128 inputs per request, 8,192 tokens per input and a 1 MiB body.

Rate-limit headers

Responses carry OpenAI’s rate-limit headers, for the project’s requests and the organization’s input tokens per minute:

Header Value
x-ratelimit-limit-requests, x-ratelimit-limit-tokens The limit per minute
x-ratelimit-remaining-requests, x-ratelimit-remaining-tokens What’s left now
x-ratelimit-reset-requests, x-ratelimit-reset-tokens How long until it’s back to the limit

Errors

Errors use OpenAI’s body, with EZGH’s stable code in code, so the OpenAI SDKs raise their usual exceptions:

{ "error": { "message": "Input 3 is longer than the model's 8192 tokens", "type": "invalid_request_error", "param": "input[3]", "code": "input_too_long" } }
Status type code Meaning
400 invalid_request_error invalid_request The request isn’t valid; param names the field
400 invalid_request_error token_input_unsupported input is token IDs; send text (LangChain)
400 invalid_request_error input_too_long An input is over the model’s tokens per input; param is input[<i>], or input when the input isn’t known
400 invalid_request_error dimensions_out_of_range dimensions is outside the model’s range
401 authentication_error unauthenticated No credential, or one that isn’t valid
403 permission_error access_denied The credential’s owner lacks the action on the project
404 not_found_error not_found No such organization or project, or you aren’t in it
404 not_found_error model_not_found No such model, or it isn’t offered by Inference
409 invalid_request_error organization_deletion_pending The organization is being deleted
410 invalid_request_error model_retired The pinned version is retired
413 invalid_request_error payload_too_large The body is over 1 MiB
429 rate_limit_error too_many_requests A rate or concurrency limit; retry after Retry-After
429 insufficient_quota insufficient_quota The organization’s monthly input tokens are used up. It has no Retry-After, and x-should-retry: false tells the OpenAI SDKs not to retry
500 api_error internal_error An error on our side; retry
502 api_error inference_failed The model failed; retry
503 api_error capacity_unavailable No capacity right now; retry after Retry-After
503 api_error unavailable The service is briefly unavailable; retry after Retry-After
504 api_error inference_timeout The request took longer than 60 seconds

Nothing is metered for a request that fails.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close