Discover/WhoSampled API
live

WhoSampled APIwhosampled.com

Access WhoSampled data via API: search artists and tracks, retrieve sample connections, cover versions, artist profiles, and trending sample charts.

This API takes change requests — .
Endpoint health
verified 4d ago
get_artist_samples_used
get_artist
get_artist_covered_by
search
get_track_detail
7/7 passing latest checkself-healing
Endpoints
7
Updated
11d ago

What is the WhoSampled API?

The WhoSampled API exposes 7 endpoints covering music sample lineage, cover versions, and remix connections sourced from WhoSampled.com. The get_track_detail endpoint returns a full connections summary including section, artist, year, and tag for every sample, cover, and remix tied to a track. Artist profiles, paginated sample histories, and a live Hot Samples chart round out the surface.

This call costs2 credits / call— charged only on success
Try it
Search keyword (artist or track name)
api.parse.bot/scraper/ce66773d-6622-4c56-a9ae-64dc0a37df1f/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/ce66773d-6622-4c56-a9ae-64dc0a37df1f/search?query=Daft+Punk' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

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 whosampled-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: WhoSampled SDK — bounded, re-runnable; every call capped."""
from parse_apis.WhoSampled_API import WhoSampled, Ob, ResourceNotFound

client = WhoSampled()

# Search for an artist
result = client.search_results.search(query="Daft Punk")
print(result.top_hit.name, result.top_hit.url)
for track_hit in result.tracks[:3]:
    print(track_hit.name, track_hit.url)

# Fetch artist profile via constructible key
artist = client.artist(name="Daft-Punk")

# Browse tracks that use samples (paginated, capped)
for track in artist.samples_used(limit=3):
    print(track.name, track.url)
    for conn in track.connections:
        print(conn.action, conn.name, conn.artist, conn.year)

# Get a specific track detail via sub-resource
try:
    detail = artist.tracks.get(track_slug="Harder,-Better,-Faster,-Stronger")
    print(detail.title, detail.artist, detail.album, detail.year)
    for conn in detail.connections_summary[:2]:
        print(conn.section, conn.name, conn.artist, conn.year)
except ResourceNotFound as e:
    print("not found:", e.artist_slug)

# Get cover versions sorted by earliest (paginated)
for cover in artist.tracks.covers(track_slug="Harder,-Better,-Faster,-Stronger", ob=Ob.EARLIEST_TO_LATEST, limit=3):
    print(cover.cover_artist, cover.cover_title, cover.year, cover.genre, cover.url)

# Browse trending samples
for sample in client.trending_samples.list(limit=3):
    print(sample.name, sample.url)

print("exercised: search_results.search / artist.samples_used / tracks.get / tracks.covers / trending_samples.list")
All endpoints · 7 totalmissing one? ·

Full-text search across artists and tracks on WhoSampled. Returns a top hit (the single best match), a list of matching artists, and a list of matching tracks. Results are ranked by relevance; no pagination.

Input
ParamTypeDescription
queryrequiredstringSearch keyword (artist or track name)
Response
{
  "type": "object",
  "fields": {
    "tracks": "array of matching tracks, each with name and url",
    "artists": "array of matching artists, each with name and url",
    "top_hit": "object or null containing name and url of the top search result"
  },
  "sample": {
    "data": {
      "tracks": [
        {
          "url": "https://www.whosampled.com/Daft-Punk/Harder,-Better,-Faster,-Stronger/",
          "name": "Harder, Better, Faster, Stronger"
        }
      ],
      "artists": [
        {
          "url": "https://www.whosampled.com/Indo-Silver-Club-(Daft-Punk-Alias)/",
          "name": "Indo Silver Club (Daft Punk Alias)"
        }
      ],
      "top_hit": {
        "url": "https://www.whosampled.com/Daft-Punk/",
        "name": "Daft Punk"
      }
    },
    "status": "success"
  }
}

About the WhoSampled API

Search and Artist Profiles

The search endpoint accepts a keyword and returns a top_hit, an artists array, and a tracks array — each entry carrying a name and url. Results are ranked by relevance and are not paginated, so it works best for exact or near-exact queries. The get_artist endpoint takes an artist_slug (matching the URL path on WhoSampled, e.g. Kanye-West) and returns name, real_name, aliases, groups, and a stats_summary string that encodes how many samples, covers, and remixes the artist is linked to.

Track Details and Sample Connections

get_track_detail requires both artist_slug and track_slug. The track_slug must exactly replicate the WhoSampled URL format, including commas for punctuation — for example, Harder,-Better,-Faster,-Stronger. The response includes title, artist, album, year, and a connections_summary array. Each connection object carries section, name, artist, year, tag, and url, giving you the full creative lineage of a track in one call.

Paginated Artist Histories and Cover Lookups

get_artist_samples_used returns a paginated list of tracks by an artist that contain samples, with each track's connections array detailing the source material. Both this endpoint and get_artist_covered_by accept an optional tag parameter (e.g. Drums, Vocals / Lyrics, Rock) to filter connection types, plus a page integer for pagination. For track-level cover lookups, get_track_covered_by returns an items array of cover versions with cover_artist, cover_title, year, and url, as well as total_count and a has_next_page boolean.

Trending Samples Chart

The get_trending_samples endpoint requires no inputs and returns the current Hot Samples chart — a flat list of the most-viewed sample connections in the last 24 hours. Each item carries a name and url. This endpoint is suitable for polling to detect what sample stories are gaining attention in near-real time.

Reliability & maintenanceVerified

The WhoSampled API is a managed, monitored endpoint for whosampled.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when whosampled.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 whosampled.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.

Last verified
4d ago
Latest check
7/7 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a music discovery tool that traces the sample lineage of any track using get_track_detail connections_summary fields.
  • Generate artist sample fingerprints by aggregating get_artist_samples_used connections across all pages for a given artist_slug.
  • Monitor trending music samples daily by polling get_trending_samples and storing the resulting items list over time.
  • Identify which artists most frequently cover a specific song using get_track_covered_by with total_count and paginated results.
  • Enrich a music database with artist aliases, real names, and group memberships via the get_artist profile endpoint.
  • Filter an artist's sample usage by instrument type (e.g. tag='Drums') to study production styles through get_artist_samples_used.
  • Power a 'covered by' feature in a streaming app by fetching cover versions per track with artist, title, year, and URL.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does WhoSampled have an official developer API?+
WhoSampled does not offer a public developer API. There is no documented REST or GraphQL interface available to third-party developers on their site.
How precise does the track_slug need to be in get_track_detail?+
It must exactly match the slug in the WhoSampled URL, including commas used in place of punctuation. For example, the track 'Harder, Better, Faster, Stronger' uses the slug 'Harder,-Better,-Faster,-Stronger'. If the slug is wrong, the endpoint returns an input_not_found error rather than partial results.
Can I retrieve which specific samples a track has been sampled in by other artists?+
Not directly as a dedicated endpoint. get_track_detail returns a connections_summary that includes inbound sample references (tracks that sampled the given track) alongside outbound ones, labeled by section and tag. You can fork this API on Parse and revise it to add a dedicated endpoint that isolates inbound sample connections for a track.
Does the API expose audio previews, album art, or streaming links for tracks?+
No. The API returns metadata fields — title, artist, album, year, and connection details including URLs back to WhoSampled pages. Audio previews and cover art are not included in any endpoint response. You can fork the API on Parse and revise it to add image or media fields if WhoSampled exposes them on the relevant pages.
Are remix connections included in track and artist data?+
Yes. get_track_detail returns a connections_summary where each object has a section field that distinguishes samples, covers, and remixes. The tag field provides further granularity (e.g. instrument type or genre for covers). Artist-level remix data appears rolled into the stats_summary string returned by get_artist.
Page content last updated . Spec covers 7 endpoints from whosampled.com.
Related APIs in MusicSee all →
spotify.com API
Search millions of songs and artists in Spotify's catalog, then dive deep into any artist's complete discography, top tracks, fan statistics, and similar artists they're connected to. Perfect for discovering new music, researching artist backgrounds, or building personalized music recommendations.
allmusic.com API
Search for music, browse artist biographies and discographies, and retrieve detailed album and song information all in one place. Discover new releases and access comprehensive metadata about artists and tracks.
beatport.com API
Search and discover electronic music tracks, releases, and artists on Beatport while accessing detailed metadata, audio previews, genre listings, and top 10 charts. Get comprehensive information about specific tracks, releases, artists, and labels to power music discovery and curation applications.
musicbrainz.org API
Search MusicBrainz for artists and recordings, then fetch detailed metadata for artists, recordings, releases, and release groups, including credits, tags/genres, and track listings.
traxsource.com API
Access Traxsource's music catalog to browse top tracks and singles, explore genres, search for music, and discover newly added releases and artist discographies. Get detailed information about specific tracks, releases, and artists to find the music you're looking for.
rateyourmusic.com API
Search for albums, artists, and genres to retrieve detailed information including release dates, ratings, and chart rankings from Rate Your Music. Browse music charts and explore genre-specific data to discover trends across the catalog.
qobuz.com API
Search and browse millions of songs, albums, and artists on Qobuz to discover new music, explore charts, and access detailed information about tracks and performers. Explore curated new releases and trending charts to stay updated with the latest music across all genres.
musixmatch.com API
Search for song lyrics, metadata, and translations while discovering artist profiles, discographies, and album details all in one place. Build music apps that let you retrieve complete song information, explore artist catalogs, and discover new music through curated feeds.