Custom (Apprise)
ChannelWatch routes notifications through Apprise, a library that supports over 100 notification services. The built-in provider slots (Discord, Telegram, Slack, etc.) cover the most common ones. The Custom field lets you use any other Apprise-supported service by entering its URL directly.
How it works
Section titled “How it works”Every Apprise-supported service has a URL scheme that encodes all the credentials and settings needed to send a notification. The Custom field accepts any valid Apprise URL and passes it straight to the Apprise library without modification.
The general pattern is:
scheme://[user:password@]host[:port]/[path][?param=value]For example:
# ntfy.sh topicntfy://your-topic
# Pushbulletpbul://access_token
# Home Assistanthassio://[email protected]/8123The full list of supported services and their URL formats is in the Apprise wiki.
Add a custom provider in the web UI
Section titled “Add a custom provider in the web UI”- Open the ChannelWatch web UI at
http://your-server-ip:8501 - Go to Settings > Notifications > Custom (Apprise)
- Look up your service in the Apprise wiki and copy the URL format for it
- Fill in your credentials and paste the complete URL into the Custom Apprise URL field
- Click Save
- Go to Diagnostics > Alert Tests and send a test notification to confirm delivery
Add a custom provider via environment variable
Section titled “Add a custom provider via environment variable”For headless or automated deployments, set CW_APPRISE_CUSTOM in your compose file with the full Apprise URL:
environment: CW_APPRISE_CUSTOM: "ntfy://your-topic"Unlike the dedicated provider slots, the Custom field does not prepend a scheme. The value you provide must be a complete, valid Apprise URL including the scheme.
Finding your service’s URL format
Section titled “Finding your service’s URL format”The Apprise wiki has a page for each supported service. Each page shows:
- The URL syntax with all required and optional parameters
- A parameter breakdown table
- Working examples you can adapt
Search the wiki for your service name. If it’s not listed, it’s not supported by the bundled Apprise version.
Troubleshooting
Section titled “Troubleshooting”No notification arrives
Section titled “No notification arrives”- Double-check the URL format against the Apprise wiki page for your service. A single wrong character in the URL causes silent failure.
- Test the URL directly from the container:
docker exec channelwatch python -c "import apprisea = apprise.Apprise()a.add('your-apprise-url-here')print(a.notify(title='Test', body='ChannelWatch test'))"A result of True means Apprise accepted the URL and attempted delivery. Check your notification service for the message.
- If the result is
False, the URL is malformed or the credentials are wrong. Re-read the Apprise wiki page for your service and verify each parameter.
Service not recognized
Section titled “Service not recognized”If Apprise returns an error about an unknown scheme, the service is not supported by the bundled Apprise version. Check the Apprise wiki to confirm the service is listed.
Next steps
Section titled “Next steps”- Delivery Log - review sent notification history
- Matrix - dedicated Matrix provider with room join guidance