Skip to content

Create Start-End Frame Video Task

POST https://www.kkiai.com/ent/v2/start-end2video

Official Documentation: https://platform.vidu.cn/docs/start-end-to-video

Request Parameters

Authorization

Add the Authorization parameter to the Header, with the value being 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: viduq2, viduq1, viduq3-turbo, viduq3-pro viduq3-turbo: Compared to viduq3-pro, generates faster viduq3-pro: Efficiently generates high-quality audio and video content, making video content more vivid, more intuitive, and more three-dimensional with better results viduq2: Latest model viduq1: Clear picture quality, smooth transitions, stable camera movement
imagesarray[object]RequiredImages Supports input of two images. The first uploaded image is treated as the start frame, and the second image is treated as the end frame. The model will generate video based on the images passed in this parameter. Note 1: The resolution of the two start and end frame input images should be similar, with the start frame resolution/end frame resolution ratio between 0.8 and 1.25. Image aspect ratio must be less than 1:4 or 4:1; Note 2: Supports passing image Base64 encoding or image URL (ensure accessibility); Note 3: Images support png, jpeg, jpg, webp formats; Note 4: Image size does not exceed 50M; Note 5: Please note that the http request post body does not exceed 20MB, and the encoding must include an appropriate content type string, for example: data:image/png;base64,{base64_encode}
promptstringRequiredText prompt Text description for generating the video. Note: Character length cannot exceed 2000 characters
is_recstringOptionalWhether to use recommended prompts true: Yes, the system automatically recommends prompts and uses the prompt content to generate video, number of recommended prompts = 1 false: No, generate video based on the input prompt Note: Enabling recommended prompts consumes an additional 10 credits per task
durationintegerOptionalVideo duration parameter, default value depends on the model: viduq3-pro, viduq3-turbo default is 5, optional: 1 - 16 viduq2: default 5 seconds, optional: 1-10 viduq1: default 5 seconds, optional: 5
seedstringOptionalRandom seed When not passed by default or passed as 0, a random number will be used instead Manual setting uses the set seed
resolutionstringOptionalResolution parameter, default value depends on model and video duration: viduq3-pro, viduq3-turbo 1-16 seconds: default 720p, optional: 540p, 720p, 1080p viduq2-pro-fast 1-8 seconds: default 720p, optional: 720p, 1080p viduq2-pro 1-8 seconds: default 720p, optional: 540p, 720p, 1080p viduq2-turbo 1-8 seconds: default 720p, optional: 540p, 720p, 1080p viduq1 and viduq1-classic 5 seconds: default 1080p, optional: 1080p vidu2.0 4 seconds: default 360p, optional: 360p, 720p, 1080p vidu2.0 8 seconds: default 720p, optional: 720p
movement_amplitudestringOptionalResolution parameter, default value depends on model and video duration: viduq2 (1-10 seconds): default 720p, optional: 540p, 720p, 1080p viduq1 (5 seconds): default 1080p, optional: 1080p vidu2.0 (4 seconds): default 360p, optional: 360p, 720p
bgmstringOptionalWhether to add background music to the generated video. Default: false, optional values true, false When passed as true, the system will automatically select appropriate music from the preset BGM library and add it; if not passed or false, no BGM will be added. BGM has no duration limit, the system automatically adapts based on video duration
payloadstringOptionalPass-through parameter No processing, data transmission only Note: Maximum 1048576 characters
watermarkstringOptionalWhether to add watermark true: add watermark; false: do not add watermark; Note 1: Currently the watermark content is fixed, generated by AI, not added by default Note 2: You can query and obtain watermarked video content through the watermarked_url parameter, see the query task interface for details
wm_positionintegerOptionalWatermark position, indicating where the watermark appears in the image, optional values are: 1: top left 2: top right 3: bottom right 4: bottom left Default: 3
wm_urlstringOptionalWatermark content, this is an image URL When not passed, use default watermark: content generated by AI
meta_datastringOptionalMetadata identifier, json format string, pass-through field, you can customize the format or use the example format, example 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
{
    "task_id": "911088422699962368",
    "type": "headtailimg2video",
    "state": "created",
    "model": "viduq1",
    "style": "general",
    "prompt": "A little girl picking mushrooms goes up the mountain to gather mushrooms and comes across a mushroom bigger than herself.",
    "images": [
        "https://storage.xuanxu.net/images/1997560136907759618/1768223244152.png",
        "https://storage.xuanxu.net/images/1997560136907759618/1768223372503.png"
    ],
    "duration": 5,
    "seed": 722073967,
    "aspect_ratio": "",
    "resolution": "1080p",
    "movement_amplitude": "auto",
    "created_at": "2026-01-20T06:52:02.323137590Z",
    "credits": 80,
    "payload": "",
    "cus_priority": 0,
    "off_peak": false,
    "watermark": false,
    "is_rec": false,
    "wm_position": 1,
    "wm_url": "",
    "meta_data": "",
    "client_request_id": ""
}

cURL Example

bash
curl --location --request POST 'https://www.kkiai.com/ent/v2/start-end2video' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
    "task_id": "911088422699962368",
    "type": "headtailimg2video",
    "state": "created",
    "model": "viduq1",
    "style": "general",
    "prompt": "A little girl picking mushrooms goes up the mountain to gather mushrooms and comes across a mushroom bigger than herself.",
    "images": [
        "https://storage.xuanxu.net/images/1997560136907759618/1768223244152.png",
        "https://storage.xuanxu.net/images/1997560136907759618/1768223372503.png"
    ],
    "duration": 5,
    "seed": 722073967,
    "aspect_ratio": "",
    "resolution": "1080p",
    "movement_amplitude": "auto",
    "created_at": "2026-01-20T06:52:02.323137590Z",
    "credits": 80,
    "payload": "",
    "cus_priority": 0,
    "off_peak": false,
    "watermark": false,
    "is_rec": false,
    "wm_position": 1,
    "wm_url": "",
    "meta_data": "",
    "client_request_id": ""
}'

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": "911088422699962368",
    "type": "headtailimg2video",
    "state": "created",
    "model": "viduq1",
    "style": "general",
    "prompt": "A little girl picking mushrooms goes up the mountain to gather mushrooms and comes across a mushroom bigger than herself.",
    "images": [
        "https://storage.xuanxu.net/images/1997560136907759618/1768223244152.png",
        "https://storage.xuanxu.net/images/1997560136907759618/1768223372503.png"
    ],
    "duration": 5,
    "seed": 722073967,
    "aspect_ratio": "",
    "resolution": "1080p",
    "movement_amplitude": "auto",
    "created_at": "2026-01-20T06:52:02.323137590Z",
    "credits": 80,
    "payload": "",
    "cus_priority": 0,
    "off_peak": false,
    "watermark": false,
    "is_rec": false,
    "wm_position": "unspecified",
    "wm_url": "",
    "meta_data": "",
    "client_request_id": ""
}