Vocal removal API
Endpoint description
Vocal removal splits an existing song into a vocals track and an instrumental track. It is the shortcut form of separation: you only pass a source song ID, no separation mode has to be chosen, and the server always processes it as two tracks (two).
Endpoint: POST /api/music/vocal-removal
Billing: Free. This endpoint only splits tracks; it incurs no generation cost and writes no billing record.
Recommended model: suno-v6. suno-v6, suno-v6-wild and suno-v6-mini are available.
Authentication
| Parameter | Type | Required | Notes |
|---|---|---|---|
| Authorization | string | yes | Bearer YOUR_API_KEY |
| Content-Type | string | yes | application/json |
Request parameters
| Parameter | Type | Required | Default | Notes |
|---|---|---|---|---|
| model | string | yes | - | Customer-facing model name: suno-v6, suno-v6-wild or suno-v6-mini |
| source_clip_id | string | yes | - | The real song_id of the source song; it must be completed and accessible to the current API key |
| source_audio_url | string | no | - | Source audio address (when the source belongs to another account the server relays it; clients do not need to send this) |
| source_file_name | string | no | - | Source file name; used only for logs and display |
| song_title | string | no | - | Prefix for the result title; by default the source song title is kept |
Compatible aliases: sourceClipId, audio_id, audioId and song_id can all be used instead of source_clip_id.
Request example
curl -X POST https://www.suno-api.io/api/music/vocal-removal \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "suno-v6",
"source_clip_id": "source_song_id",
"song_title": "Vocal removal"
}'
Response
{
"code": 200,
"message": "success",
"data": {
"clips": [
{
"song_id": "vocals_clip_id",
"song_title": "Vocal removal (Vocals)",
"status": "pending",
"stem_from_id": "source_song_id",
"stem_mode": "two"
},
{
"song_id": "instrumental_clip_id",
"song_title": "Vocal removal (Instrumental)",
"status": "pending",
"stem_from_id": "source_song_id",
"stem_mode": "two"
}
]
}
}
A single submission returns 2 versions × {Vocals, Instrumental}, so clips usually holds 4 entries. Group by stem_from_id and tell vocals from instrumental by the song_title suffix.
Notes
- Poll the result tracks with the song query API (
POST /api/music/query) untilcompletedbefore using them;GET /api/music/songs/:song_idand the song history list currently do not include tracks produced by vocal removal — this is a known difference. - If you need to choose two-track or multi-track mode, or to split by track name, use the separation (vocal & backing split) API.
- Unwanted tracks can be hidden with the stem delete API; do not submit repeated delete requests.
Get an API key
Create an API key in the console after signing up. ¥0.6 per run returns 2 tracks, downloads are unlimited, and no phone number is required.
Get API key Back to overview