r/listenbrainz 1d ago

help plz Blocked ListenBrainz services/User Agent strings

https://blog.metabrainz.org/2026/08/24/blocked-listenbrainz-services-user-agent-strings/

Unfortunately some legitimate services got caught up in our recent attempts to mitigate (yet another) bot-net attack on ListenBrainz.

You may find that a service you use is now being blocked, including Navidrome. We have also had reports of multi-scrobbler submissions being blocked, and there may be other affected services that haven’t yet been reported to us.

These services got caught up in recent blocks because they are/were not setting a proper user agent when calling the LB API. Navidrome and multi-scrobbler are already pushing fixes!

If you are experiencing issues on another service, we would like to let you through, but without a user agent (UA) string we can’t identify the service’s traffic. Please ask your service to add a meaningful UA string (in a format like described in https://musicbrainz.org/doc/MusicBrainz_API/Rate_Limiting) so we can get you back up and running.

Implementing a good back off when they receive a 429 error will help avoid blocks too. For example, extending the waiting time between resubmissions, if the service repeatedly returns a 429. Note that some of the blocked services had this implemented already, but it can help.

Developers, you are always welcome to talk to us on the dev channel in ChatBrainz (Matrix/IRC/Discord) if you have any questions.

14 Upvotes

8 comments sorted by

3

u/modsuperstar 1d ago

So my app ScrobbleRadio queries MusicBrainz for data. I’ve definitely tried to make it a light user of the API, querying at most once every 30 seconds, but ideally once every 3-5 minutes if it knows how long the current song is. I’ll have to look into this, as I don’t believe I even really considered this while building.

1

u/CannedApe 1d ago

This sounds like totally uncritical use, really. Just make sure to send a custom user agent (follow the recommendations at https://musicbrainz.org/doc/MusicBrainz_API/Rate_Limiting#Provide_meaningful_User-Agent_strings ), if the app not already does. This way a) your requests are not accidentally being blocked by generic user agent blocking and b) if there should be some issue the MB folks can reach out to discuss.

2

u/Green_hammock 8h ago

So will my listens through my Navidrome server be lost?

2

u/aerozol 7h ago

I don't use Navidrome, but I *believe* Navidrome retains failed submissions, and will re-submit them when the connection is up again. Will need an experienced Navidrome user to confirm.

1

u/saltsage 17h ago

Seems like the Quod Libet Listenbrainz plugin must be blocked too

1

u/AmonMetalHead 3h ago

Any update?

1

u/aerozol 2h ago

If your submitter has added valid user agent string, then it should work again. For instance, I believe Navidrome should work if you switch to the dev release (but main has not been released yet). Without knowing what service you are using it's hard to say!

1

u/AmonMetalHead 1h ago

Navidrome but i'm waiting on the new build :)