Skip to main content

Documentation Index

Fetch the complete documentation index at: https://runinfra.ai/docs/llms.txt

Use this file to discover all available pages before exploring further.

RunInfra returns standard HTTP status codes. Error bodies follow OpenAI’s shape so existing client libraries parse them.

Error body shape

{
  "error": {
    "message": "Human-readable description",
    "type": "invalid_request_error"
  }
}
message is safe to surface to developers. type is machine-readable and useful for branching client-side.

Status code reference

200 Success

Normal. Read the response body.

400 Bad Request

Malformed request. Check JSON shape, required fields, and content type. Do not retry. Fix the request.

401 Unauthorized

Missing or invalid API key. Rotate the key at Settings > API Keys.

403 Forbidden

The key is valid but the request is not allowed. Usually one of:
  • Pipeline-scope mismatch: key is tied to a different pipeline than the URL. Switch to a workspace-scoped key or regenerate a key for the right pipeline.
  • Plan-level limit exceeded (optimization sessions, playground requests).
  • Feature requires a higher plan (e.g. Active mode on Pro).

404 Not Found

The pipeline or model id in the request does not exist. Check at Deployments.

429 Too Many Requests

Per-key rate limit exceeded. Respect the Retry-After header. See Rate limits.

500 Internal Server Error

Unexpected server-side error. Retry once with backoff. If it persists, capture the X-Request-Id header and include it in your support ticket.

503 Service Unavailable

The target deployment is stopped, provisioning, or at capacity. Respect the Retry-After header.

504 Gateway Timeout

The request took longer than the allowed window. For large generations, switch to streaming (Streaming cookbook) or lower max_tokens.

Retryable vs non-retryable

StatusRetry?Strategy
400, 401, 403, 404NoFix the request, key, or pipeline
429YesRespect Retry-After, exponential backoff
500OnceAlert if it persists
503YesRespect Retry-After
504YesLower max_tokens or switch to streaming

Request IDs

Every response carries X-Request-Id. Include it in support tickets so the team can correlate logs to your request.

Next steps

Rate limits

How 429 works, how to raise your budget.

Authentication

Key scopes and rotation.

Troubleshooting

Recovery flows by error category.

Monitoring

Error rate tracking.