Stable·v0.1

SDKs & integrations, native to your stack.

One stem splitter API in seven first-party SDKs and four no-code integrations — from npm install @aistemsplitter/sdk to a single n8n node — backed by an OpenAPI 3.1 spec and credit packs that never expire.

Get API keyRead API docs
POST /v1/audio/splits
$ curl -X POST https://api.aistemsplitter.org/v1/audio/splits \
 -H "Authorization: Bearer $AISTEMSPLITTER_API_KEY" \
 -d '{"input": { "type": "direct_url", "url": "…" }, "stemModel": "6s" }'
HTTP/1.1 200 OKsucceeded
Languages
7
Integrations
4
Channels
13
Spec
OpenAPI 3.1
/ first-party SDKs

Pick the SDK that matches your stack

Node.js
Node.js / TypeScript
@aistemsplitter/sdk · npm + JSR
$npm install @aistemsplitter/sdk
Quickstart
v0.1.0
Python
Python
aistemsplitter · PyPI
$pip install aistemsplitter
Quickstart
v0.1.0
Java
Java / Kotlin
org.aistemsplitter:aistemsplitter-java · Maven Central
$implementation "org.aistemsplitter:aistemsplitter-java:0.1.0"
Read on GitHub
v0.1.0
Go
Go
github.com/aistemsplitter/aistemsplitter-go · Go module
$go get github.com/aistemsplitter/aistemsplitter-go
Read on GitHub
v0.1.0
PHP
PHP
aistemsplitter/aistemsplitter · Packagist
$composer require aistemsplitter/aistemsplitter
Read on GitHub
v0.1.0
Swift
Swift
aistemsplitter-swift · SPM + CocoaPods
$pod "aistemsplitter-swift"
Read on GitHub
v0.1.0
Lua
Lua
aistemsplitter · LuaRocks
$luarocks install aistemsplitter
Read on GitHub
v0.1.0
/ universal quick start

Submit a job, poll once, get six stems

Twelve lines that prove the surface area. Submit a split, get a job id, poll once, receive vocals, drums, bass, guitar, piano, and other — the same htdemucs_ft separation that runs across every SDK. Charged per minute of input audio against credit packs that never expire ($0.08–$0.14 per minute depending on volume).

# 1) Submit a split job
curl -X POST https://api.aistemsplitter.org/v1/audio/splits \
  -H "Authorization: Bearer $AISTEMSPLITTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": { "type": "direct_url", "url": "https://example.com/song.mp3" },
    "stemModel": "htdemucs_ft"
  }'
# → { "id": "split_01J…", "status": "queued" }

# 2) Poll for completion
curl https://api.aistemsplitter.org/v1/audio/splits/split_01J… \
  -H "Authorization: Bearer $AISTEMSPLITTER_API_KEY"
# → { "status": "succeeded", "stems": { "vocals": "...", ...x6 } }
/ no-code & automation

Same API, no-code path for the rest of the team

The engineer is rarely the only user. Drop the same stem splitter API into n8n, GitHub Actions, a container, or a Pipedream workflow — so ops, content, and CI all run on one vendor.

⬢
Tutorial

n8n community node

Trigger from anything, output six stems. Self-host or n8n Cloud.

Open tutorial
▶
marketplace

GitHub Action

Stem-split audio in CI/CD, auto-attach to releases.

View on Marketplace
🐳
ghcr.io

Docker / CLI image

One-line container for batch jobs and local pipelines.

View on GHCR
P
workspace

Pipedream actions

Drop-in steps for Pipedream workflows.

View on Pipedream
/ frequently asked

Questions developers ask before they install

  • Which SDK should I install — Node, Python, or curl?

    Pick the language your service already runs on. Node and Python ship typed clients with one-call helpers (waitForSplit, verify_signature) and full method autocomplete; curl works on the same REST endpoints if you're prototyping or scripting from a shell. The hosted API is identical across all 13 distribution channels — same job ids, same webhooks, same per-minute billing.

  • Do credits expire if I don't use them?

    No. Credit packs never expire — purchase $6.99 / 50 minutes, $15 / 150 minutes, or $39.99 / 500 minutes and the balance stays on your account until you spend it. There is no monthly subscription, no rollover cap, and no auto-renewal. The first 3 minutes are free with no card required, charged at $0.08–$0.14 per minute depending on pack size.

  • Which model do you use, and can I name it in the request?

    The default is htdemucs_ft (Demucs fine-tuned, 4-stem: vocals, drums, bass, other) — the same model variant the open-source community benchmarks at ~8.7 dB SDR. You can switch to htdemucs_6s for guitar and piano stems by passing model='htdemucs_6s' on submit. Models are named explicitly in every SDK so output quality is comparable to local Demucs runs.

  • Can I self-host the SDK or the inference?

    The SDK clients are MIT-licensed and ship to npm, JSR, PyPI, Maven Central, Packagist, LuaRocks, SPM, and CocoaPods — fork or vendor them as you like. Inference itself runs on our managed GPUs against the hosted API at api.aistemsplitter.com — there is no on-prem inference image in v1, but the GHCR Docker image wraps the SDK for self-hosted orchestration.

  • What's the rate limit, and how do I handle large files?

    Concurrent jobs and per-minute request caps live on /developers/api with the current numbers (they age, so they aren't pinned here). For large uploads, call presignUpload (Node) / presign_upload (Python) to get a direct-to-storage URL — the SDK handles retries with exponential backoff out of the box. Files up to 50 MB upload directly; larger files use multipart presigned URLs.

  • How do I receive the result without polling forever?

    Pass webhook_url on createSplit. When the job finishes, the API POSTs an HMAC-SHA256-signed event to your URL with the stem download links inline. Verify the signature with one SDK call (verifyWebhook in Node, verify_signature in Python). The Webhooks section in each per-language quickstart shows runnable Express, Hono, FastAPI, and Flask handlers.

Build with stem splitting today.

Mint a key, paste it into the Quick Start, and have separated stems coming back inside a minute. Ten free minutes are on the house — the rest runs on credit packs that never expire, $0.08–$0.14 per minute depending on pack size.

Get API keyTalk to the team
LogoAI Stem Splitter

Launch your next AI product faster with this template.

GitHubDiscordEmail
Product
  • Features
  • Pricing
  • FAQ
Free Tools
  • Key Finder
  • Nightcore Maker
  • Pitch Changer
  • Slowed Reverb Maker
  • TikTok Voice Generator
AI Tools
  • AI Vocal Removal
  • AI Acapella Extractor
  • Guitar Remover
  • YouTube & SoundCloud Vocal Remover
  • Karaoke Maker
  • AI Drum Remover
  • Voice Isolator
Alternatives
  • Lalal.ai alternative
  • Splitter.ai Alternative
  • VocalRemover alternative
Resources
  • Blog
  • API
Developers
  • API Reference
  • SDKs
  • Get API Key
Integrations
  • n8n integration
Trust
  • Stripe Climate
  • Product Hunt
Legal
  • Cookie Policy
  • Privacy Policy
  • Terms of Service
BadgeBadge
BadgeBadge
BadgeBadge
BadgeBadge
© 2026 AI Stem Splitter All Rights Reserved.
LogoAI Stem Splitter
HomePricing
API Reference

REST endpoints, auth, callbacks, OpenAPI 3.1 spec.

SDKs

Seven first-party SDKs (Node, Python, Java, Go, PHP, Swift, Lua).

Get API Key

Mint a key in Settings → Developer.

Key Finder

Detect tempo and musical key — no signup

Nightcore Maker

Nightcore, daycore, or sped-up versions from a YouTube link or upload.

Pitch Changer

Shift pitch up or down without affecting tempo.

Slowed Reverb Maker

Slow + reverb edits for TikTok, Reels, and slowed playlists.

TikTok Voice Generator

Generate free AI voiceovers for short videos.

AI Vocal Removal

Remove vocals for karaoke tracks, quick acapellas, and six-stem previews from files or supported links

AI Acapella Extractor

Pull a clean acapella out of any song for a remix, mashup, or DJ edit.

Guitar Remover

Pull the guitar out and practice over the real band — vocals, drums, and bass.

YouTube & SoundCloud Vocal Remover

Paste a YouTube or SoundCloud link and split it into vocals, drums, bass, piano, guitar, and other stems

Karaoke Maker

Remove vocals from a song to make a clean instrumental backing track for sing-alongs, rehearsals, and karaoke nights

AI Drum Remover

Upload a song and download one drumless track — vocals, bass, and everything except the drums.

Voice Isolator

Extract spoken voice from noisy recordings, interviews, calls, and field audio.

Blog
Dashboard