For developers
One music link in. Every platform out.
Matching a track across streaming services is a tar pit of near-identical titles, regional catalogues and remasters. We match on ISRC first — the recording's actual identifier — and fall back to search only when we must, and tell you when we did.
isrc GBARL9300135 · 5 direct · 1 search fallback
https://open.spotify.com/track/4cOdK2wGLETKBW3PvgPWqT
isrc GBARL9300135 · 5 direct · 1 search fallback
Live demo
Not a screenshot. The real endpoint.
Paste any Spotify, Apple Music, YouTube Music, Deezer, Tidal or SoundCloud link. What comes back is the actual JSON from the same code path a paying key hits — same fields, same matching, same speed.
How it works
ISRC first, search second
The identifier route
Every commercially released recording carries an ISRC. When we can read it from the source platform, we look up that exact code everywhere else. No guessing about which “Anniversary Remaster” you meant — it's the same recording or it isn't.
The honest fallback
Some platforms don't expose an ISRC, and some catalogues simply don't carry a track. Then we match on artist and title and hand back a search URL — flagged with isSearchFallback: true, so your code can decide whether to show it, hide it, or mark it as approximate.
Limits
What it doesn't do
You'll find this out on day two anyway, so here it is on day zero.
- 01Not every track exists on every platform. When a catalogue doesn't carry it, you get a search URL, not a fabricated deep link.
- 02YouTube has no ISRC to match on, so those links come from title matching. Treat them as good, not certain.
- 03Playlists, albums and podcasts are out of scope. This resolves single tracks.
- 04We're not a catalogue or a metadata provider. Title, artist and artwork come along for the ride; they aren't the product.
Compared to Odesli
Where the alternative stands today
Odesli's public API is up and returns valid responses. Here is what each service returned for the same Spotify track.
api.song.link
Odesli
Plus a handful of smaller stores. Valid response, page URL included — the service runs. Apple Music, iTunes, YouTube, YouTube Music and SoundCloud simply weren't in it.
api.songport.link/v1 · same track
SongPort
Every major platform, each one flagged direct or search fallback so you know what you got. Run the demo above on the same link and check it yourself.
Beyond the response itself: Odesli has no self-serve paid plan, asks for roughly 10 requests per minute, and requires attribution.
Pricing
We haven't set pricing yet
It's still too early to put real numbers on this. We'd rather set pricing we can stand behind than post a placeholder and quietly walk it back. Concrete plans are coming in the next few weeks.
The waitlist is how you hear first — and the people on it help shape what those plans end up being.
Access
We open access in small groups
Keys are issued by hand, so we can watch what the matching does under your traffic before you depend on it. Leave your address and tell us what you're building — that's what decides who goes first.
Read the full reference
Every field, every status code, the versioning promise and the rate limits — before you commit to anything.