跳转到主要内容
POST

模型版本

  • 当前模型:V6(默认)、V6_WILD、V6_MINI
  • 已废弃模型:V5_5、V5、V4_5PLUS、V4_5ALL、V4_5、V4
  • 废弃值仅为向后兼容保留,新接入请使用 V6 系列模型。

使用指南

  • 本接口固定为自定义参数,简单模式不可用。
  • 此接口从2个上传的音频文件创建混音音乐
  • 将多个轨道的元素组合成一个连贯的新作品

参数详情

  • uploadUrlList 是必需的,必须包含恰好2个音频文件URL,上游只取前2个
  • model(string,必填):V6、V6_WILD、V6_MINI。已废弃:V4、V4_5、V4_5PLUS、V4_5ALL、V5、V5_5。
  • style 和 title 为必填
  • prompt 为选填,按歌词语义使用。同时传入 lyrics 时,优先使用 lyrics,prompt 不再作为歌词
  • lyrics 为选填,优先于 prompt 作为歌词。未传 lyrics 时使用 prompt 作为歌词
  • 字符限制(基于模型):
    • V4、V4_5、V4_5PLUS、V4_5ALL、V5 和 V5_5(已废弃):prompt 3000–5000字符、style 200–1000字符,按旧模型规则执行。
    • V6、V6_WILD 和 V6_MINI:prompt 与 lyrics 最多 5000 字符,style 最多 1000 字符
    • title 长度限制:80字符(所有模型)

可选参数

以下字段为可选控制项:
  • lyrics(string):混音所用歌词。优先于 prompt;未传时使用 prompt 作为歌词。V6、V6_WILD、V6_MINI 最多 5000 字符。
  • vocalGender(string):偏好人声性别。允许值:m(男)、f(女)
  • styleWeight(number):风格贴合权重,范围 0–1(建议保留两位小数)
  • weirdnessConstraint(number):创造性/新颖度约束,范围 0–1(建议保留两位小数)
  • audioWeight(number):音频一致性相对权重,范围 0–1(建议保留两位小数)
  • duration(number):时长(秒),范围 10–360。仅在 V5_5(已废弃)、V6、V6_WILD、V6_MINI 下有效。
  • variety(integer):生成结果的多样性。范围 0–4 的整数,默认 1。0 关,1 普通(默认),2 高,3 额外,4 最大。
  • personaId(string):应用到生成音乐的 Persona ID 或 Suno Voice 生成的 voiceId。如果使用 Voice 生成的 ID,personaModel 必须设置为 voice_persona。
  • personaModel(string):Persona 类型,默认 style_persona。生成 Persona 接口返回的 ID 使用 style_persona,Suno Voice 生成的 ID 使用 voice_persona。

开发者注意事项

  • 本接口固定为自定义参数,除两个源音频 URL 外还需提供 style 和 title
  • 生成的文件将保留14天
  • 回调过程分三个阶段:text(文本生成)、first(第一首完成)、complete(全部完成)
  • uploadUrlList 中的两个音频文件必须是有效且可访问的URL
  • 音频文件应为支持的格式(MP3、WAV等)

授权

Authorization
string
header
必填

🔑 API 认证说明

所有接口都需要通过 Bearer Token 方式进行认证。

获取 API Key

  1. 访问 API Key 管理页面 获取您的 API Key

使用方式

在请求头中添加:

⚠️ 注意:

  • 请妥善保管您的 API Key,不要泄露给他人
  • 如果怀疑 API Key 泄露,请立即在管理页面重置

请求体

application/json
uploadUrlList
string<uri>[]
必填

用于混音的音频文件URL数组。必填。需传入恰好2个URL,上游只取前2个。每个URL必须是公网可访问的。

Required array length: 2 elements
示例:
style
string
必填

音乐风格或流派。必填。示例:"爵士"、"古典"、"电子"。

  • 对于 V4 模型(已废弃):最大长度为200字符。
  • 对于 V4_5、V4_5PLUS、V5、V5_5 和 V4_5ALL 模型(已废弃):最大长度为1000字符。
  • 对于 V6、V6_WILD 和 V6_MINI:最大长度为1000字符。
示例:

"爵士"

title
string
必填

生成音乐轨道的标题。必填。

  • 最大长度:80 字符。
  • 将在播放器界面和文件名中显示。
示例:

"宁静钢琴"

model
enum<string>
默认值:V6
必填

AI 模型版本。默认值:V6。

  • V6:当前标准模型,推荐默认使用。
  • V6_WILD:当前实验性、创造性更强的模型。
  • V6_MINI:当前轻量模型。
  • 已废弃:V5_5、V5、V4_5PLUS、V4_5ALL、V4_5、V4。这些值仅为向后兼容保留,新接入请使用 V6 系列模型。
可用选项:
V6,
V6_WILD,
V6_MINI,
V5_5,
V5,
V4_5PLUS,
V4_5ALL,
V4_5,
V4
示例:

"V6"

callBackUrl
string<uri>
必填

接收音乐生成任务完成更新的URL。所有音乐生成请求都需要。

  • 系统将在生成完成时向此URL发送POST任务状态和结果
  • 回调过程有三个阶段:text(文本生成)、first(第一首完成)、complete(全部完成)
  • 注意:某些情况可能会跳过 text 和 first 阶段,直接返回 complete
  • 您的回调端点应接受包含任务结果和音频URL的JSON负载的POST请求
  • 详细的回调格式和实现指南,请参见 音乐生成回调
  • 或者,使用获取音乐详情接口来轮询任务状态
示例:

"https://example.com/callback"

prompt
string

混音所用歌词。选填。提示词将严格作为歌词使用并在生成的音轨中演唱。同时传入 lyrics 时,优先使用 lyrics,prompt 不再作为歌词。不同模型的字符限制:

  • V4(已废弃):最多3000字符
  • V4_5、V4_5PLUS、V5、V5_5 和 V4_5ALL(已废弃):最多5000字符
  • V6、V6_WILD 和 V6_MINI:最多5000字符
示例:

"[Verse] 霓虹雨下城市低鸣"

lyrics
string

混音所用歌词。选填。优先于 prompt 作为歌词;未传 lyrics 时使用 prompt 作为歌词。

  • V6、V6_WILD 和 V6_MINI:最多5000字符
示例:

"[Chorus] 灯火更亮,我们继续向前"

vocalGender
enum<string>

演唱声音的人声性别偏好。可选。使用 'm' 表示男性,'f' 表示女性。根据实践,此参数只能增加概率,但不能保证遵循男/女声指令。

可用选项:
m,
f
示例:

"m"

styleWeight
number

遵循指定风格的强度。可选。范围 0–1,最多2位小数。

必填范围: 0 <= x <= 1必须是以下数值的倍数 0.01
示例:

0.61

weirdnessConstraint
number

控制实验性/创意偏差。可选。范围 0–1,最多2位小数。

必填范围: 0 <= x <= 1必须是以下数值的倍数 0.01
示例:

0.72

audioWeight
number

音频特征与其他因素的平衡权重。可选。范围 0–1,最多2位小数。

必填范围: 0 <= x <= 1必须是以下数值的倍数 0.01
示例:

0.65

duration
number

时长(秒)。可选。范围 10–360。仅在 model 为 V5_5(已废弃)、V6、V6_WILD 或 V6_MINI 时有效。

必填范围: 10 <= x <= 360
示例:

20

variety
integer
默认值:1

生成结果的多样性。可选。范围 0–4 的整数,默认值为 1。

  • 0:关,完全关闭,严格用同一风格
  • 1:普通,默认值,在稳定性和多样性之间保持平衡
  • 2:高,生成风格差异明显的结果
  • 3:额外,更高程度的变化,鼓励大胆探索
  • 4:最大,最大程度增加多样性
必填范围: 0 <= x <= 4必须是以下数值的倍数 1
示例:

1

personaId
string

应用到生成音乐的 Persona ID,可选。你可以传入以下两类 ID:

  • 通过 生成 Persona 接口生成的 Persona ID。此时可使用 personaModel: style_persona,或省略 personaModel 使用默认值。
  • 通过 Suno Voice 流程生成的 voiceId。当使用 Voice 生成的 ID 时,必须设置 personaModel: voice_persona。
示例:

"persona_123"

personaModel
enum<string>
默认值:style_persona

使用 personaId 时应用的 Persona 模型类型,可选。

  • style_persona(默认):用于生成 Persona 接口返回的 Persona ID。
  • voice_persona:当 personaId 使用 Suno Voice 生成的 voiceId 时必须选择该值。该选项仅在 V5(已废弃)、V5_5(已废弃)、V6、V6_WILD 和 V6_MINI 模型下可用。
可用选项:
style_persona,
voice_persona
示例:

"style_persona"

回调

POST
{request.body#/callBackUrl}audioGenerated

请求体

application/json
code
integer

状态码

示例:

200

msg
string

返回消息

示例:

"All generated successfully"

data
object

响应

200 - application/json

回调接收成功

code
enum<integer>

响应状态码

  • 200: 成功 - 请求已成功处理
  • 400: 验证错误 - 歌词包含受版权保护的内容。
  • 408: 超出限制 - 超时。
  • 413: 冲突 - 上传的音频与现有艺术作品匹配。
  • 500: 服务器错误 - 处理请求时发生意外错误
  • 501: 音频生成失败。
  • 531: 服务器错误 - 抱歉,由于问题导致生成失败。您的积分已退还。请重试。
可用选项:
200,
400,
408,
413,
500,
501,
531
msg
string

当 code != 200 时的错误信息

示例:

"success"

响应

请求成功

code
enum<integer>

响应状态码

  • 200: 成功 - 请求已成功处理
  • 401: 未授权 - 身份验证凭据缺失或无效
  • 402: 积分不足 - 账户没有足够的积分执行此操作
  • 404: 未找到 - 请求的资源或端点不存在
  • 409: 冲突 - WAV 记录已存在
  • 422: 验证错误 - 请求参数未通过验证检查
  • 429: 超出限制 - 已超过对此资源的请求限制
  • 451: 未授权 - 获取图像失败。请验证您或您的服务提供商设置的任何访问限制。
  • 455: 服务不可用 - 系统当前正在进行维护
  • 500: 服务器错误 - 处理请求时发生意外错误
可用选项:
200,
401,
402,
404,
409,
422,
429,
451,
455,
500
msg
string

当 code != 200 时的错误信息

示例:

"success"

data
object