Skip to content

Notifications

Narratorr can send notifications when key events occur in the download and import lifecycle. Each notifier subscribes to one or more events and fires independently — notifications never block the main workflow.

Configure notifications in Settings > Notifications.

EventFires When
On GrabA release is sent to a download client
On Download CompleteA download client reports a download finished
On ImportAn audiobook is successfully imported into the library
On FailureA download or import fails
On Health IssueA health check transitions state (e.g. healthy → warning/error)

Sends an HTTP request to any URL when an event fires.

FieldDescription
NameDisplay name for this notifier
URLThe endpoint to call
MethodPOST or PUT
Headers (JSON)Optional custom headers as a JSON object, e.g. {"Authorization": "Bearer your-token"}
Body TemplateOptional. Custom request body with {token} placeholders. Leave empty to send the full event payload as default JSON.

Template variables are substituted into the Body Template field (they are not applied to the URL or headers). Available tokens:

VariableDescription
{book.title}Book title
{book.author}Book author
{book.coverUrl}Cover art URL
{release.title}Release name from the indexer
{release.indexer}Indexer that provided the release
{release.size}Release file size
{download.path}Download path
{download.size}Downloaded file size
{import.libraryPath}Library path where the book was imported
{import.fileCount}Number of files imported
{error.message}Error message (failure events only)
{error.stage}Stage where the error occurred (failure events only)
{health.checkName}Name of the health check (health-issue events only)
{health.previousState}Previous health state (health-issue events only)
{health.currentState}Current health state (health-issue events only)
{health.message}Health check detail message (health-issue events only)

Example uses:

  • Trigger an Audiobookshelf library scan after import
  • Post to Slack or Teams via incoming webhooks
  • Integrate with Home Assistant automations
  • Hit any REST endpoint

Sends rich embeds to a Discord channel via webhook URL.

FieldDescription
NameDisplay name for this notifier
Webhook URLDiscord webhook URL
Include Cover ImageWhether to attach the book’s cover art as the embed thumbnail. Enabled by default.

Embeds are color-coded by event:

  • Blue — grab
  • Orange — download complete
  • Green — import
  • Red — failure
  • Dark orange — health issue

Cover art thumbnails are included when available.

  1. Open your Discord server
  2. Go to Server Settings > Integrations > Webhooks
  3. Click New Webhook
  4. Choose the target channel and copy the webhook URL

Executes a local shell script or command on the Narratorr host when an event fires.

In the UI this notifier type is labeled Custom Script.

FieldDescription
NameDisplay name for this notifier
Script PathPath to the script or command to execute
Timeout (seconds)How long the script may run before it’s killed. Default: 30. Range: 1–300.

The script receives event data two ways:

  • stdin — full JSON payload
  • Environment variablesNARRATORR_EVENT, NARRATORR_BOOK_TITLE, NARRATORR_BOOK_AUTHOR, etc.

Scripts have a configurable timeout (default 30s, max 300s) — if the script doesn’t exit within that window, it’s killed.

Sends an email via SMTP when an event fires.

FieldDescription
NameDisplay name for this notifier
SMTP HostHostname of your SMTP server
SMTP PortSMTP server port. Default: 587
UsernameUsername for SMTP authentication
PasswordPassword for SMTP authentication
Use TLS/SSLWhether to connect using TLS/SSL. Off by default.
From AddressSender email address
To AddressRecipient email address

Sends a message to a Telegram chat via a bot.

FieldDescription
NameDisplay name for this notifier
Bot TokenToken for your Telegram bot
Chat IDID of the chat to send messages to

Posts a message to a Slack channel via an incoming webhook URL.

FieldDescription
NameDisplay name for this notifier
Webhook URLSlack incoming webhook URL

Sends a push notification through Pushover.

FieldDescription
NameDisplay name for this notifier
API TokenPushover application API token
User KeyPushover user (or group) key

Publishes a notification to an ntfy topic.

FieldDescription
NameDisplay name for this notifier
Topicntfy topic to publish to (required)
Server URLntfy server URL (optional; defaults to the public ntfy.sh server)
Access TokenOptional. Bearer token for protected or authenticated ntfy topics.
PriorityOptional. One of min, low, default, high, or max. Leave blank to use the server default.

Sends a message to a self-hosted Gotify server.

FieldDescription
NameDisplay name for this notifier
Server URLURL of your Gotify server
App TokenGotify application token
  • Enable/disable — each notifier has a toggle. Disable to temporarily silence without deleting.
  • Test — sends a test payload to verify connectivity before you rely on it.
  • Multiple events — a single notifier can subscribe to any combination of events.
  • Multiple notifiers — multiple notifiers can subscribe to the same event. All fire independently.

If notifications aren’t firing, see Troubleshooting > Notifications not firing.