Skip to content

Notifier Integrations

Adan edited this page Oct 6, 2025 · 1 revision

The Notifier service delivers alerts to chat, email, and webhook destinations. This guide explains supported channels, configuration, and testing workflows.

Accessing the Notifier UI

  • URL: http://127.0.0.1:${NOTIFIER_WEB_PORT:-8087} (or via your reverse proxy)
  • Default auth: none (protect with reverse proxy auth in production)
  • Capabilities: manage destinations, configure credentials, view delivery history, trigger test messages

Supported channels

Channel Required fields Notes
Email (SMTP) Host, port, username/password or OAuth token, from address, TLS settings Supports STARTTLS and SMTPS. Use app passwords for Gmail/Office365.
Slack Webhook URL or Bot token + channel Webhooks are simplest. For bot tokens, grant chat:write scope.
Discord Webhook URL Create in Server Settings -> Integrations.
Telegram Bot token, chat ID Use @BotFather to create token. Retrieve chat ID via getUpdates or @RawDataBot.
Gotify Server URL, app token Self-hosted push notifications.
Generic Webhook URL, HTTP method, optional headers/body Supports templated payloads (JSON, form data, etc.).

Adding a destination

  1. Open the Notifier UI -> Destinations.
  2. Choose a channel type and fill in the fields.
  3. Save.

Message format

  • Alert Engine sends a JSON payload to Notifier containing the rule name, message text, container details (if available), and timestamp.
  • The Notifier currently renders a plain text message from those fields and passes that text to every enabled destination.
  • Webhook destinations receive an HTTP request whose body is the same formatted text message. Apprise handles the request details for each provider.
  • To deliver structured JSON or heavily customised content today, route notifications to a custom webhook endpoint that you control and perform the transformation there, or trigger automation scripts from the Alert Engine instead.

Delivery reliability

  • Notifier retries transient failures with exponential backoff. Default: 5 attempts over ~10 minutes.
  • Persistent errors (401, 403, 404, TLS failure) mark the delivery as failed and surface in the UI.
  • Use the delivery history table to inspect payloads and response codes.

Clone this wiki locally