Gotify
Gotify is a self-hosted push notification server. If you already run Gotify on your home lab, ChannelWatch can send alerts directly to it with no third-party accounts or cloud services involved.
What you need
Section titled “What you need”- A running Gotify server reachable from your ChannelWatch container
- A Gotify application token (not your user password)
Create an application token
Section titled “Create an application token”Gotify uses per-application tokens to separate notification sources. Create one for ChannelWatch:
- Open your Gotify web interface (typically
http://your-server-ip:80or the port you configured). - Sign in with your Gotify admin account.
- Click Apps in the left sidebar.
- Click Create Application.
- Enter a name like
ChannelWatchand an optional description. - Click Create. Gotify displays the token immediately.
- Copy the token. It is shown only once — if you lose it, delete the app and create a new one.
Configure in the web UI
Section titled “Configure in the web UI”Open the web UI at http://your-server-ip:8501 and go to Settings > Notifications > Gotify.
Fill in the following fields:
| Field | What to enter |
|---|---|
| Server | Your Gotify server hostname or IP, followed by / and the token |
The format is hostname/token. For example:
gotify.home.lan/AbCdEfGhIjKlMnOpOr with an explicit port:
gotify.home.lan:8080/AbCdEfGhIjKlMnOpSave the settings, then send a test notification from Diagnostics > Alert Tests to confirm the message appears in your Gotify app.
HTTPS vs HTTP
Section titled “HTTPS vs HTTP”If your Gotify server uses HTTPS, prefix the value with gotifys:// instead of the default gotify://. ChannelWatch passes the value directly to Apprise, which handles the scheme:
| Scheme | When to use |
|---|---|
gotify:// (default) | Plain HTTP — only use on a trusted LAN |
gotifys:// | HTTPS — required for servers exposed to the internet |
To use HTTPS, enter the connection string in the Server field as:
gotifys://gotify.example.com/AbCdEfGhIjKlMnOpEnvironment variable (optional)
Section titled “Environment variable (optional)”You can configure Gotify via environment variable in your docker-compose.yml for automated deployments:
environment: CW_APPRISE_GOTIFY: "gotify.home.lan:8080/AbCdEfGhIjKlMnOp"For HTTPS:
environment: CW_APPRISE_GOTIFY: "gotifys://gotify.example.com/AbCdEfGhIjKlMnOp"Settings entered in the web UI take precedence over environment variables once saved.
Notification priority
Section titled “Notification priority”Gotify supports message priorities (0 = min, 10 = max). ChannelWatch sends all notifications at the default Apprise priority, which Gotify displays as a standard-priority message. You can adjust notification behavior in the Gotify app’s per-application settings if you want alerts to appear differently.
Troubleshooting
Section titled “Troubleshooting”No message appears in Gotify. Confirm the server address and token are correct. Open the Gotify web interface and check the Messages tab for the ChannelWatch application — if messages appear there but not in the mobile app, the issue is with the app’s push connection, not ChannelWatch.
Connection refused. ChannelWatch cannot reach your Gotify server. Check that:
- The Gotify container or service is running (
docker psorsystemctl status gotify) - The port is correct and not blocked by a firewall
- ChannelWatch and Gotify are on the same Docker network, or Gotify is reachable via the host IP
Invalid token. Gotify returns a 401 error when the token is wrong. Delete the application in Gotify, create a new one, and copy the new token carefully. Tokens are case-sensitive.
TLS certificate error. If you use gotifys:// with a self-signed certificate, Apprise will reject the connection. Use a certificate from a public CA (Let’s Encrypt), or switch to plain gotify:// on a trusted LAN.
Messages appear but with no title. This can happen if the Gotify application was created without a name. Edit the application in the Gotify web interface and add a display name.
Reachability from Docker
Section titled “Reachability from Docker”If ChannelWatch runs in a Docker container with network_mode: host, it can reach Gotify at any LAN IP or hostname. If you use bridge networking, make sure Gotify is reachable from inside the container:
- If Gotify runs on the same Docker host, use
host.docker.internalas the hostname (requires--add-host=host.docker.internal:host-gatewayin your compose file on Linux). - If Gotify runs in its own container on the same Docker network, use the container name as the hostname.
- If Gotify runs on a different machine, use its LAN IP address.
Related pages
Section titled “Related pages”- Notification Examples — see what Gotify alerts look like
- Delivery Log — check whether notifications were sent and why they may have failed
- Email (SMTP) — send alerts to an inbox instead of a push notification server