Skip to main content
GET
/
api
/
v1
/
vocal-removal
/
record-info
Get Audio Separation Details
curl --request GET \
  --url https://api.sunoapi.org/api/v1/vocal-removal/record-info \
  --header 'Authorization: Bearer <token>'
{
"code": 200,
"msg": "success",
"data": {
"taskId": "3e63b4cc88d52611159371f6af5571e7",
"musicId": "376c687e-d439-42c1-b1e4-bcb43b095ec2",
"callbackUrl": "https://57312fc2e366.ngrok-free.app/api/v1/vocal-removal/test",
"musicIndex": 0,
"completeTime": 1753782937000,
"response": {
"originUrl": null,
"instrumentalUrl": "https://file.aiquickdraw.com/s/d92a13bf-c6f4-4ade-bb47-f69738435528_Instrumental.mp3",
"vocalUrl": "https://file.aiquickdraw.com/s/3d7021c9-fa8b-4eda-91d1-3b9297ddb172_Vocals.mp3",
"backingVocalsUrl": null,
"drumsUrl": null,
"bassUrl": null,
"guitarUrl": null,
"keyboardUrl": null,
"percussionUrl": null,
"stringsUrl": null,
"synthUrl": null,
"fxUrl": null,
"brassUrl": null,
"woodwindsUrl": null
},
"successFlag": "SUCCESS",
"createTime": 1753782854000,
"errorCode": null,
"errorMessage": null
}
}
Retrieve the full state and output URLs for a vocal/instrument separation task using the taskId from Vocal & Instrument Stem Separation.

What you get

  • Task metadata: taskId, musicId, musicIndex, createTime, completeTime
  • Result URLs:
  • instrumentalUrl (for separate_vocal)
  • vocalUrl
  • Additional stems (for split_stem): backingVocalsUrl, drumsUrl, bassUrl, guitarUrl, keyboardUrl, percussionUrl, stringsUrl, synthUrl, fxUrl, brassUrl, woodwindsUrl
  • Status: successFlag = PENDING | SUCCESS | failure states, with errorMessage if any

Required Query Parameter

taskId (string)

The identifier returned by POST /api/v1/vocal-removal/generate. Use it to check progress and retrieve all output links.

Success Response — separate_vocal (example)

{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "3e63b4cc88d52611159371f6af5571e7",
    "musicId": "376c687e-d439-42c1-b1e4-bcb43b095ec2",
    "callbackUrl": "https://57312fc2e366.ngrok-free.app/api/v1/vocal-removal/test",
    "musicIndex": 0,
    "completeTime": 1753782937000,
    "response": {
      "originUrl": null,
      "instrumentalUrl": "https://file.aiquickdraw.com/s/d92a13bf-c6f4-4ade-bb47-f69738435528_Instrumental.mp3",
      "vocalUrl": "https://file.aiquickdraw.com/s/3d7021c9-fa8b-4eda-91d1-3b9297ddb172_Vocals.mp3",
      "backingVocalsUrl": null,
      "drumsUrl": null,
      "bassUrl": null,
      "guitarUrl": null,
      "keyboardUrl": null,
      "percussionUrl": null,
      "stringsUrl": null,
      "synthUrl": null,
      "fxUrl": null,
      "brassUrl": null,
      "woodwindsUrl": null
    },
    "successFlag": "SUCCESS",
    "createTime": 1753782854000,
    "errorCode": null,
    "errorMessage": null
  }
}

Authorizations

Authorization
string
header
required

🔑 API Authentication

All endpoints require authentication using Bearer Token.

Get API Key

  1. Visit the API Key Management Page to obtain your API Key

Usage

Add to request headers:

Authorization: Bearer YOUR_API_KEY

⚠️ Note:

  • Keep your API Key secure and do not share it with others
  • If you suspect your API Key has been compromised, reset it immediately from the management page

Query Parameters

taskId
string
required

The task ID returned from the Separate Vocals from Music endpoint. Used to retrieve detailed information about a specific vocal separation task, including download URLs for all separated audio components.

Response

Request successful

code
enum<integer>

Status code. 200 - Request successful, 400 - Invalid parameters, 401 - Unauthorized access, 404 - Invalid request method or path, 405 - Rate limit exceeded, 413 - Theme or prompt too long, 429 - Insufficient credits, 430 - Your call frequency is too high. Please try again later, 455 - System maintenance, 500 - Server error

Available options:
200,
400,
401,
404,
405,
413,
429,
430,
455,
500
Example:

200

msg
string

Error message when code != 200

Example:

"success"

data
object