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;
queue.position decreases as earlier tasks start. 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.