Skip to main content

通用文件上传接口

上传图片、音频或视频到 VUI Labs,成功后返回文件标识 object_key。例如,可以把音频上传响应中的 data.object_key 直接作为音色克隆接口ref_audio


接口信息

  • 接口路径: /v1/files/upload
  • 请求方式: POST
  • 请求格式: multipart/form-data
  • 认证方式: Header 中的 X-API-Key
  • 响应格式: JSON;请通过 succeed 判断上传是否成功,通过 error_codeerror_message 查看失败原因

请求头

参数名类型必填说明
X-API-Keystring应用密钥

表单参数

参数名类型必填说明
scenestring上传场景:image / audio / video
filefile要上传的文件

scene 说明

scene用途最大大小ObjectKey 前缀
image图片上传10MBuploads/image/{uid}/...
audio音频上传50MBuploads/audio/{uid}/...
video视频上传200MBuploads/video/{uid}/...

频次限制

  • 普通用户每小时最多上传 30 次。

响应参数

通用响应结构

字段类型说明
error_codenumber错误码;成功为 0
error_messagestring错误信息;成功为 成功
succeedboolean上传是否成功
dataobject | null成功时为上传结果;失败时为 null

data 字段

字段类型说明
object_keystring已上传文件的标识,可用于音色克隆等接口
file_namestring上传时的原始文件名
sizenumber文件大小,单位 byte
scenestring上传场景
urlstring可选访问地址;默认不返回

响应示例

{
"error_code": 0,
"error_message": "成功",
"succeed": true,
"data": {
"object_key": "uploads/audio/1001/20260630/1782820801123_abcd1234_sample.wav",
"file_name": "sample.wav",
"size": 123456,
"scene": "audio"
}
}

请求示例

上传音频

curl -X POST "https://api.vuilabs.cn/v1/files/upload" \
-H "X-API-Key: your-secret-key-here" \
-F "scene=audio" \
-F "file=@/path/to/sample.wav"

上传后用于音色克隆

音色克隆是两步调用:先上传音频,再把上传响应中的 data.object_key 传给保存音色接口。两次请求应使用同一个 X-API-Key

第一步,上传本地参考音频:

curl -X POST "https://api.vuilabs.cn/v1/files/upload" \
-H "X-API-Key: your-secret-key-here" \
-F "scene=audio" \
-F "file=@/path/to/sample.wav"

成功后记录响应中的 data.object_key

{
"error_code": 0,
"error_message": "成功",
"succeed": true,
"data": {
"object_key": "uploads/audio/1001/20260630/1782820801123_abcd1234_sample.wav",
"file_name": "sample.wav",
"size": 123456,
"scene": "audio"
}
}

第二步,把该值原样传入 ref_audio

curl -X POST "https://api.vuilabs.cn/v1/voice/save" \
-H "X-API-Key: your-secret-key-here" \
-H "Content-Type: application/json" \
-d '{
"voice_id": "my-voice",
"ref_audio": "uploads/audio/1001/20260630/1782820801123_abcd1234_sample.wav",
"ref_text": "这是一段参考音频,用于克隆音色。"
}'

url 默认不返回是正常行为,克隆音色不需要把 ObjectKey 转换成公开 URL。用于音色克隆的参考音频应不超过 50MB、时长不超过 30 秒。更多参数见音色克隆接口


常见错误

error_code说明
10001参数错误,例如缺少 scene、缺少 file、文件为空或 scene 不支持
10003未授权,例如缺少或使用了无效的 X-API-Key
10005上传频次超过限制
20010文件大小超过当前 scene 限制
10000上传处理失败,请查看 error_message;持续失败请联系支持