Errors & limits
Errors use the standard OpenAI JSON shape, so existing SDK error handling works unchanged. This page lists what the API actually returns and what the serverless API serves today.
The error shape
{
"error": {
"message": "a human-readable description",
"type": "...",
"param": null,
"code": "..."
}
}
Status codes
| Status | Meaning | What to do |
|---|---|---|
| 400 | Validation error — malformed JSON, unknown field, or a bad parameter value | Fix the request; error.message names the problem |
| 401 | Unauthorized — missing or invalid key | Check the Authorization: Bearer header and your key |
| 402 | insufficient_quota — the account's token allowance and balance are used up | Top up in Usage & Billing, then retry the same request |
| 403 | scope_denied — the key exists but is not allowed this model or endpoint | Check the key's scope under API keys, or create one for this use |
| 413 | context_length_exceeded — the input is larger than the model's context | Shorten the prompt or the history; the limit is in the table below |
| 429 | rate_limited / too_busy — your key's rate or the model's concurrency was hit | Wait briefly and retry; spread bursts out over time |
| 503 | model_not_hot — the model is not loaded right now | Retry with backoff |
503 model_not_hot
The model is not loaded right now — retry with backoff. The condition is temporary; your request itself is fine.
HTTP/2 503
{
"error": {
"message": "The model for this role is not loaded. Retry with backoff.",
"code": "model_not_hot"
}
}
import time
for wait in (1, 2, 4, 8, 16):
try:
r = client.chat.completions.create(model="qwen3.8-27b-nvfp4", messages=messages)
break
except openai.InternalServerError as e: # SDK surfaces 503 here
time.sleep(wait)
Limits
The serverless API serves:
| Context window | 262,144 tokens (chat model) |
|---|---|
| Concurrency | Up to 4 concurrent sequences on the chat model |
Under concurrent load requests queue; latency grows before anything fails. There are no hidden quotas — this table is the whole list.
If you need committed throughput — reserved concurrency, your own dedicated system, a specific model held hot — rent a dedicated DGX Spark from €0.55/hour, or Request deployment for a system AxForge operates for you.