Notifications
Get alerted when movies are grabbed, imported, or when issues arise. Luminarr supports eight notification services. Each connection can subscribe to any combination of events independently.
Notification Channels
All services support the same event subscriptions. You can configure multiple connections of the same type — for example, two separate Discord webhooks posting to different channels.
Discord
Post rich embeds to any channel via an incoming webhook URL.
Slack
Post messages to Slack channels via an incoming webhook URL.
Telegram
Send messages to any chat or channel via the Telegram Bot API.
Gotify
Self-hosted push notifications via your own Gotify server.
ntfy
Simple HTTP-based push notifications to ntfy.sh or a self-hosted instance.
Pushover
Real-time push notifications to iOS and Android via Pushover.
Send notification emails via any SMTP server with TLS support.
Webhook
POST a JSON payload to any HTTP endpoint. Use for custom integrations.
Notification Events
Each notification connection subscribes to one or more of these events. Unsubscribed events are silently ignored for that connection.
| Event | When it fires | Typical use |
|---|---|---|
movie_added |
A movie is added to the library | Track what was added via import lists or manually |
grab_started |
A release is sent to a download client | Know when a download begins |
download_done |
Download client reports completion | Confirm download finished before import |
import_done |
File successfully imported into library | Most common alert — movie is ready to watch |
import_failed |
Import attempt encountered an error | Alert on files that need manual attention |
health_issue |
A health check detected a problem | Proactive alerting on misconfigurations |
health_ok |
A previously failing health check recovered | Confirm issues are resolved |
Discord
| Field | Description | Notes |
|---|---|---|
| Webhook URL | Discord incoming webhook URL | Create in Channel Settings → Integrations → Webhooks |
| Username | Override the webhook bot display name | Optional. Defaults to the webhook name in Discord |
| Avatar URL | Override the webhook bot avatar | Optional. Must be a publicly accessible image URL |
Slack
| Field | Description | Notes |
|---|---|---|
| Webhook URL | Slack incoming webhook URL | Create at api.slack.com → Your Apps → Incoming Webhooks |
| Username | Bot display name in Slack | Optional. Defaults to the app name |
| Icon Emoji | Emoji used as the bot avatar | Optional. Example: :film_projector: |
Telegram
| Field | Description | Notes |
|---|---|---|
| Bot Token | Token from @BotFather | Create a bot with /newbot and copy the token |
| Chat ID | Target chat, group, or channel ID | Use @username or numeric ID. Prefix channel IDs with -100 |
Gotify
| Field | Description | Notes |
|---|---|---|
| URL | Base URL of your Gotify server | http://gotify.example.com |
| App Token | Gotify application token | Create an application in the Gotify UI to get a token |
| Priority | Gotify message priority level | 0–10. Higher values trigger urgent delivery on some clients |
ntfy
| Field | Description | Notes |
|---|---|---|
| URL | ntfy server URL including topic | https://ntfy.sh/my-luminarr-topic |
| Token | Access token for authenticated topics | Optional. Required for protected ntfy.sh topics |
| Priority | Message priority: min, low, default, high, urgent | Optional. Defaults to default |
Pushover
| Field | Description | Notes |
|---|---|---|
| API Token | Pushover application API token | Create an application at pushover.net |
| User Key | Your Pushover user or group key | Found on the Pushover dashboard |
| Priority | Delivery priority (-2 to 2) | Optional. Use 2 for emergency notifications requiring acknowledgement |
| Field | Description | Notes |
|---|---|---|
| SMTP Host | Outbound mail server hostname | smtp.gmail.com |
| SMTP Port | Server port | Typically 587 (STARTTLS) or 465 (TLS) |
| Username | SMTP authentication username | Usually your email address |
| Password | SMTP authentication password or app password | |
| From | Sender address | luminarr@example.com |
| To | Recipient address(es) | Comma-separated for multiple recipients |
| Use TLS | Enable STARTTLS or implicit TLS | Recommended for all SMTP connections |
Webhook
Luminarr sends a POST request with a JSON body describing the event. Use this for custom integrations with any HTTP-capable system.
| Field | Description | Notes |
|---|---|---|
| URL | Endpoint to POST the event payload to | Must be reachable from the Luminarr server |
| Method | HTTP method: POST or PUT | Optional. Defaults to POST |
| Headers | Additional HTTP headers to include | Optional. Useful for authorization tokens |
| Skip TLS Verify | Disable certificate validation | Only for self-signed certs |
Custom scripts as notifications: For more complex workflows, use the Custom Scripts notification type, which executes a local binary with event data passed as environment variables.