metadata 引用 asset:// 素材 ID;网关会做 用户归属校验请求体字段级说明以火山方舟 / BytePlus 官方「素材 Universal OpenAPI」「视频生成 API」文档为准;下文侧重 网关 URL、鉴权、Action 列 表与 Seedance 2.0 模型名。
channel_id=<数字渠道ID>X-Ark-Channel-Id: <数字渠道ID>| 方法 | 路径 | 鉴权 |
|---|---|---|
POST | /v1/video/generations | API Token(Authorization: Bearer <sk>)+ 分发中间件 |
GET | /v1/video/generations/:task_id | 同上 |
/v1/videos 等,以 router/video-router.go 为准。)doubao-seedance-2-0-260128doubao-seedance-2-0-fast-260128dreamina-seedance-2-0-260128dreamina-seedance-2-0-fast-260128model:上述 Seedance 2.0 模型名之一prompt:文本提示size:如 1280x720(可选,会映射为上游 resolution / ratio)metadata:可选;其中 content 数组可包含图片/视频/音频引用metadata.content 中,若某条目的 image_url / video_url / audio_url 下 url 为 asset://<素材资源ID>,网关会在提交前校验:当前用户在该 channel_id 下是否拥有该素材绑定。未绑定或无权限将返回 403(错误类型 ark_asset_forbidden)。asset:// 示例 (节选):{
"model": "doubao-seedance-2-0-260128",
"prompt": "基于参考图生成短片",
"size": "1280x720",
"metadata": {
"resolution": "720p",
"content": [
{
"type": "image_url",
"image_url": { "url": "asset://asset-20260318071009-abc" }
}
]
}
}type: "video_url" 与 video_url.url: "asset://..."。POST {BaseURL}/?Action={Action}&Version={Version},其中 Version 固定为 2024-01-01(与代码 pkg/arkassets.DefaultAPIVersion 一致),由渠道配置的 AK/SK 完成签名。| 方法 | 路径 | 鉴权 |
|---|---|---|
POST | /v1/ark/assets/:action | API Token |
:action 为下游 Action 名(见下表),大小写敏感。channel_id 或 X-Ark-Channel-Id。Content-Type(多为 application/json)。{ "error": { "message": "...", "type": "invalid_request_error" } }。Get / Update / Delete 仅允许操作已绑定资源。ListAssets / ListAssetGroups 会自动将列表过滤到当前用户可见范围| 方法 | 路径 | 鉴权 |
|---|---|---|
POST | /api/user/ark-assets/:action | 用户 Session(与控制台一致) |
channel_id 或 X-Ark-Channel-Id,行为与 OpenAPI 用户隔离一致,响应为控制台常用 { success, message, data? } 风格;成功时代理体仍可能为 二进制或 JSON,以实际 Content-Type 为准。| 方法 | 路径 | 鉴权 |
|---|---|---|
GET | /api/user/ark-channels | 用户 Session |
ark_ready(是否已配置素材 AK/SK)等字段,便于前端引导用户选择 channel_id。pkg/arkassets.AllowedActions 一致:| Action | 说明 |
|---|---|
CreateAssetGroup | 创建素材组 |
CreateAsset | 创建素材(需合法 GroupId) |
ListAssetGroups | 列举素材组 |
ListAssets | 列举 素材 |
GetAsset | 查询素材详情(Body 含 Id) |
GetAssetGroup | 查询素材组详情(Body 含 Id) |
UpdateAssetGroup | 更新素材组 |
UpdateAsset | 更新素材 |
DeleteAsset | 删除素材 |
DeleteAssetGroup | 删除素材组 |
CreateVisualValidateSession | 真人 H5 活体会话创建(须 Ark 区域 Host) |
GetVisualValidateResult | 活体结果查询(同上) |
unsupported ark asset action)。BASE、SK、CH 替换为实际网关地址、令牌与渠道 ID:body.json 中 metadata.content 使用上一节 asset:// 形式即可;视频任务走推理渠道,不要求在 URL 上带 channel_id(由网关分发逻辑选择渠道);素材引用校验使用任务实际落到的渠道 与用户 ID。| 现象 | 可能原因 |
|---|---|
channel not found / 无法解析渠道 | channel_id 无效或未传 |
channel does not belong to the current user group | 令牌分组无权使用该渠道 |
无权访问该素材资源 / 403 | asset:// 对应素材未在该用户+渠道下登记 |
| 活体相关 400 | ark_asset_openapi_host 不是 ark.*.volcengineapi.com 或 ark.*.byteplusapi.com |
unsupported ark asset action | Action 拼写错误或不在白名单 |