Bytedance Seedance / Seedance 2.0 / First & last frame to video
seedance/openrouter-seedance-2-0/first_last_frame_to_video
Async
Generate a video that interpolates between a start frame and an end frame (Seedance FLF2V). Provide exactly two images: the first is the start frame, the second is the end frame.
Parameters
| Name | Type | Required | Description | Allowed values | Bundle dim. |
|---|---|---|---|---|---|
| mode | string | no | Internal task-type marker (matches the method code). | first_last_frame_to_video | — |
| prompt | string | no | Optional text guidance for the interpolated motion. | — | — |
| resolution | string | no | Output resolution. Seedance 2.0 Fast caps at 720p; 2.0 and 1.5 Pro support 1080p. | 480p, 720p, 1080p | — |
| aspect_ratio | string | no | Output aspect ratio. | 16:9, 9:16, 1:1, 4:3, 3:4, 21:9, 9:21 | — |
| callback_url | string | no | Webhook URL invoked when async task completes. | — | — |
| input_images | string[] | yes | Exactly two image URLs: [0] = start (first) frame, [1] = end (last) frame. | — | — |
| duration_seconds | integer | no | Video duration in seconds. PER_SECOND pricing — duration is not part of the bundle key. Seedance 1.5 Pro accepts 4–12; 2.0 family accepts 4–15. | — | — |
Example request
{
"provider": "seedance",
"model": "openrouter-seedance-2-0",
"method": "first_last_frame_to_video",
"params": {
"mode": "first_last_frame_to_video",
"resolution": "1080p",
"aspect_ratio": "16:9",
"input_images": [
"https://example.com/start-frame.jpg",
"https://example.com/end-frame.jpg"
],
"duration_seconds": 5
}
}Example response
null