Services Overview
notifly supports 11 notification services out of the box. Each service uses a URL scheme to encode its configuration — no config files, no environment-variable conventions, just a URL string you can store wherever your credentials live.
All services
Discord
discord://Slack
slack://Telegram
tgram://Microsoft Teams
msteams://Teams (Workflows)
workflows://ntfy
ntfy://Gotify
gotify://Pushover
pover://Pushbullet
pbul://Email
mailto://Webhook
json://URL scheme reference
| Service | Category | URL Format |
|---|---|---|
| Discord | Chat | discord://webhook_id/webhook_token |
| Slack | Chat | slack://token_a/token_b/token_c |
| Telegram | Chat | tgram://bot_token/chat_id |
| Microsoft Teams | Chat | msteams://group_id/channel_id/webhook_id |
| Teams (Workflows) | Chat | workflows://host/…/invoke?…&sig=… |
| ntfy | Self-Hosted | ntfy://topic or ntfy://host/topic |
| Gotify | Self-Hosted | gotify://host/token |
| Pushover | Push | pover://user_key/api_token |
| Pushbullet | Push | pbul://access_token |
mailto://user:gateway@host | ||
| Webhook | Webhook | json://host/path or jsons://host/path |
How URL schemes work
notifly URLs follow a standard structure based on Web URL parsing. The scheme (discord://, ntfy://, etc.) identifies the service. The rest of the URL encodes the credentials and configuration for that service:
- The hostname is typically the primary identifier (e.g. webhook ID, topic)
- The path carries additional parameters (e.g. token, channel)
- Query parameters are used for optional fields on some services
Each service page documents its exact URL format and where to find the required credentials.
Custom services
Need a service that isn't listed? See the Custom Services guide to register your own service plugin.