Error Codes & Responses
HTTP status codes, error shapes, and how to handle them.
Errors are JSON objects with an error string.
{ "error": "workload_id is required" }| Status | Meaning |
|---|---|
400 | Malformed JSON, missing fields, or invalid validator/policy shape |
401 | Missing, malformed, expired, or revoked API key |
402 | Applicable compatibility billing or reservation could not be funded |
403 | Read-write scope, plan, role, or model-tier access is missing |
404 | Resource or ready corpus not found in the authenticated workspace |
409 | Monitor slot or resource-state conflict |
422 | Model, corpus, observed-control, sample, or cost preflight failed |
429 | Request rate, pooled allowance, Monitor safety cap, or applicable legacy spending cap reached |
500 | Unexpected server failure |
503 | The Run could not be queued; its pre-provider reservation was released |
Honor Retry-After for rate limits. Do not blindly retry 409 or 422; those responses describe a capacity, configuration, or evidence problem that must be corrected.