1001Tracklists API1001tracklists.com ↗
Retrieve DJ set tracklists, chart rankings, and event metadata from 1001tracklists.com. Get artist, title, label, remix info, and streaming links per track.
What is the 1001Tracklists API?
This API exposes 5 endpoints for querying DJ set data from 1001tracklists.com, covering tracklist details, chart rankings, and search. The get_tracklist endpoint returns full track-level data — artist, title, label, mix variant, and streaming links — alongside event metadata including lineup and date for any tracklist page URL you supply.
curl -X GET 'https://api.parse.bot/scraper/b93889bc-63b3-4524-8ff6-be513ab4401a/get_tracklist?url=https%3A%2F%2Fwww.1001tracklists.com%2Ftracklist%2F24m20g8k%2Fferhat-albayrak-jeton-records-showcase-phantom-bar-berlin-germany-2026-05-23.html' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace 1001tracklists-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: 1001Tracklists SDK — discover latest sets, explore charts, drill into tracklists."""
from parse_apis.one001tracklists_api import Tracklists, ChartType, TracklistNotFound
client = Tracklists()
# List latest DJ set tracklists from the homepage.
for summary in client.tracklistsummaries.list(limit=3):
print(summary.title, summary.url)
# Drill into the first tracklist to see full track details.
first = client.tracklistsummaries.list(limit=1).first()
if first:
tracklist = first.details()
print(tracklist.event.name, tracklist.event.lineup)
for track in tracklist.tracks[:3]:
print(track.order, track.artist, track.title, track.label)
# Browse trending chart tracks using the ChartType enum.
for chart_track in client.charttracks.list(chart_type=ChartType.TRENDING, limit=5):
print(chart_track.name, chart_track.url)
# Fetch a specific tracklist by URL.
try:
detail = client.tracklists.get(url="https://www.1001tracklists.com/tracklist/2hsp3419/hardwell-hardwell-on-air-532-2026-06-05.html")
print(detail.event.name, len(detail.tracks))
except TracklistNotFound as exc:
print(f"Tracklist not found: {exc}")
print("exercised: tracklistsummaries.list / details / charttracks.list / tracklists.get")
Get detailed tracklist from a 1001tracklists URL. Returns event metadata (name, date, lineup) and individual track details including artist, title, label, mix information, and streaming links. Requires a full tracklist page URL.
| Param | Type | Description |
|---|---|---|
| urlrequired | string | The full URL of a tracklist page on 1001tracklists.com (e.g. https://www.1001tracklists.com/tracklist/2hsp3419/hardwell-hardwell-on-air-532-2026-06-05.html) |
{
"type": "object",
"fields": {
"url": "string, the tracklist page URL",
"event": "object containing name (string), date (string, optional), and lineup (array of artist name strings)",
"tracks": "array of track objects with artist, title, label, mix, links, and order"
},
"sample": {
"data": {
"url": "https://www.1001tracklists.com/tracklist/2hsp3419/hardwell-hardwell-on-air-532-2026-06-05.html",
"event": {
"name": "Hardwell-Hardwell On Air532 2026-06-05",
"lineup": []
},
"tracks": [
{
"label": "REVEALED",
"links": {},
"order": 1,
"title": "Hardwell & Showtek - How We Do (NLW Remix)",
"artist": "Hardwell & Showtek"
}
]
},
"status": "success"
}
}About the 1001Tracklists API
Tracklist and Event Data
The get_tracklist endpoint accepts a full 1001tracklists.com tracklist page URL and returns two top-level objects: event and tracks. The event object includes the set name, an optional date string, and a lineup array of artist name strings. Each entry in the tracks array carries artist, title, label, mix (remix or edit variant), links (associated streaming URLs), and order (position in the set). This makes it straightforward to reconstruct a full ordered tracklist with source attribution.
Charts and Latest Sets
list_latest returns the current homepage feed as an array of title and url pairs — no parameters needed. list_charts supports three chart types (weekly, trending, mostheard) via the optional type parameter, returning a chart label and an items array where each item has name (in artist – title format) and a url pointing to the track's page on 1001tracklists.com.
Search and Media URL Lookup
search_tracklists takes a required title string and an optional uploader string; when both are provided, the query combines them to surface results by a specific DJ or artist. It returns up to 10 results, each with url, title, and djName. The find_by_media_url endpoint accepts a SoundCloud or YouTube URL and resolves it to a matching tracklist, returning the same shape as get_tracklist when found, or {"found": false} when no match exists. This is useful for annotating a known media link with its full tracklist data.
The 1001Tracklists API is a managed, monitored endpoint for 1001tracklists.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when 1001tracklists.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official 1001tracklists.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a DJ set archive app that pulls ordered track sequences and streaming links via
get_tracklist. - Track which songs appear most frequently in DJ sets by aggregating
tracksfields across multiple tracklists. - Monitor trending electronic music tracks by polling
list_chartswith thetrendingormostheardtype. - Enrich a YouTube or SoundCloud library with full tracklist metadata using
find_by_media_url. - Create a feed of freshly uploaded DJ sets by periodically calling
list_latest. - Search for all recorded sets by a specific DJ using
search_tracklistswith theuploaderparameter. - Correlate label appearances across charts and tracklists using the
labelfield returned byget_tracklist.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does 1001tracklists.com have an official developer API?+
What does `get_tracklist` return for tracks that are unidentified in a set?+
tracks array includes entries for every position in the set. For unidentified tracks, fields like artist, title, and label may be null or absent; the order field is always present so the position in the set is preserved. The links field will also be absent or empty for unidentified tracks.Does `search_tracklists` return artist profile pages or radio show index pages, not just individual set pages?+
Does the API expose individual track pages — like play counts or how many sets a track has appeared in?+
Does `list_charts` support pagination to retrieve more than the default number of charting tracks?+
type. Pagination across multiple chart pages is not currently supported. You can fork this API on Parse and revise it to add paginated chart retrieval.