Seedance 方舟原生素材库版
Seedance 方舟原生素材库版:素材组与素材管理、真人认证,以及 /hub/api/v3 视频创建、查询、列表、删除,异步
本模式独立提供 v3 视频创建、查询、列表、删除,以及素材组、素材与真人认证接口。素材库版与Seedance 方舟原生接口是两个独立模式:视频 API Base 不同,任务、素材、Endpoint 绑定不能跨模式使用;相同 model ID 不会自动切换模式。
| 项 | 值 |
|---|---|
| 视频 API Base | https://api.vibelab.me/hub/api/v3(支持自定义地址的方舟视频 SDK 将 base_url 设为此地址) |
| 素材/认证入口 | POST https://api.vibelab.me/?Action=<Action>&Version=2024-01-01,JSON 请求体 |
| 鉴权 | Authorization: Bearer <LOOPTOKEN_API_KEY>,无需 AK/SK 或 V4 签名 |
| 模式 | 视频异步:创建 → 轮询 GET /hub/api/v3/contents/generations/tasks/{id} |
| 计费 | 按 usage.completion_tokens,见计费 |
| 媒体保留 | 视频产物 URL 最长 24 小时,任务记录仅最近 7 天可查;素材临时链接最长 12 小时 |
- 请求字段、Action 名称、成功响应使用方舟原生格式。官方 SDK 中需要 AK/SK 的管理客户端不能直接使用此鉴权,请按下文 HTTP 示例调用。
/api/v3属于独立的方舟原生接口,不能用来访问本模式任务。两种模式可用同一把 LoopToken Key,仍须分别获得对应模式和模型的访问权限。- 素材功能需要账户、Key、模型均获准使用本模式。受限 Key 按原有权限访问,不获得额外权限。
快速开始
curl 'https://api.vibelab.me/hub/api/v3/contents/generations/tasks' \
-H "Authorization: Bearer $LOOPTOKEN_API_KEY" \
-H 'Content-Type: application/json' \
-d '{
"model":"doubao-seedance-2-5-260628",
"content":[{"type":"text","text":"一只猫在阳光下散步"}],
"duration":5,"resolution":"720p","ratio":"16:9","watermark":false
}'成功返回 HTTP 200,id 原样使用上游创建接口返回的任务 ID(兼容 output.task_id),不替换为平台生成的任务编号:
{"id":"cgt-上游任务标识"}这是异步任务,保存 id,用本模式的 v3 查询接口检查状态;创建成功不代表视频已生成。
模式选择
| 要做什么 | 怎么调用 |
|---|---|
| 生成视频 | POST /hub/api/v3/contents/generations/tasks,见视频参数 |
| 查询、列出、删除视频任务 | GET / DELETE /hub/api/v3/contents/generations/tasks[/{id}],见响应 |
| 管理素材组与素材 | POST /?Action=<Action>&Version=2024-01-01,见素材 Action |
| 真人认证 | CreateVisualValidateSession / GetVisualValidateResult,见真人认证 H5 |
请求参数
视频参数
支持的模型 ID(实际开放状态与售价以账户权限及平台价格配置为准):doubao-seedance-2-0-260128、doubao-seedance-2-0-fast-260128、doubao-seedance-2-0-mini-260615、doubao-seedance-2-5-260628。也可用平台为本模式绑定的 Endpoint ID;另一模式的 Endpoint 绑定不能复用。
创建请求是 JSON 对象,控制参数在顶层,媒体在 content 数组;不要使用 /v1 接口的扁平 prompt 请求体。
| 参数 | 类型 | 必填 | 默认 | 说明 |
|---|---|---|---|---|
model | string | 是 | - | 上述模型 ID 或本模式已绑定的 Endpoint ID |
content | array | 是 | - | 非空的文本、图片、视频、音频数组 |
duration | integer | 否 | - | 秒数:2.0 系列 4–15,2.5 为 4–30;-1 自动选择 |
resolution | string | 否 | - | 480p、720p 等模型支持的档位;通常用 720p |
ratio | string | 否 | - | 16:9、4:3、1:1、3:4、9:16、21:9、adaptive |
seed | integer | 否 | - | 随机种子,原样透传;不能保证相同种子完全复现画面,具体取值范围与效果由模型服务决定 |
generate_audio | boolean | 否 | - | 是否生成音频 |
watermark | boolean | 否 | - | 是否添加水印 |
callback_url | string | 否 | - | 可公开访问的 HTTPS 回调地址;回调使用创建时返回的上游任务 ID |
execution_expires_after | integer | 否 | - | 任务过期秒数,3600–259200 |
附加生成参数与未列出的扩展字段默认透传,保留原始值和嵌套结构,支持范围由模型服务校验。平台仍执行模型权限、素材归属、路由、计费及回调所需校验;参数被接受不代表模型服务保证支持或生效。
省略控制参数时保留模型服务的默认行为。分辨率、时长、媒体组合仍须符合所选模型能力。创建前预冻结积分,完成后按核实的生成用量结算。
content 结构:
| type | 内容字段 | role |
|---|---|---|
text | text | 不需要 |
image_url | image_url.url | reference_image、first_frame 或 last_frame |
video_url | video_url.url | reference_video |
audio_url | audio_url.url | reference_audio |
- 图片、视频、音频可用无需登录的公网 URL,或本模式返回的
asset://asset-公开标识。图片与音频也可用对应 MIME 的 Base64 数据 URL;视频不支持 Base64。请求体上限 64 MiB。 - 首尾帧不能与参考图模式混用。
素材 Action
| Action | 请求字段 | Result |
|---|---|---|
| CreateAssetGroup | Name,Description 可选,GroupType 仅 AIGC,LibraryKey 可选 | Id |
| ListAssetGroups | Filter.GroupType,分页/排序,LibraryKey 可选筛选 | Items,Libraries;页码模式带 TotalCount |
| GetAssetGroup | Id | 素材组信息 |
| UpdateAssetGroup | Id,Name/Description | Id |
| DeleteAssetGroup | Id | 空对象 |
| CreateAsset | GroupId,URL,AssetType,Name 可选,Moderation 可选 | Id |
| ListAssets | Filter.GroupType,GroupIds/Name/Statuses 可选,分页/排序,LibraryKey 可选筛选 | Items;页码模式带 TotalCount |
| GetAsset | Id | 素材信息,含 Status 与临时 URL |
| UpdateAsset | Id,Name | Id |
| DeleteAsset | Id | 空对象 |
| CreateVisualValidateSession | CallbackURL,LibraryKey 可选 | H5Link,BytedToken,CallbackURL |
| GetVisualValidateResult | BytedToken | GroupId(完成后) |
- 可用素材库以
ListAssetGroups返回的Libraries为准(每项含LibraryKey与Name),库的数量和可用模型可能调整,不要写死。建组或发起真人认证时可传LibraryKey指定素材库,不传则落平台默认库;只有一个库时无需传。素材组、素材条目带LibraryKey字段,ListAssetGroups/ListAssets可按LibraryKey筛选。 - 全部操作支持可选
ProjectName,默认default。资源 ID、认证 token、分页 token 仅在当前账户及项目下有效。 - 同一账户的多把 Key 可按各自权限访问该账户资源;不同账户完全隔离。直接传入他人的 ID 返回资源不可用,不暴露是否存在。素材组删除后,其素材引用与下载链接均失效。
Name最长 64 字符,素材组Description最长 300 字符。AssetType为 Image、Video 或 Audio。- 素材状态 Processing、Active、Failed,只有 Active 可用于生成。
Moderation若提供,必须是{"Strategy":"Default"}。- 真人素材必须经过认证,无法通过 CreateAssetGroup 自行创建 LivenessFace 素材组;在已有真人组追加素材时,仍由服务检查人脸一致性与审核。
素材组与素材示例
curl 'https://api.vibelab.me/?Action=CreateAssetGroup&Version=2024-01-01' \
-H "Authorization: Bearer $LOOPTOKEN_API_KEY" -H 'Content-Type: application/json' \
-d '{"Name":"产品参考","Description":"产品视频使用","GroupType":"AIGC"}'{"ResponseMetadata":{"RequestId":"请求标识","Action":"CreateAssetGroup","Version":"2024-01-01","Service":"ark","Region":"cn-beijing"},"Result":{"Id":"group-公开标识"}}curl 'https://api.vibelab.me/?Action=CreateAsset&Version=2024-01-01' \
-H "Authorization: Bearer $LOOPTOKEN_API_KEY" -H 'Content-Type: application/json' \
-d '{"GroupId":"group-公开标识","Name":"参考图","AssetType":"Image","URL":"https://example.com/reference.png"}'- 素材 URL 必须无需登录即可访问。控制台也提供文件上传。
- 创建返回 Id 后调用 GetAsset 检查处理状态;控制台可用“刷新状态”。
- 素材临时访问链接有效期最长 12 小时,需下载时重新查询;删除或账户禁用可提前使链接失效。
以下是各 Action 的 body 示例(HTTP 调用时 Action 放 query,body 放 JSON 请求体):
{"Action":"GetAsset","body":{"Id":"asset-公开标识"}}
{"Action":"GetAssetGroup","body":{"Id":"group-公开标识"}}
{"Action":"UpdateAssetGroup","body":{"Id":"group-公开标识","Name":"新名称","Description":"新描述"}}
{"Action":"DeleteAssetGroup","body":{"Id":"group-公开标识"}}
{"Action":"UpdateAsset","body":{"Id":"asset-公开标识","Name":"新名称"}}
{"Action":"DeleteAsset","body":{"Id":"asset-公开标识"}}列表与分页
Filter 必填,GroupType 为 AIGC 或 LivenessFace。可按 Name、GroupIds 过滤;ListAssets 还支持 Statuses 数组。
{"Action":"ListAssetGroups","body":{"Filter":{"GroupType":"AIGC"},"PageNumber":1,"PageSize":20}}
{"Action":"ListAssets","body":{"Filter":{"GroupType":"AIGC","GroupIds":["group-公开标识"],"Statuses":["Active"]},"MaxResults":20}}| 模式 | 参数 | 规则 |
|---|---|---|
| 页码 | PageNumber(从 1 开始)+ PageSize(1–100),必须同时传 | 带 TotalCount;素材组 PageNumber × PageSize > 10000、素材超过 20000 时改用 token 模式 |
| token | MaxResults(默认 10,1–100)+ 上一页的 NextToken | 不返回 TotalCount;无 NextToken 表示结束;token 有效期 1 小时 |
- 两种模式不能混用。取下一页时保持筛选、排序、项目、MaxResults 一致。
SortBy支持 CreateTime、UpdateTime;ListAssets 另支持 GroupId。SortOrder为 Asc 或 Desc,默认 Desc。列表与计数仅含当前账户资源。
真人认证 H5
curl 'https://api.vibelab.me/?Action=CreateVisualValidateSession&Version=2024-01-01' \
-H "Authorization: Bearer $LOOPTOKEN_API_KEY" -H 'Content-Type: application/json' \
-d '{"CallbackURL":"https://your-app.example/verified"}'{"Action":"GetVisualValidateResult","body":{"BytedToken":"validate-公开标识"}}- 返回
H5Link与公开BytedToken。把 H5Link 原样展示给用户,用户打开链接完成活体认证;链接可能使用认证服务域名,属于此流程的授权例外。会话有效期 30 分钟。API Key 不会放入链接。 - 成功后
GetVisualValidateResult返回当前账户的 GroupId,可调用 ListAssets 查询该真人组。未完成返回 AuthenticationPending,可稍后重查。 - 认证结束后浏览器跳转 CallbackURL,带
bytedToken、resultCode,成功时附公开 GroupId。浏览器参数不能作为授权依据:服务端必须用原 Key 调 GetVisualValidateResult 确认。
请求示例
引用素材生成视频:
{
"model":"doubao-seedance-2-0-260128",
"content":[
{"type":"text","text":"人物向镜头挥手"},
{"type":"image_url","image_url":{"url":"asset://asset-公开标识"},"role":"reference_image"}
],
"duration":5,"resolution":"720p"
}素材引用使用本平台返回的公开 Asset Id。生成前检查所有权、状态、媒体类型与真人认证关系。素材须属于同一素材渠道和同一项目,并使用该项目可用的模型/Endpoint;项目与模型的兼容性仍由生成服务校验。其他模式不能使用本模式素材。
响应
创建成功返回 HTTP 200 和 {"id":"cgt-上游任务标识"},见快速开始。用该 id 查询任务,status 取值见下。
查询视频
curl 'https://api.vibelab.me/hub/api/v3/contents/generations/tasks/cgt-上游任务标识' \
-H "Authorization: Bearer $LOOPTOKEN_API_KEY"{
"id":"cgt-上游任务标识",
"model":"doubao-seedance-2-5-260628",
"status":"succeeded",
"duration":5,"resolution":"720p",
"content":{"video_url":"https://api.vibelab.me/native-assets/media/临时访问标识"},
"usage":{"completion_tokens":12345,"total_tokens":12345}
}- 建议每 5–10 秒查询一次。
status:queued(排队)、running(生成中)、succeeded(成功)、failed(失败)、expired(过期)。 - 字段以实际返回为准,
usage中的用量并非每次都齐全。 - 任务响应、列表、回调使用同一上游任务 ID;旧平台任务 ID 仍可作为查询、筛选、删除的兼容别名。
- 视频产物 URL 为平台临时链接,最长 24 小时,请及时下载。查询范围为最近 7 天。
- 任务不存在、属于另一账户或属于另一模式时返回 404。
提交网络异常、响应损坏或未返回任务 ID 时可能仍已接单。此时返回 HTTP 503,error.code=SubmissionUnconfirmed,不返回虚构的任务 ID。不要重新提交相同付费任务 → 保留响应头 X-Request-Id 联系管理员核对。
- 冻结额度保留,由管理员核对后恢复查询或退款。未确认的提交不会出现在视频任务列表中;核对确认未创建时,回调用
request_id关联原始请求,不提供任务id。 - 缺少可计费用量的成功任务也需要核对,不会当成免费生成。
视频列表
curl 'https://api.vibelab.me/hub/api/v3/contents/generations/tasks?page_num=1&page_size=20&filter.status=succeeded' \
-H "Authorization: Bearer $LOOPTOKEN_API_KEY"返回 {"total":1,"items":[任务对象]},只含当前账户、当前模式及当前 Key 有权限访问的最近 7 天任务。
| 查询参数 | 说明 |
|---|---|
page_num | 页码,从 1 开始,默认 1,最大 500 |
page_size | 每页条数,默认 20,最大 500 |
filter.status | 按任务状态筛选 |
filter.task_ids | 按上游任务 ID 筛选(兼容旧平台任务 ID),可重复传入 |
filter.model | 本模式绑定的 Endpoint ID,以 ep- 开头 |
filter.service_tier | default 或 flex;本模式创建仅支持 default |
视频列表用小写 query 参数;素材 Action 列表用上文的 JSON 分页字段,两者不能混用。
删除视频记录
curl -X DELETE 'https://api.vibelab.me/hub/api/v3/contents/generations/tasks/cgt-上游任务标识' \
-H "Authorization: Bearer $LOOPTOKEN_API_KEY"- 仅删除已结束且完成计费核对的任务记录,成功返回 HTTP 200 和
{},其平台产物访问链接随之失效。 - 不会取消生成,也不会撤销已结算费用。
- 排队中、处理中或尚未完成计费核对返回 409 → 继续查询原任务。另一账户或另一模式的任务返回 404。
计费
- 视频生成与Seedance 方舟原生接口共用同一套 Token 基础价格,按模型、分辨率、是否含参考视频选档,按
usage.completion_tokens结算,不按视频秒数收费。创建时预扣估算额度,结算按返回的生成 Token 数计算。 - 两种模式的折扣独立:管理员在用户列表选“素材折”,可设素材库版通用折扣和模型折扣;模型留空继承素材库版通用折扣,默认系数
1为原价,0.8为八折。原生接口已有的折扣不会自动应用到素材库版。 - 共用基础价中的原生专属绝对价优先,不叠加折扣;新折扣仅影响新任务,已创建任务按创建时锁定的价格档位与折扣结算。
- 素材管理和真人认证本身不按视频生成 Token 计费。
- 用户可在控制台“模型价格”的“Seedance 方舟原生素材库版”分组查看自己的有效 Token 价格。
错误
素材 Action 错误采用 ResponseMetadata.Error,含 Code、Message,请求标识与 Action 保留,错误内容经过净化。视频接口错误体 {"error":{"code":"错误码","message":"说明"}}:400 参数问题;401/403 Key 或模式权限问题;404 模型或任务不可访问;409 无法删除当前任务;503 本模式暂无可用服务。
| HTTP | code | 触发场景 | 处理 |
|---|---|---|---|
| 400 | InvalidParameter | 参数、分页或素材类型不合法 | 检查参数、分页及素材类型 |
| 401 / 403 | 鉴权错误 / AccessDenied | Key 无效,或账户、Key、模型未获准使用本模式 | 检查 Key 与权限 |
| 404 | InvalidAsset.NotFound | 素材资源不存在、已删除或无访问权限;任务不存在或属于另一账户、另一模式 | 检查 ID 与归属 |
| 409 | AuthenticationPending / AuthenticationConflict | 真人认证未完成或会话冲突;删除时任务尚未结束或未完成计费核对 | 等待认证完成或重新核对会话;继续查询原任务 |
| 502 / 503 | ServiceUnavailable | 本模式暂无可用服务 | 稍后重试查询;创建请求结果不明确时先核对 |
| 503 | SubmissionUnconfirmed | 创建请求提交结果无法确认 | 不要重新提交,保留 X-Request-Id 联系管理员 |
注意事项
- 创建请求超时或未返回任务 ID → 不要重新提交,先按查询视频中的说明保留
X-Request-Id核对。 - 素材
asset://引用 → 只能用本模式返回的素材,只有Active状态可用于生成;其他模式不能使用。 - 视频产物 URL 与素材临时链接 → 有时效,及时下载转存。
/api/v3任务与本模式任务 → 互不可见,查询范围仅最近 7 天。