Skip to main content
POST
/
vidu
/
ent
/
v2
/
text2video
curl --request POST \
  --url https://api.powertokens.ai/vidu/ent/v2/text2video \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "viduq3-turbo",
  "prompt": "A small cat running on grass, sunny day",
  "duration": 5,
  "aspect_ratio": "16:9",
  "resolution": "720p"
}
'
{
  "task_id": "your_task_id_here",
  "state": "created",
  "model": "viduq3-turbo",
  "prompt": "In an ultra-realistic fashion photography style featuring light blue and pale amber tones, an astronaut in a spacesuit walks through the fog. The background consists of enchanting white and golden lights, creating a minimalist still life and an impressive panoramic scene.",
  "duration": 5,
  "seed": 123456789,
  "aspect_ratio": "16:9",
  "resolution": "720p",
  "movement_amplitude": "auto",
  "payload": "",
  "credits": 10,
  "off_peak": false,
  "created_at": "2025-01-01T15:41:31.968916Z"
}

Authorizations

Authorization
string
header
required

Pass Authorization: Bearer <token> in the request header.

Body

application/json
model
enum<string>
required

Model name.

  • viduq3-turbo: Compared to viduq3-pro, the generation speed is faster
Available options:
viduq3-turbo
prompt
string
required

Text prompt. A textual description for video generation, with a maximum length of 5000 characters.

Maximum string length: 5000
style
enum<string>
default:general

The style of output video.

  • general: General style. Allows style control through prompts
  • anime: Anime style. Optimized for anime aesthetics, with better performance for anime-related prompts

Note: This parameter is not effective when using q3 models.

Available options:
general,
anime
duration
integer

Video duration. Default values vary by model:

  • viduq3-pro, viduq3-turbo: default 5s, available: 1-16
seed
integer

Random seed.

  • Defaults to a random seed number
  • Manually set values will override the default random seed
aspect_ratio
enum<string>
default:16:9

The aspect ratio of the output video. Defaults to 16:9.

Note: 3:4 and 4:3 only support q3 model.

Available options:
16:9,
9:16,
3:4,
4:3,
1:1
resolution
enum<string>

Resolution. Default values vary by model & duration:

  • viduq3-pro, viduq3-turbo (1-16s): default 720p, available: 540p, 720p, 1080p
Available options:
540p,
720p,
1080p
movement_amplitude
enum<string>
default:auto

The movement amplitude of objects in the frame. Defaults to auto.

Note: This parameter does not take effect when using the q3 model.

Available options:
auto,
small,
medium,
large
bgm
boolean
default:false

Whether to add background music to the generated video. (q3 model not available)

  • false: Do not add background music (default)
  • true: System automatically adds suitable BGM

Notes:

  • BGM has no time limit and the system automatically adapts
  • q3 models do not support this parameter
audio
boolean
default:true

Whether to use direct audio-video generation capability. Default: true.

  • false: No direct audio-video generation, outputs silent video
  • true: Requires audio-video synchronization, outputs video with sound (including dialogue and sound effects)

Note: Only the q3 models supports this parameter.

payload
string

Transparent transmission parameters. No processing, only data transmission, with a maximum length of 1048576 characters.

Maximum string length: 1048576
off_peak
boolean
default:false

Off peak mode. Defaults to 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.

callback_url
string

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).

Response

Submission successful, returns a video task object.

task_id
string

Task ID.

state
enum<string>

Task processing state:

  • created: Task created successfully
  • queueing: Task in queue
  • processing: Task processing
  • success: Generation successful
  • failed: Task failed
Available options:
created,
queueing,
processing,
success,
failed
model
string

Model parameter used for this call.

style
string

Style parameter used for this call.

prompt
string

Text prompt used for this call.

duration
integer

Video duration parameter used for this call.

seed
integer

Random seed parameter used for this call.

aspect_ratio
string

Aspect ratio parameter used for this call.

resolution
string

Resolution parameter used for this call.

bgm
boolean

Background music parameter used for this call.

movement_amplitude
string

Camera movement amplitude parameter used for this call.

payload
string

Payload parameter used for this call.

credits
integer

Credits consumed for this call.

off_peak
boolean

Off-peak mode parameter used for this call.

created_at
string<date-time>

Task creation time.