[GH-ISSUE #895] Spotify player fails to authenticate #539

Closed
opened 2026-03-02 23:48:30 +03:00 by kerem · 2 comments
Owner

Originally created by @sswtshoo on GitHub (Dec 23, 2025).
Original GitHub issue: https://github.com/aome510/spotify-player/issues/895

I opened spotify player after a week, but it couldn't start playback. It would only show me the feed from the cache.

So I did a fresh install of spotify player using homebrew, but the issues still persists.

Running spotify_player authenticate would redirect me to spotify's auth page, but the app would still be in its null state.

The credentials get stored in ~/.cache/spotify-player/credentials.json.

Here is log:

2025-12-23T13:55:33.501387Z INFO spotify_player: Configurations: Configs { app_config: AppConfig { theme: "dracula", client_id: None, client_id_command: None, client_port: 8080, login_redirect_uri: "http://127.0.0.1:8989/login", log_folder: Some("/Users/saswat/.cache/spotify-player"), player_event_hook_command: None, playback_format: "{status} {track} • {artists} {liked}\n{album} • {genres}\n{metadata}", playback_metadata_fields: ["repeat", "shuffle", "volume", "device"], notify_format: NotifyFormat { summary: "{track} • {artists}", body: "{album}" }, notify_timeout_in_secs: 0, tracks_playback_limit: 50, proxy: None, ap_port: None, app_refresh_duration_in_ms: 32, playback_refresh_duration_in_ms: 0, page_size_in_rows: 20, play_icon: "▶", pause_icon: "▌▌", liked_icon: "♥", border_type: Plain, progress_bar_type: Rectangle, progress_bar_position: Bottom, layout: LayoutConfig { library: LibraryLayoutConfig { playlist_percent: 40, album_percent: 40 }, playback_window_position: Top, playback_window_height: 6 }, genre_num: 2, cover_img_length: 9, cover_img_width: 5, cover_img_scale: 1.0, enable_media_control: false, enable_streaming: Always, enable_notify: true, enable_cover_image_cache: true, default_device: "spotify-player", device: DeviceConfig { name: "spotify-player", device_type: "speaker", volume: 70, bitrate: 320, audio_cache: false, normalization: false, autoplay: false }, notify_streaming_only: false, seek_duration_secs: 5, sort_artist_albums_by_type: false }, keymap_config: KeymapConfig { keymaps: [Keymap { key_sequence: KeySequence { keys: [None(Char('n'))] }, command: NextTrack }, Keymap { key_sequence: KeySequence { keys: [None(Char('p'))] }, command: PreviousTrack }, Keymap { key_sequence: KeySequence { keys: [None(Char('.'))] }, command: PlayRandom }, Keymap { key_sequence: KeySequence { keys: [None(Char(' '))] }, command: ResumePause }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('r'))] }, command: Repeat }, Keymap { key_sequence: KeySequence { keys: [Alt(Char('r'))] }, command: ToggleFakeTrackRepeatMode }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('s'))] }, command: Shuffle }, Keymap { key_sequence: KeySequence { keys: [None(Char('+'))] }, command: VolumeChange { offset: 5 } }, Keymap { key_sequence: KeySequence { keys: [None(Char('-'))] }, command: VolumeChange { offset: -5 } }, Keymap { key_sequence: KeySequence { keys: [None(Char('_'))] }, command: Mute }, Keymap { key_sequence: KeySequence { keys: [None(Char('>'))] }, command: SeekForward { duration: None } }, Keymap { key_sequence: KeySequence { keys: [None(Char('<'))] }, command: SeekBackward { duration: None } }, Keymap { key_sequence: KeySequence { keys: [None(Enter)] }, command: ChooseSelected }, Keymap { key_sequence: KeySequence { keys: [None(Char('r'))] }, command: RefreshPlayback }, Keymap { key_sequence: KeySequence { keys: [None(Char('/'))] }, command: Search }, Keymap { key_sequence: KeySequence { keys: [None(Char('z'))] }, command: Queue }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('z'))] }, command: AddSelectedItemToQueue }, Keymap { key_sequence: KeySequence { keys: [None(Char('Z'))] }, command: AddSelectedItemToQueue }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('g'))] }, command: JumpToHighlightTrackInContext }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char(' '))] }, command: ShowActionsOnSelectedItem }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('a'))] }, command: ShowActionsOnSelectedItem }, Keymap { key_sequence: KeySequence { keys: [None(Char('a'))] }, command: ShowActionsOnCurrentTrack }, Keymap { key_sequence: KeySequence { keys: [None(Char('R'))] }, command: RestartIntegratedClient }, Keymap { key_sequence: KeySequence { keys: [None(Tab)] }, command: FocusNextWindow }, Keymap { key_sequence: KeySequence { keys: [None(BackTab)] }, command: FocusPreviousWindow }, Keymap { key_sequence: KeySequence { keys: [None(Char('T'))] }, command: SwitchTheme }, Keymap { key_sequence: KeySequence { keys: [None(Char('D'))] }, command: SwitchDevice }, Keymap { key_sequence: KeySequence { keys: [None(Char('u')), None(Char('p'))] }, command: BrowseUserPlaylists }, Keymap { key_sequence: KeySequence { keys: [None(Char('u')), None(Char('a'))] }, command: BrowseUserFollowedArtists }, Keymap { key_sequence: KeySequence { keys: [None(Char('u')), None(Char('A'))] }, command: BrowseUserSavedAlbums }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char(' '))] }, command: CurrentlyPlayingContextPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('t'))] }, command: TopTrackPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('r'))] }, command: RecentlyPlayedTrackPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('y'))] }, command: LikedTrackPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('L'))] }, command: LyricsPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('l'))] }, command: LyricsPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('l'))] }, command: LibraryPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('s'))] }, command: SearchPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('b'))] }, command: BrowsePage }, Keymap { key_sequence: KeySequence { keys: [None(Backspace)] }, command: PreviousPage }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('q'))] }, command: PreviousPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('O'))] }, command: OpenSpotifyLinkFromClipboard }, Keymap { key_sequence: KeySequence { keys: [None(Char('?'))] }, command: OpenCommandHelp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('h'))] }, command: OpenCommandHelp }, Keymap { key_sequence: KeySequence { keys: [None(Char('q'))] }, command: Quit }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('c'))] }, command: Quit }, Keymap { key_sequence: KeySequence { keys: [None(Esc)] }, command: ClosePopup }, Keymap { key_sequence: KeySequence { keys: [None(Char('j'))] }, command: SelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('n'))] }, command: SelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [None(Down)] }, command: SelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [None(Char('k'))] }, command: SelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('p'))] }, command: SelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [None(Up)] }, command: SelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [None(PageUp)] }, command: PageSelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('b'))] }, command: PageSelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [None(PageDown)] }, command: PageSelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('f'))] }, command: PageSelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('g'))] }, command: SelectFirstOrScrollToTop }, Keymap { key_sequence: KeySequence { keys: [None(Home)] }, command: SelectFirstOrScrollToTop }, Keymap { key_sequence: KeySequence { keys: [None(Char('G'))] }, command: SelectLastOrScrollToBottom }, Keymap { key_sequence: KeySequence { keys: [None(End)] }, command: SelectLastOrScrollToBottom }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('t'))] }, command: SortTrackByTitle }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('a'))] }, command: SortTrackByArtists }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('A'))] }, command: SortTrackByAlbum }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('d'))] }, command: SortTrackByDuration }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('D'))] }, command: SortTrackByAddedDate }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('r'))] }, command: ReverseTrackOrder }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('l')), None(Char('a'))] }, command: SortLibraryAlphabetically }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('l')), None(Char('r'))] }, command: SortLibraryByRecent }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('k'))] }, command: MovePlaylistItemUp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('j'))] }, command: MovePlaylistItemDown }, Keymap { key_sequence: KeySequence { keys: [None(Char('N'))] }, command: CreatePlaylist }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('c'))] }, command: JumpToCurrentTrackInContext }], actions: [] }, theme_config: ThemeConfig { themes: [Theme { name: "default", palette: Palette { background: None, foreground: None, black: Color { color: Black }, blue: Color { color: Blue }, cyan: Color { color: Cyan }, green: Color { color: Green }, magenta: Color { color: Magenta }, red: Color { color: Red }, white: Color { color: Gray }, yellow: Color { color: Yellow }, bright_black: Color { color: DarkGray }, bright_white: Color { color: White }, bright_red: Color { color: LightRed }, bright_magenta: Color { color: LightMagenta }, bright_green: Color { color: LightGreen }, bright_cyan: Color { color: LightCyan }, bright_blue: Color { color: LightBlue }, bright_yellow: Color { color: LightYellow } }, component_style: ComponentStyle { block_title: None, border: None, playback_status: None, playback_track: None, playback_artists: None, playback_album: None, playback_genres: None, playback_metadata: None, playback_progress_bar: None, playback_progress_bar_unfilled: None, current_playing: None, page_desc: None, playlist_desc: None, table_header: None, selection: None, secondary_row: None, like: None, lyrics_played: None, lyrics_playing: None } }] }, cache_folder: "/Users/saswat/.cache/spotify-player" } 2025-12-23T13:55:33.515686Z INFO librespot_oauth: OAuth server listening on 127.0.0.1:8989 2025-12-23T13:55:36.119597Z INFO spotify_player::streaming: Application's connect configurations: ConnectConfig { name: "spotify-player", device_type: Speaker, is_group: false, initial_volume: 45875, disable_volume: false, volume_steps: 64 } 2025-12-23T13:55:36.121380Z INFO librespot_playback::mixer::softmixer: Mixing with softvol and volume control: Log(60.0) 2025-12-23T13:55:36.122243Z INFO spotify_player::streaming: Initializing a new integrated player with device_id=542c4cbc-b034-4db3-b81e-c2657bcc1dfc 2025-12-23T13:55:36.123247Z INFO spotify_player::streaming: Starting an integrated Spotify player using librespot's spirc protocol 2025-12-23T13:55:36.123311Z INFO librespot_playback::convert: Converting with ditherer: tpdf 2025-12-23T13:55:36.124202Z INFO librespot_playback::audio_backend::rodio: Using Rodio sink with format S16 and cpal host: CoreAudio 2025-12-23T13:55:36.214025Z INFO librespot_playback::audio_backend::rodio: Using audio device: Saswat’s AirPods Pro 2025-12-23T13:55:36.998157Z INFO librespot_core::session: Connecting to AP "ap-gae2.spotify.com:4070" 2025-12-23T13:55:38.119173Z INFO librespot_core::session: Authenticated as 'j6q78qpxm5x9zhv67lbzp0bwy' ! 2025-12-23T13:55:38.121768Z INFO librespot_core::session: Country: "IN" 2025-12-23T13:55:38.468338Z INFO spotify_player::streaming: New streaming connection has been established! 2025-12-23T13:55:38.468452Z INFO spotify_player::client: Used a new session for Spotify client. 2025-12-23T13:55:38.468688Z INFO spotify_player::token: Getting a new authentication token... 2025-12-23T13:55:38.468941Z INFO spotify_player::token: Got new token: Token { access_token: "BQDoti7G145K1GrsFJJHBc46PbZlQQV6iMe8JTdUevLA3OhPe81D0Tb6TwIF2tTmbSldZdTDzCp0zwEmLB_lBPRfo6gZ_h3VUW7bvkoCL8osUxX05yWnQ4MPb5Luumy7Wv2e1CifwlvpijmMB8bFUrbch7ApRZDsEkPI5h9E7QXtECYkPmkvOqUGC5Poxjbl3VQqoxlLHZazkZapbDIHVKTyfMWX4uX3QHdnH4Rz5qZHMH8EITSJthab5UPavyCcWYLo_Mn9j8qs5HB2usut3kwi5ZkjK-leeQ_YifMw2U2EkfFuBYAwQax9qdDnq96O4eMAzUsKPRrRboiUgFGaaFzF2AkpzxuL4QXJN9d8arQ3rk9brVhKF02HlxkXAZL4PTOMmpYLGPl9KD13qBKpn9bEnkeK-KGI0TCmL4aOFKACltyy", expires_in: TimeDelta { secs: 3600, nanos: 0 }, expires_at: Some(2025-12-23T14:55:38.468938Z), refresh_token: None, scopes: {} } 2025-12-23T13:55:38.469772Z INFO spotify_player: Starting a client socket at 127.0.0.1:8080 2025-12-23T13:55:38.762638Z ERROR client_request{request=GetUserSavedAlbums}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.766635Z ERROR client_request{request=GetUserPlaylists}: spotify_player::client::handlers: Failed to handle client request: failed to send a Spotify API request https://api.spotify.com/v1/me/playlists: { "error": { "status": 429, "message": "API rate limit exceeded" } } 2025-12-23T13:55:38.766767Z ERROR client_request{request=GetCurrentUser}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.772343Z ERROR client_request{request=GetUserFollowedArtists}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.805729Z ERROR client_request{request=GetUserSavedShows}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.812813Z ERROR client_request{request=GetUserSavedTracks}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.869013Z INFO librespot_core::spclient: Resolved "gae2-spclient.spotify.com:443" as spclient access point 2025-12-23T13:55:39.477862Z INFO librespot_connect::spirc: active device is <> with session <2s7T4PEss05GorJZSzwx6v> 2025-12-23T13:55:39.632954Z ERROR spotify_player::client: Failed to retrieve current playback: http error: status code 429 Too Many Requests 2025-12-23T13:55:39.639107Z ERROR spotify_player::client: Failed to retrieve current playback: http error: status code 429 Too Many Requests

OS: MacOS 26
Terminal: Ghostty
Version: 0.21.2

Originally created by @sswtshoo on GitHub (Dec 23, 2025). Original GitHub issue: https://github.com/aome510/spotify-player/issues/895 I opened spotify player after a week, but it couldn't start playback. It would only show me the feed from the cache. So I did a fresh install of spotify player using homebrew, but the issues still persists. Running `spotify_player authenticate` would redirect me to spotify's auth page, but the app would still be in its null state. The credentials get stored in ~/.cache/spotify-player/credentials.json. Here is log: ` 2025-12-23T13:55:33.501387Z INFO spotify_player: Configurations: Configs { app_config: AppConfig { theme: "dracula", client_id: None, client_id_command: None, client_port: 8080, login_redirect_uri: "http://127.0.0.1:8989/login", log_folder: Some("/Users/saswat/.cache/spotify-player"), player_event_hook_command: None, playback_format: "{status} {track} • {artists} {liked}\n{album} • {genres}\n{metadata}", playback_metadata_fields: ["repeat", "shuffle", "volume", "device"], notify_format: NotifyFormat { summary: "{track} • {artists}", body: "{album}" }, notify_timeout_in_secs: 0, tracks_playback_limit: 50, proxy: None, ap_port: None, app_refresh_duration_in_ms: 32, playback_refresh_duration_in_ms: 0, page_size_in_rows: 20, play_icon: "▶", pause_icon: "▌▌", liked_icon: "♥", border_type: Plain, progress_bar_type: Rectangle, progress_bar_position: Bottom, layout: LayoutConfig { library: LibraryLayoutConfig { playlist_percent: 40, album_percent: 40 }, playback_window_position: Top, playback_window_height: 6 }, genre_num: 2, cover_img_length: 9, cover_img_width: 5, cover_img_scale: 1.0, enable_media_control: false, enable_streaming: Always, enable_notify: true, enable_cover_image_cache: true, default_device: "spotify-player", device: DeviceConfig { name: "spotify-player", device_type: "speaker", volume: 70, bitrate: 320, audio_cache: false, normalization: false, autoplay: false }, notify_streaming_only: false, seek_duration_secs: 5, sort_artist_albums_by_type: false }, keymap_config: KeymapConfig { keymaps: [Keymap { key_sequence: KeySequence { keys: [None(Char('n'))] }, command: NextTrack }, Keymap { key_sequence: KeySequence { keys: [None(Char('p'))] }, command: PreviousTrack }, Keymap { key_sequence: KeySequence { keys: [None(Char('.'))] }, command: PlayRandom }, Keymap { key_sequence: KeySequence { keys: [None(Char(' '))] }, command: ResumePause }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('r'))] }, command: Repeat }, Keymap { key_sequence: KeySequence { keys: [Alt(Char('r'))] }, command: ToggleFakeTrackRepeatMode }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('s'))] }, command: Shuffle }, Keymap { key_sequence: KeySequence { keys: [None(Char('+'))] }, command: VolumeChange { offset: 5 } }, Keymap { key_sequence: KeySequence { keys: [None(Char('-'))] }, command: VolumeChange { offset: -5 } }, Keymap { key_sequence: KeySequence { keys: [None(Char('_'))] }, command: Mute }, Keymap { key_sequence: KeySequence { keys: [None(Char('>'))] }, command: SeekForward { duration: None } }, Keymap { key_sequence: KeySequence { keys: [None(Char('<'))] }, command: SeekBackward { duration: None } }, Keymap { key_sequence: KeySequence { keys: [None(Enter)] }, command: ChooseSelected }, Keymap { key_sequence: KeySequence { keys: [None(Char('r'))] }, command: RefreshPlayback }, Keymap { key_sequence: KeySequence { keys: [None(Char('/'))] }, command: Search }, Keymap { key_sequence: KeySequence { keys: [None(Char('z'))] }, command: Queue }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('z'))] }, command: AddSelectedItemToQueue }, Keymap { key_sequence: KeySequence { keys: [None(Char('Z'))] }, command: AddSelectedItemToQueue }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('g'))] }, command: JumpToHighlightTrackInContext }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char(' '))] }, command: ShowActionsOnSelectedItem }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('a'))] }, command: ShowActionsOnSelectedItem }, Keymap { key_sequence: KeySequence { keys: [None(Char('a'))] }, command: ShowActionsOnCurrentTrack }, Keymap { key_sequence: KeySequence { keys: [None(Char('R'))] }, command: RestartIntegratedClient }, Keymap { key_sequence: KeySequence { keys: [None(Tab)] }, command: FocusNextWindow }, Keymap { key_sequence: KeySequence { keys: [None(BackTab)] }, command: FocusPreviousWindow }, Keymap { key_sequence: KeySequence { keys: [None(Char('T'))] }, command: SwitchTheme }, Keymap { key_sequence: KeySequence { keys: [None(Char('D'))] }, command: SwitchDevice }, Keymap { key_sequence: KeySequence { keys: [None(Char('u')), None(Char('p'))] }, command: BrowseUserPlaylists }, Keymap { key_sequence: KeySequence { keys: [None(Char('u')), None(Char('a'))] }, command: BrowseUserFollowedArtists }, Keymap { key_sequence: KeySequence { keys: [None(Char('u')), None(Char('A'))] }, command: BrowseUserSavedAlbums }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char(' '))] }, command: CurrentlyPlayingContextPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('t'))] }, command: TopTrackPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('r'))] }, command: RecentlyPlayedTrackPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('y'))] }, command: LikedTrackPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('L'))] }, command: LyricsPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('l'))] }, command: LyricsPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('l'))] }, command: LibraryPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('s'))] }, command: SearchPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('b'))] }, command: BrowsePage }, Keymap { key_sequence: KeySequence { keys: [None(Backspace)] }, command: PreviousPage }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('q'))] }, command: PreviousPage }, Keymap { key_sequence: KeySequence { keys: [None(Char('O'))] }, command: OpenSpotifyLinkFromClipboard }, Keymap { key_sequence: KeySequence { keys: [None(Char('?'))] }, command: OpenCommandHelp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('h'))] }, command: OpenCommandHelp }, Keymap { key_sequence: KeySequence { keys: [None(Char('q'))] }, command: Quit }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('c'))] }, command: Quit }, Keymap { key_sequence: KeySequence { keys: [None(Esc)] }, command: ClosePopup }, Keymap { key_sequence: KeySequence { keys: [None(Char('j'))] }, command: SelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('n'))] }, command: SelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [None(Down)] }, command: SelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [None(Char('k'))] }, command: SelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('p'))] }, command: SelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [None(Up)] }, command: SelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [None(PageUp)] }, command: PageSelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('b'))] }, command: PageSelectPreviousOrScrollUp }, Keymap { key_sequence: KeySequence { keys: [None(PageDown)] }, command: PageSelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('f'))] }, command: PageSelectNextOrScrollDown }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('g'))] }, command: SelectFirstOrScrollToTop }, Keymap { key_sequence: KeySequence { keys: [None(Home)] }, command: SelectFirstOrScrollToTop }, Keymap { key_sequence: KeySequence { keys: [None(Char('G'))] }, command: SelectLastOrScrollToBottom }, Keymap { key_sequence: KeySequence { keys: [None(End)] }, command: SelectLastOrScrollToBottom }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('t'))] }, command: SortTrackByTitle }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('a'))] }, command: SortTrackByArtists }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('A'))] }, command: SortTrackByAlbum }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('d'))] }, command: SortTrackByDuration }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('D'))] }, command: SortTrackByAddedDate }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('r'))] }, command: ReverseTrackOrder }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('l')), None(Char('a'))] }, command: SortLibraryAlphabetically }, Keymap { key_sequence: KeySequence { keys: [None(Char('s')), None(Char('l')), None(Char('r'))] }, command: SortLibraryByRecent }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('k'))] }, command: MovePlaylistItemUp }, Keymap { key_sequence: KeySequence { keys: [Ctrl(Char('j'))] }, command: MovePlaylistItemDown }, Keymap { key_sequence: KeySequence { keys: [None(Char('N'))] }, command: CreatePlaylist }, Keymap { key_sequence: KeySequence { keys: [None(Char('g')), None(Char('c'))] }, command: JumpToCurrentTrackInContext }], actions: [] }, theme_config: ThemeConfig { themes: [Theme { name: "default", palette: Palette { background: None, foreground: None, black: Color { color: Black }, blue: Color { color: Blue }, cyan: Color { color: Cyan }, green: Color { color: Green }, magenta: Color { color: Magenta }, red: Color { color: Red }, white: Color { color: Gray }, yellow: Color { color: Yellow }, bright_black: Color { color: DarkGray }, bright_white: Color { color: White }, bright_red: Color { color: LightRed }, bright_magenta: Color { color: LightMagenta }, bright_green: Color { color: LightGreen }, bright_cyan: Color { color: LightCyan }, bright_blue: Color { color: LightBlue }, bright_yellow: Color { color: LightYellow } }, component_style: ComponentStyle { block_title: None, border: None, playback_status: None, playback_track: None, playback_artists: None, playback_album: None, playback_genres: None, playback_metadata: None, playback_progress_bar: None, playback_progress_bar_unfilled: None, current_playing: None, page_desc: None, playlist_desc: None, table_header: None, selection: None, secondary_row: None, like: None, lyrics_played: None, lyrics_playing: None } }] }, cache_folder: "/Users/saswat/.cache/spotify-player" } 2025-12-23T13:55:33.515686Z INFO librespot_oauth: OAuth server listening on 127.0.0.1:8989 2025-12-23T13:55:36.119597Z INFO spotify_player::streaming: Application's connect configurations: ConnectConfig { name: "spotify-player", device_type: Speaker, is_group: false, initial_volume: 45875, disable_volume: false, volume_steps: 64 } 2025-12-23T13:55:36.121380Z INFO librespot_playback::mixer::softmixer: Mixing with softvol and volume control: Log(60.0) 2025-12-23T13:55:36.122243Z INFO spotify_player::streaming: Initializing a new integrated player with device_id=542c4cbc-b034-4db3-b81e-c2657bcc1dfc 2025-12-23T13:55:36.123247Z INFO spotify_player::streaming: Starting an integrated Spotify player using librespot's spirc protocol 2025-12-23T13:55:36.123311Z INFO librespot_playback::convert: Converting with ditherer: tpdf 2025-12-23T13:55:36.124202Z INFO librespot_playback::audio_backend::rodio: Using Rodio sink with format S16 and cpal host: CoreAudio 2025-12-23T13:55:36.214025Z INFO librespot_playback::audio_backend::rodio: Using audio device: Saswat’s AirPods Pro 2025-12-23T13:55:36.998157Z INFO librespot_core::session: Connecting to AP "ap-gae2.spotify.com:4070" 2025-12-23T13:55:38.119173Z INFO librespot_core::session: Authenticated as 'j6q78qpxm5x9zhv67lbzp0bwy' ! 2025-12-23T13:55:38.121768Z INFO librespot_core::session: Country: "IN" 2025-12-23T13:55:38.468338Z INFO spotify_player::streaming: New streaming connection has been established! 2025-12-23T13:55:38.468452Z INFO spotify_player::client: Used a new session for Spotify client. 2025-12-23T13:55:38.468688Z INFO spotify_player::token: Getting a new authentication token... 2025-12-23T13:55:38.468941Z INFO spotify_player::token: Got new token: Token { access_token: "BQDoti7G145K1GrsFJJHBc46PbZlQQV6iMe8JTdUevLA3OhPe81D0Tb6TwIF2tTmbSldZdTDzCp0zwEmLB_lBPRfo6gZ_h3VUW7bvkoCL8osUxX05yWnQ4MPb5Luumy7Wv2e1CifwlvpijmMB8bFUrbch7ApRZDsEkPI5h9E7QXtECYkPmkvOqUGC5Poxjbl3VQqoxlLHZazkZapbDIHVKTyfMWX4uX3QHdnH4Rz5qZHMH8EITSJthab5UPavyCcWYLo_Mn9j8qs5HB2usut3kwi5ZkjK-leeQ_YifMw2U2EkfFuBYAwQax9qdDnq96O4eMAzUsKPRrRboiUgFGaaFzF2AkpzxuL4QXJN9d8arQ3rk9brVhKF02HlxkXAZL4PTOMmpYLGPl9KD13qBKpn9bEnkeK-KGI0TCmL4aOFKACltyy", expires_in: TimeDelta { secs: 3600, nanos: 0 }, expires_at: Some(2025-12-23T14:55:38.468938Z), refresh_token: None, scopes: {} } 2025-12-23T13:55:38.469772Z INFO spotify_player: Starting a client socket at 127.0.0.1:8080 2025-12-23T13:55:38.762638Z ERROR client_request{request=GetUserSavedAlbums}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.766635Z ERROR client_request{request=GetUserPlaylists}: spotify_player::client::handlers: Failed to handle client request: failed to send a Spotify API request https://api.spotify.com/v1/me/playlists: { "error": { "status": 429, "message": "API rate limit exceeded" } } 2025-12-23T13:55:38.766767Z ERROR client_request{request=GetCurrentUser}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.772343Z ERROR client_request{request=GetUserFollowedArtists}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.805729Z ERROR client_request{request=GetUserSavedShows}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.812813Z ERROR client_request{request=GetUserSavedTracks}: spotify_player::client::handlers: Failed to handle client request: http error: status code 429 Too Many Requests 2025-12-23T13:55:38.869013Z INFO librespot_core::spclient: Resolved "gae2-spclient.spotify.com:443" as spclient access point 2025-12-23T13:55:39.477862Z INFO librespot_connect::spirc: active device is <> with session <2s7T4PEss05GorJZSzwx6v> 2025-12-23T13:55:39.632954Z ERROR spotify_player::client: Failed to retrieve current playback: http error: status code 429 Too Many Requests 2025-12-23T13:55:39.639107Z ERROR spotify_player::client: Failed to retrieve current playback: http error: status code 429 Too Many Requests ` OS: MacOS 26 Terminal: Ghostty Version: 0.21.2
kerem 2026-03-02 23:48:30 +03:00
  • closed this issue
  • added the
    bug
    label
Author
Owner

@aaronshahriari commented on GitHub (Dec 23, 2025):

I am also unable to authenticate. I was authenticated prior, but now there is not connection to any Spotify services via the TUI.

<!-- gh-comment-id:3687033137 --> @aaronshahriari commented on GitHub (Dec 23, 2025): I am also unable to authenticate. I was authenticated prior, but now there is not connection to any Spotify services via the TUI.
Author
Owner

@aome510 commented on GitHub (Dec 23, 2025):

See https://github.com/aome510/spotify-player/issues/890. The logs didn't say it's an authentication issue

<!-- gh-comment-id:3687043537 --> @aome510 commented on GitHub (Dec 23, 2025): See https://github.com/aome510/spotify-player/issues/890. The logs didn't say it's an authentication issue
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-player#539
No description provided.