Bandcamp discover

GET https://api.api.sh/bandcamp/v1/discover
1 credit / call media & music try it in the playground →

Bandcamp Discover: best-selling, new or random releases by genre and tags, format (digital, vinyl, CD, cassette, t-shirts), artist location and time range, with price, release date, track count, duration and featured track. Pass next_cursor back as cursor; null at the end.

Every response includes credits_used: the credits this call cost.

Parameters

nametypedescription
genre string Genre slug from /bandcamp/v1/discover/options (electronic, rock, metal, hip-hop-rap, jazz ...). Example: electronic
tag string Tags, several separated by commas (ambient, synthwave ...).
sort top | new | rand Order (default top: best-selling). Example: top
format all | digital | vinyl | cd | cassette | tshirt Format (default all).
location string Artist location id from /bandcamp/v1/discover/options (0 = anywhere).
time string Time range slug from /bandcamp/v1/discover/options (today, this-week ...).
limit integer Results per page (1-60, default 60).
cursor string Paging cursor: next_cursor from the previous page.

Every endpoint also takes fresh, raw, fields (see lean responses and caching).

Example

curl "https://api.api.sh/bandcamp/v1/discover?genre=electronic" \
  -H "x-api-key: $APISH_KEY"

Response

A JSON object with the fields described above, plus raw (the source's own data), cached, fetched_at and credits_used. Errors return {"success": false, "error": "…"} with the HTTP status (see errors). A lookup that ran but found nothing (404) costs the price above; refused calls and errors on our side are free (what's charged).

The fastest way to see the full response is the playground: it runs this endpoint with your account and shows the exact JSON.