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

# Create video generation task

> Seedance 2.0 New POST /api/v3/contents/generations/tasks

## Introduction

Submit an async Seedance 2.0 official mirror video generation task; returns task `id` on success. Provide at least one of `content` or `prompt`.

Identical request and response bodies to the BytePlus Ark official API.

## Authentication

<ParamField header="Authorization" type="string" required>
  Bearer Token, e.g. `Bearer sk-your_token_key`
</ParamField>

<ParamField header="Content-Type" type="string">
  `application/json`
</ParamField>

## Request parameters

<ParamField body="model" type="string" required>
  Model ID: `seedance-2-0` / `seedance-2-0-fast` / `seedance-2-0-NSFW`
</ParamField>

<ParamField body="content" type="array">
  Content array: `text` / `image_url` / `video_url` / `audio_url`; each element may include `role` (`first_frame` / `last_frame` / `reference_image` / `reference_video` / `reference_audio`); at least one of `content` or `prompt` required
</ParamField>

<ParamField body="prompt" type="string">
  Simplified alternative to `content`
</ParamField>

<ParamField body="callback_url" type="string">
  Callback URL on task status changes
</ParamField>

<ParamField body="return_last_frame" type="boolean" default="false">
  Whether to return the last frame image
</ParamField>

<ParamField body="service_tier" type="string" default="default">
  `default` / `flex`
</ParamField>

<ParamField body="execution_expires_after" type="integer" default="172800">
  Task expiration time in seconds, range `[3600, 259200]`
</ParamField>

<ParamField body="generate_audio" type="boolean" default="true">
  Whether to generate audio
</ParamField>

<ParamField body="safety_identifier" type="string">
  End-user unique identifier (recommend a hash of user ID)
</ParamField>

<ParamField body="resolution" type="string" default="720p">
  `480p` / `720p` / `1080p` / `4K` (`seedance-2-0-fast` supports only `480p`/`720p`)
</ParamField>

<ParamField body="ratio" type="string" default="adaptive">
  `16:9` / `4:3` / `1:1` / `3:4` / `9:16` / `21:9` / `adaptive`
</ParamField>

<ParamField body="duration" type="integer" default="5">
  Duration in seconds, `[4,15]` or `-1` (auto)
</ParamField>

<ParamField body="seed" type="integer" default="-1">
  Random seed
</ParamField>

<ParamField body="watermark" type="boolean" default="false">
  Add watermark
</ParamField>

<Note>
  `content[].image_url.url` / `video_url.url` / `audio_url.url` support three value types: public URL, Base64 (`data:image/png;base64,...`), and `asset://&lt;ASSET_ID&gt;` asset library references.
</Note>

## Request example

```bash theme={null}
curl -X POST https://api.gravitex.ai/api/v3/contents/generations/tasks \
  -H "Authorization: Bearer sk-your_token_key" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedance-2-0",
    "content": [
      {"type": "text", "text": "黄金时刻，无人机航拍连绵山脉"}
    ],
    "duration": 5,
    "resolution": "720p",
    "ratio": "16:9",
    "generate_audio": true
  }'
```

## Response example

```json theme={null}
{
  "id": "cgt-20260708094649-mxfjc"
}
```

Next: [Get video generation task](/en/api-reference/endpoint/seedance-2.0-new/get-video-generation)
