Skip to main content
All errors return a consistent JSON envelope. Handle errors by checking the HTTP status code first, then the error.code field for programmatic handling.
HTTP STATUSERROR CODEDESCRIPTION
400INVALID_REQUESTMalformed request body or missing required field.
401UNAUTHORIZEDMissing or invalid API key.
404LANGUAGE_NOT_SUPPORTEDRequested language is not available on this endpoint.
404VOICE_NOT_FOUNDRequested voice ID does not exist for this language.
404JOB_NOT_FOUNDThe specified job_id does not exist.
422AUDIO_PROCESSING_FAILEDSource audio could not be parsed or transcribed.
429RATE_LIMIT_EXCEEDEDRequest rate exceeds plan limits. See Retry-After.
500INTERNAL_ERRORUnexpected server error. Retry with exponential backoff.
All responses include a request_id. Include this in any support ticket to help us trace issues quickly.