Separate Vocals from Music
Vocal Removal
Vocal and Instrument Separation
Use advanced audio processing technology to separate music into vocal, instrumental, and individual instrument tracks.
POST
Separate Vocals from Music
Usage Guide
- Separate a platform‑generated mix into vocal, instrumental, and individual instrument components.
- Two processing modes are available:
separate_vocal— 2‑stem splitsplit_stem— up to 12‑stem split
- Ideal for karaoke creation, remixes, sample extraction, or detailed post‑production.
- Best results on professionally mixed AI tracks with clear vocal and instrumental layers.
- Billing notice: Each call consumes credits; re‑calling the same track is charged again (no server‑side caching).
- Pricing: Check current per‑call credit costs at https://api.box/billing.
Separation Mode Details
Mode (type) | Stems Returned | Typical Use | Credit Cost |
|---|---|---|---|
separate_vocal (default) | 2 stems – Vocals + Instrumental | Quick vocal removal, karaoke, basic remixes | 10 Credits |
split_stem | Up to 12 stems – Vocals, Backing Vocals, Drums, Bass, Guitar, Keyboard, Strings, Brass, Woodwinds, Percussion, Synth, FX/Other | Advanced mixing, remixing, sound design | 50 Credits |
Parameter Reference
| Name | Type | Description |
|---|---|---|
taskId | string | ID of the original music-generation task |
audioId | string | Which audio variation to process when multiple versions exist |
type | string | Required. Separation mode: separate_vocal or split_stem |
Developer Notes
- All returned audio-file URLs remain accessible for 14 days.
- Separation quality depends on the complexity and mixing of the original track.
separate_vocalreturns 2 stems — vocals + instrumental.split_stemreturns up to 12 independent stems — vocals, backing vocals, drums, bass, guitar, keyboard, strings, brass, woodwinds, percussion, synth, FX/other.- Billing: Every request is charged. Re‑submitting the same track triggers a new credit deduction (no server‑side caching).
Authorizations
🔑 API Authentication
All endpoints require authentication using Bearer Token.
Get API Key
- 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
Body
application/json
The task ID of the music generation task.
- Required. This identifies the task containing the audio to be processed.
- Both
taskIdandaudioIdare needed for accurate track identification.
Example:
"5c79****be8e"
The ID of the specific audio track to separate.
- Required. This identifies which specific track within the task to process.
- Both
taskIdandaudioIdare needed for accurate track identification.
Example:
"e231****-****-****-****-****8cadc7dc"
The URL to receive vocal separation results when processing is complete.
- Required.
- The callback will include different types of separation results based on the
typeparameter:separate_vocal: Contains vocal and instrumental separation resultssplit_stem: Contains various instrument separation results
- For detailed callback format and implementation guide, see Vocal Separation Callbacks
- Alternatively, you can use the Get Vocal Separation Details interface to poll task status
Example:
"https://api.example.com/callback"
Vocal separation type.
- Optional, default value is
separate_vocal. separate_vocal: Separate vocals and accompaniment, generating vocal and instrumental trackssplit_stem: Separate various instrument sounds, generating vocals, backing vocals, drums, bass, guitar, keyboard, strings, brass, woodwinds, percussion, synthesizer, effects, and other tracks
Available options:
separate_vocal, split_stem Example:
"separate_vocal"
Callbacks
Response
Request successful
Status Codes
- ✅ 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
Error message when code != 200
Example:
"success"
