Skip to content

Fix Spotify API February 2026 migration issues (v0.23.0)#942

Open
Knightsmarian wants to merge 1 commit intoaome510:masterfrom
Knightsmarian:minimal-api-fix
Open

Fix Spotify API February 2026 migration issues (v0.23.0)#942
Knightsmarian wants to merge 1 commit intoaome510:masterfrom
Knightsmarian:minimal-api-fix

Conversation

@Knightsmarian
Copy link

Fixes critical UI and API breakages caused by the February 2026 Spotify Web API migration for Development Mode apps. Migrates to /items endpoint, adds model aliases/defaults for stripped fields, and improves search resilience.

@Knightsmarian
Copy link
Author

Knightsmarian commented Mar 2, 2026

IMPORTANT: THIS IS JUST AN EMERGENCY FIX TO GET THE APP WORKING.

Big items: fixed new api endpoints and parsing, added rate limits to stop getting error 429

Pages still broken:
Albums
Artist
Playlists
Radios
Image Previews

These likely all stem from the same parsing issue with the new api

You can get around most of these with your liked library ( g y ) and search ( g s )

@aome510
Copy link
Owner

aome510 commented Mar 4, 2026

Based on https://developer.spotify.com/documentation/web-api/tutorials/february-2026-migration-guide,

Extended Quota Mode apps: No migration required. Apps in extended quota mode are not affected by any of the changes described in this guide — all existing endpoints, fields, and behaviors remain unchanged. You can optionally adopt the new generic library endpoints (PUT/DELETE /me/library) but your existing integrations will remain fully functional.

Development Mode apps: This guide is for you. Read on for the full details of what's changing and how to update your app.

so it seems to affect dev-mode apps i.e when user specifies their own client_id instead of using the default NCSPOT_CLIENT_ID as in

// Use ncspot's client ID as a fallback for user-provided client ID
//
// Most of the time, using ncspot's client ID is better than user-provided one
// because it is registered with [extended quota mode] and predates [spotify API changes]
//
// [extended quota mode]: https://developer.spotify.com/documentation/web-api/concepts/quota-modes
// [spotify API changes]: https://developer.spotify.com/blog/2024-11-27-changes-to-the-web-api
client_id: Some(NCSPOT_CLIENT_ID.to_string()),

FWIW, I don't think the API changes should be handled by spotify_player but rspotify (see ramsayleung/rspotify#550). spotify_player will handle the API integration layer not API request construction layer which should be handled by rspotify

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants