> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crun.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Seedance 2.0 Fast - Reference to Video

> Generate videos from reference images, videos, and audio powered by Bytedance's advanced Seedance 2.0 Fast model

[//]: # "## Custom Uploaded Assets"

[//]: #

[//]: # "Seedance 2.0 Fast reference-to-video supports your own uploaded image, video, and audio assets."

[//]: #

[//]: # "1. Upload the source material through [Seedance Asset Upload API](/models/seedance/asset-upload)"

[//]: # "2. Query [Seedance Asset Info API](/models/seedance/asset-info) until `Status` becomes `Active`"

[//]: # "3. Pass the returned `AssetId` into `reference_images`, `reference_videos`, or `reference_audios`"

[//]: #

[//]: # "<Tip>"

[//]: # "  These fields also support normal public URLs. For uploaded image, video, and audio materials, only URL upload is supported and Base64 is not supported.  "

[//]: # "  If your reference images or videos contain real faces, it is recommended that you upload them to the material library for review first to improve the success rate of generation."

[//]: # "</Tip>"

[//]: #

[//]: # "## Request Example Using Uploaded Assets"

[//]: #

[//]: # "```json"

[//]: # "{"

[//]: # "  \"model\": \"bytedance/seedance2-0-fast-r2v\","

[//]: # "  \"callback_url\": \"https://your-domain.com/api/callback\","

[//]: # "  \"input\": {"

[//]: # "    \"prompt\": \"[Image1] the boy wearing glasses and a blue T-shirt and the corgi from [Image2] sit on the lawn from [Image3] in a 3D cartoon style, with background audio based on [Audio1].\","

[//]: # "    \"reference_images\": ["

[//]: # "      \"asset://asset-20260224185115-jtzz8\","

[//]: # "      \"asset://asset-20260224185203-r8k2m\","

[//]: # "      \"asset://asset-20260224185221-q6w7n\""

[//]: # "    ],"

[//]: # "    \"reference_audios\": ["

[//]: # "      \"asset://asset-20260224185411-k3n6x\""

[//]: # "    ],"

[//]: # "    \"resolution\": \"720p\","

[//]: # "    \"aspect_ratio\": \"16:9\","

[//]: # "    \"duration\": 8,"

[//]: # "    \"audio\": true,"

[//]: # "    \"return_last_frame\": false"

[//]: # "  }"

[//]: # "}"

[//]: # "```"

## Query Task Status

After submitting a task, use the unified query endpoint to check progress and retrieve results:

<Card title="Get Task Info" icon="magnifying-glass" href="/models/common/get-task-info">
  Learn how to query task status and retrieve generation results
</Card>

<Tip>
  For production use, we recommend using the `callback_url` parameter to receive automatic notifications when generation completes, rather than polling the status endpoint.
</Tip>

## Related Resources

<CardGroup cols={2}>
  <Card title="Asset Upload" icon="upload" href="/models/seedance/asset-upload">
    Upload custom assets before using them in Seedance requests
  </Card>

  <Card title="Asset Info" icon="magnifying-glass" href="/models/seedance/asset-info">
    Wait until uploaded assets become active
  </Card>

  <Card title="Models Overview" icon="store" href="/models/quickstart">
    Explore all available models
  </Card>

  <Card title="Common API" icon="gear" href="/common-api/get-account-credits">
    Check credits and account usage
  </Card>
</CardGroup>


## OpenAPI

````yaml models/seedance/2-0-fast/reference-to-video.json post /api/v1/client/job/CreateTask
openapi: 3.0.0
info:
  title: Crun Seedance API
  description: crun.ai Seedance API Documentation
  version: 1.0.0
  contact:
    name: Technical Support
    email: support@crun.ai
servers:
  - url: https://api.crun.ai
    description: API Server
security:
  - ApiKeyAuth: []
paths:
  /api/v1/client/job/CreateTask:
    post:
      summary: Generate video using seedance2.0 fast
      operationId: bytedance/seedance2-0-fast-r2v
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - model
                - input
              properties:
                model:
                  type: string
                  enum:
                    - bytedance/seedance2-0-fast-r2v
                  description: |-
                    The model name to use for generation. Required field.

                    - Must be `bytedance/seedance2-0-fast-r2v` for this endpoint
                callback_url:
                  type: string
                  format: uri
                  description: >-
                    Optional. Callback URL for receiving task completion
                    notifications.


                    - System will POST task status and results to this URL when
                    generation completes

                    - Callback payloads structure is consistent with the `data`
                    object returned by the task status query

                    - Your callback endpoint should accept POST requests with
                    JSON payload containing results

                    - It returns an HTTP 200 status code upon successful receipt
                  example: https://your-domain.com/api/callback
                input:
                  type: object
                  description: >-
                    Input parameters for the reference-to-video generation task
                    (Seedance 2.0 Fast). At least one of `reference_images` or
                    `reference_videos` must be provided.
                  properties:
                    prompt:
                      type: string
                      description: >-
                        Text prompt describing the target scene, motion, and how
                        the references should be used. You can explicitly refer
                        to uploaded assets in natural language with placeholders
                        such as `[Image1]` / `[图1]`, `[Video1]` / `[视频1]`, and
                        `[Audio1]` / `[音频1]`. Example: `[Image1] the boy wearing
                        glasses and a blue T-shirt and the corgi from [Image2]
                        sit on the lawn from [Image3] in a 3D cartoon style,
                        with background audio based on [Audio1].`
                      minLength: 1
                      maxLength: 5000
                      example: >-
                        Create a fashion commercial shot that preserves the
                        model's appearance from the reference images, follows
                        the walking rhythm of the reference video, and matches
                        the mood of the reference audio.
                    reference_images:
                      type: array
                      description: >-
                        Optional reference images used to guide subject
                        identity, style, costume, or scene details. Each item
                        must be either a public image URL or an uploaded AssetId
                        whose status is Active. Use [Seedance Asset Upload
                        API](/models/seedance/asset-upload) to upload custom
                        assets and [Seedance Asset Info
                        API](/models/seedance/asset-info) to query asset status.


                        Each image must meet these requirements:

                        - Input method: public URL or active uploaded AssetId
                        only

                        - Base64 is not supported

                        - Formats: jpeg, png, webp, bmp, tiff, gif, heic, heif

                        - Aspect ratio (width/height): greater than 0.4 and less
                        than 2.5

                        - Width and height: 300 to 6000 px

                        - File size: less than 30 MB per image
                      items:
                        type: string
                        format: uri
                        example: https://example.com/reference-image-1.png
                      maxItems: 9
                      example:
                        - https://example.com/reference-image-1.png
                        - https://example.com/reference-image-2.png
                    reference_videos:
                      type: array
                      description: >-
                        Optional reference videos used to guide motion, pacing,
                        or shot language. Each item must be either a public
                        video URL or an uploaded AssetId whose status is Active.
                        Use [Seedance Asset Upload
                        API](/models/seedance/asset-upload) to upload custom
                        assets and [Seedance Asset Info
                        API](/models/seedance/asset-info) to query asset status.


                        Each video must meet these requirements:

                        - Input method: public URL or active uploaded AssetId
                        only

                        - Base64 is not supported

                        - Formats: mp4, mov

                        - Resolution: 480p or 720p

                        - Duration: 2 to 15 seconds per video

                        - Up to 3 reference videos; total reference video
                        duration must not exceed 15 seconds

                        - Aspect ratio (width/height): 0.4 to 2.5

                        - Width and height: 300 to 6000 px

                        - Total pixel count (width x height): 409600 to 927408

                        - File size: up to 50 MB per video

                        - Frame rate: 24 to 60 FPS
                      items:
                        type: string
                        format: uri
                        example: https://example.com/reference-video-1.mp4
                      maxItems: 3
                      example:
                        - https://example.com/reference-video-1.mp4
                    reference_audios:
                      type: array
                      description: >-
                        Optional reference audios used to guide rhythm or sound
                        design. To receive audio in the final result, set the
                        audio field to true. Each item must be either a public
                        audio URL or an uploaded AssetId whose status is Active.
                        Use [Seedance Asset Upload
                        API](/models/seedance/asset-upload) to upload custom
                        assets and [Seedance Asset Info
                        API](/models/seedance/asset-info) to query asset status.


                        Each audio clip must meet these requirements:

                        - Input method: public URL or active uploaded AssetId
                        only

                        - Base64 is not supported

                        - Formats: wav, mp3

                        - Duration: 2 to 15 seconds per clip

                        - Up to 3 reference audios; total reference audio
                        duration must not exceed 15 seconds

                        - File size: up to 15 MB per clip
                      items:
                        type: string
                        format: uri
                        example: https://example.com/reference-audio-1.mp3
                      maxItems: 3
                      example:
                        - https://example.com/reference-audio-1.mp3
                    return_last_frame:
                      type: boolean
                      deprecated: true
                      description: Whether to return the last frame of the generated video
                      default: false
                      example: false
                    audio:
                      type: boolean
                      description: >-
                        Whether to generate synchronized audio for the output
                        video
                      default: false
                      example: true
                    resolution:
                      type: string
                      description: Output video resolution
                      enum:
                        - 480p
                        - 720p
                      default: 720p
                      example: 720p
                    aspect_ratio:
                      type: string
                      description: Aspect ratio of the generated video
                      enum:
                        - '1:1'
                        - '9:16'
                        - '16:9'
                        - '3:4'
                        - '4:3'
                        - '21:9'
                        - auto
                      default: auto
                      example: '16:9'
                    duration:
                      type: integer
                      description: >-
                        Video duration in seconds. Supports any integer from 4
                        to 15
                      minimum: 4
                      maximum: 15
                      default: 5
                      example: 8
                  required:
                    - prompt
                  anyOf:
                    - required:
                        - reference_images
                    - required:
                        - reference_videos
            example:
              model: bytedance/seedance2-0-fast-r2v
              callback_url: https://your-domain.com/api/callback
              input:
                prompt: >-
                  [Image1] the boy wearing glasses and a blue T-shirt and the
                  corgi from [Image2] sit on the lawn from [Image3] in a 3D
                  cartoon style, with background audio based on [Audio1].
                reference_images:
                  - https://example.com/reference-image-1.png
                  - https://example.com/reference-image-2.png
                  - https://example.com/reference-image-3.png
                reference_audios:
                  - https://example.com/reference-audio-1.mp3
                resolution: 720p
                aspect_ratio: '16:9'
                duration: 8
                audio: true
                return_last_frame: false
      responses:
        '200':
          description: Request successful
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ApiResponse'
                  - type: object
                    properties:
                      data:
                        type: object
                        properties:
                          task_id:
                            type: string
                            description: >-
                              Task ID, can be used with Get Task Details
                              endpoint to query task status
                            example: task_12345678
              example:
                code: 200
                message: success
                data:
                  task_id: task_12345678
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ApiResponse'
                  - type: object
                    properties:
                      errors:
                        type: array
                        description: Detailed validation error messages
                        items:
                          type: string
                        example:
                          - specific error field message
              example:
                code: 422
                message: Missing Params or Type Error
                errors:
                  - specific error field message
        '500':
          $ref: '#/components/responses/Error'
components:
  schemas:
    ApiResponse:
      type: object
      properties:
        code:
          type: integer
          enum:
            - 200
            - 401
            - 402
            - 404
            - 422
            - 429
            - 455
            - 500
            - 501
            - 505
          description: >-
            Response status code


            - **200**: Success - Request has been processed successfully

            - **401**: Unauthorized - Authentication credentials are missing or
            invalid

            - **402**: Insufficient Credits - Account does not have enough
            credits to perform the operation

            - **404**: Not Found - The requested resource or endpoint does not
            exist

            - **422**: Validation Error - The request parameters failed
            validation checks

            - **429**: Rate Limited - Request limit has been exceeded for this
            resource

            - **455**: Service Unavailable - System is currently undergoing
            maintenance

            - **500**: Server Error - An unexpected error occurred while
            processing the request

            - **501**: Generation Failed - Content generation task failed

            - **505**: Feature Disabled - The requested feature is currently
            disabled
        message:
          type: string
          description: Response message, error description when failed
          example: success
  responses:
    Error:
      description: Server Error
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        All APIs require authentication via API Key.


        Get API Key:

        1. Visit [API Key Management Page](https://crun.ai/user-api-key) to get
        your API Key


        Usage:

        Add to request header:


        x-api-key: YOUR_API_KEY


        Note:

        - Keep your API Key secure and do not share it with others

        - If you suspect your API Key has been compromised, reset it immediately
        in the management page

````