# MusicBrainz API
> The open music-metadata database as an API — artists, release-groups (albums), releases, recordings and labels, identified by stable MusicBrainz IDs (MBIDs), returned as clean JSON. Search any entity by name or Lucene query; look up an artist with their external links and tags, an album, a release with its full track list, a recording with its ISRCs, or a label; and browse an artist's complete discography. Live data with MBIDs, disambiguations, types, countries, life spans, ISRCs, barcodes, catalogue numbers and relations — the canonical identifiers that link and de-duplicate music data across services. Ideal for metadata enrichment and matching, music catalogues, tagging and library tools, and research. 11 data endpoints. Authenticated with an x-oanor-key; fair-use rate limits per plan.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/musicbrainz-api/..."
```

## Pricing
- **Free** (Free) — 3,000 calls/Mo, 5 req/s
- **Starter** ($9/Mo) — 75,000 calls/Mo, 15 req/s
- **Pro** ($29/Mo) — 400,000 calls/Mo, 30 req/s
- **Mega** ($99/Mo) — 2,000,000 calls/Mo, 80 req/s

## Endpoints

### Search

#### `GET /v1/search/artists` — Search artists

**Parameters:**
- `query` (query, required, string) — Artist name or Lucene query Example: `radiohead`
- `limit` (query, optional, string) — Max results (1–100) Example: `25`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/search/artists?query=radiohead&limit=25"
```

**Response:**
```json
{
    "data": {
        "count": 29,
        "query": "radiohead",
        "artists": [
            {
                "id": "a74b1b7f-71a5-4011-9441-d0b5e4122711",
                "area": "United Kingdom",
                "name": "Radiohead",
                "tags": [
                    "rock",
                    "electronic",
                    "post-rock",
                    "alternative rock",
                    "experimental",
                    "british",
                    "grunge",
                    "idm",
                    "uk",
                    "britannique",
                    "indie rock",
                    "electronica",
                    "alternative",
                    "britpop",
                    "art rock",
                    "post-grunge",
                    "experimental rock",
                    "english",
                    "chamber pop",
                    "parlophone",
                    "england",
                    "indietronica",
                    "melancholic",
                    "oxford",
                    "crossover prog",
                    "bootleg",
                    "rock and indie",
                    "britrock",
                    "electronic rock",
                    "ambient pop",
                    "c’était mieux avant",
                    "art pop",
                    "nude",
                    "trap edm",
                    "sacred cows",
                    "alternative rock music",
     
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/search/labels` — Search labels

**Parameters:**
- `query` (query, required, string) — Label query Example: `xl recordings`
- `limit` (query, optional, string) — Max results Example: `25`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/search/labels?query=xl+recordings&limit=25"
```

**Response:**
```json
{
    "data": {
        "count": 9949,
        "query": "xl recordings",
        "labels": [
            {
                "id": "14221f01-8939-4ea0-b8f1-b5a21beae80a",
                "name": "XL Recordings",
                "type": "Original Production",
                "score": 100,
                "country": "GB",
                "life_span": {
                    "begin": "1989",
                    "ended": null
                },
                "label_code": 5667
            },
            {
                "id": "b02449d0-22b1-4d51-9584-2fef87546d72",
                "name": "XL Recordings",
                "type": "Bootleg Production",
                "score": 81,
                "life_span": {
                    "ended": null
                },
                "disambiguation": "This entry is for unofficial releases only!"
            },
            {
                "id": "4509f80b-403c-46b5-bfb5-be77374cb90c",
                "name": "XL Recordings Ltd.",
                "type": "Holding",
                "score": 68,
                "life_span": {
                    "ended": null
                },
                "disambiguation": "not for release label use! use its imprint XL Recordings instead"
            },
            {
                "id": "60e3fa6f-e99b-458f-bf75-8e9e8e2d5b23",
                "name": "XL Recordings, Inc.",
                "score": 65,
                "country": "US",
                "life_span": {
                    "ended": null
  
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/search/recordings` — Search recordings

**Parameters:**
- `query` (query, required, string) — Recording (track) query Example: `paranoid android`
- `limit` (query, optional, string) — Max results Example: `25`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/search/recordings?query=paranoid+android&limit=25"
```

**Response:**
```json
{
    "data": {
        "count": 11399,
        "query": "paranoid android",
        "recordings": [
            {
                "id": "a029ca1f-5afa-4115-99af-f0d36d3ba13c",
                "score": 100,
                "title": "Paranoid Android",
                "video": null,
                "artist": [
                    {
                        "id": "a74b1b7f-71a5-4011-9441-d0b5e4122711",
                        "name": "Radiohead"
                    }
                ],
                "disambiguation": "live, 2001-08-01: Hutchinson Field, Chicago, IL, USA"
            },
            {
                "id": "86f9b2ba-a847-4af2-9f72-9bb785b8fa62",
                "score": 100,
                "title": "Paranoid Android",
                "video": null,
                "artist": [
                    {
                        "id": "059ec46a-4cf4-4bd8-83dd-d694aea33a2d",
                        "name": "Valcke"
                    },
                    {
                        "id": "ee164ea8-72ca-4bfd-a13d-8e22322bac18",
                        "name": "Van Laethem"
                    },
                    {
                        "id": "bbc37401-b12c-4cd2-8c63-4f717870f74f",
                        "name": "Wampers"
                    }
                ],
                "first_release_date": "2001"
            },
            {
                "id": "b946649e-d723-43ad-8e50-aa8aeb512841",
                "score": 100,
                "title": "Paranoid Andro
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/search/release-groups` — Search albums

**Parameters:**
- `query` (query, required, string) — Album/release-group query Example: `ok computer`
- `limit` (query, optional, string) — Max results Example: `25`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/search/release-groups?query=ok+computer&limit=25"
```

**Response:**
```json
{
    "data": {
        "count": 3462,
        "query": "ok computer",
        "release_groups": [
            {
                "id": "a5e4bd1a-63c9-4dfc-9e63-ed0c3dc049be",
                "score": 100,
                "title": "Ok Computer",
                "artist": [
                    {
                        "id": "7bc012a7-c5cc-4e7a-9ca6-15db02bbcde4",
                        "name": "Lemaitre"
                    },
                    {
                        "id": "481ae6c0-d3cc-4ae7-9995-5850fbf15479",
                        "name": "RebMoe"
                    }
                ],
                "primary_type": "Single",
                "first_release_date": "2021-08-20"
            },
            {
                "id": "b1392450-e666-3926-a536-22c65f834433",
                "score": 100,
                "title": "OK Computer",
                "artist": [
                    {
                        "id": "a74b1b7f-71a5-4011-9441-d0b5e4122711",
                        "name": "Radiohead"
                    }
                ],
                "primary_type": "Album",
                "first_release_date": "1997-05-21"
            },
            {
                "id": "3b55129d-276c-4c42-8327-e47ba94f2ddf",
                "score": 78,
                "title": "OK Computer (8-bit)",
                "artist": [
                    {
                        "id": "318d1a3b-7323-4b59-8e7f-e16ddf8acacc",
                        "name": "Quinton Sung"
         
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/search/releases` — Search releases

**Parameters:**
- `query` (query, required, string) — Release query Example: `ok computer radiohead`
- `limit` (query, optional, string) — Max results Example: `25`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/search/releases?query=ok+computer+radiohead&limit=25"
```

**Response:**
```json
{
    "data": {
        "count": 6808,
        "query": "ok computer radiohead",
        "releases": [
            {
                "id": "4b3d18cc-8937-36f4-8de0-481088be58e6",
                "date": "1997-06-17",
                "media": [
                    {
                        "format": "CD",
                        "tracks": [],
                        "track_count": 12
                    }
                ],
                "score": 100,
                "title": "OK Computer",
                "artist": [
                    {
                        "id": "a74b1b7f-71a5-4011-9441-d0b5e4122711",
                        "name": "Radiohead"
                    }
                ],
                "status": "Official",
                "barcode": "724385522925",
                "country": "CA",
                "packaging": "Jewel Case",
                "label_info": [
                    {
                        "label": "EMI Music Canada",
                        "catalog_number": "7243 8 55229 2 5"
                    }
                ],
                "track_count": 12
            },
            {
                "id": "9c1e5e9e-9f40-4cd8-94a4-785fa5d0b613",
                "date": "1997",
                "media": [
                    {
                        "format": "Cassette",
                        "tracks": [],
                        "track_count": 12
                    }
                ],
                "score": 100,
                "title": "OK 
…(truncated, see openapi.json for full schema)
```

### Lookup

#### `GET /v1/artist` — Artist by MBID

**Parameters:**
- `id` (query, required, string) — Artist MBID Example: `a74b1b7f-71a5-4011-9441-d0b5e4122711`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/artist?id=a74b1b7f-71a5-4011-9441-d0b5e4122711"
```

**Response:**
```json
{
    "data": {
        "artist": {
            "id": "a74b1b7f-71a5-4011-9441-d0b5e4122711",
            "area": "United Kingdom",
            "name": "Radiohead",
            "tags": [
                "alternative",
                "alternative rock",
                "alternative rock music",
                "ambient pop",
                "art pop",
                "art rock",
                "british",
                "britpop",
                "britrock",
                "chamber pop",
                "crossover prog",
                "electronic",
                "electronic rock",
                "electronica",
                "english",
                "experimental",
                "experimental rock",
                "idm",
                "indie rock",
                "indietronica",
                "oxford",
                "post-britpop",
                "post-grunge",
                "progressive rock music",
                "rock",
                "uk",
                "vyrzukhisuc-artiest"
            ],
            "type": "Group",
            "isnis": [
                "0000000115475162"
            ],
            "gender": null,
            "country": "GB",
            "life_span": {
                "end": null,
                "begin": "1991",
                "ended": false
            },
            "relations": [
                {
                    "url": "https://www.allmusic.com/artist/mn0000326249",
                    "type": "allmusic"
           
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/artist/release-groups` — An artist's albums

**Parameters:**
- `id` (query, required, string) — Artist MBID Example: `a74b1b7f-71a5-4011-9441-d0b5e4122711`
- `type` (query, optional, string) — Filter (album, single, ep) Example: `album`
- `limit` (query, optional, string) — Max results Example: `25`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/artist/release-groups?id=a74b1b7f-71a5-4011-9441-d0b5e4122711&type=album&limit=25"
```

**Response:**
```json
{
    "data": {
        "count": 382,
        "artist_id": "a74b1b7f-71a5-4011-9441-d0b5e4122711",
        "release_groups": [
            {
                "id": "0ef22186-e92d-4f03-9b05-500fa2d581ad",
                "title": "27 5 94: The Astoria London Live",
                "artist": [],
                "primary_type": "Album",
                "disambiguation": "",
                "secondary_types": [
                    "Live"
                ],
                "first_release_date": "1995-05-17"
            },
            {
                "id": "1af3fda4-4281-4ed9-ba38-389ed83d9ab2",
                "title": "MINIDISCS [HACKED]",
                "artist": [],
                "primary_type": "Album",
                "disambiguation": "",
                "secondary_types": [
                    "Compilation",
                    "Demo"
                ],
                "first_release_date": "2019-06-05"
            },
            {
                "id": "270ff9af-bcfb-402c-8e6b-d1372a1e8824",
                "title": "The Interview",
                "artist": [],
                "primary_type": "Album",
                "disambiguation": "",
                "secondary_types": [
                    "Interview"
                ],
                "first_release_date": "2010-08-23"
            },
            {
                "id": "30f765ef-d7f0-4cce-8a3b-d6e1069f1dda",
                "title": "5 Album Set",
                "artist": [],
                "primary_type": "Al
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/label` — Label by MBID

**Parameters:**
- `id` (query, required, string) — Label MBID Example: `14221f01-8939-4ea0-b8f1-b5a21beae80a`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/label?id=14221f01-8939-4ea0-b8f1-b5a21beae80a"
```

**Response:**
```json
{
    "data": {
        "label": {
            "id": "14221f01-8939-4ea0-b8f1-b5a21beae80a",
            "name": "XL Recordings",
            "type": "Original Production",
            "country": "GB",
            "life_span": {
                "end": null,
                "begin": "1989",
                "ended": false
            },
            "label_code": 5667,
            "disambiguation": ""
        }
    },
    "meta": {
        "timestamp": "2026-06-07T16:47:28.527Z",
        "request_id": "c9d07953-12d8-41f4-bdba-f9dfe228c866"
    },
    "status": "ok",
    "message": "Label retrieved successfully",
    "success": true
}
```

#### `GET /v1/recording` — Recording with ISRCs by MBID

**Parameters:**
- `id` (query, required, string) — Recording MBID Example: `8d3c457f-c5b0-41a7-9339-efc5dc9ce597`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/recording?id=8d3c457f-c5b0-41a7-9339-efc5dc9ce597"
```

**Response:**
```json
{
    "data": {
        "recording": {
            "id": "8d3c457f-c5b0-41a7-9339-efc5dc9ce597",
            "isrcs": [],
            "title": "Radiohead - Paranoid Android (video)",
            "video": false,
            "artist": [
                {
                    "id": "eec63d3c-3b81-4ad4-b1e4-7c147d4d2b61",
                    "name": "[no artist]"
                }
            ],
            "length": 108000,
            "disambiguation": "",
            "first_release_date": "2006"
        }
    },
    "meta": {
        "timestamp": "2026-06-07T16:47:28.662Z",
        "request_id": "4e7a9b60-ba81-44ce-afc1-16ef69f2dc08"
    },
    "status": "ok",
    "message": "Recording retrieved successfully",
    "success": true
}
```

#### `GET /v1/release` — Release with tracks by MBID

**Parameters:**
- `id` (query, required, string) — Release MBID Example: `4b3d18cc-8937-36f4-8de0-481088be58e6`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/release?id=4b3d18cc-8937-36f4-8de0-481088be58e6"
```

**Response:**
```json
{
    "data": {
        "release": {
            "id": "4b3d18cc-8937-36f4-8de0-481088be58e6",
            "date": "1997-06-17",
            "media": [
                {
                    "format": "CD",
                    "tracks": [
                        {
                            "title": "Airbag",
                            "length": 284400,
                            "position": 1,
                            "recording_id": "4a7fea2e-545b-4c63-bc9a-9943cc3a29d7"
                        },
                        {
                            "title": "Paranoid Android",
                            "length": 383493,
                            "position": 2,
                            "recording_id": "9f9cf187-d6f9-437f-9d98-d59cdbd52757"
                        },
                        {
                            "title": "Subterranean Homesick Alien",
                            "length": 267706,
                            "position": 3,
                            "recording_id": "bd82738d-163c-4b1a-bfaf-7acffe30e68a"
                        },
                        {
                            "title": "Exit Music (for a Film)",
                            "length": 264800,
                            "position": 4,
                            "recording_id": "23c3c36b-9449-4484-9040-6ef2125999aa"
                        },
                        {
                            "title": "Let Down",
                            "length": 299266,
     
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/release-group` — Release-group by MBID

**Parameters:**
- `id` (query, required, string) — Release-group MBID Example: `b1392450-e666-3926-a536-22c65f834433`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/release-group?id=b1392450-e666-3926-a536-22c65f834433"
```

**Response:**
```json
{
    "data": {
        "release_group": {
            "id": "b1392450-e666-3926-a536-22c65f834433",
            "title": "OK Computer",
            "artist": [
                {
                    "id": "a74b1b7f-71a5-4011-9441-d0b5e4122711",
                    "name": "Radiohead"
                }
            ],
            "primary_type": "Album",
            "disambiguation": "",
            "secondary_types": [],
            "first_release_date": "1997-05-21"
        }
    },
    "meta": {
        "timestamp": "2026-06-07T16:47:28.990Z",
        "request_id": "3ca595d2-d4c5-45a8-9fe7-5174fd65065d"
    },
    "status": "ok",
    "message": "Release-group retrieved successfully",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Spec

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/musicbrainz-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "service": "musicbrainz-api",
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/label": "Label by MBID.",
            "GET /v1/artist": "Artist by MBID (with links, tags).",
            "GET /v1/release": "Release by MBID (with track list).",
            "GET /v1/recording": "Recording by MBID (with ISRCs).",
            "GET /v1/release-group": "Release-group by MBID.",
            "GET /v1/search/labels": "Search labels.",
            "GET /v1/search/artists": "Search artists.",
            "GET /v1/search/releases": "Search releases.",
            "GET /v1/search/recordings": "Search recordings (tracks).",
            "GET /v1/artist/release-groups": "An artist's albums.",
            "GET /v1/search/release-groups": "Search albums/release-groups."
        },
        "description": "MusicBrainz: the open music-metadata database — artists, release-groups, releases, recordings, labels with MBIDs, relations and ISRCs."
    },
    "meta": {
        "timestamp": "2026-06-07T16:47:29.092Z",
        "request_id": "fae3df48-b4ae-452d-920b-42301e11d22a"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


---
Marketplace page: https://www.oanor.com/api/musicbrainz-api
OpenAPI spec: https://www.oanor.com/api/musicbrainz-api/openapi.json
