curl --request GET \
--url https://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble', 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://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble",
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://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble"
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://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble")
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{
"id": "<string>",
"user": "<string>",
"title": "<string>",
"artist": "<string>",
"artistUri": "<string>",
"album": "<string>",
"albumUri": "<string>",
"cover": "<string>",
"date": "2023-11-07T05:31:56Z",
"uri": "<string>",
"sha256": "<string>",
"liked": true,
"trackUri": "<string>",
"likesCount": 123,
"listeners": 123,
"scrobbles": 123,
"artists": [
{
"id": "<string>",
"uri": "<string>",
"name": "<string>",
"picture": "<string>",
"sha256": "<string>",
"playCount": 1,
"uniqueListeners": 1,
"tags": [
"<string>"
],
"createdAt": "<string>",
"updatedAt": "<string>",
"biography": "<string>",
"born": "2023-11-07T05:31:56Z",
"bornIn": "<string>",
"died": "2023-11-07T05:31:56Z",
"appleMusicLink": "<string>",
"spotifyLink": "<string>",
"tidalLink": "<string>",
"youtubeLink": "<string>",
"genres": [
"<string>"
],
"xataVersion": 123
}
],
"firstScrobble": {
"handle": "<string>",
"avatar": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
},
"mbId": "<string>",
"isrc": "<string>",
"tags": [
"<string>"
],
"createdAt": "<string>",
"updatedAt": "<string>",
"albumArtist": "<string>",
"trackNumber": 123,
"duration": 123,
"youtubeLink": "<string>",
"spotifyLink": "<string>",
"appleMusicLink": "<string>",
"tidalLink": "<string>",
"discNumber": 123,
"lyrics": "<string>",
"composer": "<string>",
"genre": "<string>",
"label": "<string>",
"copyrightMessage": "<string>",
"key": "<string>",
"acoustidFingerprint": "<string>",
"xataVersion": 123,
"mbid": "<string>",
"bpm": 123
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Get a scrobble by its unique identifier
curl --request GET \
--url https://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble', 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://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble",
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://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble"
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://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.rocksky.app/xrpc/app.rocksky.scrobble.getScrobble")
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{
"id": "<string>",
"user": "<string>",
"title": "<string>",
"artist": "<string>",
"artistUri": "<string>",
"album": "<string>",
"albumUri": "<string>",
"cover": "<string>",
"date": "2023-11-07T05:31:56Z",
"uri": "<string>",
"sha256": "<string>",
"liked": true,
"trackUri": "<string>",
"likesCount": 123,
"listeners": 123,
"scrobbles": 123,
"artists": [
{
"id": "<string>",
"uri": "<string>",
"name": "<string>",
"picture": "<string>",
"sha256": "<string>",
"playCount": 1,
"uniqueListeners": 1,
"tags": [
"<string>"
],
"createdAt": "<string>",
"updatedAt": "<string>",
"biography": "<string>",
"born": "2023-11-07T05:31:56Z",
"bornIn": "<string>",
"died": "2023-11-07T05:31:56Z",
"appleMusicLink": "<string>",
"spotifyLink": "<string>",
"tidalLink": "<string>",
"youtubeLink": "<string>",
"genres": [
"<string>"
],
"xataVersion": 123
}
],
"firstScrobble": {
"handle": "<string>",
"avatar": "<string>",
"timestamp": "2023-11-07T05:31:56Z"
},
"mbId": "<string>",
"isrc": "<string>",
"tags": [
"<string>"
],
"createdAt": "<string>",
"updatedAt": "<string>",
"albumArtist": "<string>",
"trackNumber": 123,
"duration": 123,
"youtubeLink": "<string>",
"spotifyLink": "<string>",
"appleMusicLink": "<string>",
"tidalLink": "<string>",
"discNumber": 123,
"lyrics": "<string>",
"composer": "<string>",
"genre": "<string>",
"label": "<string>",
"copyrightMessage": "<string>",
"key": "<string>",
"acoustidFingerprint": "<string>",
"xataVersion": 123,
"mbid": "<string>",
"bpm": 123
}{
"error": "<string>",
"message": "<string>"
}{
"error": "<string>",
"message": "<string>"
}Authorizations
Rocksky bearer token.
Query Parameters
The unique identifier of the scrobble
Response
Success
The unique identifier of the scrobble.
The handle of the user who created the scrobble.
The title of the scrobble.
The artist of the song.
The URI of the artist.
The album of the song.
The URI of the album.
The album art URL of the song.
The timestamp when the scrobble was created.
The URI of the scrobble.
The SHA256 hash of the scrobble data.
The URI of the track (song) this scrobble is of.
The number of listeners
The number of scrobbles for this song
Show child attributes
Show child attributes
The first scrobble of this song on Rocksky.
Show child attributes
Show child attributes
The MusicBrainz recording ID of the track, when available.
The International Standard Recording Code (ISRC) of the track, when available.
Production returns a nullable floating-point number. Lexicon has no float primitive; retained as an open extension without changing response data.