Skip to content

Create Text-to-Video Task

POST https://www.kkiai.com/ent/v2/text2video

Official documentation: https://platform.vidu.cn/docs/text-to-video

Request Parameters

Authorization

Add the Authorization parameter to the Header. Its value should be the Token concatenated after Bearer.

Example: Authorization: Bearer ********************

Header Parameters

Parameter NameTypeRequiredDescriptionExample
AuthorizationstringOptionalBearer {{YOUR_API_KEY}}
Content-TypestringOptionalapplication/json

Body Parameters (application/json)

Parameter NameTypeRequiredDescription
modelstringRequiredModel name. Optional values: viduq3-turbo, viduq3-pro, viduq2, viduq1. viduq3-turbo: Compared to viduq3-pro, generates faster. viduq3-pro: Efficiently generates high-quality audio and video content, making videos more vivid, expressive, and three-dimensional with better results. viduq2: Latest model. viduq1: Clear picture quality, smooth transitions, stable camera movement.
stylestringOptionalStyle. Default is general. Optional values: general, anime. general: General style, can be controlled through prompts. anime: Anime style, performs well only in anime style, can be controlled through different anime style prompts. Note: This parameter has no effect when using the q2 model.
promptstringRequiredText prompt. Text description for video generation. Note: Character length cannot exceed 2000 characters.
durationnumberOptionalVideo duration parameter. Default value depends on the model: viduq3-pro, viduq3-turbo: Default 5 seconds, optional: 1-16. viduq2: Default 5 seconds, optional: 1-10. viduq1: Default 5 seconds, optional: 5.
seedstringOptionalRandom seed. When not passed or passed as 0, a random number will be used instead. When manually set, the specified seed will be used.
aspect_ratiostringOptionalAspect ratio. Default 16:9. Optional values: 16:9, 9:16, 3:4, 4:3, 1:1. Note: 3:4 and 4:3 are only supported by the q2 model.
resolutionstringOptionalResolution parameter. Default value depends on the model and video duration: viduq3-pro, viduq3-turbo (1-16 seconds): Default 720p, optional: 540p, 720p, 1080p. viduq2 (1-10 seconds): Default 720p, optional: 540p, 720p, 1080p. viduq1 (5 seconds): Default 1080p, optional: 1080p.
movement_amplitudestringOptionalMovement amplitude. Default auto. Optional values: auto, small, medium, large. Note: This parameter has no effect when using the q2 model.
bgmstringOptionalWhether to add background music to the generated video. Default: false. Optional values: true, false. When set to true, the system will automatically select appropriate music from the preset BGM library and add it. When not passed or set to false, no BGM is added. BGM duration is unlimited; the system automatically adapts based on video duration.
payloadstringOptionalPass-through parameter. No processing is performed; only data transmission. Note: Maximum 1048576 characters.
watermarkstringOptionalWhether to add a watermark. true: Add watermark; false: Do not add watermark. Note 1: Currently the watermark content is fixed and generated by AI. By default, no watermark is added. Note 2: You can query and obtain watermarked video content through the watermarked_url parameter. See the query task API for details.
wm_positionstringOptionalWatermark position, indicating where the watermark appears on the image. Optional values: 1: Top-left. 2: Top-right. 3: Bottom-right. 4: Bottom-left. Default: 3.
wm_urlstringOptionalWatermark content, image URL. When not passed, the default watermark is used: content generated by AI.
meta_datastringOptionalMetadata identifier, JSON format string, pass-through field. You can customize the format or use the example format as follows: { "Label": "your_label","ContentProducer": "yourcontentproducer","ContentPropagator": "your_content_propagator","ProduceID": "yourproductid", "PropagateID": "your_propagate_id","ReservedCode1": "yourreservedcode1", "ReservedCode2": "your_reserved_code2" } When this parameter is empty, the metadata identifier generated by vidu is used by default.
callback_urlstringOptionalCallback protocol. You need to actively set callback_url when creating a task. The request method is POST. When the video generation task status changes, Vidu will send a callback request containing the latest task status to this address. The callback request content structure is consistent with the return body of the query task API. The "status" returned in the callback includes the following states: processing: Task is processing. success: Task completed (if sending fails, callback three times). failed: Task failed (if sending fails, callback three times). Vidu uses a callback signature algorithm for authentication. See: Callback Signature Algorithm for details.

Request Example

json
{
    "model": "viduq2",
    "prompt": "A cute cat is running on the grass under bright sunshine, creating a warm and cozy scene."
}

cURL Example

bash
curl --location --request POST 'https://www.kkiai.com/ent/v2/text2video' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "model": "viduq2",
    "prompt": "A cute cat is running on the grass under bright sunshine, creating a warm and cozy scene."
}'

Response

🟢 200 Success

Response Body

Parameter NameTypeRequiredDescription
task_idstringRequired
typestringRequired
statestringRequired
modelstringRequired
stylestringRequired
promptstringRequired
imagesarray[string]Required
durationintegerRequired
seedintegerRequired
aspect_ratiostringRequired
resolutionstringRequired
movement_amplitudestringRequired
created_atstringRequired
creditsintegerRequired
payloadstringRequired
cus_priorityintegerRequired
off_peakbooleanRequired
watermarkbooleanRequired
is_recbooleanRequired
wm_positionstringRequired
wm_urlstringRequired
meta_datastringRequired
client_request_idstringRequired

Response Example

json
{
    "task_id": "911026047460327424",
    "type": "text2video",
    "state": "created",
    "model": "viduq2",
    "style": "general",
    "prompt": "A cute cat is running on the grass under bright sunshine, creating a warm and cozy scene.",
    "images": [],
    "duration": 5,
    "seed": 426802853,
    "aspect_ratio": "16:9",
    "resolution": "720p",
    "movement_amplitude": "auto",
    "created_at": "2026-01-20T02:44:10.910316439Z",
    "credits": 35,
    "payload": "",
    "cus_priority": 0,
    "off_peak": false,
    "watermark": false,
    "is_rec": false,
    "wm_position": "unspecified",
    "wm_url": "",
    "meta_data": "",
    "client_request_id": ""
}