helm-spotify-plus
helm-spotify-plus copied to clipboard
See what Spotify API can do for Playlists
See if Spotify API can be used to search playlists in general or even from a certain user.
The following request:
https://api.spotify.com/v1/users/lgmoneda/playlists
Results in:
{
"error" : {
"status" : 401,
"message" : "This request requires authentication."
}
}
The same happens if we pass a playlist id, like:
https://api.spotify.com/v1/users/lgmoneda/playlists/1msbZYd2L8vVLLS54CtCsh
What can be done: ask helm-spotify-plus user to configure manually his token and use it.
How about this one:
https://api.spotify.com/v1/search?q="doom metal"&type=playlist
Results in:
{
"playlists" : {
"href" : "https://api.spotify.com/v1/search?query=%22doom+metal%22&type=playlist&offset=0&limit=20",
"items" : [ {
"collaborative" : false,
"external_urls" : {
"spotify" : "http://open.spotify.com/user/1121479704/playlist/0v9cjE3vjgCv0aVXpeIlHT"
},
"href" : "https://api.spotify.com/v1/users/1121479704/playlists/0v9cjE3vjgCv0aVXpeIlHT",
"id" : "0v9cjE3vjgCv0aVXpeIlHT",
"images" : [ {
"height" : 640,
"url" : "https://mosaic.scdn.co/640/350b0d383af042146a65bc9a30cc4495d554da782b46a7907db90ddd0882c90e7b5fe0b1f216b9cca2b9656e814222ef32c8a9bd4ac581d12fe5a769cca6b1d2328497a6fcaa52e3736a6649cbd8c81a",
"width" : 640
}, {
"height" : 300,
"url" : "https://mosaic.scdn.co/300/350b0d383af042146a65bc9a30cc4495d554da782b46a7907db90ddd0882c90e7b5fe0b1f216b9cca2b9656e814222ef32c8a9bd4ac581d12fe5a769cca6b1d2328497a6fcaa52e3736a6649cbd8c81a",
"width" : 300
}, {
"height" : 60,
"url" : "https://mosaic.scdn.co/60/350b0d383af042146a65bc9a30cc4495d554da782b46a7907db90ddd0882c90e7b5fe0b1f216b9cca2b9656e814222ef32c8a9bd4ac581d12fe5a769cca6b1d2328497a6fcaa52e3736a6649cbd8c81a",
"width" : 60
} ],
"name" : "Doom Metal / Death Doom Metal / Funeral Doom Metal",
"owner" : {
"external_urls" : {
"spotify" : "http://open.spotify.com/user/1121479704"
},
"href" : "https://api.spotify.com/v1/users/1121479704",
"id" : "1121479704",
"type" : "user",
"uri" : "spotify:user:1121479704"
},
"public" : null,
"snapshot_id" : "uH0e2Xho/mIBAA9xKE6fe/atA7TUpIJYisV3ygXj8GlkbFQYw4GBQMQPnwOXBy4s",
"tracks" : {
"href" : "https://api.spotify.com/v1/users/1121479704/playlists/0v9cjE3vjgCv0aVXpeIlHT/tracks",
"total" : 924
},
"type" : "playlist",
"uri" : "spotify:user:1121479704:playlist:0v9cjE3vjgCv0aVXpeIlHT"
}, .... many more. ```
I was thinking about a user that wants to play his own playlists. I'll try to use filters and see what can be done with the "type=playlist" search. Even if can not retrieve user's playlists, it would be a nice feature to add.
This works too:
(helm-spotify-plus-play-href "spotify:user:lgmoneda:playlist:1msbZYd2L8vVLLS54CtCsh")
So the user could store his playlists uri and play them easily with the mode. I think it's very boring to configure, but maybe it'd worth!
Yes, I think is good enough.
This brought me this idea:
For example: We could make an Action (place it in F3 maybe) where the user can Store any playlist, album or even tracks. Creating a mode custom user-list.
We might persist it in a file called .helm-spotify-plus-customs and have an option to not request directly to the Spotify API, instead we show the custom list of things.
Could be a feature to the next release 1.2 because I think many things will need to be done to accomplish that.
What you think?
Nice idea. Basically, we would reproduce Spotify's desktop app left bar!