Skip to main content
POST
Separate Vocals from Music

Usage Guide

  • Separate a platform‑generated mix into vocal, instrumental, and individual instrument components.
  • Three processing modes are available:
    • separate_vocal — 2‑stem split (Vocals + Instrumental)
    • split_stem   — up to 12‑stem split
    • split_stem_advanced — advanced multi‑stem separation with specific instrument selection
  • 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

Parameter Reference

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_vocal returns 2 stems — vocals + instrumental.
  • split_stem returns up to 12 independent stems — vocals, backing vocals, drums, bass, guitar, keyboard, strings, brass, woodwinds, percussion, synth, FX/other.
  • split_stem_advanced returns independent stems for specified instruments. Use the stemName parameter to specify the instrument name.
  • Billing: Every request is charged. Re‑submitting the same track triggers a new credit deduction (no server‑side caching).

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:

⚠️ 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
taskId
string
required

Unique identifier of the music generation task. Should be the taskId returned by the "Generate Music" or "Extend Music" endpoint.

Example:

"5c79****be8e"

audioId
string
required

Unique identifier of the specific audio track to process for vocal separation. This ID is returned in the callback data after music generation completes.

Example:

"e231****-****-****-****-****8cadc7dc"

stemName
enum<string>
required

Only used when type is split_stem_advanced. Specifies the name of the specific track/instrument to separate.

Available options:
Lead Vocal,
Drum Kit,
Kick,
Snare,
Risers,
Bass,
Backing Vocals,
Piano,
Electric Guitar,
Percussion,
String Section,
Synth,
Acoustic Guitar,
Sound Effects,
Synth Pad,
Synth Bass,
Guitar,
Brass Section,
Organ,
Electronic Drum Kit,
Lead Electric Guitar,
Synth Keys,
Rhythm Electric Guitar,
Electric Piano,
Upright Bass,
Keyboards,
Distorted Electric Guitar,
Synth Strings,
Synth Lead,
Woodwinds,
Rhythm Acoustic Guitar,
Flute,
Harp,
Tambourine,
Trumpet,
Arpeggiator,
Accordion,
Fiddle,
Pedal Steel Guitar,
Synth Voice,
Violin,
Digital Piano,
Synth Brass,
Mandolin,
Choir,
Banjo,
Bells,
Clarinet,
Tenor Saxophone,
Trombone,
Shaker,
French Horn,
Glockenspiel,
Electric Bass,
Cello,
Timpani,
Harmonica,
Marimba,
Vibraphone,
Lap Steel Guitar,
Saxophone,
Orchestra,
Horns,
Cymbals,
Hand Clap,
Oboe,
Celesta,
Congas,
Drone,
Alto Saxophone,
Double Bass,
Ukulele,
Harpsichord,
Baritone Saxophone,
Xylophone,
Tuba,
Bass Guitar,
Whistle,
Lead Guitar,
Rhodes,
808,
Bongos,
Bassoon,
Cowbell,
Viola,
Sitar,
Steel Drums,
Piccolo,
Theremin,
Bagpipes,
Hi-Hat,
Music Box,
Melodica,
Tabla,
Koto,
Djembe,
Taiko,
Didgeridoo
callBackUrl
string<uri>
required

URL for receiving vocal separation task completion updates. Required for all vocal separation requests.

Example:

"https://api.example.com/callback"

type
enum<string>
default:separate_vocal

Separation type. Options:

  • separate_vocal: Separate vocals and accompaniment, generating vocal and instrumental tracks
  • split_stem: Separate various instrument sounds, generating multiple instrument tracks
  • split_stem_advanced: Advanced multi-stem separation with specific instrument selection, generating more refined instrument tracks
Available options:
separate_vocal,
split_stem,
split_stem_advanced
Example:

"separate_vocal"

Callbacks

POST
{$request.body#/callBackUrl}vocalRemovalGenerated

Body

application/json
code
integer

Status code

Example:

200

msg
string

Response message

Example:

"vocal Removal generated successfully."

data
object

Response

200

Callback received successfully

Response

Request successful

code
enum<integer>

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

msg
string

Error message when code != 200

Example:

"success"

data
object