Similar tracks
GET/v0/tracks/:trackId/similar
The similar tracks endpoint allows developers to retrieve a list of tracks that are similar to a given reference track. This feature is designed to help users discover tracks that share similar characteristics, such as genre, mood, tempo, and more. This endpoint helps your users replace tracks that don't fit perfectly or discover multiple alternatives to a track they enjoy.
Request
Path Parameters
Track id
Query Parameters
Index of the entry track in the response
Max number of entries returned in the response, default 50 and max 100
Responses
- 200
- 400
- 401
- 404
- 429
Paginated list of similar tracks
- application/json
- Schema
- Example (from schema)
- Example
Schema
Array [
Array [
]
Array [
]
]
Array [
]
Array [
]
tracks
object[]
required
Unique ID of the track
The main artist that created the track.
Additional artists that contributed to the track.
Title of the track
Beats per minute for the track.
Track length in seconds
moods
object[]
required
Lists the moods of the track.
Unique ID of the mood
Name of the mood
genres
object[]
required
Lists the genres of the track.
parent
object
Unique ID of the parent genre
Name of the parent genre
images
object
Reference to the waveform as a json object.
Set to true if the track has vocals. Set to false for instrumental tracks.
The date the track was released in the format YYYY-mm-dd.
Possible values: [PAID
, FREE
]
pagination
object
required
links
object
required
aggregations
object
moods
object[]
genres
object[]
{
"tracks": [
{
"id": "string",
"mainArtists": [
"string"
],
"featuredArtists": [
"string"
],
"title": "string",
"bpm": 0,
"length": 0,
"moods": [
{
"id": "string",
"name": "string"
}
],
"genres": [
{
"id": "string",
"name": "string",
"parent": {
"id": "string",
"name": "string"
}
}
],
"images": {
"default": "string",
"L": "string",
"M": "string",
"S": "string",
"XS": "string"
},
"waveformUrl": "string",
"hasVocals": true,
"added": "string",
"tierOption": "PAID",
"isExplicit": true,
"isPreviewOnly": true
}
],
"pagination": {
"page": 0,
"limit": 0,
"offset": 0
},
"links": {
"next": "string",
"prev": "string"
},
"aggregations": {
"moods": [
{
"id": "string",
"name": "string",
"count": 0
}
],
"genres": [
{
"id": "string",
"name": "string",
"count": 0
}
]
}
}
{
"tracks": [
{
"id": "6rUPerw2po",
"mainArtists": [
"Main Artist"
],
"featuredArtists": [
"Featured Artist"
],
"title": "Happy Song",
"bpm": 135,
"length": 3123,
"moods": [
{
"id": "happy",
"name": "Happy"
},
{
"id": "eccentric",
"name": "Eccentric"
}
],
"genres": [
{
"id": "beats",
"name": "Beats",
"parent": {
"id": "parent",
"name": "Parent Beats"
}
},
{
"id": "trap",
"name": "Trap"
}
],
"images": {
"default": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/300x300.jpg",
"L": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/1050x1050.jpg",
"M": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/600x600.jpg",
"S": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/300x300.jpg",
"XS": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/128x128.jpg"
},
"waveformUrl": "https://pdn.epidemicsound.com/waveforms/1600/394079.json",
"hasVocals": true,
"added": "2020-10-10",
"isExplicit": false,
"isPreviewOnly": true
},
{
"id": "0dZCtol3bs",
"mainArtists": [
"Main Artist"
],
"featuredArtists": [
"Featured Artist"
],
"title": "Sad Song",
"bpm": 97,
"length": 2976,
"moods": [
{
"id": "happy",
"name": "Happy"
},
{
"id": "eccentric",
"name": "Eccentric"
}
],
"genres": [
{
"id": "beats",
"name": "Beats",
"parent": {
"id": "parent",
"name": "Parent Beats"
}
},
{
"id": "trap",
"name": "Trap"
}
],
"images": {
"default": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/300x300.jpg",
"L": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/1050x1050.jpg",
"M": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/600x600.jpg",
"S": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/300x300.jpg",
"XS": "https://cdn.epidemicsound.com/curation-assets/commercial-release-cover-images/123456/128x128.jpg"
},
"waveformUrl": "https://pdn.epidemicsound.com/waveforms/1600/394079.json",
"hasVocals": true,
"added": "2020-10-10",
"isExplicit": false,
"isPreviewOnly": true
}
],
"pagination": {
"page": 4,
"limit": 20,
"offset": 60
},
"links": {
"next": "/v0/tracks?limit=20&offset=80",
"prev": "/v0/tracks?limit=20&offset=40"
}
}
Bad request.
- application/json
- Schema
- Example (from schema)
- Example
Schema
Array [
]
Human readable message
errors
object[]
Error key
Error messages
{
"message": "string",
"errors": [
{
"key": "string",
"messages": [
"string"
]
}
]
}
{
"message": "Bad request"
}
Unauthorized. Most likely your access token has expired.
- application/json
- Schema
- Example (from schema)
- Example
Schema
Array [
]
Human readable message
errors
object[]
Error key
Error messages
{
"message": "string",
"errors": [
{
"key": "string",
"messages": [
"string"
]
}
]
}
{
"message": "Invalid credentials"
}
Track was not found.
- application/json
- Schema
- Example (from schema)
- Example
Schema
Array [
]
Human readable message
errors
object[]
Error key
Error messages
{
"message": "string",
"errors": [
{
"key": "string",
"messages": [
"string"
]
}
]
}
{
"message": "Track was not found"
}
Rate limit exceeded.
- application/json
- Schema
- Example (from schema)
- Example
Schema
Array [
]
Human readable message
errors
object[]
Error key
Error messages
{
"message": "string",
"errors": [
{
"key": "string",
"messages": [
"string"
]
}
]
}
{
"message": "Rate limit exceeded"
}