400 url_not_allowed for a URL that opens in my browser
400 url_not_allowed for a URL that opens in my browser
Causes:
- The URL uses
httpinstead ofhttps. - The host resolves to a private or reserved address (internal DNS, a VPN or a corporate proxy that rewrites DNS).
- The server doesn’t answer
HEAD, or answers withoutContent-Length. - There are more than 3 redirects.
- The file is larger than the model’s limit.
HEAD answers 2xx with a Content-Length, and keep the file within the limits of the model.400 invalid_parameter on duration or resolution
400 invalid_parameter on duration or resolution
Not every model sells every combination of resolution and duration. Check the ranges of the model on its API reference page or with
GET /v1/models/{brand}/{version}/{task}, and pick a combination the model offers.402 insufficient_credits although my balance looks high enough
402 insufficient_credits although my balance looks high enough
balance.credits doesn’t include credits held by queued and processing tasks; those are in balance.held until the tasks finish. Wait for in-flight tasks, cancel the ones you no longer need, or top up on the Billing page.429 concurrency_limit_exceeded with only a few tasks running
429 concurrency_limit_exceeded with only a few tasks running
The cap counts the queued and processing tasks of the whole account, across all keys. List them with
GET /v1/tasks?status=queued and GET /v1/tasks?status=processing, and cancel the ones that are stale.401 invalid_api_key
401 invalid_api_key
Check that the header is exactly
Authorization: Bearer sk_live_... (or x-api-key: sk_live_...), that no whitespace or quotes surround the key, and that the key wasn’t revoked or expired in the console.403 account_not_active
403 account_not_active
New production accounts are reviewed before they can use the API. Email support@fiveapi.ai with your account id if the review takes longer than expected.
The webhook never arrives
The webhook never arrives
Causes: the endpoint isn’t
https or isn’t publicly reachable; it answers after more than 10 seconds; it redirects (a 3xx stops the delivery); it answered non-2xx 9 times and the delivery stopped.Fix: answer 2xx first and work afterwards, check the delivery log on the Webhooks page of the console and resend from there, and reconcile with GET /v1/tasks/{task_id}.Webhook signature verification fails
Webhook signature verification fails
Causes:
- You verify a re-serialized body instead of the raw bytes.
- You use the whole secret, including
whsec_, as the key instead of the base64-decoded part after the prefix. - You compare with only one
v1,value while the header carries two during a rotation. - Your server clock is more than 5 minutes off.
The task stays queued for a long time
The task stays queued for a long time
The model’s queue is busy and the task waits for a generation slot. Tasks with input files also download and prepare them while queued. Keep waiting for the webhook, or cancel the task if you no longer need it: its credits are released at once.
The task failed with input_fetch_failed
The task failed with input_fetch_failed
The input file couldn’t be downloaded or processed after the task was accepted, often because a presigned URL expired. Make sure the URL stays valid for at least an hour and submit a new task.
output is missing from a completed task
output is missing from a completed task
The output is removed at
expires_at, 7 days after completion. Download results as soon as task.completed arrives.409 idempotency_in_progress
409 idempotency_in_progress
The first request with this
Idempotency-Key is still running. Wait a moment and send the identical request again; it returns the stored answer.Still stuck?
Email support@fiveapi.ai with:- the
X-Request-Id(orerror.request_id) of the failing request, or the taskid, - the time it happened, with time zone,
- the model and, if relevant, the request body without your API key.