| 400 | invalid_request | Missing or invalid input. |
| 400 | unsupported_option | Model, duration, ratio, language, or mode is not supported. |
| 401 | unauthorized | Missing, invalid, or expired API key. |
| 403 | forbidden | Key lacks scope or account lacks access. |
| 403 | plan_required | API access requires Creator or higher. |
| 403 | billing_issue | The account’s paid access is paused, expired, canceled, disputed, or otherwise not usable for API generation. |
| 402 | insufficient_credits | Not enough credits for the request. |
| 404 | not_found | Resource does not exist or is not owned by the caller. |
| 409 | idempotency_conflict | Same idempotency key was reused with a different body. |
| 409 | quota_exhausted | Monthly custom voice creation quota is exhausted. |
| 409 | voice_limit_reached | Account already has the maximum simultaneous custom voices. |
| 415 | unsupported_media_type | Uploaded file type is not accepted. |
| 422 | content_policy_violation | Prompt, URL, image, audio, or requested output is not allowed. |
| 429 | active_job_limit_reached | Too many active generation jobs are queued or processing for the account. |
| 429 | rate_limited | Rate limit exceeded. |
| 500 | generation_failed | A generation job failed after being accepted. Refundable credits were reconciled. |
| 500 | internal_error | Unexpected AdSkull-side issue. |
| 503 | temporarily_unavailable | Generation capacity is temporarily unavailable. |