# Whisparr Adult content collection manager (Arr-suite). ## Service Info | Property | Value | |----------|-------| | **Host** | Atlantis (`192.168.0.200`) | | **URL** | `http://192.168.0.200:6969` | | **Portainer stack** | `atlantis-arr-stack` (stack ID 696, env 2) | | **Compose file** | Portainer-managed — `/volume2/metadata/docker/portainer/compose/696/v1/docker-compose.yml` on Atlantis | | **Config volume** | `/volume2/metadata/docker2/whisparr` | | **Image** | `ghcr.io/hotio/whisparr:nightly` | ## Download Clients | Client | Type | Status | Notes | |--------|------|--------|-------| | **SABnzbd** | Usenet | ✅ Enabled | `192.168.0.200:8080`, remote path: `/data/complete/` → `/sab/complete/` | | **Deluge** | Torrent | ✅ Enabled | `192.168.0.200:8112` (web UI behind gluetun VPN), password: "REDACTED_PASSWORD" | ### Deluge notes - Runs behind **gluetun** VPN container (network_mode: container) — ports exposed via gluetun - No Label plugin installed — category field must be left empty - Downloads to `/downloads/complete/` on Atlantis → mapped to `/torrents/complete/` in Whisparr - Compose volume added 2026-03-18: `/volume2/torrents/complete:/torrents/complete` - Remote path mapping: `192.168.0.200: /downloads/complete/` → `/torrents/complete/` ### SABnzbd API key sync If SABnzbd restarts or is reinstalled, its API key may change. Update in Whisparr: **Settings → Download Clients → SABnzbd → API Key** Or via API: ```bash # Get current SABnzbd API key ssh atlantis "grep -oP '(?<=^api_key = )[^\s]+' /volume2/metadata/docker2/sabnzbd/sabnzbd.ini" ``` ## Root Folder `/data/media/misc` (46TB free as of 2026-03-18) ## Import Path Mappings | Host | Remote Path | Local Path (in container) | Purpose | |------|------------|--------------------------|---------| | `192.168.0.200` | `/data/complete/` | `/sab/complete/` | SABnzbd usenet downloads | | `192.168.0.200` | `/downloads/complete/` | `/torrents/complete/` | Deluge torrent downloads | ## Troubleshooting ### `downloadClientUnavailable` in queue Happens when SABnzbd or Deluge restarts. Items stay stuck until cleared manually. Clear all stuck items: ```bash WHISPARR_KEY=$(ssh atlantis "cat /volume2/metadata/docker2/whisparr/config.xml | grep -oP '(?<=)[^<]+'") python3 -c " import requests s = requests.Session() s.headers.update({'X-Api-Key': '$WHISPARR_KEY'}) q = s.get('http://192.168.0.200:6969/api/v3/queue').json() for item in q.get('records',[]): if item['status'] == 'downloadClientUnavailable': s.delete(f'http://192.168.0.200:6969/api/v3/queue/{item[\"id\"]}?removeFromClient=true&blocklist=false') print('Cleared:', item['title'][:50]) " ``` ### Import fails after adding Deluge Whisparr must have `/volume2/torrents/complete` mounted and a remote path mapping configured. Check mounts: container must have `/torrents/complete` volume. Check mappings: **Settings → Download Clients → Remote Path Mappings**. ### Deluge Label plugin error If Whisparr reports "Label plugin not enabled" — leave the **Category** field blank in the Deluge download client config. The Label plugin egg exists but doesn't load in the linuxserver.io image. **Last updated:** 2026-03-18