LangBeat

LangBeat API

Every figure LangBeat publishes is measured from the audio — the tempo, the musical key, the Camelot code — rather than read from a tag. This API exposes the public catalogue and the chart log so you can build on those measurements instead of re-deriving them.

What you can ask it

Authentication

Send your key as a bearer token. Keys are hashed on save and shown once, so copy it when it is created — it cannot be recovered afterwards.

curl -H "Authorization: Bearer lb_live_..." \
  "https://langbeat.live/api/v1/tracks?bpm_min=124&bpm_max=128&camelot=8A"

The default allowance is 60 requests a minute, metered per key rather than per address. A key identifies and meters a caller; it never widens what may be read, and only recordings explicitly marked public are ever returned.

Endpoints

MethodPathReturns
GET/api/v1/tracksSearch by q, bpm_min, bpm_max, key, camelot
GET/api/v1/tracks/{id}One recording with its measured analysis
GET/api/v1/artists/{slug}An artist and their public catalogue
GET/api/v1/charts/{region}A market’s chart with movement

Machine-readable

The full contract is published as OpenAPI 3.1 at /api/v1/openapi.json, and /api/v1 answers without a key so an agent that finds the URL can learn what this is before asking for one.

Errors

Failures carry { error: { code, message } }. Branch on code — it is stable — rather than on the message, which is written for people and may change.

Your keys

No keys yet.