POST/suno/uploads/audio/{id}/upload-finish
┌─────────────────────────────────────────────────────────────────┐
│ 第1步: 请求上传授权 │
│ POST /suno/uploads/audio │
│ ↓ 返回: upload_id, upload_url │
└─────────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────────┐
│ 第2步: 上传文件到S3 (客户端直连,不经过API) │
│ PUT {upload_url} │
│ ↓ 上传音频文件 │
└─────────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────────┐
│ 第3步: 报告上传完毕 │
│ POST /suno/uploads/audio/{id}/upload-finish │
│ ↓ 通知服务器文件已上传 │
└─────────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────────┐
│ 第4步: 轮询查询上传状态 (直到状态为 completed) │
│ GET /suno/uploads/audio/{id} │
│ ↓ 每2-3秒查询一次 │
└─────────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────────┐
│ 第5步: 初始化音频clip │
│ POST /suno/uploads/audio/{id}/initialize-clip │
│ ↓ 返回: clip_id │
└─────────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────────┐
│ 第6步: 使用clip_id创建续写任务 │
│ POST /suno/submit/music │
│ ↓ 返回: task_id (开始计费) │
└─────────────────────────────────────────────────────────────────┘
来源原始接口定义(用于追溯)
以下内容来自 Apifox 快照,可能包含兼容层字段或旧示例;公开调用请以本页的协议说明和当前模型列表为准。
{
"id": 495899768,
"name": "报告上传完毕",
"type": "http",
"serverId": "",
"preProcessors": [],
"postProcessors": [],
"inheritPreProcessors": {},
"inheritPostProcessors": {},
"description": "┌─────────────────────────────────────────────────────────────────┐\n│ 第1步: 请求上传授权 │\n│ POST /suno/uploads/audio │\n│ ↓ 返回: upload_id, upload_url │\n└─────────────────────────────────────────────────────────────────┘\n ↓\n┌─────────────────────────────────────────────────────────────────┐\n│ 第2步: 上传文件到S3 (客户端直连,不经过API) │\n│ PUT {upload_url} │\n│ ↓ 上传音频文件 │\n└─────────────────────────────────────────────────────────────────┘\n ↓\n┌─────────────────────────────────────────────────────────────────┐\n│ 第3步: 报告上传完毕 │\n│ POST /suno/uploads/audio/{id}/upload-finish │\n│ ↓ 通知服务器文件已上传 │\n└─────────────────────────────────────────────────────────────────┘\n ↓\n┌─────────────────────────────────────────────────────────────────┐\n│ 第4步: 轮询查询上传状态 (直到状态为 completed) │\n│ GET /suno/uploads/audio/{id} │\n│ ↓ 每2-3秒查询一次 │\n└─────────────────────────────────────────────────────────────────┘\n ↓\n┌─────────────────────────────────────────────────────────────────┐\n│ 第5步: 初始化音频clip │\n│ POST /suno/uploads/audio/{id}/initialize-clip │\n│ ↓ 返回: clip_id │\n└─────────────────────────────────────────────────────────────────┘\n ↓\n┌─────────────────────────────────────────────────────────────────┐\n│ 第6步: 使用clip_id创建续写任务 │\n│ POST /suno/submit/music │\n│ ↓ 返回: task_id (开始计费) │\n└─────────────────────────────────────────────────────────────────┘\n```",
"operationId": "",
"sourceUrl": "",
"method": "post",
"path": "/suno/uploads/audio/{id}/upload-finish",
"tags": [],
"status": -2,
"requestBody": {
"type": "application/json",
"parameters": [],
"jsonSchema": {
"type": "object",
"properties": {
"upload_type": {
"type": "string"
},
"upload_filename": {
"type": "string",
"description": "上传的文件名称"
}
},
"required": [
"upload_type",
"upload_filename"
],
"x-apifox-orders": [
"upload_type",
"upload_filename"
]
},
"examples": [
{
"mediaType": "application/json",
"value": "{\r\n \"upload_type\": \"file_upload\",\r\n \"upload_filename\": \"my_audio.mp3\"\r\n}",
"name": "示例 1"
}
],
"mediaType": "",
"oasExtensions": "",
"required": true,
"additionalContentTypes": []
},
"parameters": {
"path": [
{
"id": "id#0",
"name": "id",
"required": true,
"enable": true,
"description": "",
"type": "string"
}
],
"query": [],
"cookie": [],
"header": []
},
"commonParameters": {
"query": [],
"body": [],
"cookie": [],
"header": []
},
"auth": {},
"responses": [
{
"id": 113753800,
"name": "成功",
"code": 200,
"contentType": "json",
"jsonSchema": {
"type": "object",
"properties": {},
"x-apifox-orders": []
},
"itemSchema": {},
"description": "",
"mediaType": "",
"headers": []
}
],
"responseExamples": [
{
"name": "成功示例",
"responseId": 113753800,
"data": "{}",
"description": "",
"oasKey": "",
"oasExtensions": "",
"id": "019fc09b-0b23-708d-ac62-1277e6646605"
}
],
"codeSamples": [],
"projectId": 8662722,
"moduleId": 8310462,
"folderId": 92436137,
"ordering": 54,
"responsibleId": 0,
"commonResponseStatus": {},
"advancedSettings": {
"disabledSystemHeaders": {}
},
"customApiFields": {},
"oasExtensions": "",
"mockScript": {},
"createdAt": "2026-08-02T03:53:34.000Z",
"updatedAt": "2026-08-06T12:15:55.000Z",
"creatorId": 2863449,
"editorId": 2863449,
"creatorUserId": 2863449,
"editorUserId": 2863449,
"responseChildren": [],
"visibility": "INHERITED",
"securityScheme": {},
"callbacks": ""
}