Skip to main content
Every error returns a consistent JSON envelope with the matching HTTP status code.

Error envelope

Match on statusCode and error, not on message. Message strings may be refined over time.

Status codes

Common errors

Authentication (401)

Text to speech

Handling errors

Confirm the chariotai-api-key header is present and the key is active. See Authentication.
InsufficientCreditsException means you’re out of credits, check GET /v1/credits. A plan HTTPException means the product isn’t on your plan.
Validate voice_id is a real UUID, keep text within 1 to 500 characters, and confirm the voice is available before using it.
You’ve hit your plan’s concurrency limit. Retry with exponential backoff and jitter, and cap your in-flight requests. See Rate limits & concurrency.
An unexpected server error. Any credits charged for the failed request are refunded. Retry after a short delay; if it persists, contact support with the Inference-Id.