Songs
Detail
Returns more detailled information about a song.
| Method | GET |
|---|---|
| Endpoint | /song/songID |
Information
Instead of asongID you can also provide a fileReference, which start with spinshare_.
Output Body
{
"version": 1,
"status": 200,
"data":
{
"id": 10,
"title": "Shiny Days",
"subtitle": "From \"Yuru Camp\"",
"artist": "Asaka",
"charter": "imfallin",
"uploader": 1,
"tags":
[
""
],
"views": 9,
"downloads": null,
"isExplicit": false,
"publicationStatus": 0,
"fileReference": "spinshare_645bd72488592",
"hasEasyDifficulty": true,
"hasNormalDifficulty": true,
"hasHardDifficulty": true,
"hasExtremeDifficulty": true,
"hasXDDifficulty": true,
"easyDifficulty": 5,
"normalDifficulty": 10,
"hardDifficulty": 15,
"expertDifficulty": 23,
"XDDifficulty": 26,
"uploadDate":
{
"date": "2021-01-15 13:27:34.000000",
"timezone_type": 3,
"timezone": "Europe/Berlin"
},
"updateDate":
{
"date": "2021-01-15 13:27:34.000000",
"timezone_type": 3,
"timezone": "Europe/Berlin"
},
"updateHash": "d837d2adcdc19d215130cd92f27ae927",
"description": null,
"dlc": {
"identifier": "supporterpack1",
"title": "Supporter Pack",
"storeLink": "https://store.steampowered.com/app/1664540/Spin_Rhythm_XD__Supporter_Pack/"
},
"paths":
{
"ogg": "http://localhost/www/spinshare/server/public/uploads/audio/spinshare_60018a36ec5e9_0.ogg",
"cover": "http://localhost/www/spinshare/server/public/uploads/thumbnail/spinshare_60018a36ec5e9.jpg",
"zip": "http://localhost/www/spinshare/server/public/api/song/10/download"
}
}
}
Output Body (Not Found)
{
"version":1,
"status":404,
"data":[]
}
Reviews
Returns all active reviews of a song.
| Method | GET |
|---|---|
| Endpoint | /song/songID/reviews |
Information
Instead of asongID you can also provide a fileReference, which start with spinshare_.
Output Body
{
"version":1,
"status":200,
"data":{
"average":91.7,
"reviews":[
{
"id":632,
"user":{
"id":47,
"username":"NicolasPL",
"coverReference":"5e98e02997f6c.png",
"isVerified":null,
"isPatreon":null,
"pronouns": "they/them"
},
"recommended":true,
"comment":"Really good. I played it on Expert, really fun.",
"reviewDate":{
"date":"2020-08-03 01:19:43.000000",
"timezone_type":3,
"timezone":"Europe\/Berlin"
}
},
...
]
}
}
Playlists
Returns all playlists that includes a song.
| Method | GET |
|---|---|
| Endpoint | /song/songID/playlists |
Information
Instead of asongID you can also provide a fileReference, which start with spinshare_.
Output Body
{
"version": 1,
"status": 200,
"data": [
{
"id": 7,
"title": "Great Normal\/Hard charts!",
"description": "Here are some chart's I enjoyed playing on normal\/hard!",
"fileReference": "playlist_5fc2a88d3c227",
"user": {
"id": 4,
"username": "thatanimeweirdo",
"isVerified": true,
"isPatreon": null,
"pronouns": "she\/they",
"avatar": "https:\/\/spinsha.re\/uploads\/avatar\/608f35bb4afe4.png"
},
"songs": 50,
"isOfficial": false,
"cover": "https:\/\/spinsha.re\/uploads\/cover\/playlist_5fc2a88d3c227.png"
}
]
}
SpinPlays
Returns all active SpinPlays of a song.
| Method | GET |
|---|---|
| Endpoint | /song/songID/spinplays |
Information
Instead of asongID you can also provide a fileReference, which start with spinshare_.
Output Body
{
"version":1,
"status":200,
"data":{
"spinPlays":[
{
"id":150,
"user":{
"id":20,
"username":"Zick407",
"coverReference":"5e9935a0afa55.png",
"isVerified":false,
"isPatreon":null,
"pronouns": "they/them"
},
"videoUrl":"https:\/\/www.youtube.com\/watch?v=bEVdyM5_qxA",
"videoThumbnail":"https:\/\/i.ytimg.com\/vi\/bEVdyM5_qxA\/maxresdefault.jpg",
"submitDate":{
"date":"2020-07-01 02:10:39.000000",
"timezone_type":3,
"timezone":"Europe\/Berlin"
},
"isActive":true
}
]
}
}
Download
Generates a download zip and returns it.
| Method | GET |
|---|---|
| Endpoint | /song/songID/download |
Information
If a song is part of a DLC, you must include at least one DLC Hash in your request header throughSPSH-DLC-Hash.
Information
Instead of asongID you can also provide a fileReference, which start with spinshare_.