跳转到主要内容

Documentation Index

Fetch the complete documentation index at: https://docs.laozhang.ai/llms.txt

Use this file to discover all available pages before exploring further.

权限说明 Seedance 2.0 当前上游并发容量较小,为避免排队时间过长和任务失败,暂时不开放新的调用权限。 本文供已接入用户和接入准备参考。开放时间、并发恢复和接入安排会通过 TG 公告频道 @laozhang_ai 同步。
Base URL: https://api.laozhang.ai/seedance/api/v3接口:
  1. POST /contents/generations/tasks:创建视频生成任务
  2. GET /contents/generations/tasks/{id}:查询任务状态与结果
视频生成是异步任务。创建接口通常只返回任务 id,需要轮询查询接口,成功后从 content.video_url 读取视频下载地址。

路由配置

LaoZhang API 当前完整创建地址是:
https://api.laozhang.ai/seedance/api/v3/contents/generations/tasks
如果在后台配置上游渠道,按以下方式配置:
配置项建议值
上游 API 请求地址https://ark.cn-beijing.volces.com
密钥火山方舟 Ark API Key
自定义前缀/seedance
去掉路径前缀留空
可用模型只填纯模型 ID,见下方模型表

创建令牌

令牌管理 创建用于 Seedance 2.0 的令牌时,按下面配置:
配置项选择
计费模式按量优先
选择分组SeeDance2
建议为 Seedance 2.0 单独创建令牌,便于后续查看调用日志和扣费记录
Seedance 2.0 请求必须使用选择了 SeeDance2 分组的令牌。默认分组或其他视频分组的令牌可能出现无可用渠道、模型不匹配或计费分组不正确的问题。
不要把官方路径 /api/v3/contents/generations/tasks 直接拼到 https://api.laozhang.ai 后面。请使用带 /seedance/api/v3 前缀的 Base URL。
当前中转路径下,GET /contents/generations/tasks 不带任务 ID 的列表查询会返回站点 HTML,不应作为业务接口使用。业务侧请使用创建任务和按任务 ID 查询两个接口完成闭环。

接口流程

1

创建任务

调用 POST /contents/generations/tasks,在 model 中传入纯模型 ID,并通过 content 数组传入提示词和可选素材。
2

轮询状态

调用 GET /contents/generations/tasks/{id},检查 status 是否进入终态。
3

下载结果

status=succeeded 时,从 content.video_url 下载视频;如果创建时设置了 return_last_frame=true,还可以读取 content.last_frame_url
状态值:
状态说明
queued任务排队中
running任务生成中
succeeded任务成功,结果在 content
failed任务失败,查看 error
expired任务过期
不要等待 completed 状态,也不要读取顶层 video_url。LaoZhang 中转保持方舟官方响应结构:成功状态是 succeeded,视频地址位于 content.video_url

模型

model 只填纯模型 ID。不要填写控制台接入点 ID,也不要在模型名后附加中文备注。
模型 ID说明推荐用途
doubao-seedance-2-0-fast-260128Seedance 2.0 fast快速生成、文生视频、图片参考、视频参考、音频参考、多模态参考、视频延长、轨道补齐
doubao-seedance-2-0-260128Seedance 2.0 标准版标准质量、首尾帧、视频编辑、对稳定性要求更高的任务
不要在客户端请求中传入 ep-... 接入点 ID。LaoZhang 中转按纯模型 ID 匹配通道。

创建任务

/contents/generations/tasks
创建 Seedance 2.0 视频生成任务。

请求头

Header必填说明
AuthorizationBearer $API_KEY,使用选择了 SeeDance2 分组的 LaoZhang API 令牌
Content-Typeapplication/json
Accept建议application/json
Accept-Encoding调试建议identity,可避免部分客户端调试时的压缩解码干扰

请求参数

参数类型必填说明
modelstring纯模型 ID,如 doubao-seedance-2-0-fast-260128
contentarray多模态内容数组,文本提示词也放在这里
ratiostring16:94:31:13:49:1621:9adaptive
durationintegerSeedance 2.0 支持 415 秒,也支持 -1 自适应
framesinteger按帧数控制输出,优先级高于 duration
resolutionstring常用 720p。Seedance 2.0 fast 不支持 1080p
watermarkboolean是否添加水印
generate_audioboolean是否生成或使用音频
return_last_frameboolean成功后是否返回最后一帧图片 URL

content 内容项

字段类型必填说明
typestringtextimage_urlvideo_urlaudio_url
textstringtype=text 时必填生成提示词
image_url.urlstringtype=image_url 时必填图片 URL
video_url.urlstringtype=video_url 时必填视频 URL
audio_url.urlstringtype=audio_url 时必填音频 URL
rolestring素材项建议填写素材用途
常用 role
role用途
first_frame首帧图片
last_frame尾帧图片
reference_image多模态参考图片
reference_video多模态参考视频
reference_audio多模态参考音频
音频不能作为唯一参考素材单独传入。使用 audio_url 时,需要同时提供至少一个图片或视频素材。

文生视频

curl -X POST "https://api.laozhang.ai/seedance/api/v3/contents/generations/tasks" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  --data-raw '{
    "model": "doubao-seedance-2-0-fast-260128",
    "content": [
      {
        "type": "text",
        "text": "第一人称视角果茶广告,4秒,快节奏剪辑,展示苹果果茶制作与成品,清爽明亮风格"
      }
    ],
    "ratio": "16:9",
    "duration": 4,
    "resolution": "720p",
    "watermark": false,
    "generate_audio": false,
    "return_last_frame": true
  }'
创建成功时通常只返回任务 ID:
{
  "id": "cgt-example-task-id"
}

首尾帧

curl -X POST "https://api.laozhang.ai/seedance/api/v3/contents/generations/tasks" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  --data-raw '{
    "model": "doubao-seedance-2-0-260128",
    "content": [
      {
        "type": "text",
        "text": "首帧为图片1,尾帧为图片2。生成从红苹果产品特写到苹果果茶成品杯的顺滑商业转场,保持产品外观一致,不出现人物。"
      },
      {
        "type": "image_url",
        "image_url": {
          "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/r2v_tea_pic1.jpg"
        },
        "role": "first_frame"
      },
      {
        "type": "image_url",
        "image_url": {
          "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/r2v_tea_pic2.jpg"
        },
        "role": "last_frame"
      }
    ],
    "ratio": "adaptive",
    "duration": 4,
    "resolution": "720p",
    "watermark": false,
    "generate_audio": false,
    "return_last_frame": true
  }'

图片、视频、音频参考

curl -X POST "https://api.laozhang.ai/seedance/api/v3/contents/generations/tasks" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $API_KEY" \
  --data-raw '{
    "model": "doubao-seedance-2-0-fast-260128",
    "content": [
      {
        "type": "text",
        "text": "使用图片1作为苹果产品细节参考,使用视频1作为第一视角运镜参考,使用音频1作为背景音乐。生成简洁的苹果果茶广告,包含食材快切和成品杯特写。"
      },
      {
        "type": "image_url",
        "image_url": {
          "url": "https://ark-project.tos-cn-beijing.volces.com/doc_image/r2v_tea_pic1.jpg"
        },
        "role": "reference_image"
      },
      {
        "type": "video_url",
        "video_url": {
          "url": "https://ark-project.tos-cn-beijing.volces.com/doc_video/r2v_tea_video1.mp4"
        },
        "role": "reference_video"
      },
      {
        "type": "audio_url",
        "audio_url": {
          "url": "https://ark-project.tos-cn-beijing.volces.com/doc_audio/r2v_tea_audio1.mp3"
        },
        "role": "reference_audio"
      }
    ],
    "ratio": "16:9",
    "duration": 4,
    "resolution": "720p",
    "watermark": false,
    "generate_audio": true
  }'

查询任务

/contents/generations/tasks/{id}
查询视频生成任务状态。
curl "https://api.laozhang.ai/seedance/api/v3/contents/generations/tasks/cgt-example-task-id" \
  -H "Authorization: Bearer $API_KEY"
成功响应示例:
{
  "id": "cgt-example-task-id",
  "model": "doubao-seedance-2-0-fast-260128",
  "status": "succeeded",
  "ratio": "16:9",
  "duration": 4,
  "resolution": "720p",
  "content": {
    "video_url": "https://example.com/generated-video.mp4",
    "last_frame_url": "https://example.com/last-frame.jpeg"
  },
  "usage": {
    "completion_tokens": 87300,
    "total_tokens": 87300
  }
}
结果 URL 是临时签名地址,通常有效期为 24 小时。生产环境建议任务成功后立即下载,并转存到自己的对象存储。

Python 完整示例

import os
import time
import requests

API_KEY = os.environ["API_KEY"]
BASE_URL = "https://api.laozhang.ai/seedance/api/v3"

headers = {
    "Authorization": f"Bearer {API_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
}

payload = {
    "model": "doubao-seedance-2-0-fast-260128",
    "content": [
        {
            "type": "text",
            "text": "第一人称视角果茶广告,4秒,快节奏剪辑,清爽明亮风格",
        }
    ],
    "ratio": "16:9",
    "duration": 4,
    "resolution": "720p",
    "watermark": False,
    "generate_audio": False,
    "return_last_frame": True,
}

create_resp = requests.post(
    f"{BASE_URL}/contents/generations/tasks",
    headers=headers,
    json=payload,
    timeout=60,
)
create_resp.raise_for_status()
task_id = create_resp.json()["id"]

while True:
    query_resp = requests.get(
        f"{BASE_URL}/contents/generations/tasks/{task_id}",
        headers={"Authorization": f"Bearer {API_KEY}", "Accept": "application/json"},
        timeout=60,
    )
    query_resp.raise_for_status()
    task = query_resp.json()
    status = task.get("status")

    if status == "succeeded":
        video_url = task["content"]["video_url"]
        video_resp = requests.get(video_url, timeout=180)
        video_resp.raise_for_status()
        with open(f"{task_id}.mp4", "wb") as output:
            output.write(video_resp.content)
        break

    if status in {"failed", "expired"}:
        raise RuntimeError(task)

    time.sleep(15)

常见接入问题

当前路径是 /seedance/api/v3/contents/generations/tasks。不要去掉官方路径里的 /api
不可以。请求里的 model 必须是纯模型 ID,例如 doubao-seedance-2-0-260128。不要写成 doubao-seedance-2-0-260128 (2.0-音画同生)
不建议。LaoZhang 中转按纯模型 ID 匹配通道,请不要传入 ep-...
视频地址在 content.video_url。如果创建任务时设置 return_last_frame=true,最后一帧图片地址在 content.last_frame_url
不能。音频参考需要和至少一个图片或视频素材一起传入,否则请求会被官方接口拒绝。