Recording ↔ composition, both directions
The ISWC (International Standard Musical Work Code) is the letter T followed by 10 digits (e.g. T-070142799-7). It identifies the composition, the written song behind every recording of it, and SonoVault bridges it to recordings both ways.
Go from a recording to the work with GET /v1/tracks/iswc (by ISRC or track ID), or from a work to every recording of it with GET /v1/tracks/iswc/:iswc. The links are drawn from The MLC, so this is one of the few self-serve APIs that maps recordings to the compositions behind them at all; most only ever return recording metadata.
What you get back
Each direction has a small, dedicated payload; ISWCs are intentionally not part of the standard track shape.
sonovault_idThe canonical track the ISRC resolved to.isrcA representative ISRC for that recording.iswcs[]Each linked work: { iswc, title }. Usually one; several for medleys or samples.iswcThe normalised composition code.titleThe work's title.totalFull recording count, even when the page is truncated.recordings[]Each recording: { sonovault_id, isrc, title, artist }, most-popular-first.ISWC endpoints at a glance
| What | Request | Returns |
|---|---|---|
| Recording → ISWC | GET /v1/tracks/iswc?isrc= | id= | The ISWC work code(s) behind one recording. Provide exactly one of isrc or id. |
| ISWC → recordings | GET /v1/tracks/iswc/:iswc | Every recording of a composition, each with its ISRC. Separators like T-070142799-7 are accepted. |
What developers build with it
Cross a catalog from ISRC to ISWC so mechanical royalties route to the right work, the core of unmatched-recording cleanup.
Start from a work's ISWC and pull every recording of it for sync research or clearance, each with a resolvable ISRC.
Walk your tracks, call recording → ISWC on each, and flag the recordings that have no composition code on file yet.
New to the two codes? The ISRC ⇄ ISWC converter shows the crosswalk interactively, no code required.
Good to know
Dedicated endpoints
ISWCs are not folded into the standard track payload; they have their own read paths in both directions, because the recording ↔ work relationship is many-to-many.
Sourced from The MLC
The ISRC ↔ ISWC links come from the US Mechanical Licensing Collective. Coverage is broad but not total: not every recording is mapped to a work yet.
One-to-many, both ways
One composition maps to many recordings, and one recording can map to several ISWCs when it samples or medleys more than one work.
Aggregated, not authoritative
Treat results as a fast reference and verify before any filing, licensing, or financial use. SonoVault is not affiliated with The MLC or any collecting society.
One key + SDKs
Same x-api-key auth as every /v1 endpoint, available on the free tier. Official clients: sonovault on npm and PyPI, plus the sonovault-mcp server.