Paginate artist tracks
curl --request GET \
--url https://open.beatpass.ca/api/v1/artists/{id}/tracks \
--header 'Authorization: Bearer <token>'import requests
url = "https://open.beatpass.ca/api/v1/artists/{id}/tracks"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://open.beatpass.ca/api/v1/artists/{id}/tracks', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://open.beatpass.ca/api/v1/artists/{id}/tracks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://open.beatpass.ca/api/v1/artists/{id}/tracks"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://open.beatpass.ca/api/v1/artists/{id}/tracks")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://open.beatpass.ca/api/v1/artists/{id}/tracks")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"status": "success",
"pagination": {
"current_page": 1,
"from": 1,
"to": 100,
"per_page": 25,
"last_page": 156,
"total": 264,
"data": [
{
"id": 123,
"name": "Hey Hey What Can I Do",
"release_date": "1982-11-19",
"image": "https://example.com/image1.jpg",
"duration": 5645848548,
"description": "<string>",
"artists": [
{
"id": 123,
"name": "Led Zeppelin",
"image_small": "https://example.com/image1.jpg",
"verified": true
}
]
}
]
}
}Artists
Paginate artist tracks
GET
/
artists
/
{id}
/
tracks
Paginate artist tracks
curl --request GET \
--url https://open.beatpass.ca/api/v1/artists/{id}/tracks \
--header 'Authorization: Bearer <token>'import requests
url = "https://open.beatpass.ca/api/v1/artists/{id}/tracks"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://open.beatpass.ca/api/v1/artists/{id}/tracks', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://open.beatpass.ca/api/v1/artists/{id}/tracks",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://open.beatpass.ca/api/v1/artists/{id}/tracks"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://open.beatpass.ca/api/v1/artists/{id}/tracks")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://open.beatpass.ca/api/v1/artists/{id}/tracks")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"status": "success",
"pagination": {
"current_page": 1,
"from": 1,
"to": 100,
"per_page": 25,
"last_page": 156,
"total": 264,
"data": [
{
"id": 123,
"name": "Hey Hey What Can I Do",
"release_date": "1982-11-19",
"image": "https://example.com/image1.jpg",
"duration": 5645848548,
"description": "<string>",
"artists": [
{
"id": 123,
"name": "Led Zeppelin",
"image_small": "https://example.com/image1.jpg",
"verified": true
}
]
}
]
}
}Authorizations
API access is invite-only. Contact contact@beatpass.ca to request access. Once approved, generate tokens from Account Settings → Developers. Include as: Authorization: Bearer {token}. Tokens expire after 90 days.
Path Parameters
ID of the artist
Query Parameters
How many tracks to return per page
Which page to return
Last modified on July 21, 2026
Was this page helpful?
⌘I