Traxsource APItraxsource.com ↗
Access Traxsource charts, track metadata, artist discographies, genre listings, and search via a structured JSON API. 8 endpoints covering top 100s and new releases.
What is the Traxsource API?
The Traxsource API gives programmatic access to the electronic music store's catalog through 8 endpoints covering chart data, track and release metadata, artist discographies, genre listings, and search. The get_track_detail endpoint returns per-track fields including BPM, musical key, label, genre, and DJ chart appearances. The search endpoint supports keyword queries across both tracks and releases with paginated results.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/14566d9b-cfe4-4533-94a8-986fdbaebf74/get_top100_tracks' \ -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 traxsource-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.
"""Traxsource music discovery: charts, search, artist catalogs, and track details."""
from parse_apis.traxsource_api import Traxsource, ContentType, Period, NotFound
client = Traxsource()
# Browse the Top 100 tracks chart
for track in client.charts.top_tracks(limit=5):
print(track.title, track.artists[0].name, track.genre.name)
# Search for tracks by keyword with enum-typed content filter
result = client.charts.search(term="funky", type=ContentType.TRACKS, limit=1).first()
if result:
print(result.title, result.duration, result.label.name)
# Discover recently added tracks filtered by time period
for new_track in client.charts.just_added(period=Period.SEVEN_DAYS, limit=3):
print(new_track.title, new_track.release_date, new_track.price)
# Fetch full track detail by ID and slug
try:
detail = client.tracks.get(track_id="14660532", slug="that-funky-rhythm-extended-mix")
print(detail.title, detail.bpm, detail.key, detail.duration)
except NotFound as exc:
print(f"Track unavailable: {exc}")
# Explore an artist's catalog via constructible Artist
artist = client.artist(id="24228")
for t in artist.tracks(slug="dj-pp", limit=3):
print(t.title, t.version, t.genre.name)
# List all available genres
for genre in client.charts.genres(limit=5):
print(genre.name, genre.slug)
print("exercised: charts.top_tracks / charts.search / charts.just_added / tracks.get / artist.tracks / charts.genres")
Returns the Traxsource Top 100 tracks chart. Each track includes title, artists, label, genre, duration, release date, and price. The chart is a single page of up to 100 items — no pagination parameter.
No input parameters required.
{
"type": "object",
"fields": {
"tracks": "array of track objects with track_id, title, version, duration, artists, label, genre, release_date, price, and url"
},
"sample": {
"data": {
"tracks": [
{
"url": "https://www.traxsource.com/track/14660532/that-funky-rhythm-extended-mix",
"genre": {
"url": "https://www.traxsource.com/genre/18/tech-house",
"name": "Tech House"
},
"label": {
"url": "https://www.traxsource.com/label/45256/black-box-underground",
"name": "Black Box Underground"
},
"price": "$1.99",
"title": "That Funky Rhythm",
"artists": [
{
"id": "24228",
"url": "https://www.traxsource.com/artist/24228/dj-pp",
"name": "DJ PP"
}
],
"version": "Extended Mix",
"duration": "5:30",
"title_id": "2785854",
"track_id": "14660532",
"release_date": "2026-05-29"
}
]
},
"status": "success"
}
}About the Traxsource API
Charts and New Releases
Two chart endpoints, get_top100_tracks and get_top100_singles, return the current Traxsource Top 100 in a single response with no pagination. Track chart entries include track_id, title, version, artists, label, genre, release_date, price, and url. Singles chart entries carry a position field alongside label and artist data. The get_just_added endpoint covers recently added content filterable by view (tracks or releases) and period (today, yesterday, 7d, 30d), paginated at up to 50 items per page.
Track and Release Detail
get_track_detail requires both a numeric track_id and a slug matching the Traxsource URL path. It returns bpm, key, duration, version, genre (name and URL), label (name and URL), and an artists array with per-artist id, name, and url. get_release_detail similarly requires title_id and slug, returning the release's full tracks array, catalog_number, label, and release_date.
Artists and Genre Catalog
get_artist_tracks accepts an artist_id and slug, returning a paginated track list plus a bio string when Traxsource provides one. get_all_genres returns the complete genre catalog in one call — each genre object contains id, slug, name, and url — useful for mapping genre IDs used elsewhere in the API.
Search
The search endpoint accepts a term string and an optional type parameter (tracks or releases). Results are paginated with an optional page integer. The response echoes term, type, and page alongside the results array, making it straightforward to construct multi-page retrievals.
The Traxsource API is a managed, monitored endpoint for traxsource.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when traxsource.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 traxsource.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?+
- Track BPM and key data from
get_track_detailto build a DJ prep tool that sorts sets by tempo and harmonic compatibility. - Pull the Top 100 tracks chart daily via
get_top100_tracksto monitor chart movement for specific labels or artists. - Use
get_just_addedwith the7dperiod filter to surface new electronic music releases for a weekly digest. - Query
get_artist_tracksto aggregate a complete discography for a producer and cross-reference their label history. - Feed
get_all_genresinto a genre taxonomy database to map Traxsource genre IDs to an internal classification system. - Run keyword searches via the
searchendpoint to build a release monitoring tool that alerts when specific artist names appear. - Combine
get_release_detailcatalog numbers and label data to track catalog activity for a specific record label.
| 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 Traxsource have an official developer API?+
What does `get_track_detail` return beyond basic metadata?+
get_track_detail returns bpm, musical key, duration, version, genre (with name and URL), label (with name and URL), and an artists array where each entry includes id, name, and url. It requires both a numeric track_id and the URL slug — both are available from chart or search results.Do the chart endpoints support filtering by genre?+
get_top100_tracks and get_top100_singles endpoints return the overall Traxsource Top 100 without a genre filter parameter. Traxsource does display genre-specific charts on its site. You can fork this API on Parse and revise it to add a genre parameter to the chart endpoints.Is audio preview or streaming data available?+
bpm, key, duration, label, and genre. You can fork the API on Parse and revise it to add a preview URL field if that data is accessible on the track page.