# Seedance 2.0 API Documentation

> Generate videos with the Seedance 2.0 model through the AI Studio API.

## Overview

Use the AI Studio API to create Seedance 2.0 generation tasks and query their status. The flow is asynchronous: create a task first, then poll the task endpoint with the returned `taskId`.

## Authentication

All requests require an API key in the `Authorization` header.

```http
Authorization: Bearer YOUR_API_KEY
```

## Available models

| modelId | Version | Provider | Runtime model |
| --- | --- | --- | --- |
| `video:bytedance-seedance-2` | Seedance 2.0 | ByteDance | seedance-2-0-vip |
| `video:bytedance-seedance-2-0-fast` | Seedance 2.0 Fast | ByteDance | seedance-2-0-fast-vip |
| `video:bytedance-seedance-2-0-mini` | Seedance 2.0 Mini | Bytedance Seedance 2.0 Mini | bytedance/seedance-2-mini |
| `video:fal-bytedance-seedance-2-0-text-to-video` | Seedance 2.0 Text to Video | ByteDance | bytedance/seedance-2.0/text-to-video |
| `video:fal-bytedance-seedance-2-0-fast-text-to-video` | Seedance 2.0 Fast Text to Video | ByteDance | bytedance/seedance-2.0/fast/text-to-video |
| `video:fal-bytedance-seedance-2-0-image-to-video` | Seedance 2.0 Image to Video | ByteDance | bytedance/seedance-2.0/image-to-video |
| `video:fal-bytedance-seedance-2-0-fast-image-to-video` | Seedance 2.0 Fast Image to Video | ByteDance | bytedance/seedance-2.0/fast/image-to-video |
| `video:fal-bytedance-seedance-2-0-reference-to-video` | Seedance 2.0 Reference to Video | ByteDance | bytedance/seedance-2.0/reference-to-video |
| `video:fal-bytedance-seedance-2-0-fast-reference-to-video` | Seedance 2.0 Fast Reference to Video | ByteDance | bytedance/seedance-2.0/fast/reference-to-video |
| `video:fal-bytedance-seedance-2-0-mini-text-to-video` | Seedance 2.0 Mini Text to Video | ByteDance | bytedance/seedance-2.0/mini/text-to-video |
| `video:fal-bytedance-seedance-2-0-mini-image-to-video` | Seedance 2.0 Mini Image to Video | ByteDance | bytedance/seedance-2.0/mini/image-to-video |
| `video:fal-bytedance-seedance-2-0-mini-reference-to-video` | Seedance 2.0 Mini Reference to Video | ByteDance | bytedance/seedance-2.0/mini/reference-to-video |

## 1. Create generation task

### Endpoint

```http
POST https://localhost:3000/api/ai-studio/execute
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY
```

### Request example

```json
{
  "modelId": "video:bytedance-seedance-2",
  "isPublic": true,
  "payload": {
    "model": "seedance-2-0-vip",
    "input": {
      "prompt": "A serene beach at sunset with waves gently crashing on the shore, palm trees swaying in the breeze, and seagulls flying across the orange sky",
      "first_frame_url": "https://templateb.aiquickdraw.com/custom-page/akr/section-images/example2.png",
      "last_frame_url": "https://templateb.aiquickdraw.com/custom-page/akr/section-images/example3.png",
      "reference_image_urls": [
        "https://templateb.aiquickdraw.com/custom-page/akr/section-images/example1.png"
      ],
      "reference_video_urls": [
        "https://templateb.aiquickdraw.com/custom-page/akr/section-images/example1.mp4"
      ],
      "reference_audio_urls": [
        "https://templateb.aiquickdraw.com/custom-page/akr/section-images/example1.mp3"
      ],
      "return_last_frame": false,
      "generate_audio": false,
      "resolution": "720p",
      "aspect_ratio": "16:9",
      "duration": 15,
      "web_search": false
    }
  }
}
```

### Success response

```json
{
  "success": true,
  "data": {
    "modelId": "video:bytedance-seedance-2",
    "generationId": "generation-id",
    "reservedCredits": 20,
    "taskId": "provider-task-id",
    "state": "queued"
  }
}
```

## 2. Query task status

### Endpoint

```http
GET https://localhost:3000/api/ai-studio/tasks/{taskId}
Authorization: Bearer YOUR_API_KEY
```

### Success response

```json
{
  "success": true,
  "data": {
    "generationId": "generation-id",
    "taskId": "provider-task-id",
    "modelId": "video:bytedance-seedance-2",
    "state": "succeeded",
    "mediaUrls": [
      "https://example.com/result.mp4"
    ],
    "reservedCredits": 20,
    "refundedCredits": 0
  }
}
```

## Request fields

### Seedance 2.0

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `model` | enum | Yes | `"seedance-2-0-vip"` | seedance-2-0-vip | The model name to use for generation. Required field. - Must be `seedance-2-0-vip` for this endpoint |
| `input` | object | Yes | `-` | - | Input parameters for the generation task |

#### Input fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `prompt` | string | No | `"A serene beach at sunset with waves gently crashing on the shore, palm trees swaying in the breeze, and seagulls flying across the orange sky"` | - | The text prompt used to generate the video. Required field. (Min length: 3, Max length: 20000 characters) |
| `first_frame_url` | string | No | `-` | - | First frame image url or asset://{assetId} (for example: asset://asset-20260404242101-76djj) |
| `last_frame_url` | string | No | `-` | - | End frame image url or asset://{assetId} (for example: asset://asset-20260404242101-76djj) |
| `reference_image_urls` | string[] | No | `["https://file.aiquickdraw.com/custom-page/akr/section-images/example1.png"]` | - | Enter a list of image URLs or asset://{assetId} (for example: asset://asset-20260404242101-76djj).<br>Single image requirements:<br>Format: jpeg, png, webp, bmp, tiff, gif.<br>Aspect ratio (width/height): (0.4, 2.5)<br>Width and height (px): (300, 6000)<br>Size: Single image less than 30 MB.<br>Maximum number of files: The sum of the number of frames at the beginning and end must not exceed 9.. |
| `reference_video_urls` | string[] | No | `-` | - | Enter a list of video URLs or asset://{assetId} (for example: asset://asset-20260404242101-76djj) .<br>Single video requirements:<br>Video format: mp4, mov.<br>Resolution: 480p, 720p<br>Duration: Single video duration [2, 15] s, maximum 3 reference videos, total duration of all videos not exceeding 15 seconds.<br>Dimensions:<br>Aspect ratio (width/height): [0.4, 2.5]<br>Width/height (px): [300, 6000]<br>Total pixels: [640×640=409600, 834×1112=927408], i.e., the product of width and height must meet the range requirement of [409600, 927408].<br>Size: Single video not exceeding 50 MB.<br>Frame rate (FPS): [24, 60] |
| `reference_audio_urls` | string[] | No | `-` | - | Enter a list of audio URLs or asset://{assetId} (for example: asset://asset-20260404242101-76djj) .<br>Single audio requirements:<br>Format: wav, mp3<br>Duration: Single audio duration [2, 15] s, maximum 3 reference audios, total duration of all audios not exceeding 15 s.<br>Size: Single audio file size not exceeding 15 MB. |
| `return_last_frame` | boolean | No | `false` | - | Whether to return the last frame of the video as an image. |
| `generate_audio` | boolean | No | `true` | - | Whether to generate audio for the video. - **true**: Generate with audio<br>- **false**: Generate without audio |
| `resolution` | enum | No | `"720p"` | 480p, 720p, 1080p, 4k | Video resolution - 480p for faster generation, 720p for balance, 1080p for High-quality video, 4K Ultra-High Definition, delivering perfect visual details. |
| `aspect_ratio` | enum | No | `"16:9"` | 1:1, 4:3, 3:4, 16:9, 9:16, 21:9, adaptive | Video aspect ratio configuration. Required field. |
| `duration` | number | No | `5` | - | Video duration in 4-15 seconds. |
| `web_search` | boolean | No | `false` | - | Use online search |
| `nsfw_checker` | boolean | No | `-` | - | Defaults to false. You can set it to false based on your needs. If set to false, our content filtering will be disabled, and all results will be returned directly by the model itself.<br>Note: There is no guarantee that everything can be filtered out; if you are not satisfied with the results, you will need to make your own arrangements. |

### Seedance 2.0 Fast

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `model` | enum | Yes | `"seedance-2-0-fast-vip"` | seedance-2-0-fast-vip | The model name to use for generation. Required field. - Must be `seedance-2-0-fast-vip` for this endpoint |
| `input` | object | Yes | `-` | - | Input parameters for the generation task |

#### Input fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `prompt` | string | No | `"A serene beach at sunset with waves gently crashing on the shore, palm trees swaying in the breeze, and seagulls flying across the orange sky"` | - | The text prompt used to generate the video. Required field. (Min length: 3, Max length: 20000 characters) |
| `first_frame_url` | string | No | `-` | - | First frame image url or asset://{assetId} (for example: asset://asset-20260404242101-76djj) |
| `last_frame_url` | string | No | `-` | - | End frame image url or asset://{assetId} (for example: asset://asset-20260404242101-76djj) |
| `reference_image_urls` | string[] | No | `["https://file.aiquickdraw.com/custom-page/akr/section-images/example1.png"]` | - | Enter a list of image URLs or asset://{assetId} (for example: asset://asset-20260404242101-76djj).<br>Single image requirements:<br>Format: jpeg, png, webp, bmp, tiff, gif.<br>Aspect ratio (width/height): (0.4, 2.5)<br>Width and height (px): (300, 6000)<br>Size: Single image less than 30 MB.<br>Maximum number of files: The sum of the number of frames at the beginning and end must not exceed 9.. |
| `reference_video_urls` | string[] | No | `-` | - | Enter a list of video URLs or asset://{assetId} (for example: asset://asset-20260404242101-76djj).<br>Single video requirements:<br>Video format: mp4, mov.<br>Resolution: 480p, 720p<br>Duration: Single video duration [2, 15] s, maximum 3 reference videos, total duration of all videos not exceeding 15 seconds.<br>Dimensions:<br>Aspect ratio (width/height): [0.4, 2.5]<br>Width/height (px): [300, 6000]<br>Total pixels: [640×640=409600, 834×1112=927408], i.e., the product of width and height must meet the range requirement of [409600, 927408].<br>Size: Single video not exceeding 50 MB.<br>Frame rate (FPS): [24, 60] |
| `reference_audio_urls` | string[] | No | `-` | - | Enter a list of audio URLs or asset://{assetId} (for example: asset://asset-20260404242101-76djj).<br>Single audio requirements:<br>Format: wav, mp3<br>Duration: Single audio duration [2, 15] s, maximum 3 reference audios, total duration of all audios not exceeding 15 s.<br>Size: Single audio file size not exceeding 15 MB. |
| `return_last_frame` | boolean | No | `false` | - | Whether to return the last frame of the video as an image. |
| `generate_audio` | boolean | No | `true` | - | Whether to generate audio for the video. - **true**: Generate with audio - **false**: Generate without audio |
| `resolution` | enum | No | `"720p"` | 480p, 720p | Video resolution - 480p for faster generation, 720p for balance |
| `aspect_ratio` | enum | No | `"16:9"` | 1:1, 4:3, 3:4, 16:9, 9:16, 21:9, adaptive | Video aspect ratio configuration. Required field. |
| `duration` | number | No | `5` | - | Video duration in 4-15 seconds. |
| `web_search` | boolean | No | `false` | - | Use online search. (Web search only can be used in the scene of t2v) |
| `nsfw_checker` | boolean | No | `-` | - | Defaults to false. You can set it to false based on your needs. If set to false, our content filtering will be disabled, and all results will be returned directly by the model itself.<br>Note: There is no guarantee that everything can be filtered out; if you are not satisfied with the results, you will need to make your own arrangements. |

### Seedance 2.0 Mini

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `model` | enum | Yes | `"bytedance/seedance-2-mini"` | bytedance/seedance-2-mini | The model name to use for generation. Required field. - Must be `bytedance/seedance-2-mini` for this endpoint |
| `input` | object | Yes | `-` | - | Input parameters for the generation task |

#### Input fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `prompt` | string | No | `"A serene beach at sunset with waves gently crashing on the shore, palm trees swaying in the breeze, and seagulls flying across the orange sky"` | - | The text prompt used to generate the video. Required field. (Min length: 3, Max length: 20000 characters) |
| `first_frame_url` | string | No | `-` | - | First frame image url or asset://{assetId} (for example: asset://asset-20260404242101-76djj) |
| `last_frame_url` | string | No | `-` | - | End frame image url or asset://{assetId} (for example: asset://asset-20260404242101-76djj) |
| `reference_image_urls` | string[] | No | `["https://file.aiquickdraw.com/custom-page/akr/section-images/example1.png"]` | - | Enter a list of image URLs or asset://{assetId} (for example: asset://asset-20260404242101-76djj).<br>Single image requirements:<br>Format: jpeg, png, webp, bmp, tiff, gif.<br>Aspect ratio (width/height): (0.4, 2.5)<br>Width and height (px): (300, 6000)<br>Size: Single image less than 30 MB.<br>Maximum number of files: The sum of the number of frames at the beginning and end must not exceed 9.. |
| `reference_video_urls` | string[] | No | `-` | - | Enter a list of video URLs or asset://{assetId} (for example: asset://asset-20260404242101-76djj).<br>Single video requirements:<br>Video format: mp4, mov.<br>Resolution: 480p, 720p<br>Duration: Single video duration [2, 15] s, maximum 3 reference videos, total duration of all videos not exceeding 15 seconds.<br>Dimensions:<br>Aspect ratio (width/height): [0.4, 2.5]<br>Width/height (px): [300, 6000]<br>Total pixels: [640×640=409600, 834×1112=927408], i.e., the product of width and height must meet the range requirement of [409600, 927408].<br>Size: Single video not exceeding 50 MB.<br>Frame rate (FPS): [24, 60] |
| `reference_audio_urls` | string[] | No | `-` | - | Enter a list of audio URLs or asset://{assetId} (for example: asset://asset-20260404242101-76djj).<br>Single audio requirements:<br>Format: wav, mp3<br>Duration: Single audio duration [2, 15] s, maximum 3 reference audios, total duration of all audios not exceeding 15 s.<br>Size: Single audio file size not exceeding 15 MB. |
| `generate_audio` | boolean | No | `true` | - | Whether to generate audio for the video. - **true**: Generate with audio - **false**: Generate without audio |
| `resolution` | enum | No | `"720p"` | 480p, 720p | Video resolution - 480p for faster generation, 720p for balance |
| `aspect_ratio` | enum | No | `"16:9"` | 1:1, 4:3, 3:4, 16:9, 9:16, 21:9, adaptive | Video aspect ratio configuration. Required field. |
| `duration` | number | No | `5` | - | Video duration in 4-15 seconds. |
| `web_search` | boolean | No | `-` | - | Use online search. (Web search only can be used in the scene of t2v) |
| `nsfw_checker` | boolean | No | `-` | - | Defaults to false. You can set it to false based on your needs. If set to false, our content filtering will be disabled, and all results will be returned directly by the model itself.<br>Note: There is no guarantee that everything can be filtered out; if you are not satisfied with the results, you will need to make your own arrangements. |

### Seedance 2.0 Text to Video

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `bitrate_mode` | enum | No | `"standard"` | standard, high | Output bitrate mode. 'high' requests a higher-quality, larger-file encode from the model; 'standard' uses the default bitrate. |
| `prompt` | string | Yes | `"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."` | - | The text prompt used to generate the video |
| `generate_audio` | boolean | No | `true` | - | Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not. |
| `duration` | enum | No | `"auto"` | auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 | Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt. |
| `resolution` | enum | No | `"720p"` | 480p, 720p, 1080p, 4k | Video resolution - 480p for faster generation, 720p for balance, 1080p for high quality, 4k for highest quality. |
| `aspect_ratio` | enum | No | `"auto"` | auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated video. Use 16:9 for landscape, 9:16 for portrait/vertical, 1:1 for square, 21:9 for ultrawide cinematic, or auto to let the model decide. |
| `end_user_id` | object | No | `-` | - | The unique user ID of the end user. |

#### Input fields

_No fields are configured for this model._

### Seedance 2.0 Fast Text to Video

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `bitrate_mode` | enum | No | `"standard"` | standard, high | Output bitrate mode. 'high' requests a higher-quality, larger-file encode from the model; 'standard' uses the default bitrate. |
| `prompt` | string | Yes | `"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."` | - | The text prompt used to generate the video |
| `generate_audio` | boolean | No | `true` | - | Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not. |
| `duration` | enum | No | `"auto"` | auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 | Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt. |
| `resolution` | enum | No | `"720p"` | 480p, 720p | Video resolution - 480p for faster generation, 720p for balance. |
| `aspect_ratio` | enum | No | `"auto"` | auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated video. Use 16:9 for landscape, 9:16 for portrait/vertical, 1:1 for square, 21:9 for ultrawide cinematic, or auto to let the model decide. |
| `end_user_id` | object | No | `-` | - | The unique user ID of the end user. |

#### Input fields

_No fields are configured for this model._

### Seedance 2.0 Image to Video

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `bitrate_mode` | enum | No | `"standard"` | standard, high | Output bitrate mode. 'high' requests a higher-quality, larger-file encode from the model; 'standard' uses the default bitrate. |
| `duration` | enum | No | `"auto"` | auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 | Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt. |
| `resolution` | enum | No | `"720p"` | 480p, 720p, 1080p, 4k | Video resolution - 480p for faster generation, 720p for balance, 1080p for high quality, 4k for highest quality. |
| `aspect_ratio` | enum | No | `"auto"` | auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated video. Use 16:9 for landscape, 9:16 for portrait/vertical, 1:1 for square, 21:9 for ultrawide cinematic, or auto to infer from the input image. |
| `end_user_id` | object | No | `-` | - | The unique user ID of the end user. |
| `end_image_url` | object | No | `-` | - | The URL of the image to use as the last frame of the video. When provided, the generated video will transition from the starting image to this ending image. Supported formats: JPEG, PNG, WebP. Max 30 MB. |
| `prompt` | string | Yes | `"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."` | - | The text prompt describing the desired motion and action for the video. |
| `generate_audio` | boolean | No | `true` | - | Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not. |
| `image_url` | string | Yes | `"https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg"` | - | The URL of the starting frame image to animate. Supported formats: JPEG, PNG, WebP. Max 30 MB. |

#### Input fields

_No fields are configured for this model._

### Seedance 2.0 Fast Image to Video

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `bitrate_mode` | enum | No | `"standard"` | standard, high | Output bitrate mode. 'high' requests a higher-quality, larger-file encode from the model; 'standard' uses the default bitrate. |
| `duration` | enum | No | `"auto"` | auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 | Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt. |
| `resolution` | enum | No | `"720p"` | 480p, 720p | Video resolution - 480p for faster generation, 720p for balance. |
| `aspect_ratio` | enum | No | `"auto"` | auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated video. Use 16:9 for landscape, 9:16 for portrait/vertical, 1:1 for square, 21:9 for ultrawide cinematic, or auto to infer from the input image. |
| `end_user_id` | object | No | `-` | - | The unique user ID of the end user. |
| `end_image_url` | object | No | `-` | - | The URL of the image to use as the last frame of the video. When provided, the generated video will transition from the starting image to this ending image. Supported formats: JPEG, PNG, WebP. Max 30 MB. |
| `prompt` | string | Yes | `"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."` | - | The text prompt describing the desired motion and action for the video. |
| `generate_audio` | boolean | No | `true` | - | Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not. |
| `image_url` | string | Yes | `"https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg"` | - | The URL of the starting frame image to animate. Supported formats: JPEG, PNG, WebP. Max 30 MB. |

#### Input fields

_No fields are configured for this model._

### Seedance 2.0 Reference to Video

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `bitrate_mode` | enum | No | `"standard"` | standard, high | Output bitrate mode. 'high' requests a higher-quality, larger-file encode from the model; 'standard' uses the default bitrate. |
| `duration` | enum | No | `"auto"` | auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 | Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt. |
| `resolution` | enum | No | `"720p"` | 480p, 720p, 1080p, 4k | Video resolution - 480p for faster generation, 720p for balance, 1080p for high quality, 4k for highest quality. |
| `aspect_ratio` | enum | No | `"auto"` | auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated video. Use 16:9 for landscape, 9:16 for portrait/vertical, 1:1 for square, 21:9 for ultrawide cinematic, or auto to let the model decide. |
| `end_user_id` | object | No | `-` | - | The unique user ID of the end user. |
| `video_urls` | string[] | No | `-` | - | Reference videos to guide video generation. Refer to them in the prompt as @Video1, @Video2, etc. Supported formats: MP4, MOV. Up to 3 videos, combined duration must be between 2 and 15 seconds, total size under 50 MB. Each video must be between ~480p (640x640) and ~720p (834x1112) in resolution. |
| `prompt` | string | Yes | `"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."` | - | The text prompt used to generate the video. |
| `generate_audio` | boolean | No | `true` | - | Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not. |
| `audio_urls` | string[] | No | `-` | - | Reference audio to guide video generation. Refer to them in the prompt as @Audio1, @Audio2, etc. Supported formats: MP3, WAV. Up to 3 files, combined duration must not exceed 15 seconds. Max 15 MB per file.If audio is provided, at least one reference image or video is required. |
| `image_urls` | string[] | No | `["https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg"]` | - | Reference images to guide video generation. Refer to them in the prompt as @Image1, @Image2, etc. Supported formats: JPEG, PNG, WebP. Max 30 MB per image. Up to 9 images. Total files across all modalities must not exceed 12. |

#### Input fields

_No fields are configured for this model._

### Seedance 2.0 Fast Reference to Video

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `bitrate_mode` | enum | No | `"standard"` | standard, high | Output bitrate mode. 'high' requests a higher-quality, larger-file encode from the model; 'standard' uses the default bitrate. |
| `duration` | enum | No | `"auto"` | auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 | Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt. |
| `resolution` | enum | No | `"720p"` | 480p, 720p | Video resolution - 480p for faster generation, 720p for balance. |
| `aspect_ratio` | enum | No | `"auto"` | auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated video. Use 16:9 for landscape, 9:16 for portrait/vertical, 1:1 for square, 21:9 for ultrawide cinematic, or auto to let the model decide. |
| `end_user_id` | object | No | `-` | - | The unique user ID of the end user. |
| `video_urls` | string[] | No | `-` | - | Reference videos to guide video generation. Refer to them in the prompt as @Video1, @Video2, etc. Supported formats: MP4, MOV. Up to 3 videos, combined duration must be between 2 and 15 seconds, total size under 50 MB. Each video must be between ~480p (640x640) and ~720p (834x1112) in resolution. |
| `prompt` | string | Yes | `"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."` | - | The text prompt used to generate the video. |
| `generate_audio` | boolean | No | `true` | - | Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not. |
| `audio_urls` | string[] | No | `-` | - | Reference audio to guide video generation. Refer to them in the prompt as @Audio1, @Audio2, etc. Supported formats: MP3, WAV. Up to 3 files, combined duration must not exceed 15 seconds. Max 15 MB per file.If audio is provided, at least one reference image or video is required. |
| `image_urls` | string[] | No | `["https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg"]` | - | Reference images to guide video generation. Refer to them in the prompt as @Image1, @Image2, etc. Supported formats: JPEG, PNG, WebP. Max 30 MB per image. Up to 9 images. Total files across all modalities must not exceed 12. |

#### Input fields

_No fields are configured for this model._

### Seedance 2.0 Mini Text to Video

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `prompt` | string | Yes | `"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."` | - | The text prompt used to generate the video |
| `generate_audio` | boolean | No | `true` | - | Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not. |
| `duration` | enum | No | `"auto"` | auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 | Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt. |
| `resolution` | enum | No | `"720p"` | 480p, 720p | Video resolution - 480p for faster generation, 720p for balance. |
| `aspect_ratio` | enum | No | `"auto"` | auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated video. Use 16:9 for landscape, 9:16 for portrait/vertical, 1:1 for square, 21:9 for ultrawide cinematic, or auto to let the model decide. |
| `end_user_id` | object | No | `-` | - | The unique user ID of the end user. |

#### Input fields

_No fields are configured for this model._

### Seedance 2.0 Mini Image to Video

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `duration` | enum | No | `"auto"` | auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 | Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt. |
| `resolution` | enum | No | `"720p"` | 480p, 720p | Video resolution - 480p for faster generation, 720p for balance. |
| `aspect_ratio` | enum | No | `"auto"` | auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated video. Use 16:9 for landscape, 9:16 for portrait/vertical, 1:1 for square, 21:9 for ultrawide cinematic, or auto to infer from the input image. |
| `end_user_id` | object | No | `-` | - | The unique user ID of the end user. |
| `end_image_url` | object | No | `-` | - | The URL of the image to use as the last frame of the video. When provided, the generated video will transition from the starting image to this ending image. Supported formats: JPEG, PNG, WebP. Max 30 MB. |
| `prompt` | string | Yes | `"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."` | - | The text prompt describing the desired motion and action for the video. |
| `generate_audio` | boolean | No | `true` | - | Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not. |
| `image_url` | string | Yes | `"https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg"` | - | The URL of the starting frame image to animate. Supported formats: JPEG, PNG, WebP. Max 30 MB. |

#### Input fields

_No fields are configured for this model._

### Seedance 2.0 Mini Reference to Video

#### Payload fields

| Field | Type | Required | Default / Example | Options | Description |
| --- | --- | --- | --- | --- | --- |
| `duration` | enum | No | `"auto"` | auto, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 | Duration of the video in seconds. Supports 4 to 15 seconds, or auto to let the model decide based on the prompt. |
| `resolution` | enum | No | `"720p"` | 480p, 720p | Video resolution - 480p for faster generation, 720p for balance. |
| `aspect_ratio` | enum | No | `"auto"` | auto, 21:9, 16:9, 4:3, 1:1, 3:4, 9:16 | The aspect ratio of the generated video. Use 16:9 for landscape, 9:16 for portrait/vertical, 1:1 for square, 21:9 for ultrawide cinematic, or auto to let the model decide. |
| `end_user_id` | object | No | `-` | - | The unique user ID of the end user. |
| `video_urls` | string[] | No | `-` | - | Reference videos to guide video generation. Refer to them in the prompt as @Video1, @Video2, etc. Supported formats: MP4, MOV. Up to 3 videos, combined duration must be between 2 and 15 seconds, total size under 50 MB. Each video must be between ~480p (640x640) and ~720p (834x1112) in resolution. |
| `prompt` | string | Yes | `"An octopus finds a football in the ocean and excitedly calls its octopus friends to come and play. Cut scene to an octopus football game under the sea."` | - | The text prompt used to generate the video. |
| `generate_audio` | boolean | No | `true` | - | Whether to generate synchronized audio for the video, including sound effects, ambient sounds, and lip-synced speech. The cost of video generation is the same regardless of whether audio is generated or not. |
| `audio_urls` | string[] | No | `-` | - | Reference audio to guide video generation. Refer to them in the prompt as @Audio1, @Audio2, etc. Supported formats: MP3, WAV. Up to 3 files, combined duration must not exceed 15 seconds. Max 15 MB per file.If audio is provided, at least one reference image or video is required. |
| `image_urls` | string[] | No | `["https://v3b.fal.media/files/b/0a8eba37/Cqg-4Uwzyz4DELfceT1CF_a17e588773ec45b1a9e6f100a787b80b.jpg"]` | - | Reference images to guide video generation. Refer to them in the prompt as @Image1, @Image2, etc. Supported formats: JPEG, PNG, WebP. Max 30 MB per image. Up to 9 images. Total files across all modalities must not exceed 12. |

#### Input fields

_No fields are configured for this model._

## Pricing

Credits are reserved when a generation task is created. The `reservedCredits` value in the create-task response is the final amount reserved for that request.

| Model | Type | Spec | Price | Billing |
| --- | --- | --- | --- | --- |
| Seedance 2.0 | Video to Video | 480p | 12 credits/s | (input + output) × 12 |
| Seedance 2.0 | Text/Image to Video | 480p | 19 credits/s | Output seconds × 19 |
| Seedance 2.0 | Video to Video | 720p | 25 credits/s | (input + output) × 25 |
| Seedance 2.0 | Text/Image to Video | 720p | 41 credits/s | Output seconds × 41 |
| Seedance 2.0 | Video to Video | 1080p | 62 credits/s | (input + output) × 62 |
| Seedance 2.0 | Text/Image to Video | 1080p | 102 credits/s | Output seconds × 102 |
| Seedance 2.0 Fast | Video to Video | 480p | 9 credits/s | (input + output) × 9 |
| Seedance 2.0 Fast | Text/Image to Video | 480p | 16 credits/s | Output seconds × 16 |
| Seedance 2.0 Fast | Video to Video | 720p | 20 credits/s | (input + output) × 20 |
| Seedance 2.0 Fast | Text/Image to Video | 720p | 33 credits/s | Output seconds × 33 |
| Seedance 2.0 Mini | Video to Video | 480p | 6 credits/s | (input + output) × 6 |
| Seedance 2.0 Mini | Text/Image to Video | 480p | 9.5 credits/s | Output seconds × 9.5 |
| Seedance 2.0 Mini | Video to Video | 720p | 12.5 credits/s | (input + output) × 12.5 |
| Seedance 2.0 Mini | Text/Image to Video | 720p | 20.5 credits/s | Output seconds × 20.5 |
| Seedance 2.0 Text to Video | Text to Video | 480p | 27 credits/s | Output seconds × 27 |
| Seedance 2.0 Text to Video | Text to Video | 720p | 61 credits/s | Output seconds × 61 |
| Seedance 2.0 Text to Video | Text to Video | 1080p | 136 credits/s | Output seconds × 136 |
| Seedance 2.0 Text to Video | Text to Video | 4k | 311 credits/s | Output seconds × 311 |
| Seedance 2.0 Fast Text to Video | Text to Video | 480p | 23 credits/s | Output seconds × 23 |
| Seedance 2.0 Fast Text to Video | Text to Video | 720p | 48 credits/s | Output seconds × 48 |
| Seedance 2.0 Image to Video | Image to Video | 480p | 27 credits/s | Output seconds × 27 |
| Seedance 2.0 Image to Video | Image to Video | 720p | 61 credits/s | Output seconds × 61 |
| Seedance 2.0 Image to Video | Image to Video | 1080p | 136 credits/s | Output seconds × 136 |
| Seedance 2.0 Image to Video | Image to Video | 4k | 311 credits/s | Output seconds × 311 |
| Seedance 2.0 Fast Image to Video | Image to Video | 480p | 23 credits/s | Output seconds × 23 |
| Seedance 2.0 Fast Image to Video | Image to Video | 720p | 48 credits/s | Output seconds × 48 |
| Seedance 2.0 Reference to Video | Text/Image to Video | 480p | 27 credits/s | Output seconds × 27 |
| Seedance 2.0 Reference to Video | Video to Video | 480p | 16 credits/s | (input + output) × 16 |
| Seedance 2.0 Reference to Video | Text/Image to Video | 720p | 61 credits/s | Output seconds × 61 |
| Seedance 2.0 Reference to Video | Video to Video | 720p | 36 credits/s | (input + output) × 36 |
| Seedance 2.0 Reference to Video | Text/Image to Video | 1080p | 136 credits/s | Output seconds × 136 |
| Seedance 2.0 Reference to Video | Video to Video | 1080p | 82 credits/s | (input + output) × 82 |
| Seedance 2.0 Reference to Video | Text/Image to Video | 4k | 311 credits/s | Output seconds × 311 |
| Seedance 2.0 Reference to Video | Video to Video | 4k | 187 credits/s | (input + output) × 187 |
| Seedance 2.0 Fast Reference to Video | Text/Image to Video | 480p | 23 credits/s | Output seconds × 23 |
| Seedance 2.0 Fast Reference to Video | Video to Video | 480p | 14 credits/s | (input + output) × 14 |
| Seedance 2.0 Fast Reference to Video | Text/Image to Video | 720p | 48 credits/s | Output seconds × 48 |
| Seedance 2.0 Fast Reference to Video | Video to Video | 720p | 29 credits/s | (input + output) × 29 |
| Seedance 2.0 Mini Text to Video | Text to Video | 480p | 14.4 credits/s | Output seconds × 14.4 |
| Seedance 2.0 Mini Text to Video | Text to Video | 720p | 30.9 credits/s | Output seconds × 30.9 |
| Seedance 2.0 Mini Image to Video | Image to Video | 480p | 14.4 credits/s | Output seconds × 14.4 |
| Seedance 2.0 Mini Image to Video | Image to Video | 720p | 30.9 credits/s | Output seconds × 30.9 |
| Seedance 2.0 Mini Reference to Video | Text/Image to Video | 480p | 14.4 credits/s | Output seconds × 14.4 |
| Seedance 2.0 Mini Reference to Video | Text/Image to Video | 720p | 30.9 credits/s | Output seconds × 30.9 |

## Common errors

| Status | Meaning |
| --- | --- |
| `400` | Invalid request payload |
| `401` | Missing or invalid API key |
| `402` | Insufficient credits or plan limit |
| `404` | Model or task not found |
| `429` | Rate limit exceeded |
| `500` | Server error |
