素材库 · 火山兼容

使用与火山方舟素材库一致的 Action、Version、请求参数和响应字段,管理 Seedance 2.0 可引用的图片、视频、音频及真人素材。本页逐项列出全部 12 个 Action 的完整路径、参数、请求体、响应字段和成功示例,可独立用于接入。

请求方式

POST https://heiyutv.com/?Action={Action}&Version=2024-01-01
Authorization: Bearer sk-gw-XXXXXXXXXXXXXXXXXXXXXXXXXX
Content-Type: application/json
字段类型必选说明
Actionquery string取下方 12 个 Action 之一,大小写敏感。
Versionquery string固定为 2024-01-01。
Content-Typeheader固定为 application/json。
AuthorizationheaderBearer API Key 或 HMAC-SHA256,二选一。

每个请求必须在 Bearer API Key 与 AK/SK HMAC-SHA256 中任选一种,不能混用; 不接受控制台会话。Bearer Key 必须包含视频模型权限; 沙箱账号不提供素材库能力。ProjectName 未填写时为default,大小写敏感。

AK/SK 签名

在控制台「API Keys → 素材库访问凭据」创建 Access Key 和 Secret Key。 Secret Key 只显示一次。签名固定使用 HMAC-SHA256、区域cn-beijing、服务 ark,请求时间与服务端偏差不得超过 5 分钟;不支持 X-Security-Token 临时凭据。

POST /?Action=CreateAssetGroup&Version=2024-01-01
Host: heiyutv.com
Content-Type: application/json
X-Date: YYYYMMDDTHHMMSSZ
X-Content-Sha256: <原始请求体的 SHA-256 小写十六进制>
Authorization: HMAC-SHA256 Credential=<AK>/<YYYYMMDD>/cn-beijing/ark/request, SignedHeaders=content-type;host;x-content-sha256;x-date, Signature=<hex>

Canonical Request 依次拼接 HTTP 方法、Canonical URI、按键和值排序并进行 URI 编码的 Canonical Query、四个小写 Canonical Headers、固定 Signed Headers 和请求体哈希。签名密钥依次按日期、cn-beijingarkrequest 派生。必须用完全相同的请求体字节计算哈希并发送;签名后 不要重新格式化 JSON。Host 必须是上面实际请求的 Heiyu Endpoint。

完整 Action 列表

Action用途主要请求参数
CreateAssetGroup创建素材组Name;Description、GroupType、ProjectName 可选
ListAssetGroups列出素材组Filter、PageNumber、PageSize 必填;支持排序
GetAssetGroup查询素材组Id;ProjectName 可选
UpdateAssetGroup更新素材组Id;Name、Description 至少提供一个
DeleteAssetGroup删除素材组Id;ProjectName 可选
CreateAsset从 URL 创建素材GroupId、URL、AssetType;Name、ProjectName 可选
ListAssets列出素材Filter、分页、排序与 ProjectName 均可选
GetAsset查询素材及处理状态Id;ProjectName 可选
UpdateAsset更新素材名称Id、Name;ProjectName 可选
DeleteAsset删除素材Id;ProjectName 可选
CreateVisualValidateSession创建真人认证会话CallbackURL;ProjectName 可选
GetVisualValidateResult取得真人素材组BytedToken;ProjectName 可选

素材格式与限制

类型格式尺寸或时长大小
图片jpeg、png、webp、bmp、tiff、gif、heic、heif宽高比 0.4–2.5;边长 300–6000 px小于 30 MB
视频mp4、mov480p/720p/1080p;2–15 秒;宽高比 0.4–2.5;24–60 FPS不超过 200 MB
音频wav、mp32–15 秒不超过 15 MB

素材 URL 必须能从公网直接访问,不支持 Base64、交互登录或仅在内网可用的下载地址。

CreateAssetGroup · 创建素材组

创建用于归集图片、视频或音频的普通素材组。

请求路径

POST https://heiyutv.com/?Action=CreateAssetGroup&Version=2024-01-01

请求参数

字段类型必选说明
Namestring名称,最长 64 个字符。
Descriptionstring描述,最长 300 个字符。
GroupTypestring默认 AIGC;普通创建流程仅支持 AIGC。
ProjectNamestring默认 default,大小写敏感。

请求体示例

{
  "Name": "产品素材",
  "Description": "产品图片和视频",
  "GroupType": "AIGC",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
Idstring返回新素材组的 asg_… 业务 ID。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "CreateAssetGroup",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "Id": "asg_0123456789abcdef0123456789abcdef"
  }
}
  • 真人素材组由真人认证流程创建,类型为 LivenessFace。

ListAssetGroups · 查询素材组列表

按类型、ID 或名称分页查询当前账号的素材组。

请求路径

POST https://heiyutv.com/?Action=ListAssetGroups&Version=2024-01-01

请求参数

字段类型必选说明
Filterobject过滤条件。
Filter.GroupIdsstring[]精确匹配的 asg_… ID 列表。
Filter.GroupTypestringAIGC 或 LivenessFace。
Filter.Namestring名称搜索,最长 64 个字符。
PageNumberinteger页码,从 1 开始。
PageSizeinteger每页数量,最大 100。
SortBystringCreateTime 或 UpdateTime,默认 CreateTime。
SortOrderstringDesc 或 Asc,默认 Desc。
ProjectNamestring默认 default。

请求体示例

{
  "Filter": {
    "GroupType": "AIGC",
    "Name": "产品"
  },
  "PageNumber": 1,
  "PageSize": 20,
  "SortBy": "CreateTime",
  "SortOrder": "Desc",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
TotalCountinteger返回符合条件的素材组总数。
Itemsobject[]返回素材组数组。
Items.Idstring返回素材组业务 ID,形如 asg_…。
Items.Namestring返回素材组名称,最长 64 个字符。
Items.Descriptionstring返回素材组描述,最长 300 个字符。
Items.GroupTypestring返回AIGC 或 LivenessFace。
Items.ProjectNamestring返回所属项目。
Items.CreateTimestring返回创建时间。
Items.UpdateTimestring返回更新时间。
PageNumberinteger返回当前页码。
PageSizeinteger返回当前每页数量。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "ListAssetGroups",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "TotalCount": 1,
    "Items": [
      {
        "Id": "asg_0123456789abcdef0123456789abcdef",
        "Name": "产品素材",
        "Description": "产品图片和视频",
        "GroupType": "AIGC",
        "ProjectName": "default",
        "CreateTime": "2026-08-26T00:00:00Z",
        "UpdateTime": "2026-08-26T00:00:00Z"
      }
    ],
    "PageNumber": 1,
    "PageSize": 20
  }
}

GetAssetGroup · 查询素材组详情

通过 asg_… 业务 ID 查询一个素材组。

请求路径

POST https://heiyutv.com/?Action=GetAssetGroup&Version=2024-01-01

请求参数

字段类型必选说明
Idstring素材组业务 ID。
ProjectNamestring默认 default。

请求体示例

{
  "Id": "asg_0123456789abcdef0123456789abcdef",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
Idstring返回素材组业务 ID,形如 asg_…。
Namestring返回素材组名称,最长 64 个字符。
Descriptionstring返回素材组描述,最长 300 个字符。
GroupTypestring返回AIGC 或 LivenessFace。
ProjectNamestring返回所属项目。
CreateTimestring返回创建时间。
UpdateTimestring返回更新时间。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "GetAssetGroup",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "Id": "asg_0123456789abcdef0123456789abcdef",
    "Name": "产品素材",
    "Description": "产品图片和视频",
    "GroupType": "AIGC",
    "ProjectName": "default",
    "CreateTime": "2026-08-26T00:00:00Z",
    "UpdateTime": "2026-08-26T00:00:00Z"
  }
}

UpdateAssetGroup · 更新素材组

更新素材组名称或描述,不能修改类型或所属项目。

请求路径

POST https://heiyutv.com/?Action=UpdateAssetGroup&Version=2024-01-01

请求参数

字段类型必选说明
Idstring素材组业务 ID。
Namestring条件必填新名称,最长 64 个字符。
Descriptionstring条件必填新描述,最长 300 个字符。
ProjectNamestring默认 default。

请求体示例

{
  "Id": "asg_0123456789abcdef0123456789abcdef",
  "Name": "产品素材(新版)",
  "Description": "更新后的描述",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
Idstring返回已更新的素材组 ID。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "UpdateAssetGroup",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "Id": "asg_0123456789abcdef0123456789abcdef"
  }
}
  • Name 与 Description 至少提供一个。

DeleteAssetGroup · 删除素材组

删除素材组及组内全部素材,操作不可恢复。

请求路径

POST https://heiyutv.com/?Action=DeleteAssetGroup&Version=2024-01-01

请求参数

字段类型必选说明
Idstring素材组业务 ID。
ProjectNamestring默认 default。

请求体示例

{
  "Id": "asg_0123456789abcdef0123456789abcdef",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
Resultobject返回成功时为空对象。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "DeleteAssetGroup",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {}
}
  • 删除前应确认组内素材不再被业务引用。
  • 真人素材组受授权状态限制,不能删除时返回业务错误。

CreateAsset · 创建素材

从公共 URL 异步创建图片、视频或音频素材。

请求路径

POST https://heiyutv.com/?Action=CreateAsset&Version=2024-01-01

请求参数

字段类型必选说明
GroupIdstring所属素材组的 asg_… ID。
URLstring公网可访问 URL,不支持 Base64。
Namestring名称,最长 64 个字符。
AssetTypestringImage、Video 或 Audio。
ProjectNamestring默认 default,必须与素材组一致。

请求体示例

{
  "GroupId": "asg_0123456789abcdef0123456789abcdef",
  "URL": "https://example.com/product.png",
  "Name": "产品主图",
  "AssetType": "Image",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
Idstring返回新素材的 ast_… 业务 ID。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "CreateAsset",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "Id": "ast_0123456789abcdef0123456789abcdef"
  }
}
  • 返回 ID 只表示进入预处理队列;继续调用 GetAsset 直到 Active 或 Failed。

ListAssets · 查询素材列表

按素材组、类型、状态或名称分页查询素材。

请求路径

POST https://heiyutv.com/?Action=ListAssets&Version=2024-01-01

请求参数

字段类型必选说明
Filterobject过滤条件。
Filter.GroupIdsstring[]所属素材组 ID 列表。
Filter.GroupTypestringAIGC 或 LivenessFace。
Filter.Statusesstring[]Active、Processing 或 Failed。
Filter.Namestring名称搜索,最长 64 个字符。
PageNumberinteger默认 1。
PageSizeinteger最大 100。
SortBystringCreateTime、UpdateTime 或 GroupId。
SortOrderstringDesc 或 Asc。
ProjectNamestring默认 default。

请求体示例

{
  "Filter": {
    "GroupIds": [
      "asg_0123456789abcdef0123456789abcdef"
    ],
    "Statuses": [
      "Active"
    ]
  },
  "PageNumber": 1,
  "PageSize": 20,
  "SortBy": "CreateTime",
  "SortOrder": "Desc",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
Itemsobject[]返回素材数组。
Items.Idstring返回素材业务 ID,形如 ast_…。
Items.Namestring返回素材名称。
Items.URLstring返回Heiyu 临时下载地址,有效期 12 小时,支持 HTTP Range。
Items.GroupIdstring返回所属素材组的 asg_… 业务 ID。
Items.AssetTypestring返回Image、Video 或 Audio。
Items.Statusstring返回Processing、Active 或 Failed。
Items.Moderation.Strategystring条件返回内容审核策略,当前为 Default。
Items.Error.Codestring失败时预处理失败码。
Items.Error.Messagestring失败时预处理失败说明。
Items.CreateTimestring返回创建时间。
Items.UpdateTimestring返回更新时间。
Items.ProjectNamestring返回所属项目。
TotalCountinteger返回符合条件的素材总数。
PageNumberinteger返回当前页码。
PageSizeinteger返回当前每页数量。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "ListAssets",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "Items": [
      {
        "Id": "ast_0123456789abcdef0123456789abcdef",
        "Name": "产品主图",
        "URL": "https://heiyutv.com/api/v1/assets/content/acl_0123456789abcdef0123456789abcdef",
        "GroupId": "asg_0123456789abcdef0123456789abcdef",
        "AssetType": "Image",
        "Status": "Active",
        "Moderation": {
          "Strategy": "Default"
        },
        "CreateTime": "2026-08-26T00:00:00Z",
        "UpdateTime": "2026-08-26T00:00:10Z",
        "ProjectName": "default"
      }
    ],
    "TotalCount": 1,
    "PageNumber": 1,
    "PageSize": 20
  }
}

GetAsset · 查询素材详情

查询素材详情和异步预处理状态;HTTP 200 不代表处理成功。

请求路径

POST https://heiyutv.com/?Action=GetAsset&Version=2024-01-01

请求参数

字段类型必选说明
Idstring素材业务 ID。
ProjectNamestring默认 default。

请求体示例

{
  "Id": "ast_0123456789abcdef0123456789abcdef",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
Idstring返回素材业务 ID,形如 ast_…。
Namestring返回素材名称。
URLstring返回Heiyu 临时下载地址,有效期 12 小时,支持 HTTP Range。
GroupIdstring返回所属素材组的 asg_… 业务 ID。
AssetTypestring返回Image、Video 或 Audio。
Statusstring返回Processing、Active 或 Failed。
Moderation.Strategystring条件返回内容审核策略,当前为 Default。
Error.Codestring失败时预处理失败码。
Error.Messagestring失败时预处理失败说明。
CreateTimestring返回创建时间。
UpdateTimestring返回更新时间。
ProjectNamestring返回所属项目。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "GetAsset",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "Id": "ast_0123456789abcdef0123456789abcdef",
    "Name": "产品主图",
    "URL": "https://heiyutv.com/api/v1/assets/content/acl_0123456789abcdef0123456789abcdef",
    "GroupId": "asg_0123456789abcdef0123456789abcdef",
    "AssetType": "Image",
    "Status": "Active",
    "Moderation": {
      "Strategy": "Default"
    },
    "CreateTime": "2026-08-26T00:00:00Z",
    "UpdateTime": "2026-08-26T00:00:10Z",
    "ProjectName": "default"
  }
}
  • Processing 表示仍在处理;Active 才能使用;Failed 时检查 Error.Code 和 Error.Message。

UpdateAsset · 更新素材

更新素材名称,不能替换 URL、类型或所属素材组。

请求路径

POST https://heiyutv.com/?Action=UpdateAsset&Version=2024-01-01

请求参数

字段类型必选说明
Idstring素材业务 ID。
Namestring新名称,最长 64 个字符。
ProjectNamestring默认 default。

请求体示例

{
  "Id": "ast_0123456789abcdef0123456789abcdef",
  "Name": "产品主图(新版)",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
Idstring返回已更新的素材 ID。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "UpdateAsset",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "Id": "ast_0123456789abcdef0123456789abcdef"
  }
}

DeleteAsset · 删除素材

删除一个素材;删除后不能查询或继续用于视频生成。

请求路径

POST https://heiyutv.com/?Action=DeleteAsset&Version=2024-01-01

请求参数

字段类型必选说明
Idstring素材业务 ID。
ProjectNamestring默认 default。

请求体示例

{
  "Id": "ast_0123456789abcdef0123456789abcdef",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
Resultobject返回成功时为空对象。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "DeleteAsset",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {}
}
  • 删除不可恢复;如需保留内容,请先下载或转存。

CreateVisualValidateSession · 创建真人认证会话

创建一次性 H5 真人认证会话。

请求路径

POST https://heiyutv.com/?Action=CreateVisualValidateSession&Version=2024-01-01

请求参数

字段类型必选说明
CallbackURLstring认证完成后的跳转地址,最长 2048 个字符。
ProjectNamestring默认 default。

请求体示例

{
  "CallbackURL": "https://example.com/liveness-complete",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
BytedTokenstring返回vvs_… 不透明会话凭据。
H5Linkstring返回终端用户打开的一次性真人认证 H5 页面地址,由真人认证服务托管。
CallbackURLstring返回原样返回请求中的回调地址。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "CreateVisualValidateSession",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "BytedToken": "vvs_0123456789abcdef0123456789abcdef",
    "H5Link": "https://verify.example.com/liveness/authorize?token=eyJhbGci0...",
    "CallbackURL": "https://example.com/liveness-complete"
  }
}
  • BytedToken 与 H5Link 有效期 30 分钟,只能完成一次认证。
  • H5Link 可追加 &lng=zh、&lng=en 或 &lng=zh-Hant。
  • H5Link 由真人认证服务直接提供,请将终端用户跳转到该地址,不要改写其 Host 或参数。

GetVisualValidateResult · 查询真人认证结果

用户完成 H5 流程后,取得创建的 LivenessFace 素材组。

请求路径

POST https://heiyutv.com/?Action=GetVisualValidateResult&Version=2024-01-01

请求参数

字段类型必选说明
BytedTokenstring创建会话返回的 vvs_… 凭据。
ProjectNamestring默认 default,必须与创建会话时一致。

请求体示例

{
  "BytedToken": "vvs_0123456789abcdef0123456789abcdef",
  "ProjectName": "default"
}

响应参数

字段类型必选说明
GroupIdstring返回真人认证创建的 LivenessFace 素材组 ID。

成功响应示例

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "GetVisualValidateResult",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": {
    "GroupId": "asg_abcdef0123456789abcdef0123456789"
  }
}
  • 认证未完成时可能返回待处理业务错误;完成后应立即查询。

异步处理与真人认证流程

CreateAsset 返回成功只表示进入预处理队列。轮询 GetAssetProcessing 表示仍在处理,Active 表示可以使用,Failed 时读取 Error.CodeError.Message

  1. 调用 CreateVisualValidateSession 并安全保存 BytedToken
  2. 让终端用户在 30 分钟内打开 H5Link 完成一次认证。
  3. 调用 GetVisualValidateResult 取得 LivenessFace 素材组 ID。

响应与错误

{
  "ResponseMetadata": {
    "RequestId": "bc2c8d97b49d4daea70e57ab09468133",
    "Action": "CreateAssetGroup",
    "Version": "2024-01-01",
    "Service": "ark",
    "Region": "cn-beijing"
  },
  "Result": { "Id": "asg_0123456789abcdef0123456789abcdef" }
}

失败时检查 ResponseMetadata.Error.CodeResponseMetadata.Error.Message。所有资源查询同时按账号和业务 ID 隔离;响应不会返回内部数据库主键、路由信息或服务侧资源 ID。

计费

当前上述 12 个素材库 Action 均不扣除账户余额,真人认证能力当前也免费。 素材被视频生成任务引用后,该视频任务仍按视频生成计费规则结算; 账单与余额可通过计费接口查询。