[GH-ISSUE #36] 404 during each processing of playlists #22

Closed
opened 2026-02-27 20:07:44 +03:00 by kerem · 4 comments
Owner

Originally created by @tomballgithub on GitHub (Feb 15, 2026).
Original GitHub issue: https://github.com/misiektoja/spotify_profile_monitor/issues/36

I am seeing this with Cookie mode:

* Error while processing playlist [ https://open.spotify.com/playlist/37i9dQZF1DX4E3UdUs7fUx?si=1 ], skipping for now: 404 Client Error: Not Found for url: https://api.spotify.com/v1/playlists/37i9dQZF1DX4E3UdUs7fUx?fields=name,description,owner,followers,external_urls,tracks.total,images

anytime all playlists are processed for changes. This includes at startup and periodically.

It looks like the problem is that spotify_process_public_playlists() calls spotify_get_playlist_info() with presumably effective_get_tracks = False because this is a Spotify-curated playlist.

get_tracks leads to these urls:

        url1 = f"https://api.spotify.com/v1/playlists/{playlist_id}?fields=name,description,owner,followers,external_urls,tracks.total,images"
        url2 = f"https://api.spotify.com/v1/playlists/{playlist_id}/tracks?fields=next,total,items(added_at)"

and URL1 is the offender causing the 404.

Originally created by @tomballgithub on GitHub (Feb 15, 2026). Original GitHub issue: https://github.com/misiektoja/spotify_profile_monitor/issues/36 I am seeing this with Cookie mode: `* Error while processing playlist [ https://open.spotify.com/playlist/37i9dQZF1DX4E3UdUs7fUx?si=1 ], skipping for now: 404 Client Error: Not Found for url: https://api.spotify.com/v1/playlists/37i9dQZF1DX4E3UdUs7fUx?fields=name,description,owner,followers,external_urls,tracks.total,images` anytime all playlists are processed for changes. This includes at startup and periodically. It looks like the problem is that `spotify_process_public_playlists()` calls `spotify_get_playlist_info()` with presumably `effective_get_tracks = False` because this is a Spotify-curated playlist. get_tracks leads to these urls: ``` url1 = f"https://api.spotify.com/v1/playlists/{playlist_id}?fields=name,description,owner,followers,external_urls,tracks.total,images" url2 = f"https://api.spotify.com/v1/playlists/{playlist_id}/tracks?fields=next,total,items(added_at)" ``` and URL1 is the offender causing the 404.
kerem closed this issue 2026-02-27 20:07:44 +03:00
Author
Owner

@misiektoja commented on GitHub (Feb 15, 2026):

Yes, it is the same in both cookie and client modes. It appears to be a result of the changes recently announced by Spotify. This means we can no longer fetch details of Spotify-curated playlists via the /v1/playlists endpoint.

I added graceful handling for such playlists. They are marked as [ RESTRICTED ] and we can now only track the addition or removal of these playlists and changes to their names and likes.

<!-- gh-comment-id:3904940271 --> @misiektoja commented on GitHub (Feb 15, 2026): Yes, it is the same in both cookie and client modes. It appears to be a result of the changes recently announced by Spotify. This means we can no longer fetch details of Spotify-curated playlists via the `/v1/playlists` endpoint. I added graceful handling for such playlists. They are marked as `[ RESTRICTED ]` and we can now only track the addition or removal of these playlists and changes to their names and likes.
Author
Owner

@tomballgithub commented on GitHub (Feb 16, 2026):

It's working. The duplicate 'ignored' and 'restricted' may be unnecessary. Given that all you are looking at is basic stuff, the 'ignore' feather for this no longer seems necessary, except that it's work to remove it. This was added originally because the number of likes was constantly triggering updates.

- 'Afternoon Acoustic' [ IGNORED ] [ RESTRICTED ]
[ https://open.spotify.com/playlist/37i9dQZF1DX4E3UdUs7fUx?si=1 ]
[ likes: 2031658 ]
[ owner: Spotify ]
[ metadata source: profile-view only ]
<!-- gh-comment-id:3905806910 --> @tomballgithub commented on GitHub (Feb 16, 2026): It's working. The duplicate 'ignored' and 'restricted' may be unnecessary. Given that all you are looking at is basic stuff, the 'ignore' feather for this no longer seems necessary, except that it's work to remove it. This was added originally because the number of likes was constantly triggering updates. ``` - 'Afternoon Acoustic' [ IGNORED ] [ RESTRICTED ] [ https://open.spotify.com/playlist/37i9dQZF1DX4E3UdUs7fUx?si=1 ] [ likes: 2031658 ] [ owner: Spotify ] [ metadata source: profile-view only ] ```
Author
Owner

@misiektoja commented on GitHub (Feb 16, 2026):

With the current code, it can still report the changed number of likes for those playlists if IGNORE_SPOTIFY_PLAYLISTS is set to False. [ IGNORED ] is only used to indicate the ignored playlists, which can also come via PLAYLISTS_TO_SKIP_FILE, so I think it still brings some value. [ RESTRICTED ] only indicates we cannot grab all the details, like the number of songs, specific tracks and creation/update date.

<!-- gh-comment-id:3905832242 --> @misiektoja commented on GitHub (Feb 16, 2026): With the current code, it can still report the changed number of likes for those playlists if `IGNORE_SPOTIFY_PLAYLISTS` is set to `False`. `[ IGNORED ]` is only used to indicate the ignored playlists, which can also come via `PLAYLISTS_TO_SKIP_FILE`, so I think it still brings some value. `[ RESTRICTED ]` only indicates we cannot grab all the details, like the number of songs, specific tracks and creation/update date.
Author
Owner

@tomballgithub commented on GitHub (Feb 16, 2026):

Working in the dev build with fix

<!-- gh-comment-id:3905845373 --> @tomballgithub commented on GitHub (Feb 16, 2026): Working in the dev build with fix
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/spotify_profile_monitor#22
No description provided.