API DocsAI Model APIsVideosVidu

Start-End Frame

Generate a transition video from start and end frame images. Async task API: submit a request, receive a task_id, then poll the [Query Creations endpoint](./creations) for the result.

Upload start and end frame images; the model generates a video transitioning from the start frame to the end frame. Supports viduq3-pro, viduq3-turbo, viduq2-pro, viduq1, and related models.

This is an async task-based API: submit a request to receive a task_id, then poll the Query Creations endpoint for the result.

Base URL

  • https://api.autorouter.top — Production

Authentication

BearerAuth: http (bearer) Authenticate using a Bearer Token. Format: Authorization: Bearer sk-xxxxxx

Endpoints

POST /vidu/ent/v2/start-end2video

Create Start-End Frame Video Task

Create a video generation task from a start frame and end frame image. The first image in images is the start frame; the second is the end frame.

Request Body

Content-Type: application/json

Example:

{
  "model": "viduq3-pro",
  "images": [
    "https://prod-ss-images.s3.cn-northwest-1.amazonaws.com.cn/vidu-maas/template/startend2video-1.jpeg",
    "https://prod-ss-images.s3.cn-northwest-1.amazonaws.com.cn/vidu-maas/template/startend2video-2.jpeg"
  ],
  "prompt": "The camera zooms in on the bird, which then flies to the right. With its flight being smooth and natural, the bird soars in the sky. with a red light effect following and surrounding it from behind.",
  "duration": 5,
  "seed": 0,
  "resolution": "1080p",
  "audio": true,
  "off_peak": false
}

Properties:

NameTypeRequiredDescription
modelstringYesModel name. Available values: viduq3-turbo, viduq3-pro, viduq2-pro-fast, viduq2-pro, viduq2-turbo, viduq1, viduq1-classic, vidu2.0
imagesstring[]YesImage array, must contain exactly 2 images: first is start frame, second is end frame. Both images should have similar resolution (start/end ratio between 0.8 and 1.25); aspect ratio less than 1:4 or 4:1; supports URL or Base64; formats png/jpeg/jpg/webp; size ≤ 50 MB; request body ≤ 20 MB
promptstringNoText prompt, up to 5,000 characters. Ignored when is_rec is enabled
is_recbooleanNoWhether to use recommended prompts. When true, costs an additional 10 credits
durationintegerNoVideo duration. q3 default 5, range 1–16; q2 series default 5, range 1–8; viduq1 / viduq1-classic only 5; vidu2.0 default 4, available 4 or 8
seedintegerNoRandom seed. Uses a random value if omitted or set to 0
resolutionstringNoResolution, default depends on model and duration
movement_amplitudestringNoMotion amplitude, default auto. Not effective on q2 and q3 series
audiobooleanNoWhether to output audio and video together, default true. Supported only on q3 series
bgmbooleanNoWhether to add background music, default false. Not effective on q3 series
payloadstringNoPassthrough parameter, up to 1,048,576 characters
off_peakbooleanNoOff-peak mode, default false
watermarkbooleanNoWhether to add a watermark, not added by default
wm_positionintegerNoWatermark position: 1 top-left, 2 top-right, 3 bottom-right (default), 4 bottom-left
wm_urlstringNoCustom watermark image URL
meta_datastringNoMetadata identifier, JSON format string
callback_urlstringNoCallback URL (POST) when task status changes

Responses

200: Task created successfully

Content-Type: application/json

400: Bad request / invalid parameters

Content-Type: application/json

429: Rate limit exceeded

Content-Type: application/json

Request Example

curl -X POST "https://api.autorouter.top/vidu/ent/v2/start-end2video" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-xxxxxx" \
  -d '{
  "model": "viduq3-pro",
  "images": [
    "https://prod-ss-images.s3.cn-northwest-1.amazonaws.com.cn/vidu-maas/template/startend2video-1.jpeg",
    "https://prod-ss-images.s3.cn-northwest-1.amazonaws.com.cn/vidu-maas/template/startend2video-2.jpeg"
  ],
  "prompt": "The camera zooms in on the bird, which then flies to the right.",
  "duration": 5,
  "seed": 0,
  "resolution": "1080p",
  "audio": true,
  "off_peak": false
}'

Response Example

{
  "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/startend2video-1.jpeg",
    "https://prod-ss-images.s3.cn-northwest-1.amazonaws.com.cn/vidu-maas/template/startend2video-2.jpeg"
  ],
  "prompt": "The camera zooms in on the bird, which then flies to the right.",
  "duration": 5,
  "seed": 123456,
  "resolution": "1080p",
  "audio": true,
  "payload": "",
  "off_peak": false,
  "credits": 4,
  "created_at": "2025-01-01T15:41:31.968916Z"
}

Response fields:

NameTypeDescription
task_idstringTask ID
statestringProcessing status: created, queueing, processing, success, failed
modelstringModel name
imagesstring[]Image parameters
promptstringPrompt
durationintegerVideo duration
seedintegerRandom seed
resolutionstringResolution
bgmbooleanWhether BGM was added
movement_amplitudestringMotion amplitude
payloadstringPassthrough parameter
off_peakbooleanWhether off-peak mode was used
creditsintegerCredits consumed
watermarkbooleanWhether a watermark was added
created_atstringCreation time

GET /vidu/ent/v2/tasks/{id}/creations

Query Creations

See the Query Creations endpoint for details.

Request Example

curl -X GET "https://api.autorouter.top/vidu/ent/v2/tasks/{task_id}/creations" \
  -H "Authorization: Bearer sk-xxxxxx"

Error Handling

HTTP 400 Parameter Errors (pre-submit validation, no billing)

ScenarioResponse
Missing 2 images{"code":"InvalidParameter","message":"...","request_id":"..."}
Unknown model{"code":"InvalidParameter","message":"unknown model: ...","request_id":"..."}

HTTP 401 / 403 Auth Errors

  • 401 Unauthorized: API Key invalid or expired
  • 403 Forbidden: API Key has no access to this model

HTTP 402 Insufficient Balance

Returns insufficient user quota. Top up at the AutoRouter console.

Task failed Status

See err_code when the task fails. When a task enters failed, AutoRouter automatically refunds the billed quota.

On this page