# Whosampled — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Discover music samples, covers, and remixes by searching artists and tracks, viewing detailed sample histories, and exploring trending musical connections. Get comprehensive data on which songs sampled specific tracks, artist profiles, and current charts to understand the creative lineage behind your favorite music.

**Category:** Music | **Website:** [whosampled.com/](https://whosampled.com/) | **Docs:** [parse.bot/marketplace/fa047151-1b53-481e-a857-405d31ff81eb/whosampled-com-api](https://parse.bot/marketplace/fa047151-1b53-481e-a857-405d31ff81eb/whosampled-com-api)

Pay-per-use API proxy. Each call is automatically billed to your wallet in USDC.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/parse-whosampled-com-api-fa047151/`
**Auth:** `Authorization: Bearer <LOCUS_API_KEY>`

## Endpoints

### get_artist

Get artist profile data including real name, aliases, group memberships, and a stats summary showing how many samples, covers, and remixes they are involved with. The artist_slug must match the URL path on WhoSampled.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `artist_slug` | string | Yes | Artist URL slug as it appears in the WhoSampled URL path (e.g. 'Kanye-West', 'Daft-Punk') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-whosampled-com-api-fa047151/get_artist \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"artist_slug":"<string>"}'
```

### get_artist_covered_by

Get a paginated list of tracks by an artist that have been covered by other artists, along with details of each cover version. Each track entry includes its cover connections (covering track name, covering artist, year). Optionally filter connections by a tag (e.g. 'Rock', 'Country / Folk'). Paginated via page number.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `artist_slug` | string | Yes | Artist URL slug as it appears in the WhoSampled URL path (e.g. 'Kanye-West', 'Daft-Punk') |
| `page` | integer | No | Page number for pagination |
| `tag` | string | No | Optional cover type tag to filter connections by (filters by tag text match, e.g. 'Rock', 'Country / Folk', 'Electronic / Dance') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-whosampled-com-api-fa047151/get_artist_covered_by \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"artist_slug":"<string>","page":"<integer>","tag":"<string>"}'
```

### get_artist_samples_used

Get a paginated list of tracks by an artist that contain samples, along with details of what was sampled in each track. Each track entry includes its sample connections (source track, artist, year). Optionally filter connections by a tag (e.g. 'Drums', 'Vocals'). Paginated via page number.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `artist_slug` | string | Yes | Artist URL slug as it appears in the WhoSampled URL path (e.g. 'Kanye-West') |
| `page` | integer | No | Page number for pagination |
| `tag` | string | No | Optional sample type tag to filter connections by (filters by tag text match, e.g. 'Drums', 'Vocals / Lyrics', 'Multiple Elements') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-whosampled-com-api-fa047151/get_artist_samples_used \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"artist_slug":"<string>","page":"<integer>","tag":"<string>"}'
```

### get_track_covered_by

Get a paginated list of cover versions for a specific track. Each entry shows the covering artist, cover title, year, genre, connection URL, and connection ID. Supports sort order via ob parameter. Returns total count of covers when available and whether more pages exist.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `artist_slug` | string | Yes | Artist URL slug as it appears in the WhoSampled URL path (e.g. 'Depeche-Mode', 'Kanye-West') |
| `ob` | integer | No | Sort order: 0=Most Popular (default), 1=Earliest to Latest, 2=Latest to Earliest, 3=Alphabetical, 4=Latest Additions |
| `page` | integer | No | Page number for pagination |
| `track_slug` | string | Yes | Track URL slug exactly as it appears in the WhoSampled URL path (e.g. 'Enjoy-the-Silence', 'Harder,-Better,-Faster,-Stronger') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-whosampled-com-api-fa047151/get_track_covered_by \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"artist_slug":"<string>","ob":"<integer>","page":"<integer>","track_slug":"<string>"}'
```

### get_track_detail

Get full details for a specific track including album, year, and all sample/cover/remix connections summary. The track_slug must exactly match the site's URL format, including commas for punctuation (e.g. 'Harder,-Better,-Faster,-Stronger'). If the slug is incorrect, an input_not_found error is returned.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `artist_slug` | string | Yes | Artist URL slug as it appears in the WhoSampled URL path (e.g. 'Kanye-West', 'Daft-Punk') |
| `track_slug` | string | Yes | Track URL slug exactly as it appears in the WhoSampled URL path. Punctuation is preserved with commas (e.g. 'Stronger', 'Harder,-Better,-Faster,-Stronger') |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-whosampled-com-api-fa047151/get_track_detail \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"artist_slug":"<string>","track_slug":"<string>"}'
```

### get_trending_samples

Get the current Hot Samples chart showing the most viewed sample connections in the last 24 hours. Returns a flat list of trending sample connections with name and URL. No input parameters required.

**Estimated cost:** Metered

_No parameters required._

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-whosampled-com-api-fa047151/get_trending_samples \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{}'
```

### search

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.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Search keyword (artist or track name) |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/parse-whosampled-com-api-fa047151/search \
  -H "Authorization: Bearer YOUR_LOCUS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```
