Skip to main content
音乐生成是异步任务。POST /v1/music/generations 会返回任务 ID、状态,通常还会返回 poll_url。使用这个地址查询,直到任务变为 completed 或 failed。

选择要生成的内容

用下面的请求获取当前音乐模型:
下面的示例使用 suno_music,并把 mv 设为 chirp-v4。只生成歌词时,请选择明确支持歌词的模型,发送 action: "LYRICS",并省略 mv。

创建音乐任务

提示词、标题和标签可能会出现在产品历史中,不要把 API 密钥、私密 URL 或诊断信息写进去。

获取生成结果

使用创建响应中的 poll_url 查询。客户端需要固定地址时,可以用返回的 id 或 task_id 调用 GET /v1/tasks/{id}。

创建响应

创建成功后会得到任务记录,此时音乐还没有完成:
状态变为 completed 后,响应可能包含:
下载地址只会在 status 变为 completed 后出现。失败时会返回 status: "failed" 和 error。请保存最终 URL,让用户以后可以直接打开,不必再次生成。

在产品中展示状态

  • 创建成功后显示“生成中”。
  • 耗时较长时每 5–10 秒查询一次,completed 或 failed 后停止。
  • 只有状态完成且存在 audio_url 时才显示播放器。
  • 只生成歌词时展示文字结果,不要让用户误以为会收到音频。
  • 页面刷新后继续查询已经保存的 task_id,不要重新创建。

费用记录

创建音乐任务时可能暂扣预估费用,完成或失败后记录最终金额。请保存 request_id、task_id、模型、API 地址和返回时的 billing_transaction_id;最终费用以 Management API 的 Usage 为准。

常见错误

API 参考