[GH-ISSUE #550] Spotify Web API changes (February 2026) #172

Open
opened 2026-02-27 20:23:33 +03:00 by kerem · 1 comment
Owner

Originally created by @reima on GitHub (Feb 11, 2026).
Original GitHub issue: https://github.com/ramsayleung/rspotify/issues/550

Spotify has announced changes to the Web API for integrations in Developer Mode (February 11 for new integrations, March 9 for all existing integrations): Web API Changes - February 2026

From what I could gather this affects the following functions:

  • BaseClient::artist_top_tracks – endpoint removed
  • BaseClient::new_releases and BaseClient::new_releases_manual – endpoint removed
  • BaseClient::albums – endpoint removed
  • BaseClient::artists – endpoint removed
  • BaseClient::categories and BaseClient::categories_manual – endpoint removed
  • BaseClient::get_several_episodes – endpoint removed
  • BaseClient::get_several_shows – endpoint removed
  • BaseClient::tracks – endpoint removed
  • BaseClient::user_playlists and BaseClient::user_playlists_manual – endpoint removed
  • BaseClient::user – endpoint removed
  • BaseClient::user_playlists and BaseClient::user_playlists_manual – endpoint removed
  • OAuthClient::user_playlist_create – endpoint removed, still available for the current user only via POST /me/playlists
  • OAuthClient::current_user_saved_albums_delete – endpoint changed to DELETE /me/library
  • OAuthClient::remove_users_saved_shows – endpoint changed to DELETE /me/library
  • OAuthClient::current_user_saved_tracks_delete – endpoint changed to DELETE /me/library
  • OAuthClient::current_user_saved_albums_add – endpoint changed to PUT /me/library
  • OAuthClient::save_shows – endpoint changed to PUT /me/library
  • OAuthClient::current_user_saved_tracks_add – endpoint changed to PUT /me/library
  • OAuthClient::user_artist_check_follow – endpoint changed to GET /me/library
  • OAuthClient::current_user_saved_albums_contains – endpoint changed to GET /me/library
  • OAuthClient::check_users_saved_shows – endpoint changed to GET /me/library
  • OAuthClient::current_user_saved_tracks_contains – endpoint changed to GET /me/library
  • OAuthClient::user_follow_artists – endpoint changed to PUT /me/library
  • OAuthClient::user_unfollow_artists – endpoint changed to PUT /me/library
  • OAuthClient::user_follow_users – endpoint changed to PUT /me/library
  • OAuthClient::user_unfollow_users – endpoint changed to PUT /me/library
  • OAuthClient::playlist_follow – endpoint changed to PUT /me/library
  • OAuthClient::playlist_unfollow – endpoint changed to PUT /me/library
  • OAuthClient::playlist_add_items – endpoint changed to POST /playlists/{id}/items
  • OAuthClient::playlist_replace_items – endpoint changed to PUT /playlists/{id}/items
  • OAuthClient::playlist_reorder_items – endpoint changed to PUT /playlists/{id}/items
  • OAuthClient::playlist_remove_specific_occurrences_of_items – endpoint changed to DELETE /playlists/{id}/tracks
  • OAuthClient::playlist_remove_all_occurrences_of_items – endpoint changed to DELETE /playlists/{id}/tracks

The changes also affect the following model types:

  • SimplifiedAlbum
    • field album_group removed
    • field available_markets removed
  • FullAlbum
    • field available_markets removed
    • field external_ids removed
    • field label removed
    • field popularity removed
  • FullArtist
    • field followers removed
    • field popularity removed
  • SimplifiedPlaylist
    • field tracks renamed to items
  • FullPlaylist
    • field tracks renamed to items
  • PlaylistItem
    • field track renamed to item
  • SimplifiedShow
    • field available_markets removed
    • field publisher removed
  • FullShow
    • field available_markets removed
    • field publisher removed
  • FullTrack
    • field available_markets removed
    • field external_ids removed
    • field linked_from removed
    • field popularity removed
  • SimplifiedTrack
    • field available_markets removed
    • field linked_from removed
  • PublicUser
    • field followers removed
  • PrivateUser
    • field country removed
    • field email removed
    • field explicit_content removed
    • field followers removed
    • field product removed
Originally created by @reima on GitHub (Feb 11, 2026). Original GitHub issue: https://github.com/ramsayleung/rspotify/issues/550 Spotify has [announced](https://developer.spotify.com/blog/2026-02-06-update-on-developer-access-and-platform-security) changes to the Web API for integrations in Developer Mode (February 11 for new integrations, March 9 for all existing integrations): [Web API Changes - February 2026](https://developer.spotify.com/documentation/web-api/references/changes/february-2026) From what I could gather this affects the following functions: * `BaseClient::artist_top_tracks` – endpoint removed * `BaseClient::new_releases` and `BaseClient::new_releases_manual` – endpoint removed * `BaseClient::albums` – endpoint removed * `BaseClient::artists` – endpoint removed * `BaseClient::categories` and `BaseClient::categories_manual` – endpoint removed * `BaseClient::get_several_episodes` – endpoint removed * `BaseClient::get_several_shows` – endpoint removed * `BaseClient::tracks` – endpoint removed * `BaseClient::user_playlists` and `BaseClient::user_playlists_manual` – endpoint removed * `BaseClient::user` – endpoint removed * `BaseClient::user_playlists` and `BaseClient::user_playlists_manual` – endpoint removed * `OAuthClient::user_playlist_create` – endpoint removed, still available for the current user only via POST /me/playlists * `OAuthClient::current_user_saved_albums_delete` – endpoint changed to `DELETE /me/library` * `OAuthClient::remove_users_saved_shows` – endpoint changed to `DELETE /me/library` * `OAuthClient::current_user_saved_tracks_delete` – endpoint changed to `DELETE /me/library` * `OAuthClient::current_user_saved_albums_add` – endpoint changed to `PUT /me/library` * `OAuthClient::save_shows` – endpoint changed to `PUT /me/library` * `OAuthClient::current_user_saved_tracks_add` – endpoint changed to `PUT /me/library` * `OAuthClient::user_artist_check_follow` – endpoint changed to `GET /me/library` * `OAuthClient::current_user_saved_albums_contains` – endpoint changed to `GET /me/library` * `OAuthClient::check_users_saved_shows` – endpoint changed to `GET /me/library` * `OAuthClient::current_user_saved_tracks_contains` – endpoint changed to `GET /me/library` * `OAuthClient::user_follow_artists` – endpoint changed to `PUT /me/library` * `OAuthClient::user_unfollow_artists` – endpoint changed to `PUT /me/library` * `OAuthClient::user_follow_users` – endpoint changed to `PUT /me/library` * `OAuthClient::user_unfollow_users` – endpoint changed to `PUT /me/library` * `OAuthClient::playlist_follow` – endpoint changed to `PUT /me/library` * `OAuthClient::playlist_unfollow` – endpoint changed to `PUT /me/library` * `OAuthClient::playlist_add_items` – endpoint changed to `POST /playlists/{id}/items` * `OAuthClient::playlist_replace_items` – endpoint changed to `PUT /playlists/{id}/items` * `OAuthClient::playlist_reorder_items` – endpoint changed to `PUT /playlists/{id}/items` * `OAuthClient::playlist_remove_specific_occurrences_of_items` – endpoint changed to `DELETE /playlists/{id}/tracks` * `OAuthClient::playlist_remove_all_occurrences_of_items` – endpoint changed to `DELETE /playlists/{id}/tracks` The changes also affect the following model types: * `SimplifiedAlbum` * field `album_group` removed * field `available_markets` removed * `FullAlbum` * field `available_markets` removed * field `external_ids` removed * field `label` removed * field `popularity` removed * `FullArtist` * field `followers` removed * field `popularity` removed * `SimplifiedPlaylist` * field `tracks` renamed to `items` * `FullPlaylist` * field `tracks` renamed to `items` * `PlaylistItem` * field `track` renamed to `item` * `SimplifiedShow` * field `available_markets` removed * field `publisher` removed * `FullShow` * field `available_markets` removed * field `publisher` removed * `FullTrack` * field `available_markets` removed * field `external_ids` removed * field `linked_from` removed * field `popularity` removed * `SimplifiedTrack` * field `available_markets` removed * field `linked_from` removed * `PublicUser` * field `followers` removed * `PrivateUser` * field `country` removed * field `email` removed * field `explicit_content` removed * field `followers` removed * field `product` removed
Author
Owner

@Manishearth commented on GitHub (Feb 23, 2026):

I just started trying to build an app here and ran up against this problem :/

<!-- gh-comment-id:3942496123 --> @Manishearth commented on GitHub (Feb 23, 2026): I just started trying to build an app here and ran up against this problem :/
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/rspotify#172
No description provided.