Use case

Stem Separation API

Developers who need the individual stems of a track, not just the mixed master, for remixing, karaoke, or post-production.

The problem

A finished song is a single mixed file. The moment you need just the vocal, or a clean instrumental, or to rebalance the drums, a flat master is a dead end. Running a separation model yourself means GPUs, model weights, and a queue to operate.

Why MusicAPI fits this

Two depths: a fast two-track split (vocal plus instrumental) and a full multi-track separation, behind one endpoint, so you pick the cost and detail you need.

Async with a single poll: submit a clip_id, get a task_id, poll one task endpoint until every stem URL is ready. No model or GPU to host.

Stem files are served from our own CDN, so the response is stable, hot-linkable, and never exposes where the audio was produced.

Code sample

A real request against the live API: start a job, then poll the task endpoint until the audio is ready.

curl
# Full multi-track stem separation for a finished clip
curl -X POST https://api.musicapi.ai/api/v1/sonic/stems/full \
  -H "Authorization: Bearer $MUSICAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"clip_id": "YOUR_CLIP_ID"}'

# -> { "message": "success", "task_id": "TASK_ID" }

# Poll until every stem has a URL
curl https://api.musicapi.ai/api/v1/sonic/task/TASK_ID \
  -H "Authorization: Bearer $MUSICAPI_KEY"

Pricing

MusicAPI is pay-as-you-go with credit packs, plus predictable monthly subscriptions. The per-credit rate is the same across packs and subscriptions. See the pricing page for current rates, free credits, and volume options.

Related: Suno API · Producer AI API

FAQ

What is the difference between basic and full separation?

Basic returns a two-track split, typically vocal and instrumental, and is the cheapest path. Full returns a multi-track separation (vocals, drums, bass, and more) for finer control. Both use the same submit-then-poll flow.

How do I get the stems back?

The submit call returns a task_id. Poll GET /api/v1/sonic/task/{task_id}; while it runs you get a not-ready response, and when it finishes the response carries each stem as a ready-to-stream URL.

Where are the stem files hosted?

Every stem URL is served from our own CDN. The URLs are stable and safe to store or hot-link, and they never reveal the underlying generation infrastructure.

Build it in 5 minutes

Get free credits on signup and run real generations before any payment. No credit card required to start.

API details verified 2026-05-18. The API surface evolves; the pricing page always has current rates.