qBittorrent
Dashboard Status
This module is live. The dashboard logs in to the qBittorrent WebUI API, keeps the session between polls, and reads one sync snapshot per poll.
Primary API surfaces:
/api/v2/auth/login
/api/v2/sync/maindata
/api/v2/app/version
Dashboard Admin Form
The qBittorrent page in /admin, filled with fictional example values from the built-in demo data. Secret fields show as dots while typing and as Saved secret once stored. Use Test saved connection after saving.
Admin Fields
qBittorrent WebUI URLWebUI UsernameWebUI PasswordLow disk warning (GB free)(optional, default20)
Recommended Values
qBittorrent WebUI URL: http://downloads.example.lan:8080
WebUI Username: dashboard
WebUI Password: the-webui-password
Low disk warning (GB free): 20
Use the address and port the dashboard container can reach. This is the WebUI port, not the torrent listening port.
Enable The WebUI
- Open qBittorrent.
- Open
Tools > Options > Web UI. - Tick the Web User Interface (remote control) option and note the port.
- Set a username and password for the dashboard to use.
What The Card Shows
- Download and upload speed and the downloading, stalled and seeding counts.
- Torrents in an error state, named in the detail.
- Connection state. A firewalled connection is shown as a warning because incoming connections are blocked.
- Free disk space as reported by qBittorrent, with a warning below the configured threshold.
On the wallboard, the Downloads panel shows the live rate with a one-minute graph, and a torrent error or low disk space turns the panel red.
Test From The Docker Host
curl -i -c /tmp/qb.cookies \
-H 'Referer: http://downloads.example.lan:8080' \
--data 'username=dashboard&password=YOUR_PASSWORD' \
http://downloads.example.lan:8080/api/v2/auth/login
A working login answers Ok. and sets a cookie. Then:
curl -b /tmp/qb.cookies http://downloads.example.lan:8080/api/v2/app/version
Do not repeat a failing login in a loop: qBittorrent bans the IP after several failures.
Common Problems
- IP ban. After repeated failed logins qBittorrent blocks the address. The dashboard protects you from causing this: after a rejected login it stops trying for 5 minutes (15 minutes after a 403), then retries once. Fix the credentials, or wait out the ban, before testing again.
- 403 with correct credentials. Check
Enable Host header validationand the CSRF protection options in the WebUI settings. The dashboard sends matchingRefererandOriginheaders for the URL you saved, so use the same hostname there that you use in a browser. - Wrong URL. Use the WebUI URL, not an API path. If qBittorrent is behind a reverse proxy at a sub-path, include the sub-path.
- HTTPS with a self-signed certificate. Put the WebUI behind a trusted internal proxy, or use plain HTTP on a trusted network.
