MusicBrainz Partnership

The Echo Nest has linked our IDs to MusicBrainz, making it easy for Echo Nest developers to access MusicBrainz content. MusicBrainz is a user-maintained open community that collects and makes available to the public music metadata in the form of a relational database.

Available Assets

The MusicBrainz catalog provides a deep, user-contributed data set across their artists and songs, including:

  1. Textual data for over 600,000 artists, and close to 1 million songs
  2. Relationships between artists and bands
  3. Release and track identification information, including labels, ISRC codes, release type and many more
Rights & Responsibilities

The Echo Nest doesn't provide any MusicBrainz data other than IDs. The use of these IDs is up to you as the application developer. MusicBrainz makes their data available for data extracts, etc., and has its own terms and licensing conditions.

Monetization

The MusicBrainz service provides much of its data into the public domain; other data is available only under a Creative Commons license. See the MusicBrainz site for specific details and questions.

Getting Started

When making calls to the Echo Nest API, use the parameter: bucket=id:musicbrainz. This will return foreign ids into the MusicBrainz database, which can then be used to perform additional lookups to gather additional metadata.

As an example, Radiohead has a MusicBrainz ID of a74b1b7f-71a5-4011-9441-d0b5e4122711. To find biographies for Radiohead using our API and the MusicBrainz ID, you would issue a query like this:

http://developer.echonest.com/api/v4/artist/biographies?api_key=FILDTEOIK2HBORODV&id=musicbrainz:artist:a74b1b7f-71a5-4011-9441-d0b5e4122711

Note that the id parameter is of the form catalog:entity:id; in this case, musicbrainz is the catalog; artist is the entity, and a74b1b7f-71a5-4011-9441-d0b5e4122711 is the artist ID in the MusicBrainz catalog.

You can also retrieve artist information and receive their IDs in the MusicBrainz name space. To do this, you use the bucket=musicbrainz parameter on any call that returns artists, songs or tracks. As an example, to find artists similar to Radiohead, with MusicBrainz foreign IDs returned, issue a call like this:

http://developer.echonest.com/api/v4/artist/similar?api_key=FILDTEOIK2HBORODV&id=musicbrainz:artist:a74b1b7f-71a5-4011-9441-d0b5e4122711&bucket=id:musicbrainz
Example results:
{
    "response": {
        "artists": [
            {
                "foreign_ids": [
                    {
                        "catalog": "musicbrainz", 
                        "foreign_id": "musicbrainz:artist:ba0d6274-db14-4ef5-b28d-657ebde1a396"
                    }
                ], 
                "id": "ARN5NHX1187FB4F755", 
                "name": "The Smashing Pumpkins"
            }, 
            {
                "foreign_ids": [
                    {
                        "catalog": "musicbrainz", 
                        "foreign_id": "musicbrainz:artist:52074ba6-e495-4ef3-9bb4-0703888a9f68"
                    }
                ], 
                "id": "ARFC93D1187FB49D2E", 
                "name": "Arcade Fire"
            }, 
            {
                "foreign_ids": [
                    {
                        "catalog": "musicbrainz", 
                        "foreign_id": "musicbrainz:artist:32efea44-6cb5-4b4f-bdaa-c8b8f6cef981"
                    }
                ], 
                "id": "ARGEJ8B1187B9AE2E7", 
                "name": "Manic Street Preachers"
            }, 
            {
                "foreign_ids": [
                    {
                        "catalog": "musicbrainz", 
                        "foreign_id": "musicbrainz:artist:8ed2e0b3-aa4c-4e13-bec3-dc7393ed4d6b"
                    }
                ], 
                "id": "ARH1N081187B9AC562", 
                "name": "Thom Yorke"
            }, 
            {
                "foreign_ids": [
                    {
                        "catalog": "musicbrainz", 
                        "foreign_id": "musicbrainz:artist:fd857293-5ab8-40de-b29e-55a69d4e4d0f"
                    }
                ], 
                "id": "ARR3ONV1187B9A2F59", 
                "name": "Muse"
            }
        ], 
        "status": {
            "code": 0, 
            "message": "Success", 
            "version": "4.2"
        }
    }
}

Note that for each artist returned, there is a new foreign_ids block that includes a foreign_id of the form catalog:entity:id, in this case, musicbrainz:artist:fd857293-5ab8-40de-b29e-55a69d4e4d0f