POST/api/vocal-remover

Removes vocals from an audio or video file and returns a lead vocal, backing vocal, and clean instrumental. Requires an API key — create one from your dashboard.

Request

Content-Type: application/json · Authorization: Bearer <api-key>

FieldTypeDescription
fileUrlstringrequiredPublicly accessible URL of the audio or video file to process — or a YouTube video URL to download and process directly.
outputFormatstringoptionalAudio format for the returned files — mp3 wav flac. Defaults to mp3.

Remove vocals from a song (default mp3 output)

curl -X POST https://karadeo.com/api/vocal-remover \
  -H "Authorization: Bearer kd_..." \
  -H "Content-Type: application/json" \
  -d '{ "fileUrl": "https://example.com/song.mp3" }'

Remove vocals → lossless FLAC output

curl -X POST https://karadeo.com/api/vocal-remover \
  -H "Authorization: Bearer kd_..." \
  -H "Content-Type: application/json" \
  -d '{ "fileUrl": "https://example.com/song.mp3", "outputFormat": "flac" }'

Response

200Success — JSON with a URL for each part
{
  "leadVocalUrl": "https://.../lead-vocal.mp3",
  "backingVocalUrl": "https://.../backing-vocal.mp3",
  "instrumentalUrl": "https://.../instrumental.mp3"
}

Files are exported in the requested outputFormat. If the lead/backing split step is unavailable, backingVocalUrl will be null and leadVocalUrl will be the full unsplit vocal. If separation falls back to a 2-stem engine, all files are returned as MP3 regardless of outputFormat.

Errors

All error responses return application/json with an error string field.

StatusConditionBody
401Missing or invalid API key{ "error": "Authentication required" }
403Usage limit exceeded{ "error": "Usage limit exceeded", "usage": {...} }
402File duration exceeds remaining credits{ "error": "...", "usage": { tier, usedMinutes, limitMinutes, remainingMinutes, mediaDurationMinutes } }
400Missing fileUrl, or can't determine duration{ "error": "..." }
500Separation error or unexpected failure{ "error": "..." }

Credits

Each request consumes credits from your monthly quota. Cost is calculated from the file duration, rounded up to the nearest minute, at the standard rate — vocal-remover runs a second AI pass to split lead vs. backing vocal (e.g. a 3-minute song costs 6 minutes of quota).

TierMonthly limitReset
free10 min1st of each calendar month (UTC)
subscribed (monthly)500 minBilling cycle start date
subscribed (annual)6,000 minBilling cycle start date

Test