跳转到主要内容
POST
/
v1
/
audios
/
generations
curl --request POST \
  --url https://api.evolink.ai/v1/audios/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "suno-v5-beta",
  "prompt": "一首欢快的夏日流行歌曲,关于公路旅行和自由"
}
'
{
  "created": 1766319090,
  "id": "task-unified-1766319089-oqs9cue4",
  "model": "suno-v5-beta",
  "object": "audio.generation.task",
  "progress": 0,
  "status": "pending",
  "task_info": {
    "can_cancel": true,
    "estimated_time": 120
  },
  "type": "audio",
  "usage": {
    "billing_rule": "per_call",
    "credits_reserved": 10,
    "user_group": "default"
  }
}

授权

Authorization
string
header
必填

##所有接口均需要使用Bearer Token进行认证##

获取 API Key :

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

使用时在请求头中添加:

Authorization: Bearer YOUR_API_KEY

请求体

application/json
model
enum<string>
必填

模型名称

向后兼容: 之前接入的模型名(如 suno-v5suno-v4.5suno-v4.5plussuno-v4.5allsuno-v4)仍然可用,会自动映射到对应的 -beta 版本

可选值:

  • suno-v5-beta: V5最新版本(默认推荐),支持 Voice Persona,更卓越的音乐表现力,生成速度更快,prompt最多5000字符,style最多1000字符
  • suno-v4.5plus-beta: V4.5+增强版,音色更丰富,新的创作方式,最长8分钟,prompt最多5000字符,style最多1000字符
  • suno-v4.5all-beta: V4.5全功能版,更智能的提示词,更快的生成速度,最长8分钟,prompt最多5000字符,style最多1000字符
  • suno-v4.5-beta: V4.5版本,更智能的提示词,更快的生成速度,最长8分钟,prompt最多5000字符,style最多1000字符
  • suno-v4-beta: V4版本,改进的人声质量,最长4分钟,prompt最多3000字符,style最多200字符
可用选项:
suno-v5-beta,
suno-v4.5plus-beta,
suno-v4.5all-beta,
suno-v4.5-beta,
suno-v4-beta
示例:

"suno-v5-beta"

custom_mode
boolean
必填

是否开启自定义模式

说明:

  • false:简单模式,只需提供prompt,AI自动生成歌词和风格
  • true:自定义模式,可精细控制styletitle、歌词等

自定义模式下的必填参数:

  • style: 必填
  • title: 必填
  • prompt: 当instrumental=false时必填(作为歌词)
示例:

false

instrumental
boolean
必填

是否生成纯音乐(无人声)

说明:

  • false:生成带人声的音乐
  • true:生成无人声的纯音乐/背景音乐

注意:

  • 在非自定义模式下,此参数对必填字段无影响
  • 在自定义模式下,设为trueprompt变为可选
示例:

false

prompt
string

提示词,描述所需音乐内容

非自定义模式(custom_mode=false):

  • 必填,作为音乐描述,AI自动生成歌词和风格
  • 最大长度:500字符

自定义模式(custom_mode=true):

  • instrumental=false时必填,作为精确歌词使用
  • instrumental=true时可选
  • 最大长度:V4为3000字符,V4.5+为5000字符

歌词格式建议:

  • 使用[Verse][Chorus][Bridge]等标签组织歌词结构
示例:

"一首欢快的夏日流行歌曲,关于公路旅行和自由"

style
string

音乐风格规范

说明:

  • 在自定义模式(custom_mode=true)下必填
  • 定义音乐的流派、情绪或艺术方向
  • 建议使用英文逗号分隔的标签形式

字符限制:

  • V4:最多200字符
  • V4.5+:最多1000字符

常见风格标签:

  • 流派:pop, rock, jazz, classical, electronic, hip-hop, r&b, country, folk
  • 情绪:happy, sad, energetic, calm, romantic, dark, uplifting
  • 乐器:piano, guitar, drums, bass, violin, saxophone, synthesizer
  • 人声:male vocals, female vocals, choir, harmonies
  • 节奏:slow, fast, upbeat, groovy, 120bpm
示例:

"pop, electronic, upbeat, female vocals"

title
string

歌曲标题

说明:

  • 在自定义模式(custom_mode=true)下必填
  • 将显示在播放器界面和文件名中
  • 最大长度:80字符
Maximum string length: 80
示例:

"夏日梦想"

negative_tags
string

排除风格,指定不希望出现的音乐风格或特征

示例:

  • heavy metal, screaming, sad
  • rap, fast tempo
示例:

"heavy metal, screaming"

vocal_gender
enum<string>

人声性别偏好

可选值:

  • m: 男声
  • f: 女声

注意:

  • 仅在custom_mode=true时生效
  • 此参数只能加强概率,不能保证一定遵循指定性别
可用选项:
m,
f
示例:

"f"

style_weight
number

风格权重,控制对指定风格的遵循强度

取值范围: 0.0 ~ 1.0,保留一位小数

说明:

  • 值越高,生成结果越接近指定风格
  • 值为0时视为未设置
必填范围: 0 <= x <= 1
示例:

0.7

weirdness_constraint
number

怪异度约束,控制生成结果的创意/实验性程度

取值范围: 0.0 ~ 1.0,保留一位小数

说明:

  • 值越高,生成结果越具有创意和实验性
  • 值越低,生成结果越传统和保守
  • 值为0时视为未设置
必填范围: 0 <= x <= 1
示例:

0.3

audio_weight
number

音频权重,控制音频特征的权重

取值范围: 0.0 ~ 1.0,保留一位小数

说明:

  • 值为0时视为未设置
必填范围: 0 <= x <= 1
示例:

0.5

persona_id
string

Persona ID,应用已创建的 Persona 风格到本次音乐生成

仅在 custom_mode=true 时可用。通过 Suno Persona 创建 接口获得,应用后可保持一致的声乐和风格特征

获取方式: 创建 Persona 任务完成后,从 result_data.persona_id 中获取

示例:

"5c57d49ef834110496fae5aa14fec441"

persona_model
enum<string>

Persona 应用方式

可选值:

  1. style_persona: 风格导向型,偏重音乐风格特征(编曲、节奏、音色),支持所有模型版本
  2. voice_persona: 声音导向型,偏重声乐特征(音色、唱法、声线),仅 V5 支持

仅在 custom_mode=true 时可用,通常与 persona_id 搭配使用。使用 voice_persona 时模型必须为 suno-v5-beta,否则返回错误

可用选项:
style_persona,
voice_persona
示例:

"style_persona"

callback_url
string<uri>

任务完成后的HTTPS回调地址

回调时机:

  • 回调过程分三个阶段:text(文本生成)、first(第一首完成)、complete(全部完成)
  • 某些情况下可能跳过textfirst阶段,直接返回complete

安全限制:

  • 仅支持HTTPS协议
  • 禁止回调到内网IP地址
  • URL长度不超过2048字符

回调机制:

  • 超时时间:10
  • 失败后最多重试3
  • 回调地址返回2xx状态码视为成功
示例:

"https://your-domain.com/webhooks/suno-callback"

响应

音乐任务创建成功

created
integer

任务创建时间戳

示例:

1766319090

id
string

任务ID,用于查询任务状态和结果

示例:

"task-unified-1766319089-oqs9cue4"

model
string

实际使用的模型名称

示例:

"suno-v5-beta"

object
enum<string>

任务的具体类型

可用选项:
audio.generation.task
progress
integer

任务进度百分比 (0-100)

必填范围: 0 <= x <= 100
示例:

0

status
enum<string>

任务状态

可用选项:
pending,
processing,
completed,
failed
示例:

"pending"

task_info
object

任务详细信息

type
enum<string>

任务的输出类型

可用选项:
audio
示例:

"audio"

usage
object

使用量和计费信息