---
title: "Create Video Generation Task"
method: POST
path: "/v1/video/generations"
---

# Create Video Generation Task

`POST /v1/video/generations`

Create an asynchronous video generation task. Supports multiple input modes:
- Text-to-video
- Image-to-video (first frame / first+last frame)
- Multimodal reference (image + video + audio combinations)
- Video editing
- Video extension
- Web search enhanced generation

Poll `GET /v1/video/generations/{id}` until `status` is `succeeded`.

## Request body

- object
  - `model` 'seedance-2.0-ultra', required — Model ID
  - `content` object[], required — Input content array for video generation. Supports text, images, videos, and audio in various combinations: - Text only - Text (optional) + Image(s) - Text (optional) + Video(s) - Text (optional) + Image + Audio - Text (optional) + Image + Video - Text (optional) + Video + Audio - Text (optional) + Image + Video + Audio
    - `type` 'text' | 'image_url' | 'video_url' | 'audio_url' — Content type: - `text` — Text prompt - `image_url` — Image input (first frame / last frame / reference) - `video_url` — Video input (reference video) - `audio_url` — Audio input (reference audio)
    - `text` string — Text prompt describing the desired video. Recommended max 500 Chinese characters or 1000 English words.
    - `image_url` object — Image object.
      - `url` string — Image URL, Base64 data URI, or asset ID (`asset://<ASSET_ID>`). Supported formats: jpeg, png, webp, bmp, tiff, gif. Max 30 MB per image.
    - `video_url` object — Video object.
      - `url` string — Video URL or asset ID (`asset://<ASSET_ID>`). Supported formats: mp4, mov. Max 50 MB, duration 2–15s.
    - `audio_url` object — Audio object. Must be combined with at least one image or video.
      - `url` string — Audio URL, Base64 data URI, or asset ID (`asset://<ASSET_ID>`). Supported formats: wav, mp3. Max 15 MB, duration 2–15s.
    - `role` 'first_frame' | 'last_frame' | 'reference_image' | 'reference_video' | 'reference_audio' — Role of the content item: - `first_frame` — First frame image (image-to-video) - `last_frame` — Last frame image (first+last frame mode) - `reference_image` — Reference image (multimodal reference, 0–9 images) - `reference_video` — Reference video (multimodal reference, max 3 videos) - `reference_audio` — Reference audio (multimodal reference, max 3 clips)
  - `generate_audio` boolean — Generate synchronized audio with the video. - `true` — Video includes auto-generated voice, sound effects, and background music - `false` — Silent video
  - `resolution` '720p' | '1080p' | '2k', required — Output video resolution. **Required for Ultra.**
  - `ratio` '16:9' | '4:3' | '1:1' | '3:4' | '9:16' | '21:9' | 'adaptive' — Output aspect ratio. `adaptive` automatically selects the best ratio based on input.
  - `duration` integer — Video duration in seconds (integer, 4–15).
  - `tools` object[] — Tools for the model to use. Currently supports web search (text-to-video only).
    - `type` 'web_search' — Tool type. `web_search` enables internet search for real-time content.
  - `watermark` boolean — Add watermark to the generated video.

## Response `200`

Video generation task created

- object
  - `id` string — Task ID for polling
  - `task_id` string — Task ID (same as id)
  - `object` string
  - `model` string
  - `status` string — Initially empty
  - `progress` integer
  - `created_at` integer — Unix timestamp

## Other responses

- `400` — Invalid request
- `401` — Unauthorized

---

[API](https://skmtc.net/anyfast/apis/anthropic-claude-compatible-endpoint.md) · [All operations](https://skmtc.net/anyfast/apis/anthropic-claude-compatible-endpoint/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/anyfast/anthropic-claude-compatible-endpoint/versions/edfc53e182a1/schema)
