Documentation Index
Fetch the complete documentation index at: https://apixo.ai/docs/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Vidu Q3 is a per-second video generation model for Standard and Turbo text-to-video and image-to-video workflows. Use this page when you are ready to call the API after trying the model in the APIXO playground.| Capability | Value |
|---|---|
| Model ID | vidu-q3 |
| Modes | text-to-video, image-to-video, turbo-text-to-video, turbo-image-to-video |
| Prompt length | 1-5000 characters |
| Duration | Any integer from 1 through 16 seconds |
| Resolutions | 540p, 720p, 1080p |
| Text-mode aspect ratios | 16:9, 9:16, 4:3, 3:4, 1:1 |
| Text-mode styles | general, anime |
| Reference images | 1-2 URLs for image modes |
| Output | MP4 video URL array in resultJson.resultUrls |
Endpoint and authentication
Base URL:| Method | Endpoint | Purpose |
|---|---|---|
POST | /generateTask/vidu-q3 | Submit a generation task |
GET | /statusTask/vidu-q3?taskId={taskId} | Poll task status and retrieve results |
Copy-paste async quickstart
This minimal request submits a Standard text-to-video task and returns ataskId.
taskId; you need it to poll for the final video.
Poll for result
resultJson after state becomes success:
Request body
Text-to-video
Single-image animation
First-and-last-frame transition
Turbo text-to-video
Parameters
Result delivery mode. Omit this field or use
async for polling with statusTask, or use callback for webhook delivery.Required when
request_type is callback. Must be a public URL that can receive the final task payload. See Webhooks.Vidu Q3 input parameters.
| Mode | Required media | Text controls | Billing tier |
|---|---|---|---|
text-to-video | None | style, aspect_ratio | Standard |
image-to-video | image_urls with 1-2 images | Not used | Standard |
turbo-text-to-video | None | style, aspect_ratio | Turbo |
turbo-image-to-video | image_urls with 1-2 images | Not used | Turbo |
Response format
Submit task response
POST /generateTask/vidu-q3 returns a task ID when the task is accepted:
API status code.
200 means the task was accepted.Human-readable status message.
Unique task identifier used with the status endpoint.
Status response fields
Unique task identifier.
Current task state:
pending, processing, success, or failed.JSON string containing generated video URLs in
resultUrls. Present when state is success.Machine-readable failure code. Present when
state is failed.Human-readable failure message. Present when
state is failed.Task creation timestamp in Unix milliseconds.
Task completion timestamp in Unix milliseconds. Present after completion.
Processing duration in milliseconds. Present after completion when timing data is available.
Webhook callback mode
Use callback mode when your backend should receive the final result automatically instead of polling.code, message, and data. Successful callbacks include the final state and resultJson. See Webhooks for delivery requirements and retry behavior.
Billing
Vidu Q3 is billed per second. The selectedmode determines whether the task uses the Standard or Turbo rate, and resolution determines the per-second unit price.
| Mode group | Resolution | APIXO price |
|---|---|---|
Standard: text-to-video, image-to-video | 540p | $0.063 / second |
Standard: text-to-video, image-to-video | 720p | $0.135 / second |
Standard: text-to-video, image-to-video | 1080p | $0.144 / second |
Turbo: turbo-text-to-video, turbo-image-to-video | 540p | $0.036 / second |
Turbo: turbo-text-to-video, turbo-image-to-video | 720p | $0.054 / second |
Turbo: turbo-text-to-video, turbo-image-to-video | 1080p | $0.072 / second |
Latency and polling
Video generation is long-running. Typical Vidu Q3 processing time is about 60-120 seconds, but actual latency may vary by mode, duration, resolution, prompt complexity, reference image accessibility, route queue load, and storage transfer time.| Workload | Typical generation time | Recommended first poll | Poll interval |
|---|---|---|---|
| Short Turbo previews | 60s-120s | 60s after task creation | 5s-10s |
| Standard text-to-video or image-to-video | 60s-180s | 60s-90s after task creation | 5s-10s |
| Longer or 1080p jobs | 2-4 minutes or longer | 90s after task creation | 10s |
429, slow down requests and retry with backoff. For account-level details, see System APIs.
Errors and troubleshooting
HTTP errors
| Code | Meaning | What to do |
|---|---|---|
400 | Invalid request body, missing input, unsupported mode, empty or too-long prompt, invalid resolution, invalid duration, invalid style, invalid aspect_ratio, invalid movement, or invalid image_urls | Fix the request before retrying |
401 | Missing or invalid API key | Check the Authorization header |
402 | Insufficient balance or quota | Add balance or switch account/key |
403 | Key or route cannot access the model, or content was rejected | Check permissions and revise the prompt or input |
404 | Task not found when polling | Check the taskId |
429 | Rate limit or concurrency limit reached | Retry with exponential backoff |
500 | Server error or unknown task failure | Retry with backoff |
502 | Upstream service error | Retry with backoff |
504 | Upstream timeout | Retry or use callback mode for long-running jobs |
Validation notes
| Condition | Backend behavior |
|---|---|
Missing input | Request fails before task creation. |
Missing mode | Request fails before task creation. |
Unsupported mode | Request fails before task creation. Supported values are text-to-video, image-to-video, turbo-text-to-video, and turbo-image-to-video. |
Missing, non-string, or empty prompt | Request fails before task creation. |
prompt longer than 5000 characters | Request fails before task creation. |
Missing or unsupported resolution | Request fails before task creation. Supported values are 540p, 720p, and 1080p. |
Missing duration | Request fails before task creation. |
duration outside 1 through 16 | Request fails before task creation. |
Unsupported style in text modes | Request fails before task creation. Supported values are general and anime. |
Unsupported aspect_ratio in text modes | Request fails before task creation. Supported values are 16:9, 9:16, 4:3, 3:4, and 1:1. |
Unsupported movement | Request fails before task creation. Supported values are auto, small, medium, and large. |
Image mode without image_urls | Request fails before task creation. |
| Image mode with zero or more than two images | Request fails before task creation. |
image_urls contains non-string items | Request fails before task creation. |
seed outside -1 through 2147483647 | Request fails before task creation. |
Task failure codes
failCode is generated from APIXO’s mapped upstream error. Common values include:
| Fail code | Meaning | What to do |
|---|---|---|
PromptInvalid | Prompt was invalid or rejected by the upstream service | Rewrite the prompt and retry |
SensitiveContent | Prompt or input/output content was rejected by safety checks | Change the prompt or reference image |
ImageFormatIncorrect | Reference image format could not be processed | Use a public, direct image URL in a common image format |
RateLimited | Upstream rate limit was reached | Retry with exponential backoff |
Timeout | Upstream timeout | Retry later or use callback mode |
StreamError | Upstream returned a 500-class generation error | Retry with backoff |
Unknown error | Upstream returned an unmapped failure | Retry with backoff or contact support with the taskId |