Fixes Spotify API for library Add/Remove of Artist/Album/Track (#1192)
authorsprocket-9 <sprocketnumber9@gmail.com>
Mon, 1 Apr 2024 15:25:20 +0000 (16:25 +0100)
committerGitHub <noreply@github.com>
Mon, 1 Apr 2024 15:25:20 +0000 (17:25 +0200)
music_assistant/server/providers/spotify/__init__.py

index 80a775ee3b1a3c082f3190488076c91337a8c9b0..e78ddc4a99a0adbf15576cc745802fb25d88c4c1 100644 (file)
@@ -348,11 +348,11 @@ class SpotifyProvider(MusicProvider):
         """Add item to library."""
         result = False
         if media_type == MediaType.ARTIST:
-            result = await self._put_data("me/following", {"ids": prov_item_id, "type": "artist"})
+            result = await self._put_data("me/following", {"ids": [prov_item_id], "type": "artist"})
         elif media_type == MediaType.ALBUM:
-            result = await self._put_data("me/albums", {"ids": prov_item_id})
+            result = await self._put_data("me/albums", {"ids": [prov_item_id]})
         elif media_type == MediaType.TRACK:
-            result = await self._put_data("me/tracks", {"ids": prov_item_id})
+            result = await self._put_data("me/tracks", {"ids": [prov_item_id]})
         elif media_type == MediaType.PLAYLIST:
             result = await self._put_data(
                 f"playlists/{prov_item_id}/followers", data={"public": False}
@@ -364,12 +364,12 @@ class SpotifyProvider(MusicProvider):
         result = False
         if media_type == MediaType.ARTIST:
             result = await self._delete_data(
-                "me/following", {"ids": prov_item_id, "type": "artist"}
+                "me/following", {"ids": [prov_item_id], "type": "artist"}
             )
         elif media_type == MediaType.ALBUM:
-            result = await self._delete_data("me/albums", {"ids": prov_item_id})
+            result = await self._delete_data("me/albums", {"ids": [prov_item_id]})
         elif media_type == MediaType.TRACK:
-            result = await self._delete_data("me/tracks", {"ids": prov_item_id})
+            result = await self._delete_data("me/tracks", {"ids": [prov_item_id]})
         elif media_type == MediaType.PLAYLIST:
             result = await self._delete_data(f"playlists/{prov_item_id}/followers")
         return result