API 文档

WisGate 文本、图片、视频与通用接口调用说明

Seedance 生视频

创建和查询视频任务,支持文生视频、图生视频和参考素材。

Seedance 生视频

通过 Seedance 原生格式创建异步视频任务,支持文本、首帧、首尾帧及参考素材输入。资产管理与真人认证见同组的 Seedance 资产。

本文介绍 Seedance 系列的视频生成与任务管理。model 使用 WisGate 名称,其余参数采用 Seedance 协议。模型名可路由不等于所有渠道实现了全部最新能力。

基础信息

项目 值
Base URL https://api.wisgate.cn
鉴权 Authorization: Bearer YOUR_API_KEY
JSON 类型 Content-Type: application/json
创建 POST /api/v3/contents/generations/tasks
查询 GET /api/v3/contents/generations/tasks/{id}
尝试取消排队任务 DELETE /api/v3/contents/generations/tasks/{id}

此协议不使用顶层 prompt、size、seconds 代替 content、resolution/ratio、duration。普通视频格式见 通用视频生成。

模型与分辨率

以下为 Seedance 系列模型与分辨率范围,实际可用模型及档位以当前账户开通的渠道为准。

WisGate 模型名 输出分辨率 说明
doubao-seedance-2-5 480p、720p、1080p 支持 2.5 任务类型引导;1080p 输出采用 HEVC/10bit,播放端需相应解码支持
doubao-seedance-2 480p、720p、1080p、4k 标准 2.0,4k 仍须渠道与模型映射开放
doubao-seedance-2-fast 480p、720p 不承诺 1080p/4k
doubao-seedance-2-mini 480p、720p 新增 mini,不承诺 1080p/4k

不要把上游带日期的模型 ID 直接替代 WisGate 模型名,除非平台明确配置了该名称。2.5 规格参考 Seedance 2.5 官方说明,2.0 分辨率可交叉参考 官方价格规格表;此链接不表示 WisGate 使用相同价格。

快速开始

curl --fail-with-body https://api.wisgate.cn/api/v3/contents/generations/tasks \
  -H "Authorization: Bearer $WISGATE_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "doubao-seedance-2-5",
    "content": [{"type":"text","text":"一只小猫在清晨阳光里伸懒腰,镜头缓慢推进,画面温暖自然。"}],
    "resolution": "720p",
    "ratio": "16:9",
    "duration": 5,
    "generate_audio": true,
    "watermark": false
  }'

创建响应示意:

{"id":"cgt-example"}

保存真实返回的 id,随后查询:

curl --fail-with-body https://api.wisgate.cn/api/v3/contents/generations/tasks/cgt-example \
  -H "Authorization: Bearer $WISGATE_API_KEY"

请求字段

网关校验 model 非空、content 为非空数组,并保留原始 JSON 供供应商适配。素材和模型参数限制主要由上游校验;“网关接收”不代表“任务一定成功”。建议显式设置时长、分辨率和比例,避免把计费预估默认值误认为上游生成默认值。

字段 类型 使用规则
model string 必填,WisGate 模型名
content object[] 必填,至少一个有效内容项
duration integer 2.0:4–15 秒或 -1;2.5:4–30 秒或 -1。2.5 视频编辑必须 -1
resolution string 按上表选择;本页示例显式使用 720p
ratio string 16:9、4:3、1:1、3:4、9:16、21:9、adaptive,受任务类型限制
omni_reference_task_type string 2.5 的 auto / reference / edit / extend
generate_audio boolean 是否生成同步音频,示例显式设置
watermark boolean 显式标识控制,实际效果还取决于渠道策略
return_last_frame boolean 请求返回尾帧;成功结果可能包含 last_frame_url
callback_url string 上游状态回调地址;应在选定渠道验证可达性、事件和 ID 关联
execution_expires_after integer 上游范围为 3600–259200 秒、默认 172800;这是上游任务过期控制,不是 HTTP 超时
priority integer 取值 0–9,依赖上游支持;不承诺平台统一优先级或排队 SLA
tools object[] 可声明 {"type":"web_search"},是否启用与执行取决于渠道/模型
safety_identifier string 终端用户标识,推荐不可逆标识;平台部分路由会处理该字段,不用于替代鉴权

2.5 的 duration 默认 -1;建议显式设置时长。官方创建任务参数

不作为通用保证的字段

字段 支持说明
seed、frames、camera_fixed 2.0 暂不支持;2.5 应按对应模型能力确认,不沿用旧版数值范围
service_tier 不在 2.0/2.5 示例配置 flex;官方不支持这两个系列使用离线 flex
draft、draft_task 2.5 官方提供样片能力;使用前需确认平台渠道支持,本页不将其作为通用能力
output_format 等最新扩展 原始字段可能保留,不能据此承诺渠道实现;发布前专项验证
logo_param 旧站点特定渠道扩展,不作为标准 Seedance 参数推广

content 和 role

type 内容字段 role
text text 不填
image_url image_url.url first_frame、last_frame 或 reference_image
video_url video_url.url reference_video
audio_url audio_url.url reference_audio

首帧、首尾帧和多模态参考是不同输入模式,不要混用。首尾帧必须分别标识两张图。参考音频不能作为唯一媒体输入,需同时有参考图片或视频。URL 示例必须换成可供上游读取的实际素材。

图片可使用公网 URL、Data URL 或 asset://ASSET_ID;视频采用公网 URL 或资产引用;音频支持 URL、Data URL 或资产引用,但大文件应使用 URL/资产。资产必须已处理完成,不能把 CreateAsset 成功等同于可立即引用。

首帧 / 首尾帧

以下完整请求使用 2.5 首尾帧,ratio=adaptive:

{
  "model": "doubao-seedance-2-5",
  "content": [
    {"type":"text","text":"镜头从首帧自然过渡到尾帧,保持商品外观一致。"},
    {"type":"image_url","role":"first_frame","image_url":{"url":"https://example.com/first.png"}},
    {"type":"image_url","role":"last_frame","image_url":{"url":"https://example.com/last.png"}}
  ],
  "resolution":"720p",
  "ratio":"adaptive",
  "duration":5
}

只使用首帧时删去 last_frame 项;2.5 首帧/首尾帧也使用 adaptive。不要将旧 2.0 示例中的固定比例直接迁移到 2.5。官方视频使用教程

多模态参考

{
  "model":"doubao-seedance-2-5",
  "omni_reference_task_type":"reference",
  "content":[
    {"type":"text","text":"以参考图中的商品为主体,参考视频的镜头运动,搭配参考音频节奏。"},
    {"type":"image_url","role":"reference_image","image_url":{"url":"asset://asset-example"}},
    {"type":"video_url","role":"reference_video","video_url":{"url":"https://example.com/motion.mp4"}},
    {"type":"audio_url","role":"reference_audio","audio_url":{"url":"https://example.com/music.mp3"}}
  ],
  "resolution":"720p",
  "ratio":"16:9",
  "duration":5,
  "generate_audio":true
}

Seedance 2.5 任务类型引导

值 适用场景 特殊要求
auto 由上游自动判定 仍可能发生异步参数错误
reference 用素材创作新视频 遵循普通参考任务限制
edit 修改原视频画面或音频 至少一个 reference_video;待编辑视频 4–30 秒;ratio=adaptive,duration=-1
extend 向前或向后延长原视频 至少一个 reference_video;ratio=adaptive,时长按上游延长规则

视频编辑示例:

{
  "model":"doubao-seedance-2-5",
  "omni_reference_task_type":"edit",
  "content":[
    {"type":"text","text":"编辑参考视频:保留主体动作和镜头,只将背景替换为晴天海边。"},
    {"type":"video_url","role":"reference_video","video_url":{"url":"https://example.com/input.mp4"}}
  ],
  "ratio":"adaptive",
  "duration":-1,
  "resolution":"720p"
}

延长时使用 extend,提示词明确延长方向和内容,并按实际输入时长核验输出参数。引导字段不能保证消除所有异步错误,最终还取决于模型对提示词的判定。

素材限制要按版本区分

项目 2.0 系列 2.5
全模态参考图数量 最多 9 张 最多 30 张
参考视频 最多 3 个,单段 2–15 秒,总时长 ≤15 秒 最多 10 个,普通参考单段 2–30 秒,总时长 ≤30 秒;编辑输入 4–30 秒
参考音频 最多 3 段,单段 2–15 秒,总时长 ≤15 秒 最多 10 段,单段 2–30 秒,总时长 ≤30 秒

这是官方模型级范围,不是每个 WisGate 渠道的上传额度保证。图片尺寸、编码、文件大小以及混合素材总量还需满足当前官方规则。不要把 2.0 的输入限制套用于 2.5。官方素材要求

真人人像应使用平台开放且经过授权认证的素材流程,不要把普通图片 URL 直接等同于已授权真人资产。具体流程见 资产与真人认证。

联网搜索

在支持此能力的请求顶层增加:

{"tools":[{"type":"web_search"}]}

这是合并片段,不是完整请求。声明工具不保证模型实际搜索;结果中若返回 usage.tool_usage.web_search,其值表示实际搜索统计。不要将这个视频工具结构与 Chat/Responses 的工具定义混用。

查询响应与轮询

成功结构示意:

{
  "id":"cgt-example",
  "model":"doubao-seedance-2-5-260628",
  "status":"succeeded",
  "error":null,
  "created_at":1791504000,
  "updated_at":1791504300,
  "content":{"video_url":"https://example.com/result.mp4","last_frame_url":"https://example.com/last.png"},
  "resolution":"720p",
  "ratio":"16:9",
  "duration":5,
  "framespersecond":24,
  "generate_audio":true,
  "usage":{"completion_tokens":100000,"total_tokens":100000}
}

本地官方响应归一化的主要状态是 queued、running、succeeded、failed。上游 cancelled/expired 等失败别名可能归为 failed;不要只等待单独的 cancelled 状态。兼容客户端也应识别上游/回调可能返回的 expired、cancelled 并停止轮询。

字段 解释
content.video_url 成功后的下载 URL,不是流式视频内容
content.last_frame_url 请求尾帧且上游支持时返回
model 可能为映射后的上游版本名
duration / frames 取决于创建参数和模型;不要要求两者必定同时存在
usage 生成 Token 及可选工具统计,不能直接当作收费金额
error 失败原因,记录其 code/message 等可用字段

建议数秒级有界轮询,超过应用等待时间后保存 ID,稍后继续查,而非重新创建。普通查询可能读取后台更新的本地快照。不要把无 ID 的 GET 集合入口当作官方分页列表:当前实现用于按 unionid 查单个任务。

上游 URL 有效期与下载次数限制可能变化。方舟当前文档说明视频 URL 有效期 24 小时,2.5 下载上限 100 次;平台其他渠道不保证同一时效,取得结果后应及时保存。官方查询说明

取消排队任务

curl --fail-with-body -X DELETE \
  https://api.wisgate.cn/api/v3/contents/generations/tasks/cgt-example \
  -H "Authorization: Bearer $WISGATE_API_KEY"

成功返回:

{"result":{}}

服务端先查询原渠道状态,只对仍在 queued 的任务尝试取消;其他状态返回成功但不执行取消,不删除任务记录。HTTP 200 不证明任务已取消,也不证明已退款。随后继续查询,平台根据权威终态处理后续结算。取消失败可能返回 cancellation_failed 和 Cancellation failed. Please check the task status.。

错误、回调与安全

创建请求缺少 model/content 会被本地拒绝;素材失效、不支持参数、内容审核或供应商资源问题可能在创建后以任务失败返回。错误结构、文案受供应商与渠道转换影响,保存任务 ID 和请求追踪信息用于排查。

callback_url 是上游能力,不能据此承诺 WisGate 统一签名、重试次数或公开 ID 改写。回调接收应幂等,并用保存的公开任务 ID 复查平台状态。避免把签名素材地址、H5 临时凭证或 API Key 放入公开日志。