MusicBrainz Scraper avatar

MusicBrainz Scraper

Pricing

from $0.20 / 1,000 item returneds

Go to Apify Store
MusicBrainz Scraper

MusicBrainz Scraper

Search the MusicBrainz music database and export clean, structured records: artists, releases, recordings, release-groups and labels. Get MBIDs, names, types, dates, country, tags and direct links. No key, no login.

Pricing

from $0.20 / 1,000 item returneds

Rating

0.0

(0)

Developer

Dami's Studio

Dami's Studio

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

Search MusicBrainz — the open, community-maintained music encyclopedia — by keyword and get back clean, structured records. No API key, no login.

Pick what you're looking for (artist, release, recording, release-group, or label), give a search term, and the actor returns flat, ready-to-use rows with the MusicBrainz ID (MBID) and a direct link, so you can join the data straight into your own catalog.

Entity types

entityWhat it is
artistA band, performer, or composer.
releaseA specific edition of an album/single (a physical or digital product).
recordingAn individual track/recording.
release-groupAn album as a concept, grouping all its editions.
labelA record label.

What you get per row

Every row includes:

  • mbid — the MusicBrainz ID (stable, unique).
  • url — direct link, https://musicbrainz.org/{entity}/{mbid}.
  • entity — which entity type this row is.
  • score — MusicBrainz's relevance score for the search (0–100), when provided.
  • disambiguation — a short note distinguishing same-named records, when present.

Plus entity-specific fields:

  • artist: name, sortName, type, country, lifeSpan (+ beginDate/endDate/ended), tags.
  • release: title, status, artistCredit, date, country, trackCount, primaryType.
  • recording: title, artistCredit, firstReleaseDate, length (ms) + lengthFormatted (m:ss).
  • release-group: title, primaryType, secondaryTypes, artistCredit, firstReleaseDate.
  • label: name, type, country, lifeSpan (+ beginDate/endDate), labelCode.

artistCredit is the credited artist string (e.g. "Radiohead", or "A feat. B"), joined the way MusicBrainz credits it. Fields are null when MusicBrainz doesn't have that value for a record.

Input

FieldNotes
entityOne of artist / release / recording / release-group / label. Default artist.
queryThe search text. Plain keywords or MusicBrainz Lucene syntax (e.g. artist:radiohead, country:GB). Required.
maxItemsMax records to return. Paginated 100/page. Default 100.

Output

One dataset row per record, deduplicated by MBID. Pricing is pay-per-result: you are only charged for genuine result rows (ok: true). Rows we couldn't deliver are never charged — this includes:

  • empty/invalid input (ok: false, errorCode: "BAD_INPUT"),
  • no results for the query (NO_RESULTS),
  • rate limits or network errors (RATE_LIMITED / NETWORK / SERVER_ERROR).

Rate limit & etiquette

The MusicBrainz API allows roughly 1 request per second. This actor sends the required descriptive User-Agent on every request, waits ~1.1s between pages, and treats a 503 as a rate-limit signal and backs off. As a result, very large maxItems jobs take proportionally longer — that's by design, to stay within MusicBrainz's policy.

Proxy

The MusicBrainz API is a public, no-auth, no-anti-bot JSON API, so no proxy is required and the default runs without one (saving proxy credits). Only enable Apify Proxy if you hit IP-level rate limits at very high volume.

Examples

Search for artists named Radiohead:

{ "entity": "artist", "query": "radiohead", "maxItems": 10 }

Find the album "OK Computer" as a release group:

{ "entity": "release-group", "query": "ok computer", "maxItems": 10 }

Notes

Data comes from MusicBrainz and is licensed under its open data licenses (core data is CC0). Please credit MusicBrainz when you redistribute.