公开文档

Suno API 请求示例速查

更短、更偏接入实践的静态 HTML 页面,适合在开发时快速查字段和请求格式。

API 实际传参速查

这份文档偏“拿来就调”。

只保留最常用字段、最短可运行的 curl 示例,以及少量返回说明。

1. 基础信息

Base URL

https://sunocore.sunoai.asia

请求头

X-API-Key: <your_api_key>
Content-Type: application/json

异步任务怎么查结果

大部分任务接口会先返回:

{
  "code": "success",
  "message": "",
  "data": "task_id"
}

拿到 task_id 后:

  • 批量查:POST /suno/fetch
  • 单个查:GET /suno/fetch/{task_id}

2. 生产接口 / 任务

`POST /suno/submit/music`

常用字段:

参数 说明
title 标题
tags 风格标签
prompt 歌词或提示词
mv 模型,如 chirp-crow
make_instrumental 是否纯音乐
task 特殊任务类型,如 extendcover
curl -X POST 'https://sunocore.sunoai.asia/suno/submit/music' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "title": "Demo Song",
    "tags": "pop, emotional, female vocal",
    "prompt": "A modern pop song about missing someone.",
    "mv": "chirp-crow",
    "make_instrumental": false
  }'

`POST /suno/fetch`

常用字段:

参数 说明
ids 任务 ID 列表
curl -X POST 'https://sunocore.sunoai.asia/suno/fetch' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "ids": ["task_id_1", "task_id_2"]
  }'

`GET /suno/fetch/{task_id}`

curl -X GET 'https://sunocore.sunoai.asia/suno/fetch/task_id_1' \
  -H 'X-API-Key: sk_xxx'

`POST /suno/api/create_audio_upload`

常用字段:

参数 说明
extension 文件后缀,如 mp3
curl -X POST 'https://sunocore.sunoai.asia/suno/api/create_audio_upload' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{"extension": "mp3"}'

`POST /suno/uploads/audio-url`

常用字段:

参数 说明
upload_id 上传会话 ID
upload_filename 上传文件名
wait_audio 是否等待音频处理
curl -X POST 'https://sunocore.sunoai.asia/suno/uploads/audio-url' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "upload_id": "upload_id_xxx",
    "upload_filename": "demo-upload",
    "wait_audio": true
  }'

`POST /suno/submit/upsample`

常用字段:

参数 说明
task_id 原任务 ID
clip_id 原歌曲 clip ID
model_name 模型名
variation_category 变化强度
curl -X POST 'https://sunocore.sunoai.asia/suno/submit/upsample' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "task_id": "task_id_xxx",
    "clip_id": "clip_id_xxx",
    "model_name": "chirp-carp",
    "variation_category": "normal"
  }'

`POST /suno/submit/concat`

常用字段:

参数 说明
clip_id 续写结果对应 clip ID
is_infill 是否按 infill 处理
curl -X POST 'https://sunocore.sunoai.asia/suno/submit/concat' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "clip_id": "clip_id_xxx",
    "is_infill": false
  }'

`POST /suno/submit/speed-adjust`

常用字段:

参数 说明
clip_id 歌曲 clip ID
speed_multiplier 调速倍率
keep_pitch 是否保持音高
title 新标题
task_id 原任务 ID
curl -X POST 'https://sunocore.sunoai.asia/suno/submit/speed-adjust' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "clip_id": "clip_id_xxx",
    "speed_multiplier": 1.2,
    "keep_pitch": true,
    "title": "Demo Song (1.2x)",
    "task_id": "task_id_xxx"
  }'

`POST /api/crop`

常用字段:

参数 说明
task_id 原任务 ID
song_id 歌曲 ID
crop_start_s 开始秒数
crop_end_s 结束秒数
is_crop_remove 是否移除中间片段
curl -X POST 'https://sunocore.sunoai.asia/api/crop' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "task_id": "task_id_xxx",
    "song_id": "song_id_xxx",
    "crop_start_s": 10,
    "crop_end_s": 25,
    "is_crop_remove": false
  }'

3. 生产接口 / 媒体与工具

`GET /suno/act/mp4/{clip_id}`

curl -X GET 'https://sunocore.sunoai.asia/suno/act/mp4/clip_id_xxx' \
  -H 'X-API-Key: sk_xxx'

`POST /suno/persona/create`

常用字段:

参数 说明
root_clip_id 参考 clip ID
clips 参考 clip 列表
name Persona 名称
description 简短描述
is_public 是否公开
curl -X POST 'https://sunocore.sunoai.asia/suno/persona/create' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "root_clip_id": "clip_id_xxx",
    "clips": ["clip_id_xxx"],
    "name": "Demo Persona",
    "description": "Warm vocal reference",
    "is_public": true
  }'

`GET /suno/midi/{task_id}/{clip_id}`

curl -X GET 'https://sunocore.sunoai.asia/suno/midi/task_id_xxx/clip_id_xxx' \
  -H 'X-API-Key: sk_xxx'

`GET /api/get_aligned_lyrics_v3`

常用字段:

参数 说明
song_id 歌曲 ID
curl -X GET 'https://sunocore.sunoai.asia/api/get_aligned_lyrics_v3?song_id=song_id_xxx' \
  -H 'X-API-Key: sk_xxx'

`POST /api/playlist/create_with_clips`

常用字段:

参数 说明
task_id 可定位实例的任务 ID
name 歌单名
clip_ids 歌曲 ID 列表
curl -X POST 'https://sunocore.sunoai.asia/api/playlist/create_with_clips' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "task_id": "task_id_xxx",
    "name": "Demo Playlist",
    "clip_ids": ["clip_a", "clip_b"]
  }'

`POST /api/generate/upsample-tags`

常用字段:

参数 说明
original_tags 原始标签
curl -X POST 'https://sunocore.sunoai.asia/api/generate/upsample-tags' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "original_tags": "lofi chill piano"
  }'

`POST /suno/prompt_image`

常用字段:

参数 说明
prompt 图片提示词
curl -X POST 'https://sunocore.sunoai.asia/suno/prompt_image' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "prompt": "retro sci-fi album cover, cinematic lighting"
  }'

`POST /suno/persona/create-with-vox-stem`

常用字段:

参数 说明
task_id 原任务 ID
song_id 歌曲 ID
duration 提取秒数
curl -X POST 'https://sunocore.sunoai.asia/suno/persona/create-with-vox-stem' \
  -H 'X-API-Key: sk_xxx' \
  -H 'Content-Type: application/json' \
  -d '{
    "task_id": "task_id_xxx",
    "song_id": "song_id_xxx",
    "duration": 30
  }'

4. 生产接口 / 计费

`GET /suno/billing/pricing`

curl -X GET 'https://sunocore.sunoai.asia/suno/billing/pricing' \
  -H 'X-API-Key: sk_xxx'

重点字段:actiondisplay_namepriceenabledrefund_on_failure

`GET /suno/billing/me`

curl -X GET 'https://sunocore.sunoai.asia/suno/billing/me' \
  -H 'X-API-Key: sk_xxx'

重点字段:auth_typeis_adminapi_key.credits_balanceapi_key.rate_limit_per_minuteapi_key.concurrency_limit

`GET /suno/billing/transactions`

常用参数:

参数 说明
limit 返回条数上限,默认 100,最大 500
curl -X GET 'https://sunocore.sunoai.asia/suno/billing/transactions?limit=50' \
  -H 'X-API-Key: sk_xxx'

重点字段:task_idactionchange_amountbalance_aftertransaction_typecreated_at