上传资产

POST/v1/assets

向当前用户资产库上传文件。

此接口用于普通资产库资产和供应商接入资产。 返回结构始终为统一资产对象(统一模型)。

身份验证

Authorization Bearer

在 Authorization 请求头中使用 API key 作为 bearer token。

选择一种上传来源:

  • 上传本地文件:从你的机器或服务器发送文件。
  • 从 URL 导入:提供公开 HTTPS sourceUrl,Token360 会下载并存储该文件。
  • 上传 Base64 内容:当你已有 Base64 编码的文件内容时,提供 contentBase64

提供 assetGroupId(或 groupIdlegacy_rf_ 开头)会走供应商接入上传路径。

上传本地文件

当文件位于你的机器或服务器上时,使用此来源。 遗留 /api/v1/assets alias 仅支持本地文件来源。

请求体

filefilerequired

要上传的文件。

namestring

可选展示名称。

groupIdstring

可选标准资产分组 ID,可从 GET /v1/asset-groups 获取。

assetGroupIdinteger

Legacy 分组 ID,用于外部接入资产。

modelstring

Real Face 或 Virtual Portrait 校验时可选目标模型名称。

响应

codeinteger

响应状态码。

dataobject

上传结果对象,统一资产模型。

data.idinteger

内部资产 ID(外部上传返回遗留 ID)。

data.assetIdstring

资产公共 ID。

data.token360AssetIdstring

assetId 的别名。

data.tenantIdinteger

租户 ID。

data.userIdinteger

所有者用户 ID。

data.userNamestring

所有者显示名。

data.sharedboolean

是否已共享给调用方。

data.sharePermissionstring

共享时的权限。

data.shareExpiresAtstring

共享到期时间(存在时)。

data.assetGroupIdstring

分组公共 ID。

data.groupNamestring

分组名称。

data.mediaTypestring

检测到的媒体类型。

data.assetKindstring

资产类型。

data.sourceTypestring

来源类型。

data.statusstring

初始状态。

data.namestring

资产名称。

data.assetTypestring

资产类型标签。

data.filenamestring

存储后的文件名。

data.mimeTypestring

资源 MIME 类型。

data.sizeBytesinteger

文件大小(字节)。

data.fileTypestring

文件扩展名或格式。

data.widthinteger

图片/视频宽度(单位像素),可用时返回。

data.heightinteger

图片/视频高度(单位像素),可用时返回。

data.aspectRatiostring

图片/视频宽高比,可用时返回。

data.durationSecondsnumber

音视频时长(秒),可用时返回。

data.frameRatenumber

视频帧率,可用时返回。

data.providerLastErrorobject

外部错误详情(如有)。

data.urlstring

访问链接。

data.thumbnailUrlstring

缩略图链接(如果有)。

data.expiresAtstring

到期时间(如果有)。

data.requestIdstring

任务链路请求 ID。

data.modelNamestring

生成资源使用的模型名。

data.modelTypestring

生成资源使用的模型类型。

data.byteplusAssetIdstring

BYTEPLUS 侧资产 ID。

data.providerRefsobject

按服务和引用类型聚合的映射关系。

data.originalFilenamestring

上传时原始文件名。

data.createdAtstring

创建时间。

data.updatedAtstring

更新时间。

msgstring

响应信息。

serviceCodestring | null

失败时的业务码。

错误处理

本地文件上传使用标准响应结构。缺失 file 会返回校验错误。文件大小被拒绝时会返回 ASSET_FILE_TOO_LARGE

常见 serviceCode

  • UNIFIED_ASSET_FILE_REQUIRED
  • UNIFIED_ASSET_GROUP_REQUIRED
  • UNIFIED_ASSET_GROUP_NOT_FOUND
  • ASSET_GROUP_NOT_FOUND
  • ASSET_GROUP_ACCESS_DENIED
  • ASSET_GROUP_NOT_ACTIVE
  • ASSET_GROUP_TYPE_UNSUPPORTED
  • ASSET_GROUP_PROVIDER_REF_MISSING
  • ASSET_FILE_REQUIRED
  • ASSET_FILE_TYPE_UNSUPPORTED
  • ASSET_FILE_TOO_LARGE
  • ASSET_PROVIDER_REJECTED
  • ASSET_PROVIDER_UNAVAILABLE

请求

Shell
1curl -X POST https://api.token360.ai/v1/assets \
2  -H "Authorization: Bearer sk-your-api-key" \
3  -F "file=@./avatar.png" \
4  -F "name=avatar.png" \
5  -F "groupId=library"

响应

JSON
1{
2  "code": 0,
3  "data": {
4    "id": 123,
5    "assetId": "ua_123",
6    "token360AssetId": "ua_123",
7    "assetGroupId": "library",
8    "tenantId": 1001,
9    "userId": 5001,
10    "name": "avatar.png",
11    "status": "active",
12    "assetKind": "UPLOAD",
13    "mediaType": "image/png",
14    "mimeType": "image/png",
15    "sourceType": "UNIFIED",
16    "fileType": "png",
17    "sizeBytes": 1048576,
18    "filename": "avatar.png",
19    "url": "https://cdn.token360.ai/assets/ua_123.png",
20    "thumbnailUrl": "https://cdn.token360.ai/assets/ua_123_thumb.png",
21    "createdAt": "2026-05-11T10:00:00Z",
22    "updatedAt": "2026-05-11T10:00:00Z"
23  },
24  "msg": "Asset uploaded successfully"
25}
此页面对您有帮助吗?