API v1 · Live

TuneLab
Audio
API.

Stems, analysis, transcription, mastering — 25+ audio endpoints behind one integration. Built for media SaaS and creator-tool teams who'd rather ship product than wire up five audio vendors.

live response
curl https://api.tunelab.dev/v1/analyze \
  -H "Authorization: Bearer tl_live_xxx" \
  -G --data-urlencode "song=Get Lucky" \
      --data-urlencode "artist=Daft Punk"

{
  "artist": "Daft Punk",
  "title":  "Get Lucky",
  "tempo":  116.01,
  "key":    "B",
  "mode":   "minor",
  "camelot": "10A",
  "energy":  72,
  "_meta": {
    "cache": "hit",
    "latency_ms": 8,
    "credits_used": 0
  }
}

What you can build with it

Open models, production-hardened: HTDemucs FT, BS-RoFormer, madmom, MAEST.

BPM & Key

Float-precision tempo (116.01, not 116). Musical key with Camelot. Confidence scores. Half/double alternatives for DJ tooling.

Beat Grid

Frame-level beat and downbeat timestamps. DJ-verified BPM. Everything you need to sync decks, auto-cue, or build a mixer.

~

Mood & Energy

Energy, danceability, happiness, acousticness, instrumentalness, speechiness. Trained on 114K tracks with MAEST embeddings.

Song Structure

Intro, verse, chorus, drop, breakdown, outro — with timestamps. Chroma self-similarity matrix + Foote kernel segmentation.

Universal Resolve

Any ID (Spotify, Apple, Deezer, ISRC, MusicBrainz) → all cross-platform IDs. 9.3M tracks in our identity database.

Stem Separation

4-stem vocal/drums/bass/other separation on GPU. Async jobs with webhook callbacks. HTDemucs + BS-RoFormer.

Spotify migration

One line of code to switch.

We built a compatibility shim so you can replace your Spotify Audio Features calls without touching anything except the base URL and auth header.

migration
// Before (deprecated November 2024)
fetch('https://api.spotify.com/v1/audio-features/2WfaOiMkCvy7F5fcp2zZ8L', {
  headers: { Authorization: 'Bearer <spotify_token>' }
})

// After — one-line change
fetch('https://api.tunelab.dev/v1/compat/spotify/audio-features/2WfaOiMkCvy7F5fcp2zZ8L', {
  headers: { Authorization: 'Bearer tl_live_xxx' }
})

// Same JSON schema. Same field names. Real DSP, not cached metadata.
See full Spotify comparison → Read the migration guide