···99import CodeBlock from '@theme/CodeBlock';
1010import ListenbrainzEndpointConfig from '!!raw-loader!@site/../config/endpointlz.json.example';
11111212-This Source enables multi-scrobbler to accept scrobbles from outside applications as if it was a Listenbrainz server.
1212+This Source enables multi-scrobbler to accept scrobbles from outside applications **as if it was a Listenbrainz server.**
1313+1414+If your service/player has a "Scrobble to Listenbrainz" feature and there is an option to set the Listenbrainz URL then multi-scrobbler can accept scrobbles from that service/player by imitating a real Listenbrainz server.
13151416:::tip[Other Uses]
1517···1719* To monitor and re-scrobble activity from your Listenbrainz account, create a [Listenbrainz (Source)](/configuration/sources/listenbrainz-source)
18201921:::
2222+2323+## Setup
20242125### URL
22262323-If a **slug** is **not** provided in configuration then multi-scrobbler will accept Listenbrainz scrobbles at
2727+In general, you should use one of the following as the **base URL** when configuring your application to scrobble to multi-scrobbler:
2828+2929+* `http://myMultiScrobblerIP:9078`
3030+* `http://myMultiScrobblerIP:9078/1/`
3131+3232+<DetailsAdmo type="tip" summary="Default Scrobble Submit URL">
3333+3434+If you are not using a [slug for multiple endpoints](#multiple-endpoints) then multi-scrobbler will accept Listenbrainz scrobbles at
24352536```
2637http://myMultiScrobblerIP:9078/1/submit-listens
2738```
28392929-which is the "standard" Listenbrainz server path for scrobbling.
4040+which is the **standard** Listenbrainz server path for scrobbling.
4141+4242+</DetailsAdmo>
30433131-In general, you should use `http://myMultiScrobblerIP:9078/1/` as the **base path** when configuring your application to scrobble to multi-scrobbler.
4444+<DetailsAdmo type="note" summary="Some Services Require HTTPS">
4545+4646+Some services that can scrobble to a custom Listenbrainz URL may require the URL to have a real domain (`example.com`) and/or use SSL (`https://`). In this case you should setup multi-scrobbler behind a reverse proxy to support this functionality. It is out of the scope of this project to do this solely within multi-scrobbler.
4747+4848+</DetailsAdmo>
4949+5050+### Token
5151+5252+Most Listenbrainz clients require a token (Authentication Token) to be provided during setup. This value can be anything you want, just make sure to use the same value for `token` in your multi-scrobbler configuration for the endpoint.
5353+5454+### Multiple Endpoints
5555+5656+If you are setting up multiple [Listenbrainz (Endpoint) Sources](/configuration/sources/listenbrainz-endpoint) MS can differentiate scrobbles based on [Token](#token) so that you can use the same endpoint for many users.
5757+5858+However, if you cannot configure multiple tokens for your scenario you may also use a URL **Slug** to tell MS which Source belongs to a specific user.
32593360<details>
34613535-<summary>URL Setup for Popular Apps</summary>
6262+<summary>Using a Slug</summary>
6363+6464+When a **slug** is defined in ENV/File config MS will listen for listenbrainz routes using the slug as a the route path. Example:
6565+6666+```
6767+LZE_SLUG=foobar
6868+```
6969+7070+MS will accept calls to
7171+7272+```
7373+http://myMultiScrobblerIP:9078/api/listenbrainz/foobar
7474+```
7575+7676+for scrobble submission.
7777+7878+</details>
7979+8080+## Setup for Popular Apps
36813737-##### Navidrome
8282+### Navidrome
8383+8484+<details>
38853986Set the [**ListenBrainz.BaseURL**](https://www.navidrome.org/docs/usage/configuration-options/#advanced-configuration) (env `ND_LISTENBRAINZ_BASEURL`) to `http://myMultiScrobblerIP:9078/1/`
40874188</details>
42894343-Use a slug only if you need to setup multiple Listenbrainz Endpoint sources and cannot use different tokens.
9090+### Music Assistant
44914545-If a slug is used then the URL will be:
9292+<details>
46934747-```
4848-http://myMultiScrobblerIP:9078/api/listenbrainz/mySlug
4949-```
5050-5151-:::note
5252- Some Listenbrainz applications may require custom Listenbrainz URLs to be a real domain (`example.com`) and/or use SSL (`https://`). In this case you should setup multi-scrobbler behind a reverse proxy to support this functionality. It is out of the scope of this project to do this solely within multi-scrobbler.
5353-:::
9494+[Music Assistant Docs](https://www.music-assistant.io/plugins/listenbrainz_scrobble/)
54955555-### Token
9696+* In your Music Assistant UI navigate to **Settings** -> **Plugins**
9797+* Click **Add a plugin**
9898+ * Add **ListenBrainz Scrobbler**
9999+* In the ListenBrainz Scrobbler configuration screen:
100100+ * User Token is the [Token](#token) you configured
101101+ * Toggle **Show advanced settings**
102102+ * Base URL is the [URL](#url) you can configured, or the equivalent of `http://myMultiScrobblerIP:9078` for your MS instance
103103+* Save the configuration and you are ready to scrobble
561045757-Most Listenbrainz clients require a token (Authentication Token) to be provided during setup. This value can be anything you want, just make sure to use the same value for `token` in your multi-scrobbler configuration for the endpoint.
105105+To troubleshoot any errors, and assuming you are using Home Assistant, view the Logs in the Music Assistant Add-ons. Please include these logs in any reported issue.
58106107107+</details>
5910860109## Configuration
61110