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

# seedance-2-5

> ByteDance’s production-oriented multimodal video model for generating and editing coherent clips up to 30 seconds, with synchronized audio, timestamp-level control, and up to 30 image, 10 video, and 10 audio references f



## OpenAPI

````yaml /openapi/video/seedance-2-5.yaml post /videos/generations
openapi: 3.0.3
info:
  title: seedance-2-5
  version: 1.0.0
  description: >
    ByteDance’s production-oriented multimodal video model for generating and
    editing coherent clips up to 30 seconds, with synchronized audio,
    timestamp-level control, and up to 30 image, 10 video, and 10 audio
    references for stronger character, scene, motion, and style consistency.
  x-linkmodel-sort-weight: 99202606289
servers:
  - url: https://api.linkmodel.ai/v1
    description: Production
security:
  - bearerAuth: []
tags:
  - name: Bytedance
  - name: video
paths:
  /videos/generations:
    post:
      tags:
        - Bytedance
        - video
      summary: seedance-2-5
      description: >
        ByteDance’s production-oriented multimodal video model for generating
        and editing coherent clips up to 30 seconds, with synchronized audio,
        timestamp-level control, and up to 30 image, 10 video, and 10 audio
        references for stronger character, scene, motion, and style consistency.


        |   |   |

        | --- | --- |

        | **Provider** | Bytedance |

        | **Tasks** | text-to-video · image-to-video |

        | **Starting from** | 6.08 USD / token · <a
        href="https://linkmodel.ai/en/models/seedance-2-5" target="_blank"
        rel="noopener">Pricing details</a> |


        ## Task lifecycle


        This endpoint creates an asynchronous task. Poll `GET
        /videos/generations/{task_id}` with the returned `task_id` until the
        task reaches a terminal state.


        If the POST request times out or its result is uncertain, do not blindly
        retry it. The original request may already have created another task and
        billing order.


        Completed asset URLs are dynamically signed. Download or copy assets
        that must be retained instead of treating the URLs as permanent
        identifiers.
      operationId: seedance-2-5
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                prompt:
                  type: string
                first_frame_image:
                  type: string
                last_frame_image:
                  type: string
                duration:
                  type: integer
                  enum:
                    - -1
                    - 4
                    - 5
                    - 6
                    - 7
                    - 8
                    - 9
                    - 10
                    - 11
                    - 12
                    - 13
                    - 14
                    - 15
                    - 16
                    - 17
                    - 18
                    - 19
                    - 20
                    - 21
                    - 22
                    - 23
                    - 24
                    - 25
                    - 26
                    - 27
                    - 28
                    - 29
                    - 30
                  default: -1
                  description: >-
                    Fixed duration: 4-30 seconds; -1 means intelligent duration.
                    Defaults to `-1`. Value is in s.
                resolution:
                  type: string
                  enum:
                    - 480P
                    - 720P
                  default: 720P
                  description: 'Must be one of: 480P, 720P. Defaults to `720P`.'
                size:
                  type: string
                  enum:
                    - 16x9
                    - 1x1
                    - 21x9
                    - 3x4
                    - 4x3
                    - 9x16
                    - adaptive
                  default: 16x9
                  description: >-
                    Must be one of: 16x9, 1x1, 21x9, 3x4, 4x3, 9x16, adaptive.
                    Defaults to `16x9`.
                audios:
                  type: array
                  maxItems: 10
                  items:
                    type: string
                    format: url
                  description: Maximum 10 items.
                videos:
                  type: array
                  maxItems: 10
                  items:
                    type: string
                    format: url
                  description: Maximum 10 items.
                images:
                  type: array
                  maxItems: 30
                  items:
                    type: string
                    format: url
                  description: Maximum 30 items.
                model:
                  type: string
                  enum:
                    - seedance-2-5
              required:
                - model
      responses:
        '200':
          description: >-
            Business response. `code=0` means the task was accepted; validation
            failures can return HTTP 200 with `code=400`.
          content:
            application/json:
              schema:
                oneOf:
                  - type: object
                    required:
                      - code
                      - data
                      - msg
                    properties:
                      code:
                        type: integer
                        enum:
                          - 0
                        example: 0
                      data:
                        type: object
                        required:
                          - task_id
                        properties:
                          task_id:
                            type: string
                            description: Use this id to poll task status.
                            example: aurora_abc123
                          order_id:
                            type: string
                            description: Billing order id.
                            example: 019da9cf-d1db-78e1-ac23-526774d01193
                          status:
                            type: string
                            example: Processing
                          price:
                            type: number
                            description: Charged amount in the model's pricing currency.
                            example: 0.074
                      msg:
                        type: string
                        example: success
                      request_id:
                        type: string
                        format: uuid
                        example: 250b66dd-e1fb-4bb6-b5f6-c668efadc35d
                  - type: object
                    required:
                      - code
                      - msg
                    properties:
                      code:
                        type: integer
                        enum:
                          - 400
                        example: 400
                      data:
                        type: object
                        example: {}
                      msg:
                        type: string
                        example: model is required
                      request_id:
                        type: string
                        format: uuid
                        example: 96be7a7d-3e81-4916-a6b8-19b32773a693
        '400':
          description: >-
            Malformed HTTP request rejected by the Gateway. Model and parameter
            validation may instead use HTTP 200 with business `code=400`.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 400
                  msg:
                    type: string
                    example: task_id is required
                  request_id:
                    type: string
                    format: uuid
                    example: 96be7a7d-3e81-4916-a6b8-19b32773a693
        '401':
          description: Unauthorized — missing or invalid API key.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 401
                  data:
                    type: object
                    example: {}
                  msg:
                    type: string
                    example: invalid api key
                  request_id:
                    type: string
                    format: uuid
                    example: bff4c295-c7da-4507-9708-4627cb6373ba
        '500':
          description: Internal error — task creation failed (e.g. insufficient balance).
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                    example: 500
                  msg:
                    type: string
                    example: >-
                      create task failed: billing: code=100601: insufficient
                      balance
                  request_id:
                    type: string
                    format: uuid
                    example: 3409f6fb-fa9a-4534-b530-195b5f6f4e32
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.