# Seedance 2.0 Mini — /videos/generations

Seedance 2.0 Mini 视频生成（异步任务）：入门档、站内单价最低；时长 duration=5–15 的任意整数秒，分辨率 480P / 720P（默认 720P），画幅五选一（16:9 / 9:16 / 1:1 / 4:3 / 3:4），audio 控制是否生成音轨（默认 true）；带 image 即图生视频。提交后返回任务号（HTTP 202），轮询 GET /v1/videos/jobs/{id}。按秒计费（带参考视频时参考视频秒数也计入）、失败全额退。

**端点:** `POST https://kovapi.com/v1/videos/generations`

## 认证
```
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
```

## 请求参数
| 参数 | 类型 | 必填 | 说明 |
| --- | --- | --- | --- |
| `model` | string | 是 | 模型 ID，此处为 seedance-2.0-mini。 |
| `prompt` | string | 是 | 视频内容、镜头与运动的描述。最长 5000 字节（UTF-8，中文一个字算 3 字节，约 1666 字）。传多张参考图时，可用 @Image1 / @Image2 在提示词里点名第几张，例如「@Image1 的角色站在 @Image2 的场景里」；不点名则由模型自行取用。 |
| `duration` | integer | 否 | 时长秒数，5–15 的任意整数（默认 5）。也可写作 seconds。按秒计费。 |
| `resolution` | string | 否 | 分辨率：480P / 720P（默认 720P；每档单价不同，见模型页价格表）。 |
| `size` | string | 否 | 画幅：16:9 / 9:16 / 1:1 / 4:3 / 3:4（默认 16:9）。也可写作 aspect_ratio。 |
| `audio` | boolean | 否 | 成片固定带声音（对白、音效和配乐都由模型按提示词生成），不能关闭；传 false 不起作用。 |
| `image` | string | 否 | 一张参考图（公网 URL、data: URI 或 base64），作为人物、物体、场景或风格参考交给模型；多张请用 images。该模型没有首帧控制，参考图不保证出现在第一帧。不带任何参考素材则为文生视频。 |
| `images` | array | 否 | 多张参考图，最多 9 张（本模型上限）。数组元素可以是公网 URL、data: URI 或 base64。超过上限会直接报错，不会截断。也可写作 reference_images。 单张不超过 16MB，支持 jpg / png / webp / gif；提示词里按顺序用 @Image1、@Image2 … 点名。 |
| `image_role` | string | 否 | 可省略。参考图一律作为参考使用（定人物、场景、风格），在提示词里用 @Image1… 点名；该模型没有首帧 / 尾帧控制。 |
| `audio_reference` | string / array | 否 | 参考音频的公网 http(s) 链接，最多 3 段。必须与参考图或参考视频一起使用，不能单独提供。也可写作 audio_references，两者不要同时给。 也可以传 base64（data:audio/mpeg;base64,...），支持 mp3 / wav / m4a；提示词里用 @Audio1 点名。 |
| `video_references` | array | 否 | 参考视频，最多 3 个。每个可以是公网 http(s) 链接，也可以直接传本地视频的 base64（data:video/mp4;base64,...，mp4 / mov，单个不超过 50MB），由我们托管后再交给上游。可以和参考图一起传（例如用照片定人物外貌、用视频定动作和运镜），在提示词里用 @Image1 / @Video1 分别点名。 每段不超过 30 秒，合计不超过 15 秒；我们托管的参考素材保留 7 天。 |

## 请求示例
```bash
# 1) submit -> 202 {"id":"img_...","status":"queued"}
curl https://kovapi.com/v1/videos/generations -H 'Authorization: Bearer YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"model": "seedance-2.0-mini", "prompt": "a cat surfing a wave at sunset", "duration": 5, "resolution": "720P", "size": "16:9"}'
# with references: add "images": ["https://example.com/a.png"], "video_references": ["https://example.com/move.mp4"], "audio_reference": ["https://example.com/bgm.mp3"] and name them @Image1 / @Video1 / @Audio1 in the prompt
# 2) poll every ~5s until status=succeeded, then read data[0].url
curl https://kovapi.com/v1/videos/jobs/img_3f9a...c2 -H 'Authorization: Bearer YOUR_API_KEY'
```

## 响应示例
```json
{
  "id": "img_3f9a...c2",
  "object": "video.generation.job",
  "status": "queued",
  "model": "seedance-2.0-mini"
}
```

## 内容要求

Seedance 的每个任务都要经过内容审核，范围包括提示词、参考素材和生成的成片，画面和声音都审。没通过审核的任务以 `content_policy` 失败，不收费。

### 什么时候审

提交时先审提示词和参考素材，成片生成后再审一次画面和声音。所以被拒的结果可能在提交后几秒内返回，也可能要等到渲染结束，半小时以上才返回。任务以 `status` 为 `failed`、`error.code` 为 `content_policy` 结束，就是没通过审核；用 Webhook 会收到 `video.failed` 事件。

### 不收费

被拒的任务不扣费：提交时预扣的金额在任务结束时全额退回，调用日志里也显示未计费。

### 声音

成片的声音（对白、旁白、歌声和音效）由模型按提示词生成，和画面一起审核：提示词里写的台词、旁白和歌词会被念出来或唱出来。不需要人声的片子，提示词里就别写台词和歌词。这个型号每条成片都带声音，不能关闭；请求里传 `audio: false` 不起作用。上传的参考音频同样要过审，受版权保护的音乐作参考音频可能被拒。声音没通过时，`error.param` 为 `audio`，message 会写明是生成的声音还是上传的参考音频。

### 常被拒的内容

- 色情、裸露或性暗示，包括 AI 生成或合成的画面
- 血腥、残忍、自残，以及中枪、流血等暴力伤害
- 枪支、爆炸物、毒品
- 涉及未成年人的性化内容一律不行；未成年人和烟酒、毒品或危险行为同框也会被拒
- 政治人物、明星、体育和商界名人等公众人物的形象或声音，包括长得很像的人物
- 受版权保护的角色和 IP 形象，例如迪士尼、漫威角色
- 仇恨、歧视内容和虚假新闻

### 长分镜脚本

一条成片只要有一个镜头违规，整条都会被拒，长分镜脚本最容易踩到：动作戏里的枪战和流血特写、未成年人出现在饮酒或吸烟的场景里，都会让整条失败。提交前通读一遍，删掉或改写这类镜头。

### 真人肖像

用真人照片作参考，需要你有权使用其肖像。

### 被拒之后

原样重新提交还会被拒。先找出可能违规的那部分，改写提示词或更换参考素材，再重新提交。

错误码: `content_policy` · `status: failed`