Skip to content

martinargalas/arr-stack-integration

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

78 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Arr Stack Integration

HACS version Home Assistant License: MIT Discord

Buy Me A Coffee

Join Discord

A Home Assistant custom integration that acts as a secure server-side proxy between the Arr Stack Card and your local media services.

Supported services

             


Why is this needed?

Browsers block direct API calls from a web page to local network services (CORS policy). This integration solves that by routing all requests through Home Assistant's own API — keeping your API keys secure on the server side and requiring HA authentication for every call.


Supported Services

Service Role Required
Radarr Movie library management ✅ Yes
Sonarr TV show library management ✅ Yes
Radarr 2 Second Radarr instance (e.g. 4K) Optional
Sonarr 2 Second Sonarr instance (e.g. 4K) Optional
qBittorrent Torrent download client Optional
Deluge Torrent download client Optional
rTorrent / ruTorrent Torrent download client Optional
SABnzbd Usenet download client Optional
NZBGet Usenet download client Optional
Overseerr / Jellyseerr Media discovery & requests Optional
Bazarr Subtitle management Optional
Plex Stream monitoring & playback control Optional
Jellyfin Stream monitoring & playback control (via HA integration — no config needed here) Optional
Emby Stream monitoring & playback control Optional
Kodi Stream monitoring & playback control (via HA integration — no config needed here) Optional
Tautulli Watch history, statistics & account sharing detection Optional
Jellystat Watch history and statistics Optional
Prowlarr Indexer management and search statistics Optional
Trakt Personalised movie & show recommendations Optional

Note: Plex, Jellyfin, and Kodi also require their official Home Assistant integrations to be installed and connected — Plex, Jellyfin, Kodi. The card uses these HA integrations for live stream detection. Emby does not have an official HA integration — configure it directly in Arr Stack instead.


Installation

Via HACS (recommended)

  1. Open HACS → Integrations
  2. Click the menu (top right) → Custom repositories
  3. Add https://github.com/martinargalas/arr-stack-integration — category Integration
  4. Search for Arr Stack Integration and install
  5. Restart Home Assistant
  6. Go to Settings → Devices & Services → + Add Integration
  7. Search for Arr Stack and follow the setup wizard

Manual

  1. Copy the custom_components/arr_stack/ folder to your HA /config/custom_components/ directory
  2. Restart Home Assistant
  3. Add the integration via Settings → Devices & Services

⚠️ After any change to the integration settings, restart Home Assistant for changes to take effect.


Setup Wizard

Setup starts with two steps that are always shown, followed by steps for the services you select.

Global Settings

Field Default Notes
Skip SSL certificate verification Off Enable if any of your services use a self-signed or untrusted certificate. Applies to all services at once.

Service Selection

Choose which optional services you want to configure. Only the selected steps will appear. Radarr and Sonarr are always configured — they are required for the card to work.

Toggle Services configured
Torrent clients qBittorrent, Deluge, rTorrent
Usenet clients SABnzbd, NZBGet
2nd instances Radarr 2, Sonarr 2
Bazarr Bazarr
Discovery Overseerr / Jellyseerr
Plex / Emby Plex, Emby
Streaming stats Tautulli, Jellystat
Prowlarr Prowlarr
Trakt Trakt

Media — Radarr + Sonarr (required)

Field Example
Radarr URL http://192.168.1.10:7878
Radarr API key Find in Radarr → Settings → General
Sonarr URL http://192.168.1.10:8989
Sonarr API key Find in Sonarr → Settings → General

Torrent clients — qBittorrent + Deluge + rTorrent (optional)

Field Example
qBittorrent URL http://192.168.1.10:8080
qBittorrent username admin
qBittorrent password ••••
Deluge URL http://192.168.1.10:8112
Deluge password Your Deluge Web UI password
rTorrent URL http://192.168.1.10:9080 — base URL of ruTorrent
rTorrent username HTTP Basic auth username (if configured)
rTorrent password HTTP Basic auth password

Leave any field empty to skip that service individually.


Usenet clients — SABnzbd + NZBGet (optional)

Field Example
SABnzbd URL http://192.168.1.10:8080
SABnzbd API key Find in SABnzbd → Config → General
NZBGet URL http://192.168.1.10:6789
NZBGet username nzbget (default)
NZBGet password Find in NZBGet → Settings → Security

Leave any field empty to skip that service individually.


2nd instances — Radarr 2 + Sonarr 2 (optional)

Configure a second Radarr and/or Sonarr instance — useful for HD + 4K setups.

Field Example
Radarr 2 URL http://192.168.1.10:7879
Radarr 2 API key ••••
Sonarr 2 URL http://192.168.1.10:8990
Sonarr 2 API key ••••

Bazarr (optional)

Field Example
Bazarr URL http://192.168.1.10:6767
Bazarr API key Find in Bazarr → Settings → General

Discovery — Overseerr / Jellyseerr (optional)

Trending, popular, and upcoming sections are always available without Overseerr. Adding it enables request approvals and family account support.

Field Notes
Overseerr / Jellyseerr URL http://192.168.1.10:5055
Overseerr / Jellyseerr API key Find in Settings → General
Family account email Optional — non-admin account for household members
Family account password Optional

Plex / Emby (optional)

Plex — authenticate via the Plex login link shown during setup. This enables stream monitoring, active user display, and playback control.

Field Notes
Plex Server URL Leave empty to auto-detect. Fill in if HA runs on a different machine or VLAN than Plex — e.g. http://192.168.1.10:32400.

Note: Plex Now Playing in the card also requires the official Plex integration installed in HA.

Emby — enter your Emby server URL and API key to enable stream monitoring and remote stop with a message.

Field Notes
Emby URL http://192.168.1.10:8096
Emby API key Find in Emby → Dashboard → API Keys → New API Key

Jellyfin and Kodi do not require any configuration here. Install the official Jellyfin or Kodi HA integration and the card picks them up automatically.


Streaming stats — Tautulli + Jellystat (optional)

Field Notes
Tautulli URL http://192.168.1.10:8181
Tautulli API key Find in Tautulli → Settings → Web Interface
Jellystat URL http://192.168.1.10:4000
Jellystat API key Find in Jellystat → Settings

Tautulli also powers account sharing detection — alerts when the same user streams from multiple IPs simultaneously.


Prowlarr (optional)

Field Example
Prowlarr URL http://192.168.1.10:9696
Prowlarr API key Find in Prowlarr → Settings → General

Trakt (optional)

Enables personalised movie and show recommendations in the card based on your Trakt watch history.

Scrobbling required for personalised results. Trakt recommendations are based on your watch history — titles you've already seen are filtered out and the suggestions are tailored to your taste. For this to work, your plays need to be synced to Trakt automatically. If you use Plex, PlexTraktSync is a good option — run it as a Docker container in watch mode and it will mark titles as watched on Trakt in real time as you finish them.

  1. Go to trakt.tv/oauth/applications/new and create a new application (redirect URI: urn:ietf:wg:oauth:2.0:oob)
  2. Copy the Client ID and Client Secret into the setup step
  3. Visit the shown URL on trakt.tv, enter the code, then click Submit

Family Account

If you configure a family account (non-admin Overseerr/Jellyseerr user), the card uses that account for media requests made by non-admin HA users. This lets household members request media without admin privileges.


Sensors & entities

This integration does not expose any Home Assistant sensors, entities, or devices. It acts purely as a proxy — all data is fetched on demand by the card.


Reconfigure

Change any setting at any time without reinstalling:

Settings → Devices & Services → Arr Stack → ⋮ → Reconfigure

Your existing settings are pre-filled. Clearing a URL disables that service in the card.


Related