Skip to main content
AI

Vidu Video Generation

video generationusercall

Updated: 2026-06-03, this site Vidu Q3 Pro / Q3 Turbo video model call. user requires using this site stable model and video task endpoint, do not upstream or Field.

1. Model

Modeltext-to-videosingle-image-to-videofirst-and-last-framemultiple reference images
viduq3p-540pQ3 Prosupportssupportssupports, use image+last_imagesupports, use reference_image_urls, up to 4
viduq3p-720pQ3 Prosupportssupportssupports, use image+last_imagesupports, use reference_image_urls, up to 4
viduq3p-1080pQ3 Prosupportssupportssupports, use image+last_imagesupports, use reference_image_urls, up to 4
viduq3t-540pQ3 Turbosupportssupportssupports, use image+last_imagesupports, use reference_image_urls, up to 4
viduq3t-720pQ3 Turbosupportssupportssupports, use image+last_imagesupports, use reference_image_urls, up to 4
viduq3t-1080pQ3 Turbosupportssupportssupports, use image+last_imagesupports, use reference_image_urls, up to 4

Note:

  • Modellist 6 Model.
  • Create Task use Model.
  • Q3 Turbo or use; multiple reference images use Q3 Pro.

2. Endpoint

2.1 Create Video Task

POST /v1/video/generations

request headers:

Authorization: Bearer sk-***
Content-Type: application/json

2.2 Query Video Task

GET /v1/video/generations/{task_id}

compatibilityqueryEndpoint:

GET /v1/videos/{task_id}

3. Parameter Reference

ParametersTypeRequiredNote
modelstringYesuse 6 Modelone of
promptstringYesvideo generationprompt
durationinteger/stringYesOutput video duration, recommended to pass 1-16 integer
aspect_ratiostringrecommended to passRatio,16:9, 9:16, 1:1
imagestring/first-and-last-frame requiredpublic image URL; single-image-to-video only pass one
last_imagestringfirst-and-last-frame requiredimage URL; and image use, legacy Field
reference_image_urlsstring[]multiple reference imagesRequiredQ3 Pro multiple reference imagesField, up to 4 public image URL
extra_body.audiobooleanNoWhether to generate; requires pass false
extra_body.seedintegerNorandom seed
extra_body.bgmbooleanNoWhether music; requires pass false

Fielduseconstraints:

  • text-to-video: only pass prompt, model, duration, Optional values aspect_ratio.
  • single-image-to-video: pass image, do not pass both array.
  • first-and-last-frame: pass image+last_image, do not use first-and-last-frame images array.
  • multiple reference images: pass reference_image_urls, do not pass both images, image_urls or pass image.
  • reference_image_urls recommended viduq3p-*, do not viduq3t-*.

4. Request Examples

In the examples below, {BASE_URL} can be replaced with https://api.aijisu.cn.

4.1 text-to-video

curl -X POST "{BASE_URL}/v1/video/generations" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{"model": "viduq3p-720p",
"prompt": " camera, and, slow camera push-in. ",
"aspect_ratio": "16:9",
"duration": 5,
"extra_body": {"audio": false,
"seed": 42,
"bgm": false}}'

4.2 single-image-to-video

curl -X POST "{BASE_URL}/v1/video/generations" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{"model": "viduq3t-540p",
"prompt": " camera, natural motion, camera. ",
"image": "https://example.com/source.png",
"duration": 5,
"extra_body": {"seed": 42}}'

4.3 first-and-last-frame video

curl -X POST "{BASE_URL}/v1/video/generations" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{"model": "viduq3p-720p",
"prompt": ", keep identity stable, action. ",
"image": "https://example.com/head.png",
"last_image": "https://example.com/tail.png",
"duration": 6,
"extra_body": {"seed": 42}}'

4.4 reference-image-to-video

curl -X POST "{BASE_URL}/v1/video/generations" \
-H "Authorization: Bearer sk-***" \
-H "Content-Type: application/json" \
-d '{"model": "viduq3p-720p",
"prompt": "A @Image1 walking through a beach in the visual style of @Image2",
"reference_image_urls": ["https://example.com/ref-1.png",
"https://example.com/ref-2.png"],
"aspect_ratio": "16:9",
"duration": 5,
"extra_body": {"audio": false,
"seed": 42,
"bgm": false}}'

5. Response Examples

Create TaskSuccess:

{
"id": "task_xxxxx",
"task_id": "task_xxxxx",
"object": "video.generation.job",
"model": "viduq3p-720p",
"status": "queued",
"progress": 0,
"created_at": 1774507626
}

Query Task completed:

{
"id": "task_xxxxx",
"task_id": "task_xxxxx",
"object": "video.generation.job",
"model": "viduq3p-720p",
"status": "completed",
"progress": 100,
"video_url": "https://example.com/output.mp4",
"created_at": 1774507626
}

Status:

Status
queued
in_progressgeneration
completedcompleted
failedFailed

6. Common Errors

6.1 to change images

do not pass:

{
"model": "viduq3p-720p",
"prompt": "first-and-last-frame ",
"images": [
"https://example.com/head.png",
"https://example.com/tail.png"
],
"duration": 6
}

images reference. first-and-last-frame use image+last_image; multiple reference images use reference_image_urls.

6.2 Q3 Turbo use multiple reference images

do not viduq3t-* pass reference_image_urls. Q3 Turbo or use.

6.3 use Model

Create Task use Model 6 Model. Model Model do not model Parameterspass in.

7. and legacy

legacy
text-to-videoNoteprompt Fielddescription "only pass prompt image-to-video"only pass prompt text-to-video
RequiredFieldOpenAPI schema to change image, last_image, reference_image_urls, aspect_ratio, extra_body Requiredonly model, prompt, duration Required; imageField scenarioConditional
first-and-last-frame fielduse image+last_imageimage+last_image, user requires Field
first-and-last-framepassNotedo not pass imagesdo not use first-and-last-frame images array;images Yesfirst-and-last-frame
multiple reference imagesModellegacyExample Model Modeluse viduq3p-*+reference_image_urls
multiple reference imagesNoterecommendedup to 4
Q3 Turbo multiple reference imagesconstraintsviduq3t-* multiple reference images
ExampleModellegacyExample Model Modeluser reserved 6 Model
duration Typeschema string, Examplepass numberrecommended to passinteger; compatibility string
extra_body.bgm Typeschema stringboolean use
Query TaskcreateEndpointGET /v1/video/generations/{task_id} andcompatibility GET /v1/videos/{task_id}