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 |
特殊任务类型,如 extend、cover |
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'重点字段:action、display_name、price、enabled、refund_on_failure
`GET /suno/billing/me`
curl -X GET 'https://sunocore.sunoai.asia/suno/billing/me' \
-H 'X-API-Key: sk_xxx'重点字段:auth_type、is_admin、api_key.credits_balance、api_key.rate_limit_per_minute、api_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_id、action、change_amount、balance_after、transaction_type、created_at