Beatport Enrich

The beatport-enrich plugin queries Beatport for each track in your library and writes authoritative DJ metadata back into the track record. Beatport is the gold standard for electronic music metadata — BPM values are curated per-release, keys are verified by hand, and genre taxonomies are consistent.

Plugin version: 0.1.7 | Stage: Enrich | Requires browser: Yes


What It Does

For each track, the plugin:

  1. Opens a headless Chromium browser and logs into beatport.com using your credentials (once per run; the session is reused for all tracks).
  2. Searches for the track using the query artist title — e.g. deadmau5 strobe.
  3. Navigates to the matching track page and reads the metadata cells.
  4. Writes the results back to the track record and stores a Beatport link in the track’s links map.

The browser session persists across the entire enrichment run, so you only authenticate once regardless of how many tracks are processed.


Configuration

Install the plugin from Settings → Plugins, then click the gear icon to open its settings.

SettingTypeDescription
usernamestringYour Beatport account email or username
passwordpasswordYour Beatport account password (stored encrypted)

A free Beatport account is sufficient. You do not need a Beatport Pro or DJ subscription.


Fields Enriched

After a successful run, the following fields are written back to the track and become visible in the track table:

FieldDescriptionExample value
BPMBeats per minute as published on Beatport128
KeyMusical key in Beatport’s notationA min
GenrePrimary genre from Beatport’s taxonomyTechno (Peak Time / Driving)
LabelRecord label that released the trackMau5trap
YearRelease year, parsed from the Beatport release date2009

In addition, a Beatport link is saved to the track’s links map, which the acquire plugin uses to navigate directly to the track page for downloading.


Enrichment Statuses

StatusMeaning
doneTrack found, all available fields written
not_foundNo matching track found on Beatport; track is skipped
no_dataTrack page found but metadata cells were empty
errorA network error or login failure occurred

When a track has status not_found, no data is written and the track’s existing fields are unchanged. This is common for tracks that are not in Beatport’s catalog (e.g. free downloads, promo-only releases, non-electronic genres).


How Search Works

The plugin searches Beatport using the combined artist title string. It then uses execute_with_permutations to try variant forms of the artist name — for example, a track credited to Artist & Artist 2 will also be tried as Artist, Artist 2 — which improves match rates on collaborative releases.

Kombiner picks the first result from the Beatport search page that the plugin identifies as a match. If the first result is a different track with a similar name, the enrichment data will be wrong. You can always inspect the stored Beatport link to verify it points to the correct track.


Tips

  • Free accounts work fine. You don’t need to have purchased anything on Beatport to use the enrich plugin.

Troubleshooting

Login fails on every run Verify your username and password in plugin settings. Beatport occasionally changes its login flow — check for a plugin update if credentials are correct but login still fails.

Track is marked not_found but it definitely exists on Beatport Try searching manually on Beatport with the same artist and title. The track may be listed under a slightly different artist name. You can edit the artist field in Kombiner to match Beatport’s spelling, then re-run enrichment for that track.

Key or BPM looks wrong If you suspect the plugin matched the wrong track, click the Beatport link stored in the track’s links map to verify. If it points to the wrong page, the track is a false positive from the search step — this is more likely for common words in track titles.

CAPTCHA appears If Beatport presents a CAPTCHA challenge, the plugin calls browser_prompt() to show you the browser so you can solve it manually. Once solved, the plugin continues automatically.