Seeding and Importing

I encourage people who are building IRSC scanners or importer Userscripts for music store and streaming pages to use MagicISRC as an ISRC submission UI. If you do that, then you don't need to build an OAuth authentication system for the MusicBrainz API, and as a bonus the MagicISRC page includes a built-in edit preview, and detection for common problems like duplicated/shifted ISRCs.

Apple Music Barcodes/ISRCs

Browser userscript that allows reading barcodes, ISRCs, and other metadata from Apple Music releases.

Github Repository
Your tool here

If you’re using MagicISRC to submit ISRCs to Musicbrainz in your app or userscript, please let me know so I can list it here!

Open an issue on Github

Contact me by opening an issue on Github if you find errors in this list, or to request removal from the list.

Documentation

MagicISRC supports seeding by appending GET parameters to the top-level URL https://magicisrc.kepstin.ca/. This makes it easy to use from a Userscript or terminal application, since you just need to construct a link for the user to open in their web browser. The following parameters are supported.

mbid
musicbrainzid

The MusicBrainz Release ID.

If not supplied, then MagicISRC will show the “Enter a release MBID:” form. Any supplied ISRCs will be applied after the user manually enters an MBID. The value of this parameter is not required to be a bare MBID – you can use a full MusicBrainz URL, for example. MagicISRC will search for some text that’s formatted like an MBID within the provided string.

Using the parameter name musicbrainzid may be helpful in some circumstances, since the name mbid might be detected by browsers as a tracking parameter and removed from links.

isrcM-T

An ISRC, specified by Medium & Track.

If you know both which medium and which track an ISRC is for, this is the recommended parameter format. Within the name of the parameter, M is replaced with the medium index (counting from 1) and T is replaced with the track index (counting from 1). CD pregap tracks are also supported, by using 0 as the track index.

Examples:

  • isrc1-1 Track 1 on Medium 1
isrcN

An ISRC, specified by sequential position.

If you just have a list of ISRCs but you do not know how they are split between media, use this format. This parameter format is primarily supported for backwards compatibility with older ISRC submission tools – please use the Medium & Track format instead if possible. Within the name of the parameter, N is replaced with the position (counting from 1). CD pregap tracks are not supported; they will be skipped in the numbering sequence.