General#

General configuration for Prowlarr are separated by category.

prowlarr:
  settings:
    general:
      host:
        bind_address: "*"
        port: 9696
        url_base: null
        use_ssl: false
        instance_name: "Prowlarr (Buildarr Example)"
      security:
        authentication: "none"
      proxy:
        enable: false
      logging:
        log_level: "INFO"
      analytics:
        send_anonymous_usage_data: true
      updates:
        branch: "master"
        automatic: false
        mechanism: "docker"
      backup:
        folder: "Backups"
        interval: 7
        retention: 28

Some of the settings may affect Buildarr's ability to connect with the Prowlarr instance. Take care when changing these settings.

Host#

Prowlarr instance connection and name configuration.

Many of these settings configure Prowlarr's external connection interface. If they are changed, the settings Buildarr uses to connect with this Prowlarr instance may need to be updated, so take care when modifying them.

Changing any of these settings require a restart of Prowlarr to take effect.

bind_address: Union[Literal['*'], IPv4Address] = '*' class-attribute instance-attribute #

Bind address for Prowlarr. Set to an IPv4 address bound to a local interface or * to bind on all interfaces.

Unless you run Prowlarr directly on a host machine (i.e. not via Docker) and want Prowlarr to only be available on a specific network or interface, this generally should be left untouched.

port: Port = 9696 class-attribute instance-attribute #

Unencrypted (HTTP) listening port for Prowlarr.

If Prowlarr is being run via Docker in the default bridge mode, this setting shouldn't be changed. Instead, change the external port it is bound to using --publish <port number>:9696.

ssl_port: Port = 6969 class-attribute instance-attribute #

Encrypted (HTTPS) listening port for Prowlarr.

If Prowlarr is being run via Docker in the default bridge mode, this setting shouldn't be changed. Instead, change the external port it is bound to using --publish <port number>:6969.

use_ssl: bool = False class-attribute instance-attribute #

Enable the encrypted (HTTPS) listening port in Prowlarr.

Instead of enabling HTTPS directly on Prowlarr, it is recommended to put Prowlarr behind a HTTPS-terminating reverse proxy such as Nginx, Caddy or Traefik.

url_base: Optional[str] = None class-attribute instance-attribute #

Add a prefix to all Prowlarr URLs, e.g. http://localhost:9696/<url_base>/settings/general.

Generally used to accommodate reverse proxies where Prowlarr is assigned to a subfolder, e.g. https://example.com/prowlarr.

instance_name: NonEmptyStr = 'Prowlarr' class-attribute instance-attribute #

Instance name in the browser tab and in syslog.

Security#

Prowlarr instance security (authentication) settings.

authentication: AuthenticationMethod = AuthenticationMethod.form class-attribute instance-attribute #

Authentication method for logging into Prowlarr.

Values:

  • basic - Authentication using HTTP basic auth (browser popup)
  • form/forms - Authentication using a login page
  • external - External authentication using a reverse proxy (set to disable authentication)

Warning

When the authentication method is set to external, authentication is disabled within Prowlarr itself.

Make sure access to Prowlarr is secured, either by using a reverse proxy with forward authentication configured, or not exposing Prowlarr to the public Internet.

Requires a restart of Prowlarr to take effect.

authentication_required: AuthenticationRequired = AuthenticationRequired.enabled class-attribute instance-attribute #

Authentication requirement settings for accessing Prowlarr.

Values:

  • enabled - Enabled
  • local-disabled - Disabled for Local Addresses
username: Optional[str] = None class-attribute instance-attribute #

Username for the administrator user. Required if authentication is enabled.

Requires a restart of Prowlarr to take effect.

password: Optional[SecretStr] = None class-attribute instance-attribute #

Password for the administrator user. Required if authentication is enabled.

Requires a restart of Prowlarr to take effect.

certificate_validation: CertificateValidation = CertificateValidation.enabled class-attribute instance-attribute #

Change how strict HTTPS certification validation is. Do not change unless you understand the risks.

Values:

  • enabled - Validate HTTPS certificates for all hosts
  • local-disabled - Disable HTTPS certificate validation for hosts on the local network
  • disabled - Disable HTTPS certificate validation completely

Proxy#

Proxy configuration for Prowlarr.

enable: bool = False class-attribute instance-attribute #

Use a proxy server to access the Internet.

proxy_type: ProxyType = ProxyType.http class-attribute instance-attribute #

Type of proxy to connect to.

Values:

  • http - HTTP(S) proxy
  • socks4 - SOCKSv4 proxy
  • socks5 - SOCKSv5 proxy (Tor is supported)
hostname: Optional[str] = None class-attribute instance-attribute #

Proxy server hostname.

Required if using a proxy is enabled.

port: Port = 8080 class-attribute instance-attribute #

Proxy server access port.

username: Optional[str] = None class-attribute instance-attribute #

Username to authenticate with. Only enter if authentication is required by the proxy.

password: Optional[SecretStr] = None class-attribute instance-attribute #

Password for the proxy user. Only enter if authentication is required by the proxy.

ignored_addresses: Set[NonEmptyStr] = set() class-attribute instance-attribute #

List of domains/addresses which bypass the proxy. Wildcards (*) are supported.

bypass_proxy_for_local_addresses: bool = True class-attribute instance-attribute #

Do not use the proxy to access local network addresses.

Logging#

Logging configuration for the Prowlarr application.

log_level: ProwlarrLogLevel = ProwlarrLogLevel.INFO class-attribute instance-attribute #

Verbosity of logging output.

Values:

  • INFO - Standard log output
  • DEBUG - Debugging log output
  • TRACE - Trace diagnostics log output

Analytics#

Configuration of analytics and telemetry from within Prowlarr.

send_anonymous_usage_data: bool = True class-attribute instance-attribute #

Send anonymous usage and error information to Prowlarr's servers.

This includes information on your browser, which Prowlarr Web UI pages you use, error reporting and OS/runtime versions. This information is reportedly used to prioritise features and bug fixes.

Requires a restart of Prowlarr to take effect.

Updates#

Settings for updating Prowlarr.

branch: NonEmptyStr = 'master' class-attribute instance-attribute #

Branch used by the external update mechanism. Changing this value has no effect on Docker installations.

If unsure, leave this undefined in Buildarr and use the value already set in Prowlarr.

automatic: bool = False class-attribute instance-attribute #

Automatically download and install updates. Manual updates can still be performed from System -> Updates.

This option must be left set to false on Docker installations.

mechanism: UpdateMechanism = UpdateMechanism.docker class-attribute instance-attribute #

Set the mechanism for updating Prowlarr. Must be set to docker on Docker installations.

Values:

  • builtin - Prowlarr built-in updater mechanism
  • script - Use the configured update script
  • external - External update mechanism
  • apt - Debian APT package
  • docker - Docker image
script_path: Optional[str] = None class-attribute instance-attribute #

Path to a custom script that takes an extracted update package and handles the remainder of the update process.

Required if mechanism is set to script.

Backup#

Settings for Prowlarr automatic backups.

folder: NonEmptyStr = 'Backups' class-attribute instance-attribute #

Folder to backup Prowlarr data to.

Relative paths will be under Prowlarr's AppData directory.

interval: int = Field(7, ge=1, le=7) class-attribute instance-attribute #

Interval between automatic backups, in days.

Must be set somewhere between 1 and 7 days.

retention: int = Field(28, ge=1, le=90) class-attribute instance-attribute #

Retention period for backups, in days. Backups older than the retention period will be cleaned up automatically.

Must be set somewhere between 1 and 90 days.