Navidrome Daily: Playing Nice With External Providers
Two related pull requests overhaul how Navidrome talks to external services like ListenBrainz and Last.fm — one adds proper identification headers, the other teaches the scrobbler to actually respect rate limits instead of hammering providers during outages.
Duration: PT2M22S
Episode overview
This episode is a short developer briefing from Navidrome Daily.
It explains recent repository work in plain language.
- Show: Navidrome Daily
- Published: 2026-08-25T10:01:25Z
- Audio duration: PT2M22S
Transcript excerpt
This excerpt keeps the crawler page concise. Listen to the episode or use the RSS feed for the full update.
Good morning, it's August 25th, 2026, and this is Navidrome Daily.
The big story today is Navidrome getting a better citizen on the network. Two pull requests, working together, change how the server behaves toward external metadata and scrobbling providers.
First, PR 6020 from mintsoft, merged yesterday afternoon. ListenBrainz asked Navidrome to identify itself properly so it can be told apart from generic bots when providers need to block abusive traffic. The fix introduces a shared HTTP client factory in a new utilities package that stamps a Navidrome user agent onto…
That groundwork sets up the second, larger change: PR 6028 from deluan, still under review with thirteen comments. This teaches Navidrome to back off when a provider explicitly asks it to, instead of retrying on every play. A new retry-later error type carries an optional delay. ListenBrainz's rate-limit response…
Together, these two changes point at the same underlying theme: respecting the terms external services set, both in how Navidrome identifies itself and how it responds when told to slow down. That matters for reliability — fewer wasted requests, less risk of getting rate-limited or blocked outright.
Two…
Nearby episodes from Navidrome Daily
- Natural Sorting Gets Hardened, Not Just Shipped
- Weekly Recap - Taming External Load and Client Compatibility
- Auth Overhaul and a Concurrency Fix
- Taming the Artwork Backfill
- When Output Doesn't Match What You Promised
- Data Integrity Meets Client Compatibility
- Trust the Stored State
- Playlist Sync Bug Squashed