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

> ## Agent Instructions
> Send API requests to https://api.ttapi.io with the TT-API-KEY header. Midjourney account hosting uses https://hold.ttapi.io. Claude Code uses https://cc.ttapi.io.
> Most generation endpoints are asynchronous. The submit response returns a job id. Poll that product's fetch endpoint, or pass a webhook on the submit request. A fetch call does not start a new generation.
> 1 USD = 100 quota. Check the pricing page for that product before estimating cost.
> This file lists the English docs. Follow every /_llms/ link recursively for the API reference, Chinese, and Russian. Open a page's .md URL for the endpoint schema.

# Audio Video - First Frame

> Audio video - first frame. Generate video with synchronized audio from single first frame image and text prompt. All 4 models. Submit async task and return id, use query endpoint to get results.

This is the **Seedance Video Generation API** audio video - first frame endpoint. Generate video with synchronized audio based on single first frame image and text prompt. All 4 models supported. Submit async task and return id, use query endpoint to get results.

**Usage**: Include `text` (prompt), `image_url` (first frame, role=first\_frame), and optional `audio_url` (reference audio, role=reference\_audio) in `content`, set `generate_audio: true`. `ratio` is `adaptive` to automatically match first frame image.


## OpenAPI

````yaml openapi/en/seedance-audio-first-frame.json POST /sd/api/v3/contents/generations/tasks
openapi: 3.1.0
info:
  title: Seedance Video Generation API (Audio Video - First Frame)
  version: 1.0.0
  description: Generate audio video from first frame image.
servers:
  - url: https://api.ttapi.io
security: []
paths:
  /sd/api/v3/contents/generations/tasks:
    post:
      description: >-
        Audio video - first frame. Generate video with synchronized audio from
        single first frame image and text prompt. All 4 models. Submit async
        task and return id, use query endpoint to get results.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateRequest'
            example:
              model: doubao-seedance-2-5-260628
              content:
                - type: text
                  text: A girl walking on the beach, breeze blowing her hair
                - type: image_url
                  image_url:
                    url: https://example.com/first_frame.jpg
                  role: first_frame
              ratio: adaptive
              duration: 15
              generate_audio: true
              output_format: mp4
              watermark: true
      responses:
        '200':
          description: Task submitted successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: Task ID
                example:
                  id: cgt-20261021120000-xxxxx
                required:
                  - id
      security:
        - CustomApiKey: []
components:
  schemas:
    CreateRequest:
      type: object
      properties:
        model:
          type: string
          enum:
            - doubao-seedance-2-5-260628
            - doubao-seedance-2-0-260128
            - doubao-seedance-2-0-fast-260128
            - doubao-seedance-2-0-mini-260615
          description: Model ID
        content:
          type: array
          items:
            $ref: '#/components/schemas/ContentItem'
          description: >-
            Input content list. Must include image_url (first frame), optional
            text and audio_url
        resolution:
          type: string
          enum:
            - 480p
            - 720p
            - 1080p
          default: 720p
          description: >-
            Video resolution. Seedance 2.5 options: 480p, 720p, 1080p. Default
            720p
        ratio:
          type: string
          enum:
            - adaptive
          description: >-
            Video aspect ratio, only adaptive supported (auto-matches first
            frame image)
        duration:
          type: integer
          default: -1
          description: Video duration (seconds). Range [4, 30] or -1 (smart selection)
        generate_audio:
          type: boolean
          default: true
          description: >-
            Whether to generate synchronized audio. true=includes
            vocals/SFX/BGM, false=silent video
        output_format:
          type: string
          enum:
            - mp4
            - mov
          default: mp4
          description: Output format. Only Seedance 2.5 supported
        watermark:
          type: boolean
          default: false
          description: Whether to add watermark
        return_last_frame:
          type: boolean
          default: false
          description: Whether to return last frame image
        draft:
          type: boolean
          default: false
          description: Whether to enable draft mode. Only Seedance 2.5 supported
        callback_url:
          type: string
          description: Callback URL
        execution_expires_after:
          type: integer
          default: 172800
          description: Task timeout threshold (seconds). Range [3600, 259200]
        priority:
          type: integer
          default: 0
          description: Execution priority. Range [0, 9]
        safety_identifier:
          type: string
          description: End user identifier, max 64 characters
        tools:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                  - web_search
          description: Tool configuration
        service_tier:
          type: string
          enum:
            - default
          default: default
          description: Service tier
      required:
        - model
        - content
    ContentItem:
      type: object
      description: Input content item
      oneOf:
        - type: object
          properties:
            type:
              type: string
              enum:
                - text
            text:
              type: string
              description: Text prompt describing the desired video content
          required:
            - type
            - text
        - type: object
          properties:
            type:
              type: string
              enum:
                - image_url
            image_url:
              type: object
              properties:
                url:
                  type: string
                  description: >-
                    First frame image URL / Base64. Formats:
                    jpeg/png/webp/bmp/tiff/gif/heic/heif，Aspect ratio [0.4,
                    2.5]，size < 30MB
            role:
              type: string
              enum:
                - first_frame
              description: >-
                First frame identifier. Role is first_frame for first frame
                scenario, or leave empty
          required:
            - type
            - image_url
        - type: object
          properties:
            type:
              type: string
              enum:
                - audio_url
            audio_url:
              type: object
              properties:
                url:
                  type: string
                  description: >-
                    Audio URL / Base64 / Asset ID. Format: wav/mp3, duration [2,
                    30]s, size ≤ 15MB
            role:
              type: string
              enum:
                - reference_audio
              description: Fixed as reference_audio
          required:
            - type
            - audio_url
            - role
  securitySchemes:
    CustomApiKey:
      type: apiKey
      in: header
      name: TT-API-KEY
      description: >-
        Get your API key from the <a href='https://dashboard.ttapi.io'
        target='_blank'>TTAPI Dashboard</a>.

````

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