Additional notification integrations
frigate-notify supports multiple notification providers and can send to more than one simultaneously. Argus systems come configured for ntfy out of the box, but if you already use Telegram, Discord, Slack, or email for other alerts, you can add those providers alongside ntfy or replace it entirely.
All provider config goes in the alerts block of ~/nvr/frigate-notify/app.yml. Restart the frigate-notify container after any change.
Supported providers
| Provider | Best for |
|---|---|
| ntfy | Self-hosted, no account, works on iOS and Android |
| Gotify | Self-hosted alternative to ntfy, Android-only without relay |
| Telegram | Already use Telegram, want rich formatting |
| Discord | Team or household already on Discord |
| Slack | Small business already running Slack |
| Universal fallback, works with any email client | |
| Webhook | Custom integrations, Home Assistant automations |
Running multiple providers
All enabled providers receive every alert. To send to both ntfy and Telegram, enable both in the same config file:
alerts:
ntfy:
enabled: true
server: http://ntfy
topic: argus-d61b61
telegram:
enabled: true
token: YOUR_BOT_TOKEN
chatid: "YOUR_CHAT_ID"
There is no limit on how many providers you enable simultaneously.
ntfy
Already configured on Argus systems. Covered in detail in Setting up push notifications.
Gotify
Gotify is a self-hosted push notification server similar to ntfy. It has an Android app but no native iOS app; iOS users need a relay or should use ntfy instead.
Before you start: Gotify needs to be running as a container on your NVR. Add it to your Docker stack and create an application token in the Gotify web interface. The token is what authorizes frigate-notify to send messages.
Replace http://gotify with your Gotify server address if it's not on the same Docker network. The token is found in the Gotify web UI under Apps after creating an application.
Telegram
Telegram requires a bot token and a chat ID. The bot sends messages to a specific chat, either a private conversation with yourself or a group chat.
Before you start:
- Open Telegram and message @BotFather.
- Send
/newbotand follow the prompts to create a bot. BotFather returns a token in the format123456:ABCdef.... - Start a conversation with your new bot (search for it by username and send
/start). - Get your chat ID by messaging @userinfobot, which returns your numeric user ID.
For a group chat, add the bot to the group, then get the group's chat ID from the bot's recent messages via the Telegram API.
Chat IDs for group chats are negative numbers (e.g., -1001234567890). Private chat IDs are positive. Wrap both in quotes.
Discord
Discord notifications are sent via a webhook URL tied to a specific channel. No bot account is required.
Before you start:
- In Discord, open the channel you want notifications in.
- Go to Edit Channel (gear icon), then Integrations, then Webhooks.
- Click New Webhook, give it a name, and copy the webhook URL.
Each webhook is tied to one channel. To send to multiple channels, add additional Discord entries or set up a Discord forum channel and use one webhook for all camera topics.
Slack
Slack notifications use an incoming webhook URL. This requires a Slack app with incoming webhooks enabled.
Before you start:
- Go to api.slack.com/apps and create a new app for your workspace.
- Under Features, enable Incoming Webhooks.
- Add a new webhook and select the channel to post to. Copy the webhook URL.
Email notifications work with any SMTP server, including Gmail, iCloud Mail, and self-hosted mail servers. This is the most universal option and requires no app installation on the receiving end.
Gmail: Use an App Password rather than your account password. App Passwords require two-factor authentication to be enabled on your Google account.
iCloud Mail: Use an app-specific password generated from your Apple ID settings.
alerts:
smtp:
enabled: true
server: smtp.gmail.com
port: 587
tls: true
user: your@gmail.com
password: YOUR_APP_PASSWORD
recipient:
- recipient@example.com
from: "Argus NVR <your@gmail.com>"
For iCloud Mail, use smtp.mail.me.com on port 587. For a self-hosted mail server, use its SMTP address and credentials.
Multiple recipients are supported. Add one address per line under recipient.
Webhook
The webhook provider sends an HTTP POST to any URL when an event fires. This is useful for custom integrations, triggering Home Assistant automations, or sending to a service that isn't natively supported by frigate-notify.
The request body is a JSON object containing event details including camera name, label, confidence, zone, and the snapshot URL. What the receiving endpoint does with it is up to you.
For Home Assistant, create a webhook automation trigger in HA and use the generated webhook URL here. This lets you build HA automations that fire on Frigate events without running the full Home Assistant Frigate integration.
Where to go from here
- Setting up push notifications — the default Argus notification setup
- Filtering which events trigger notifications — control which cameras and object types send alerts
- Frigate + Home Assistant — deeper integration between Frigate events and HA
Was this page helpful?
Found something wrong or out of date? Let us know below, or open a GitHub issue if you have a GitHub account.