跳转到主要内容
POST
/
v1
/
tasks
Seedance 系列
curl --request POST \
  --url https://www.qingbo.dev/v1/tasks \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "<string>",
  "prompt": "<string>",
  "duration": 123,
  "resolution": "<string>",
  "aspect_ratio": "<string>",
  "image_urls": [
    "<string>"
  ],
  "video_urls": [
    "<string>"
  ],
  "seed": 123,
  "callback_url": "<string>",
  "callback_events": [
    "<string>"
  ]
}
'
import requests

url = "https://www.qingbo.dev/v1/tasks"

payload = {
"model": "<string>",
"prompt": "<string>",
"duration": 123,
"resolution": "<string>",
"aspect_ratio": "<string>",
"image_urls": ["<string>"],
"video_urls": ["<string>"],
"seed": 123,
"callback_url": "<string>",
"callback_events": ["<string>"]
}
headers = {"Content-Type": "application/json"}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
model: '<string>',
prompt: '<string>',
duration: 123,
resolution: '<string>',
aspect_ratio: '<string>',
image_urls: ['<string>'],
video_urls: ['<string>'],
seed: 123,
callback_url: '<string>',
callback_events: ['<string>']
})
};

fetch('https://www.qingbo.dev/v1/tasks', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));
package main

import (
"fmt"
"strings"
"net/http"
"io"
)

func main() {

url := "https://www.qingbo.dev/v1/tasks"

payload := strings.NewReader("{\n \"model\": \"<string>\",\n \"prompt\": \"<string>\",\n \"duration\": 123,\n \"resolution\": \"<string>\",\n \"aspect_ratio\": \"<string>\",\n \"image_urls\": [\n \"<string>\"\n ],\n \"video_urls\": [\n \"<string>\"\n ],\n \"seed\": 123,\n \"callback_url\": \"<string>\",\n \"callback_events\": [\n \"<string>\"\n ]\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Content-Type", "application/json")

res, _ := http.DefaultClient.Do(req)

defer res.Body.Close()
body, _ := io.ReadAll(res.Body)

fmt.Println(string(body))

}
HttpResponse<String> response = Unirest.post("https://www.qingbo.dev/v1/tasks")
.header("Content-Type", "application/json")
.body("{\n \"model\": \"<string>\",\n \"prompt\": \"<string>\",\n \"duration\": 123,\n \"resolution\": \"<string>\",\n \"aspect_ratio\": \"<string>\",\n \"image_urls\": [\n \"<string>\"\n ],\n \"video_urls\": [\n \"<string>\"\n ],\n \"seed\": 123,\n \"callback_url\": \"<string>\",\n \"callback_events\": [\n \"<string>\"\n ]\n}")
.asString();
{
  "task_id": "task-wave1775285160b950328499",
  "model": "doubao-seedance-2.0",
  "action": "generate",
  "status": "queued",
  "created_at": 1775285160040,
  "progress": 0
}
字节跳动豆包(Doubao)Seedance 视频生成系列,覆盖 文生视频 / 图生视频 场景,统一走异步任务入口,按秒计费
这是 视频 模型 Seedance(动态视频),请勿与豆包的图像模型 Seedream(静态图像)混淆,两者是不同产品线。
五个档位:
  • doubao-seedance-1.5-pro — 1.5 代有声档,音视频联合生成,支持多语言对白 + 口型同步,可用首帧 / 尾帧约束镜头,480p / 720p / 1080p,5 / 10 秒
  • doubao-seedance-2.0 — 2.0 标准档,文生 / 图生,480p / 720p / 1080p,4-15 秒任意整数
  • doubao-seedance-2.0-fast — 2.0 加速档,更快更便宜,480p / 720p(无 1080p),4-15 秒
  • doubao-seedance-2.0-face — 2.0 人脸档,面向人脸 / 数字人场景,480p / 720p / 1080p,4-15 秒
  • doubao-seedance-2.0-fast-face — 2.0 人脸加速档,人脸场景的快速 / 低价版,480p / 720p,4-15 秒

图生视频更便宜

Seedance 2.0 家族(doubao-seedance-2.0 / -fast / -face / -fast-face)对 文生图生 分档计费:
  • 不传 image_urls(文生档) — 纯 prompt 驱动,按各分辨率 文生档 单价计费。
  • image_urls(图生档) — 以输入图作首帧 / 参考,按 图生档 单价计费,通常比文生更便宜(约为文生的 0.6x)。
下方定价表分别列出文生档与图生档两组单价。doubao-seedance-1.5-pro 不区分文生 / 图生,统一单价。

定价

全系 按秒计费($/秒),实际费用 = 对应档位单价 × 时长(秒)。售价即结算 USD 价。

doubao-seedance-1.5-pro

分辨率单价5 秒视频
480p$0.02295 / 秒$0.114750
720p$0.0495 / 秒$0.247500
1080p$0.1215 / 秒$0.607500

doubao-seedance-2.0

分辨率文生档图生档
480p$0.07425 / 秒$0.045 / 秒
720p$0.15975 / 秒$0.09657 / 秒
1080p$0.36 / 秒$0.21843 / 秒

doubao-seedance-2.0-fast

分辨率文生档图生档
480p$0.05976 / 秒$0.03555 / 秒
720p$0.12843 / 秒$0.07695 / 秒

doubao-seedance-2.0-face

分辨率文生档图生档
480p$0.1116 / 秒$0.0675 / 秒
720p$0.2403 / 秒$0.1449 / 秒
1080p$0.5625 / 秒$0.3375 / 秒

doubao-seedance-2.0-fast-face

分辨率文生档图生档
480p$0.09 / 秒$0.054 / 秒
720p$0.1935 / 秒$0.1161 / 秒
实际扣费 = 单价 / 秒 × duration。例:doubao-seedance-2.0 720p 文生 5 秒 = $0.15975 × 5 = $0.798750;同档传 image_urls(图生)5 秒 = $0.09657 × 5 = $0.482850
图生更便宜 — Seedance 2.0 家族只要请求带 image_urls,即按”图生档”列计价;不带则按”文生档”列。fast 版更快更便宜,face 版面向人脸 / 数字人场景。

调用示例

curl -X POST https://www.qingbo.dev/v1/tasks \
  -H "Authorization: Bearer $WAVE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-1.5-pro",
    "prompt": "海边日落,金色阳光洒在海面上,海浪轻轻拍打沙滩,电影感光影",
    "duration": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9",
    "audio": true
  }'
curl -X POST https://www.qingbo.dev/v1/tasks \
  -H "Authorization: Bearer $WAVE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-2.0",
    "prompt": "一只小猫对着镜头打哈欠,慢镜头特写",
    "duration": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9"
  }'
curl -X POST https://www.qingbo.dev/v1/tasks \
  -H "Authorization: Bearer $WAVE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-2.0",
    "prompt": "人物缓缓走向镜头,镜头微微推进",
    "image_urls": ["https://cdn.example.com/portrait.jpg"],
    "duration": 6,
    "resolution": "1080p"
  }'
curl -X POST https://www.qingbo.dev/v1/tasks \
  -H "Authorization: Bearer $WAVE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-2.0-face",
    "prompt": "数字人正面讲解,自然眨眼与口型变化",
    "image_urls": ["https://cdn.example.com/avatar.jpg"],
    "duration": 8,
    "resolution": "720p"
  }'
curl -X POST https://www.qingbo.dev/v1/tasks \
  -H "Authorization: Bearer $WAVE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "doubao-seedance-2.0-fast",
    "prompt": "城市夜景延时,车流光轨",
    "duration": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9"
  }'
{
  "task_id": "task-wave1775285160b950328499",
  "model": "doubao-seedance-2.0",
  "action": "generate",
  "status": "queued",
  "created_at": 1775285160040,
  "progress": 0
}
提交后用 GET /v1/tasks/{task_id} 轮询状态,详见 任务系统

媒体字段路由

Seedance 全系仅支持 generate 一种 action,后端按 image_urls 数量自动决定生成模式,无需显式传 action
image_urls 数量用途计费档
0 张(或不传)文生视频,画面比例由 aspect_ratio 控制文生档
1图生视频,该图作首帧图生档
2首尾帧(1.5 Pro / 2.0 标准档),跟随首帧比例图生档
doubao-seedance-2.0 标准档另支持 video_urls(参考视频);fast / face / fast-face 仅支持 image_urls

可用模型

模型 ID分辨率时长(秒)备注
doubao-seedance-1.5-pro480p / 720p / 1080p5 / 10音视频联合生成,口型同步,多语言对白
doubao-seedance-2.0480p / 720p / 1080p4-15 任意整数2.0 标准档,文生 / 图生,支持参考视频
doubao-seedance-2.0-fast480p / 720p4-15 任意整数加速档,更快更便宜
doubao-seedance-2.0-face480p / 720p / 1080p4-15 任意整数人脸 / 数字人场景
doubao-seedance-2.0-fast-face480p / 720p4-15 任意整数人脸场景的快速 / 低价版

通用参数

model
string
必填
模型 ID,见 可用模型
prompt
string
必填
视频描述文本。建议详细描述场景 / 动作 / 风格 / 对白,以获得更好的生成效果
duration
integer
默认值:"5"
视频时长(秒):
  • doubao-seedance-1.5-pro:5 / 10
  • 2.0 家族:4-15 任意整数
resolution
string
默认值:"720p"
输出分辨率,各模型档位见 可用模型 表:
  • 1.5-pro / 2.0 / 2.0-face:480p / 720p / 1080p
  • 2.0-fast / 2.0-fast-face:480p / 720p
aspect_ratio
string
默认值:"16:9"
画面宽高比,仅文生视频生效;带 image_urls 时跟随首帧比例。可选值:
  • 16:9 — 横版宽屏
  • 9:16 — 竖版长屏
  • 1:1 — 正方形
image_urls
string[]
参考图片 URL 数组(传入即走 图生档 计费):
  • 1 张 = 首帧驱动(图生视频)
  • 2 张 = 首帧 + 尾帧约束插值(1.5-pro / 2.0 标准档)
video_urls
string[]
参考视频 URL 数组,doubao-seedance-2.0 标准档支持。需公网可下载链接
seed
integer
随机种子。相同请求 + 相同 seed 会生成类似结果(不保证完全一致);省略或传 -1 则随机
callback_url
string
Webhook 回调地址,任务终态时调用。详见 回调机制
callback_events
string[]
订阅的回调事件,默认订阅终态(succeeded / failed / cancelled)

模型特定参数

audio
boolean
默认值:"false"
是否生成音频(有声视频)。设为 true 时视频包含 AI 生成的配套音频,支持多语言对白 + 口型同步
camerafixed
boolean
默认值:"false"
是否固定摄像头。设为 true 时摄像头位置保持固定

资源限制

项目限制
参考图(image_urls)最多 2 张(首帧 + 尾帧),JPG / PNG / WEBP,需公网可下载
参考视频(video_urls)2.0 标准档,MP4 / MOV,需公网可下载
Prompt 长度建议详细描述场景 / 动作 / 对白
视频时长1.5-pro:5 / 10 秒;2.0 家族:4-15 秒
输出MP4,链接 24 小时有效

相关文档