Beatport Scraper [$0.40/1K💰] | Tracks | BPM & Key | DJ Charts avatar

Beatport Scraper [$0.40/1K💰] | Tracks | BPM & Key | DJ Charts

Pricing

from $0.90 / 1,000 track results

Go to Apify Store
Beatport Scraper [$0.40/1K💰] | Tracks | BPM & Key | DJ Charts

Beatport Scraper [$0.40/1K💰] | Tracks | BPM & Key | DJ Charts

Extract Beatport tracks, artists, releases and labels with BPM, musical key, Camelot notation, ISRC and prices. Search, charts and genre browse into clean, dataset-ready rows.

Pricing

from $0.90 / 1,000 track results

Rating

0.0

(0)

Developer

Ahmed Jasarevic

Ahmed Jasarevic

Maintained by Community

Actor stats

0

Bookmarked

5

Total users

4

Monthly active users

9 days ago

Last modified

Categories

Features

Limited permissions

Share

Beatport Scraper

Extract DJ and electronic music catalog data from Beatport — tracks, artists, releases and labels — for music discovery, label and A&R analytics, DJ tooling, and dance-music market research.

This Apify Actor reads Beatport's JSON catalog API directly. No browser, no HTML parsing, and no Cloudflare challenge. Track records include title, artists and remixers, label, genre, BPM, musical key (including Camelot notation), duration, price, ISRC, catalog number, release date, chart position, artwork, and the official 30–60 second preview URL. Search results can also be collected as artists, releases and labels, each in its own dataset. Queries run against Beatport's own search index, so result counts match beatport.com/search up to the Max results per type cap.

Build A Dance-Music Dataset For DJ Tooling & A&R

  • Harmonic mixing and playlist tools — pull BPM, key and Camelot notation for every track so a DJ app can build harmonically compatible sets and filter by tempo.
  • Label and A&R analytics — browse labels, artists and releases, then measure catalog size, release cadence, genre mix and chart presence.
  • Music-licensing and sync research — collect ISRCs, catalog numbers, release dates and label ownership for rights and clearance workflows.
  • Dance-music market tracking — schedule searches and genre browse to monitor new releases, chart movements and pricing over time.
  • Electronic-music price watching — track Beatport track prices by genre, label or artist for deal and catalog research.

How It Works

How the Beatport Scraper works: searches, charts and genre pages become track, artist, release and label rows with BPM, key and previews.

The Actor parses search queries, Beatport URLs and bare IDs into catalog targets, then fetches them from the same token-based JSON API the Beatport frontend uses. Results are hydrated into flat rows and written to a dataset per selected type.

Track rows include artists, remixers, label, genre, BPM, musical key, Camelot notation, ISRC, catalog number, price, release date, chart position, artwork and preview URL. Artist, release and label rows add their own catalog fields.

The Actor requests Beatport's public catalog API — the same JSON endpoints the beatport.com site and embed player use — and normalizes the responses into flat, analysis-ready rows.

  1. Search queries, Beatport URLs and bare IDs are parsed into track, artist, release, label, chart and genre targets.
  2. Each target is fetched from Beatport's token-based catalog API over plain HTTP.
  3. Records for every selected result type are hydrated into full catalog rows (preview URL, slug, remixers, chart position and more).
  4. Rows are written to a per-type dataset: Tracks (default), Artists, Releases and Labels.

No proxy is required — the JSON API is not aggressively rate-limited, and the Actor keeps concurrency low. With no input at all, the Actor browses the latest releases into the Tracks dataset.

Input Parameters

FieldTypeRequiredDefaultNotes
startUrlsarrayNo—Beatport track / release / artist / label / chart / genre / search URLs, or bare numeric IDs (chart:906219 forces a type). Plain text counts as a search query.
queriesarrayNo—Free-text searches against Beatport's website search index (same results as beatport.com/search), e.g. bicep, melodic house.
searchTypesarrayNo["tracks","artists","releases","labels"]Which result types to collect: tracks, artists, releases, labels.
genrestringNo—Genre browse into the Tracks dataset — slug, name or numeric ID; fuzzy-matched (techno → Techno (Peak Time / Driving)).
sortBystringNonewestGenre-browse sort: newest, oldest, bpm_asc, bpm_desc.
maxItemsintegerNo100Max results per type (free-plan users: 10 per type).
maxPagesPerSourceintegerNo5API pages (≤150 results each) read per chart/artist/release/genre source; search queries are not paged.
maxRequestsPerCrawlintegerNo200Hard safety cap on API requests.
proxyobjectNo—Optional Apify proxy picker (not needed — the JSON API works without it).

Output Fields

Track items are written to the default dataset. Simplified field list:

trackId, title, mixName, artists, remixers, label, labelId, releaseName, releaseId, genre, subGenre, bpm, key, camelot, duration, durationMs, trackNumber, price, currency, isrc, catalogNumber, releaseDate, chartName, chartPosition, artworkUrl, previewUrl, sampleStartMs, sampleEndMs, isExplicit, isHype, isAvailableForStreaming, slug, url, source.

Release items add trackCount, bpmMin / bpmMax, upc, artists, remixers and labelId. Artist items add imageUrl, createdAt, updatedAt and website. Label items add latestPublishDate, streaming/hype flags and image URLs.

Example Input

Collect techno tracks and label results from one search, plus a chart:

{
"queries": ["peak time techno"],
"searchTypes": ["tracks", "labels"],
"startUrls": ["chart:906219"],
"maxItems": 100
}

Browse the newest Drum & Bass releases sorted by BPM:

{
"genre": "drum-and-bass",
"sortBy": "bpm_desc",
"maxItems": 50
}

Example Output

{
"trackId": 16871148,
"title": "Tariro Nema Gitare",
"mixName": "Original Mix",
"artists": ["Josh Major"],
"label": "Phakama Records",
"genre": "Afro House",
"bpm": 123,
"key": "C Minor",
"camelot": "5A",
"duration": "6:31",
"price": 1.49,
"currency": "USD",
"isrc": "US83Z2227774",
"catalogNumber": "PHRS0001",
"releaseDate": "2022-10-07",
"artworkUrl": "https://geo-media.beatport.com/image_size/1400x1400/xxxx.jpg",
"previewUrl": "https://geo-samples.beatport.com/track/xxxx.LOFI.mp3",
"url": "https://www.beatport.com/track/tariro-nema-gitare/16871148",
"source": "beatport"
}

Download any dataset as JSON, HTML, CSV or Excel.

Automate Beatport Monitoring With Schedules & Webhooks

  • Schedule genre or label browse (daily or weekly) to capture new releases and chart movements as they happen.
  • Send results to Zapier, Make, Google Sheets or your own webhook to feed a dashboard, playlist pipeline or A&R tracker.
  • Read the datasets via the Apify REST API to hydrate a DJ app, licensing database or market-research tool.
  • Pay only for the results you keep — see pricing below.

Frequently Asked Questions

Why use this Actor instead of the official Beatport API?

Beatport operates a documented REST API at api.beatport.com/v4, but new developer key registration has been effectively closed since the API v3 sunset — new credential requests typically stall or go unanswered. This Actor reads Beatport's publicly accessible catalog API the same way its own embed player does, so you get the same track, artist, release, label and chart data without waiting on API access.

What are alternatives to scraping Beatport?

Alternatives include the MusicBrainz open database (free, but not Beatport-specific and missing BPM/Camelot/price), general music-metadata APIs (Spotify, Discogs), or scraping Beatport's server-rendered __NEXT_DATA__ blocks manually. This Actor combines Beatport's real catalog with structured BPM, key, ISRC and price fields in one run.

Can I get BPM and musical key for harmonic mixing?

Yes. Every track row includes bpm, key (e.g. C Minor) and camelot notation (e.g. 5A), plus duration, so DJ software can build harmonically compatible sets.

How do I scrape a Beatport chart or genre?

Paste a chart or genre URL into startUrls, or use a bare ID such as chart:906219. You can also pass genre as a slug, name or numeric ID for genre browse.

Does the Actor include audio files?

No. It stores catalog metadata only — including the official 30–60 second preview URLs that Beatport publishes. Price and preview-URL availability are geo-dependent, and geo-samples.beatport.com previews may be restricted in some countries.

Why do my result counts differ from the website?

Search queries use Beatport's website search index and are hydrated with full catalog records, so counts match the website up to the Max results per type cap. Genre, label, artist and release endpoints page at ≤150 results each, controlled by maxPagesPerSource.

For AI Agents & LLM Apps

Purpose: return normalized Beatport track, artist, release and label records for a given search, URL, chart or genre.

Minimal working input:

{ "queries": ["adam beyer"], "searchTypes": ["tracks"], "maxItems": 25 }

Genre-browse variant:

{ "genre": "techno", "sortBy": "newest", "maxItems": 25 }

Output fields (tracks): trackId, title, mixName, artists, remixers, label, labelId, releaseName, releaseId, genre, subGenre, bpm, key, camelot, duration, price, currency, isrc, catalogNumber, releaseDate, chartName, chartPosition, artworkUrl, previewUrl, url, source.

Behaviors an agent should know:

  • Each selected result type writes to its own dataset (Tracks is the default); maxItems is a cap per type, not overall.
  • startUrls accepts bare numeric IDs; prefix with a type (chart:906219, label:1234) to force interpretation. Plain text in startUrls is treated as a search query.
  • With no input at all, the Actor browses the latest releases into the Tracks dataset.
  • On the free Apify plan, maxItems is limited to 10 per type.
  • Billing: pay-per-event — Track / Artist / Release / Label result each $0.0004 (Track is the primary event), plus a symbolic $0.00005 Actor-start event.

This is an independent Actor. It is not affiliated with, endorsed by, or sponsored by Beatport. It accesses only Beatport's publicly accessible catalog API — no login or account is required, and no paywalled or protected content is retrieved. It stores catalog metadata only; it does not download audio files or store personal data. Users are responsible for complying with Beatport's Terms of Service and applicable law when using the data. Price and preview-URL availability are geo-dependent.

SEO Keywords

beatport scraper, beatport api, beatport catalog api, beatport track data, beatport bpm key data, beatport camelot key, electronic music data scraper, dj music metadata, beatport charts scraper, beatport label data, beatport artist data, beatport releases scraper, beatport genre browse, harmonic mixing bpm key, music isrc data, dance music market research, label a&r analytics, music licensing data, beatport alternative, music metadata api