Vidu API
Debug Console
Dashboard
Docs
Sign in
Video Generating
POST https://api.vidu.com/ent/v2/img2video
Field
Value
Description
Content-Type
application/json
Data Exchange Format
Authorization
Token {your api key}
Replace {} with your API key
Field
Type
Required
Description
model
String
Required
Model name
Accepted values:viduq3-pro-fast``viduq3-turbo,viduq3-pro,viduq2-pro-fast, viduq2-pro viduq2-turbo viduq1 viduq1-classic vidu2.0
- viduq3-pro-fast: Efficiently generate high-quality audio and video content with faster generation speed and high cost-effectiveness
-viduq3-turbo: Compared to viduq3-pro, the generation speed is faster
-viduq3-pro: Supports audio-video synchronization, supports storyboard video generation
-viduq2-pro-fast: Fast speed, low price, stable quality
-viduq2-pro: New model with excellent performance
-viduq2-turbo: New model with good effect, fast generation
-Viduq1: Clear image, smooth transition, stable camera operation
-Viduq1 classical: Clear image, richer transitions and camera movements
-Vidu2.0: Fast generation speed
images
Array[String]
Required
An image to be used as the start frame of the generated video
For fields that accept images:
- Only accepts 1 image
- Accepts public URL or Base64 format.
- Supported formats: png, jpeg, jpg, webp
- The aspect ratio of the images must be less than 1:4 or 4:1
- All images are limited to 50MB
- The post body of the HTTP request should not exceed 20MB, and it must include an appropriate content type string. For instance,
data:image/png;base64,{base64_encode}
prompt
String
Optional
Text prompt
A textual description for video generation, with a maximum length of 5000 characters
Note:If the is_rec parameter for recommended prompts is used, the model will ignore the manually entered prompt for this parameter.
voice_id
String
Optional
Voice ID, The Q3 series model is not effective
Used to determine the voice character in the video. The system will automatically recommend a suitable voice, and optional values can be found in the Voice List. You can also use the Voice Cloning API to clone any voice. The voice_id parameters can be used interchangeably.
is_rec
Bool
Optional
Whether to use the recommended prompt.
- true: Yes, the system will automatically generate and apply a recommended prompt to create the video. The number of recommended prompts = 1.
- false: No, the video will be generated based on the user-provided prompt.
Note: When the recommended prompt feature is enabled, each task will consume an additional 10 credits.
bgm
Bool
Optional
Whether to add background music to the generated video. Ineffective for q3 model
Default: false. Acceptable values: true, false.
When true, the system will automatically add a suitable BGM.
BGM has no time limit and the system automatically adapts.
BGM does not take effect when the duration of the q2 model is 9 or 10 seconds;BGM does not available in q3 models
audio
Bool
Optional
Whether to use direct audio-video generation capability. Default: false. Enumerated values:
- false: No direct audio-video generation, outputs silent video
- true: Direct audio-video generation required, outputs video with sound (including dialogue and sound effects)
Note 1: The voice_id parameter takes effect only when this parameter is true
Note 2: When this parameter is true, staggered mode is not supported (q3 model supports staggered mode)
Note 3: When model is q3, the default value for this parameter is true
audio_type
String
Optional
Audio type, required when audio is true, defaults to all
-All: Sound effects+vocals
-Speech_only: Vocal only
-Sound-effect_only: Sound effects only
Note: Currently, this parameter only supports audio splitting for q2, q1, and 2.0 series models
duration
Int
Optional
Video duration.
Default values vary by model:
- viduq3-pro-fast viduq3-pro , viduq3-turbo: default is 5, available: 1 - 16
- viduq2-pro-fast , viduq2-pro , viduq2-turbo: default 5s,available: 1 - 10
- viduq1 , viduq1-classic: default 5s, available: 5
- vidu2.0: default 4s, available: 4, 8
seed
Int
Optional
Random seed
- Defaults to a random seed number
- Manually set values will override the default random seed
resolution
String
Optional
Resolution (based on model & duration):
- viduq3-pro-fast 1-16s: default 720p, options: 720p, 1080p
- viduq3-pro , viduq3-turbo 1-16s: default 720p, options: 540p, 720p, 1080p
- viduq2-pro-fast(1-10s): default 720p, options:720p, 1080p
- viduq2-pro , viduq2-turbo (1-10s): default 720p, options:540p, 720p, 1080p
- viduq1 , viduq1-classic (5s): default 1080p, options: 1080p
- vidu2.0 (4s): default 360p, options: 360p, 720p, 1080p
- vidu2.0 (8s): default 720p, options: 720p
movement_amplitude
String
Optional
The movement amplitude of objects in the frame
Defaults to auto, accepted value: auto small medium large
Note: Modifying this parameter is ineffective for q2, q3 models
payload
String
Optional
transparent transmission parameters
No processing, only data transmission,with a maximum length of 1048576 characters
off_peak
Bool
Optional
off peak mode, Defaults to false, accepted value: true false
- true:off peak generate mode;
- false:normal generate mode;
- The off_peak mode consumes lower points, please refer to the details Pricing. Tasks submitted in off peak mode will be generated within 48 hours. Tasks that are not completed will be automatically cancelled and their points will be refunded. We also support cancel off_peak tasks.
- Except for q3, other direct audio-video generation functions do not support off-peak mode
callback_url
String
Optional
Callback
When creating a task, you need to actively set the callback_url with a POST request. When the video generation task changes its status, Vidu will send a callback request to this URL, containing the latest status of the task. The structure of the callback request content will be the same as the return body of the Get Generation API.
The "status" in the callback response includes the following states:
- processing: Task is being processed.
- success: Task is completed (if sending fails, it will retry the callback three times).
- failed: Task failed (if sending fails, it will retry the callback three times).
Vidu uses a callback signature algorithm for verification, check out the details here: Callback Signature
Field
Type
Description
task_id
String
Task ID
state
String
It will be returned to a specific processing state:
- created created task successfully
- queueing task in queue
- processing processing
- success generation successful
- failedtask failed
model
String
The parameter of the model used for this call
prompt
String
The text prompt used for this call
images
Array[String]
The images used for this call
duration
Int
The video duration parameter used for this call
audio
Bool
Whether to use audio for this call
audio_type
String
The audio_type parameter used for this call
seed
Int
The random seed parameter used for this call
resolution
String
The resolution parameter used for this call
movement_amplitude
String
The camera movement amplitude parameter used for this call
payload
String
The payload parameter used for this call
off_peak
Bool
The off_peak parameter used for this call
credits
Int
The credits used for this call
created_at
String
Task creation time
{
  "task_id": "your_task_id_here",
  "state": "created",
  "model": "viduq3-pro",
  "images": ["https://prod-ss-images.s3.cn-northwest-1.amazonaws.com.cn/vidu-maas/template/image2video.png"],
  "prompt": "The astronaut waved and the camera moved up.",
  "duration": 5,
  "seed": random_number,
  "resolution": "1080p",
  "movement_amplitude": "auto",
  "payload":"",
  "off_peak": false,
  "credits":credits_number,
  "created_at": "2025-01-01T15:41:31.968916Z"
}
On this page
Overview
  • Request Header
  • Request Body
  • Response Body