Notifications#
Jellyseerr supports pushing notifications to external applications and services.
These are not only for Jellyseerr to communicate with the outside world, they can also be useful for monitoring since the user can be alerted, by a service of their choice, when some kind of event (or problem) occurs.
For more information on configuring push notifications for Jellyseerr, refer to this guide in the Overseerr documentation.
Enabling notifications#
To enable push notifications to a service, simply set enable: true
in the settings,
as shown below.
jellyseerr:
settings:
notifications:
webpush:
enable: true
enable: bool = False
class-attribute
instance-attribute
#
Enable sending notifications to a service.
If enabled, some configuration attributes for the service will be required.
Configuring notification types#
Some service types support fine-grained configuration of the type of notifications that get sent.
This is done by defining the optional notification_types
configuration attribute
in the settings for that service.
jellyseerr:
settings:
notifications:
slack:
enable: true
webhook_url: "..."
notification_types:
- "media-pending"
- "media-approved"
- "media-available"
- "media-failed"
- "test-notification"
- "media-declined"
- "media-auto-approved"
- "issue-created"
- "issue-comment"
- "issue-resolved"
- "issue-reopened"
- "media-auto-requested"
Discord#
Send notifications to a Discord server using a webhook URL.
webhook_url: Optional[AnyHttpUrl] = None
class-attribute
instance-attribute
#
Discord server webhook URL.
Required if Discord notifications are enabled.
username: Optional[str] = None
class-attribute
instance-attribute
#
The username to post as.
If unset, blank or set to None
, use the default username set to the webhook URL.
avatar_url: Optional[AnyHttpUrl] = None
class-attribute
instance-attribute
#
A URL to an custom avatar to use when posting.
If unset, blank or set to None
, use the default avatar for the user.
enable_mentions: bool = True
class-attribute
instance-attribute
#
Allow the user to mention when posting.
notification_types: Set[NotificationType] = set()
class-attribute
instance-attribute
#
The notification types to send to the service.
By default no notifications are sent, even if enabled, so remember to set the types of events you'd like to get notified for.
Values:
media-pending
media-approved
media-available
media-failed
test-notification
media-declined
media-auto-approved
issue-created
issue-comment
issue-resolved
issue-reopened
media-auto-requested
Email#
Send notification emails via an SMTP server.
In order for Jellyseerr to send emails to Jellyseerr users, an SMTP server needs to be configured here.
Note
If the jellyseerr.settings.general.application_url
attribute is configured, Jellyseerr will explicitly
set the origin server hostname when connecting to the SMTP host.
require_user_email: bool = False
class-attribute
instance-attribute
#
Require Jellyseerr users to have an email address configured, so emails can be sent to it.
sender_name: Optional[str] = 'Jellyseerr'
class-attribute
instance-attribute
#
Configure a friendly name for the email sender.
sender_address: Optional[EmailStr] = None
class-attribute
instance-attribute
#
The From
email address to send the email as.
If sending email to public mailboxes, this should be set to an email address owned/controlled by the server being used to send the mail.
Required if email notifications are enabled.
smtp_host: Optional[str] = None
class-attribute
instance-attribute
#
The SMTP server to sent mail from.
Required if email notifications are enabled.
smtp_port: Port = 587
class-attribute
instance-attribute
#
The mail submission port of the SMTP server.
The default is the standard SMTP submission port, used for STARTTLS.
If using implicit TLS (SMTPS), this should be set to the standard port of 465
.
encryption_method: EncryptionMethod = EncryptionMethod.starttls_prefer
class-attribute
instance-attribute
#
The encryption method to use to communicate with the SMTP server.
Values (in order of security):
smtps
- Implicit TLS (SMTPS)starttls-strict
- Require STARTTLSstarttls-prefer
- Use STARTTLS if available, unencrypted fallback (not recommended)none
- No encryption (not recommended)
Warning
The starttls-prefer
and none
encryption methods send (or can send)
username and password credentials unencrypted over the network.
Do not use them unless you know what you are doing.
allow_selfsigned_certificates: bool = False
class-attribute
instance-attribute
#
Allow self-signed certificates for the SMTP server host certificate.
Warning
Generally this option shouldn't be enabled, even on a private mail server, as any mail server can get free TLS certificates using services such as Let's Encrypt.
Never enable this option when using a public email service.
smtp_username: Optional[str] = None
class-attribute
instance-attribute
#
SMTP server username, if required (which is usually the case).
smtp_password: Optional[SecretStr] = None
class-attribute
instance-attribute
#
SMTP server user password, if required (which is usually the case).
pgp_private_key: Optional[SecretStr] = None
class-attribute
instance-attribute
#
An optional PGP private key to use to sign (and if configured by users, encrypt) sent emails.
When configuring the PGP keys, be sure to keep the entire contents of the key intact.
For example, private keys always begin with -----BEGIN PGP PRIVATE KEY BLOCK-----
and end with -----END PGP PRIVATE KEY BLOCK-----
.
pgp_password: Optional[SecretStr] = None
class-attribute
instance-attribute
#
An optional password for unlocking the PGP private key.
Gotify#
Send Jellyseerrr notifications to a Gotify server.
server_url: Optional[AnyHttpUrl] = None
class-attribute
instance-attribute
#
The URL that Jellyseerr will use to access the Gotify server.
Required if Gotify notifications are enabled.
access_token: Optional[SecretStr] = None
class-attribute
instance-attribute
#
The generated application token for Jellyseerr in Gotify.
Required if Gotify notifications are enabled.
notification_types: Set[NotificationType] = set()
class-attribute
instance-attribute
#
The notification types to send to the service.
By default no notifications are sent, even if enabled, so remember to set the types of events you'd like to get notified for.
Values:
media-pending
media-approved
media-available
media-failed
test-notification
media-declined
media-auto-approved
issue-created
issue-comment
issue-resolved
issue-reopened
media-auto-requested
LunaSea#
Send notifications to the LunaSea app.
webhook_url: Optional[AnyHttpUrl] = None
class-attribute
instance-attribute
#
The device- or user based LunaSea webhook URL to send notifications to.
Required if LunaSea notifications are enabled.
profile_name: Optional[str] = None
class-attribute
instance-attribute
#
The LunaSea profile to send notications to.
If set to null
, uses the default
profile.
notification_types: Set[NotificationType] = set()
class-attribute
instance-attribute
#
The notification types to send to the service.
By default no notifications are sent, even if enabled, so remember to set the types of events you'd like to get notified for.
Values:
media-pending
media-approved
media-available
media-failed
test-notification
media-declined
media-auto-approved
issue-created
issue-comment
issue-resolved
issue-reopened
media-auto-requested
Pushbullet#
Send notifications to one or more devices via Pushbullet.
access_token: Optional[SecretStr] = None
class-attribute
instance-attribute
#
The generated application token for Jellyseerr in Pushbullet.
Required if Pushbullet notifications are enabled.
channel_tag: Optional[str] = None
class-attribute
instance-attribute
#
Optional channel tag for pushing notifications to any devices subscribed to it.
notification_types: Set[NotificationType] = set()
class-attribute
instance-attribute
#
The notification types to send to the service.
By default no notifications are sent, even if enabled, so remember to set the types of events you'd like to get notified for.
Values:
media-pending
media-approved
media-available
media-failed
test-notification
media-declined
media-auto-approved
issue-created
issue-comment
issue-resolved
issue-reopened
media-auto-requested
Pushover#
Send notifications to one or more devices via Pushover.
api_key: Optional[PushoverApiKey] = None
class-attribute
instance-attribute
#
API key registered for Jellyseerr in Pushover.
Required if Pushover notifications are enabled.
user_key: Optional[PushoverApiKey] = None
class-attribute
instance-attribute
#
User key to authenticate with on Pushover.
Required if Pushover notifications are enabled.
notification_types: Set[NotificationType] = set()
class-attribute
instance-attribute
#
The notification types to send to the service.
By default no notifications are sent, even if enabled, so remember to set the types of events you'd like to get notified for.
Values:
media-pending
media-approved
media-available
media-failed
test-notification
media-declined
media-auto-approved
issue-created
issue-comment
issue-resolved
issue-reopened
media-auto-requested
Slack#
Send notifications to a Slack channel.
webhook_url: Optional[AnyHttpUrl] = None
class-attribute
instance-attribute
#
Slack server webhook URL.
notification_types: Set[NotificationType] = set()
class-attribute
instance-attribute
#
The notification types to send to the service.
By default no notifications are sent, even if enabled, so remember to set the types of events you'd like to get notified for.
Values:
media-pending
media-approved
media-available
media-failed
test-notification
media-declined
media-auto-approved
issue-created
issue-comment
issue-resolved
issue-reopened
media-auto-requested
Telegram#
Send notifications to a group chat in Telegram.
If username
is set, also allows Jellyseerr users to setup their own chats
with the Jellyseerr Telegram bot to receive notifications.
access_token: Optional[SecretStr] = None
class-attribute
instance-attribute
#
Access token provided for the Telegram bot by BotFather at the end of the creation process.
Required if Telegram notifications are enabled.
username: Optional[str] = None
class-attribute
instance-attribute
#
The username of the Telegram bot.
If this value is configured, Jellyseerr users will be able to click a link to start a chat with your bot and configure their own personal notifications.
chat_id: Optional[str] = None
class-attribute
instance-attribute
#
Chat ID of the group chat to send messages to.
Required if Telegram notifications are enabled.
send_silently: bool = False
class-attribute
instance-attribute
#
When set to true
, sends messages without notification sounds.
notification_types: Set[NotificationType] = set()
class-attribute
instance-attribute
#
The notification types to send to the service.
By default no notifications are sent, even if enabled, so remember to set the types of events you'd like to get notified for.
Values:
media-pending
media-approved
media-available
media-failed
test-notification
media-declined
media-auto-approved
issue-created
issue-comment
issue-resolved
issue-reopened
media-auto-requested
Webhook#
Send a custom JSON payload to any endpoint for specific notification events.
webhook_url: Optional[AnyHttpUrl] = None
class-attribute
instance-attribute
#
The webhook URL to post notifications to.
The rendered payload template will be the body of the request.
authorization_header: Optional[SecretStr] = None
class-attribute
instance-attribute
#
Thie value to be set in the Authorization
HTTP header.
This is not always required by the webhook provider.
payload_template: NonEmptyStr = '<JSON template>'
class-attribute
instance-attribute
#
The template for the JSON payload sent to the webhook URL.
For help on configuring this option, refer to this guide in the Overseerr documentation.
notification_types: Set[NotificationType] = set()
class-attribute
instance-attribute
#
The notification types to send to the service.
By default no notifications are sent, even if enabled, so remember to set the types of events you'd like to get notified for.
Values:
media-pending
media-approved
media-available
media-failed
test-notification
media-declined
media-auto-approved
issue-created
issue-comment
issue-resolved
issue-reopened
media-auto-requested