Discovery

Search Charts

Returns charts based on the searchQuery provided.

Method POST
Endpoint /searchCharts
JSON Body (string) searchQuery
(bool) diffEasy
(bool) diffNormal
(bool) diffHard
(bool) diffExpert
(bool) diffXD
(int) diffRatingFrom
(int) diffRatingTo
(bool) showExplicit


Output Body
{
    "version":1,
    "status":200,
    "data":[
        {
            "id": 13,
            "title": "I'm Just",
            "subtitle": "Remix",
            "artist": "Artizan",
            "charter": "TreXDer",
            "uploader": 1,
            "fileReference": "spinshare_600f0dcfd717b",
            "tags": [
                "poggers",
                "schmoggers",
                "stride"
            ],
            "views": 18,
            "downloads": 5,
            "isExplicit": false,
            "publicationStatus": 0,
            "hasEasyDifficulty": false,
            "hasNormalDifficulty": false,
            "hasHardDifficulty": true,
            "hasExtremeDifficulty": true,
            "hasXDDifficulty": true,
            "easyDifficulty": false,
            "normalDifficulty": false,
            "hardDifficulty": 22,
            "expertDifficulty": 31,
            "XDDifficulty": 45,
            "uploadDate": {
                "date": "2021-01-25 19:28:31.000000",
                "timezone_type": 3,
                "timezone": "Europe\/Berlin"
            },
            "updateDate": {
                "date": "2021-02-03 23:15:32.000000",
                "timezone_type": 3,
                "timezone": "Europe\/Berlin"
            },
            "updateHash": "ab6f6ce4942623196537ea19bc8e6b3f",
            "description": null,
            "cover": "https:\/\/spinsha.re\/uploads\/cover\/spinshare_600f0dcfd717b.png",
            "zip": "https:\/\/spinsha.re\/api\/song\/13\/download"
        },
        ...
    ]
}

Search Playlists

Returns playlists based on the searchQuery provided.

Method POST
Endpoint /searchCharts
JSON Body (string) searchQuery


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"
		}
	]
}

Search Users

Returns users based on the searchQuery provided.

Method POST
Endpoint /searchUsers
JSON Body (string) searchQuery


Output Body
{
    "version": 1,
    "status": 200,
    "data": [
        {
            "id": 2,
            "username": "taw.moe",
            "isVerified": null,
            "isPatreon": null,
            "pronouns": "she\/her",
            "avatar": "https:\/\/spinshare.b-cdn.net\/assets\/img\/defaultAvatar.jpg"
        },
        ...
    ]
}

Search All

Returns all songs and users.

Method GET
Endpoint /searchAll


Output Body
{
    "version":1,
    "status":200,
    "data":{
        "users":[
            {
                "id":4,
                "username":"thatanimeweirdo",
                "isVerified":true,
                "isPatreon":null,
                "avatar":"https:\/\/spinsha.re\/uploads\/avatar\/5ef8cddb50106.png",
		        "pronouns": "they/them"
            },
            ...
        ],
        "songs":[
            {
                "id":1024,
                "title":"Keyboard Combos XD",
                "subtitle":"Charted in XD because WHY NOT",
                "artist":"Discord",
                "charter":"Raoul1808",
                "isExplicit":false,
                "hasEasyDifficulty":false,
                "hasNormalDifficulty":false,
                "hasHardDifficulty":false,
                "hasExtremeDifficulty":false,
                "hasXDDifficulty":true,
                "cover":"https:\/\/spinsha.re\/uploads\/thumbnail\/spinshare_5f2d157f6e44a.jpg",
                "zip":"https:\/\/spinsha.re\/api\/song\/1024\/download"
            },
            ...
        ]
    }
}

New Songs

Returns the 12 newest songs. Use offset for pagination.

Method GET
Endpoint /songs/new/offset


Output Body (Success)
{
    "version":1,
    "status":200,
    "data":[
        {
            "id": 3,
            "title": "Isabelle Singing",
            "subtitle": "K.K. Bubblegum",
            "artist": "K.K. Slider",
            "charter": "Ellite",
            "isExplicit":false,
            "hasEasyDifficulty": false,
            "hasNormalDifficulty": false,
            "hasHardDifficulty": true,
            "hasExtremeDifficulty": false,
            "hasXDDifficulty": false,
            "easyDifficulty": 5,
            "normalDifficulty": 10,
            "hardDifficulty": 15,
            "expertDifficulty": 23,
            "XDDifficulty": 26,
            "updateHash": "d837d2adcdc19d215130cd92f27ae927",
            "cover":"https:\/\/spinsha.re\/uploads\/thumbnail\/spinshare_5e8df6fb90bd7.jpg",
            "zip":"https:\/\/spinsha.re\/api\/song\/3\/download"
        },
        ...
    ]
}

Output Body (Not Found)
{
    "version":1,
    "status":404,
    "data":[]
}

Updated Songs

Returns 12 songs that were last updated. Use offset for pagination.

Method GET
Endpoint /songs/updated/offset


Output Body (Success)
{
    "version":1,
    "status":200,
    "data":[
        {
            "id": 3,
            "title": "Isabelle Singing",
            "subtitle": "K.K. Bubblegum",
            "artist": "K.K. Slider",
            "charter": "Ellite",
            "isExplicit":false,
            "hasEasyDifficulty": false,
            "hasNormalDifficulty": false,
            "hasHardDifficulty": true,
            "hasExtremeDifficulty": false,
            "hasXDDifficulty": false,
            "easyDifficulty": 5,
            "normalDifficulty": 10,
            "hardDifficulty": 15,
            "expertDifficulty": 23,
            "XDDifficulty": 26,
            "updateHash": "d837d2adcdc19d215130cd92f27ae927",
            "cover":"https:\/\/spinsha.re\/uploads\/thumbnail\/spinshare_5e8df6fb90bd7.jpg",
            "zip":"https:\/\/spinsha.re\/api\/song\/3\/download"
        },
        ...
    ]
}

Output Body (Not Found)
{
    "version":1,
    "status":404,
    "data":[]
}

Hot This Week Songs

Returns the 12 most popular songs from the last 7 days. Use offset for pagination.

Method GET
Endpoint /songs/hotThisWeek/offset


Output Body (Success)
{
    "version":1,
    "status":200,
    "data":[
        {
            "id": 3,
            "title": "Isabelle Singing",
            "subtitle": "K.K. Bubblegum",
            "artist": "K.K. Slider",
            "charter": "Ellite",
            "isExplicit":false,
            "hasEasyDifficulty": false,
            "hasNormalDifficulty": false,
            "hasHardDifficulty": true,
            "hasExtremeDifficulty": false,
            "hasXDDifficulty": false,
            "easyDifficulty": 5,
            "normalDifficulty": 10,
            "hardDifficulty": 15,
            "expertDifficulty": 23,
            "XDDifficulty": 26,
            "updateHash": "d837d2adcdc19d215130cd92f27ae927",
            "cover":"https:\/\/spinsha.re\/uploads\/thumbnail\/spinshare_5e8df6fb90bd7.jpg",
            "zip":"https:\/\/spinsha.re\/api\/song\/3\/download"
        },
        ...
    ]
}

Output Body (Not Found)
{
    "version":1,
    "status":404,
    "data":[]
}

Hot This Month Songs

Returns the 12 most popular songs from the last month. Use offset for pagination.

Method GET
Endpoint /songs/hotThisMonth/offset


Output Body (Success)
{
    "version":1,
    "status":200,
    "data":[
        {
            "id": 3,
            "title": "Isabelle Singing",
            "subtitle": "K.K. Bubblegum",
            "artist": "K.K. Slider",
            "charter": "Ellite",
            "isExplicit":false,
            "hasEasyDifficulty": false,
            "hasNormalDifficulty": false,
            "hasHardDifficulty": true,
            "hasExtremeDifficulty": false,
            "hasXDDifficulty": false,
            "easyDifficulty": 5,
            "normalDifficulty": 10,
            "hardDifficulty": 15,
            "expertDifficulty": 23,
            "XDDifficulty": 26,
            "updateHash": "d837d2adcdc19d215130cd92f27ae927",
            "cover":"https:\/\/spinsha.re\/uploads\/thumbnail\/spinshare_5e8df6fb90bd7.jpg",
            "zip":"https:\/\/spinsha.re\/api\/song\/3\/download"
        },
        ...
    ]
}

Output Body (Not Found)
{
    "version":1,
    "status":404,
    "data":[]
}