POST /v1/music/generations 创建一个公共的 AI Sonar 任务并返回 id / task_id、status,通常还有 poll_url。您的应用程序应存储该任务标识,显示进度,并轮询直到达到终态。
选择工作流程
在发布硬编码模型列表之前查询当前模型目录:
suno_music 进行音乐生成,并在 mv 中传入 chirp-v4 等官方 Suno 模型版本。对于仅歌词的流程,发送 action: "LYRICS" 与模型说明文档中包含歌词生成的模型,并省略 mv。将模型 ID 视为公共 AI Sonar ID,而不是保证供应商特定字段是公共契约字段。
创建音乐任务
轮询完成状态
首先使用poll_url。如果您的客户端需要固定路由,请使用返回的 id 或 task_id 调用 GET /v1/tasks/{id}。
响应结构
创建接口返回的是可轮询的任务记录,不是最终音频:status 为 completed 后出现。失败任务会返回 status: "failed",并携带 error。
预期的公共状态为 pending、processing、completed 和 failed。完成的音乐任务可以包括 audio_url、video_url、title、lyrics 和标准化元数据。将最终 URL 存储在您自己的数据库中,以便用户可以在不重新生成的情况下重新打开结果。
用户界面和状态处理
- 在任务创建后立即显示待处理状态。
- 对于长任务每
5-10s轮询一次,然后在completed或failed时停止。 - 在任务
completed且存在audio_url之前,不要显示最终播放器。 - 对于仅歌词的任务,将文本输出与音频任务分开渲染,以便用户理解他们所购买的内容。
- 刷新时,从存储的
task_id恢复,而不是创建新任务。
计费和对账
音乐任务可以在创建时保留估计金额,并在知道终态后结算。请保存request_id、task_id、模型、端点和可能出现的 billing_transaction_id,便于支持团队追踪请求,而不是依赖供应商任务 ID。