# 素材库火山兼容端点

火山 Ark Open API 格式的素材库兼容入口。把 base URL 指向 XRToken 后，
请求路径 / 参数 / 响应与火山官方保持一致，鉴权用 XRToken API key
（`Authorization: Bearer tr-xxx` 或 `x-api-key: tr-xxx`），不需要 AK/SK。

通过 query 参数 `Action` 区分操作，路径一律是官方 `POST /?Action=...`：
- `Action=CreateAssetGroup`：创建素材组。`ProjectName` 非必填：不传时自动使用网关项目（当前 `xrtoken`）；显式传值（包括 `default`）原样透传。
- `Action=CreateAsset`：创建素材。`ProjectName` 非必填：不传时自动使用网关项目（当前 `xrtoken`）；显式传值（包括 `default`）原样透传；`Name` 可选。
- `Action=GetAssetGroup`：查询素材组，body 传 `{"Id": "group-xxx"}`。
- `Action=GetAsset`：查询素材，body 传 `{"Id": "asset-xxx"}`。
- `Action=ListAssetGroups`：列出素材组。
- `Action=ListAssets`：列出素材。
- `Action=UpdateAssetGroup`：更新素材组。
- `Action=UpdateAsset`：更新素材。
- `Action=DeleteAssetGroup`：删除素材组。
- `Action=DeleteAsset`：删除素材。
- `Action=CreateVisualValidateSession`：创建真人核验会话。
- `Action=GetVisualValidateResult`：查询真人核验结果。

响应沿用火山 `ResponseMetadata` / `Result` 信封，并保持素材库账号隔离
（只能操作自己名下的分组和素材）。

## POST /

> 素材库火山兼容端点

火山 Ark Open API 格式的素材库兼容入口。把 base URL 指向 XRToken 后，
请求路径 / 参数 / 响应与火山官方保持一致，鉴权用 XRToken API key
（`Authorization: Bearer tr-xxx` 或 `x-api-key: tr-xxx`），不需要 AK/SK。

通过 query 参数 `Action` 区分操作，路径一律是官方 `POST /?Action=...`：
- `Action=CreateAssetGroup`：创建素材组。`ProjectName` 非必填：不传时自动使用网关项目（当前 `xrtoken`）；显式传值（包括 `default`）原样透传。
- `Action=CreateAsset`：创建素材。`ProjectName` 非必填：不传时自动使用网关项目（当前 `xrtoken`）；显式传值（包括 `default`）原样透传；`Name` 可选。
- `Action=GetAssetGroup`：查询素材组，body 传 `{"Id": "group-xxx"}`。
- `Action=GetAsset`：查询素材，body 传 `{"Id": "asset-xxx"}`。
- `Action=ListAssetGroups`：列出素材组。
- `Action=ListAssets`：列出素材。
- `Action=UpdateAssetGroup`：更新素材组。
- `Action=UpdateAsset`：更新素材。
- `Action=DeleteAssetGroup`：删除素材组。
- `Action=DeleteAsset`：删除素材。
- `Action=CreateVisualValidateSession`：创建真人核验会话。
- `Action=GetVisualValidateResult`：查询真人核验结果。

响应沿用火山 `ResponseMetadata` / `Result` 信封，并保持素材库账号隔离
（只能操作自己名下的分组和素材）。

### Authentication

`Authorization: Bearer tr-xxx`

### Query Parameters

- **Action** `string` **(required)**  
  操作类型：
- `CreateAssetGroup` -- 创建素材组
- `CreateAsset` -- 创建素材
- `GetAssetGroup` -- 查询素材组
- `GetAsset` -- 查询素材
- `ListAssetGroups` -- 列出素材组
- `ListAssets` -- 列出素材
- `UpdateAssetGroup` -- 更新素材组
- `UpdateAsset` -- 更新素材
- `DeleteAssetGroup` -- 删除素材组
- `DeleteAsset` -- 删除素材
- `CreateVisualValidateSession` -- 创建真人核验会话
- `GetVisualValidateResult` -- 查询真人核验结果

- **Version** `string`  
  接口版本，默认 `2024-01-01`。

### Request Body

Content-Type: `application/json`

### Response

### Error Codes

- `400`: 
- `401`: 
- `403`: 权限不足（非可信创作者 / 未企业认证 / 分组不属于当前用户）
- `404`: 素材不存在或不属于当前用户
- `429`: 
- `502`:
