/
/
/
1{
2 "config_entries": {
3 "server_name": {
4 "label": "Server name",
5 "description": "The name of this Music Assistant instance, shown in the UI and announced on the network (e.g. Sendspin). \nUseful when running multiple servers on the same network."
6 },
7 "auth_allow_self_registration": {
8 "label": "Allow User Self-Registration",
9 "description": "Allow users to create accounts via Home Assistant OAuth."
10 },
11 "base_url": {
12 "label": "Internal URL",
13 "description": "The URL that Music Assistant shares with devices and apps on your local network. \nThe default \"auto\" automatically resolves to the server's primary IP address and the configured port at startup. \nOverride this in advanced scenarios where for example you're running the webserver behind a reverse proxy."
14 },
15 "external_url": {
16 "label": "External URL",
17 "description": "The URL where Music Assistant can be reached from outside your local network, for example through a reverse proxy. \nLeave empty if this server is not reachable from the internet."
18 },
19 "bind_port": {
20 "label": "[%key:common::config_entries::bind_port::label%]",
21 "description": "The TCP port to run the webserver."
22 },
23 "webserver_warn": {
24 "label": "Please note that the webserver is by default unencrypted. Never ever expose the webserver directly to the internet! \n\nEnable SSL below or use a reverse proxy or VPN to secure access. \n\nAs an alternative, consider using the Remote Access feature which secures access to your Music Assistant instance without the need to expose your webserver directly."
25 },
26 "ssl_inactive_warn": {
27 "label": "SSL/TLS is enabled, but the certificate could not be loaded, so the webserver is still running unencrypted. \n\nCheck the certificate and private key below and use the Verify button to test them. The webserver switches to HTTPS as soon as a valid certificate is saved."
28 },
29 "enable_ssl": {
30 "label": "Enable SSL/TLS",
31 "description": "Enable HTTPS by providing an SSL certificate and private key. \nThis encrypts all communication with the webserver."
32 },
33 "ssl_certificate": {
34 "label": "SSL Certificate",
35 "description": "Provide your SSL certificate in PEM format. You can either:\n- Paste the full contents of your certificate file, or\n- Enter an absolute file path (e.g., /ssl/fullchain.pem)\n\nThis should include the full certificate chain if applicable.\nBoth RSA and ECDSA certificates are supported."
36 },
37 "ssl_private_key": {
38 "label": "SSL Private Key",
39 "description": "Provide your SSL private key in PEM format. You can either:\n- Paste the full contents of your private key file, or\n- Enter an absolute file path (e.g., /ssl/privkey.pem)\n\nBoth RSA and ECDSA keys are supported. The key must be unencrypted.\nThis is securely encrypted and stored."
40 },
41 "verify_ssl": {
42 "label": "Verify SSL Certificate",
43 "description": "Test your certificate and private key to verify they are valid and match each other.",
44 "action_label": "Verify"
45 },
46 "bind_ip": {
47 "label": "[%key:common::config_entries::bind_ip::label%]",
48 "description": "Bind the (web)server to this specific interface. \nUse 0.0.0.0 to bind to all interfaces (both IPv4 and IPv6). \nSet this address for example to a docker-internal network, when you are running a reverse proxy to enhance security and protect outside access to the webinterface and API. \n\nThis is an advanced setting that should normally not be adjusted in regular setups."
49 }
50 },
51 "manifest": {
52 "name": "Webserver",
53 "description": "Configuration of the webserver and API"
54 },
55 "errors": {
56 "ssl_verification_failed": "Certificate verification failed: {0}"
57 }
58}
59