Enums
This module is used to gather all enumerations defined by Novu in Python format to be reused by developers.
- class novu.enums.ChangeKind(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define all kinds of change in Novu
- FEED = 'Feed'
The change is related to a feed
- LAYOUT = 'Layout'
The change is related to a layout
- MESSAGE_TEMPLATE = 'MessageTemplate'
The change is related to a message template
- NOTIFICATION_GROUP = 'NotificationGroup'
The change is related to a notification group
- NOTIFICATION_TEMPLATE = 'NotificationTemplate'
The change is related to a notification template
- class novu.enums.Channel(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define all available channel in Novu
- CHAT = 'chat'
Chat channel (discord, MS Teams, Slack, …)
- EMAIL = 'email'
Email channel (Custom SMTP, EmailJS, MailerSend, Mailjet, Outlook 365, Postmark, SendGrid, Sendinblue, Amazon SES, …)
- IN_APP = 'in_app'
In APP channel
- PUSH = 'push'
Push channel (Expo, Firebase Cloud Messaging, …)
- SMS = 'sms'
SMS channel (SMS77, AWS SNS, Telnyx, Twilio SMS, …)
- class novu.enums.ChannelExtended(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define all available channel in Novu and intermediate provider between channel.
This definition is useful to determine if a block is a channel or a digest for example.
- CHAT = 'chat'
Chat channel (discord, MS Teams, Slack, …)
- DELAY = 'delay'
A delay in the notification template
- DIGEST = 'digest'
Used to aggregate message on certain conditions
- EMAIL = 'email'
Email channel (Custom SMTP, EmailJS, MailerSend, Mailjet, Outlook 365, Postmark, SendGrid, Sendinblue, Amazon SES, …)
- IN_APP = 'in_app'
In APP channel
- PUSH = 'push'
Push channel (Expo, Firebase Cloud Messaging, …)
- SMS = 'sms'
SMS channel (SMS77, AWS SNS, Telnyx, Twilio SMS, …)
- TRIGGER = 'trigger'
Trigger to start the notification template
- class novu.enums.ChatProviderIdEnum(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible chat provider ID
- DISCORD = 'discord'
Discord provider for chat messages
- MS_TEAMS = 'msteams'
MS Teams provider for chat messages
- SLACK = 'slack'
Slack provider for chat messages
- class novu.enums.CredentialsKeyEnum(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible key in a Novu credentials dict
- ACCOUNT_SID = 'accountSid'
Account SID
- API_KEY = 'apiKey'
Api key
- APPLICATION_ID = 'applicationId'
Application ID
- BASE_URL = 'baseUrl'
Base URL
- CLIENT_ID = 'clientId'
Client ID
- DOMAIN = 'domain'
Domain
- FROM = 'from'
From
- HOST = 'host'
Host
- MESSAGE_PROFILE_ID = 'messageProfileId'
Message profile ID
- PASSWORD = 'password'
Password
- PORT = 'port'
Port
- PROJECT_NAME = 'projectName'
Project name
- REGION = 'region'
Region
- SECRET_KEY = 'secretKey'
Secret key
- SECURE = 'secure'
Secure
- SENDER_NAME = 'senderName'
Sender name
- SERVICE_ACCOUNT = 'serviceAccount'
Service account
- TOKEN = 'token'
Token
- USER = 'user'
User
- WEBHOOK_URL = 'webhookUrl'
Webhook URL
- class novu.enums.EmailProviderIdEnum(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible email provider ID.
For more details about their configuration, see https://docs.novu.co/channels/email/
- CLICKATELL = 'clickatell'
Click-a-tell mail provider
- CUSTOM_SMTP = 'nodemailer'
Custom SMTP provider, for example a nodemailer
- EMAILJS = 'emailjs'
EmailJS mail provider, see
- INFOBIP = 'infobip-email'
InfoBIP mail provider
- MAILERSEND = 'mailersend'
Mailer Send provider
- MAILGUN = 'mailgun'
MailGun mail provider
- MAILJET = 'mailjet'
MailJet mail provider
- MANDRILL = 'mandrill'
Mandrill mail provider
- NETCORE = 'netcore'
NetCore mail provider
- NOVU = 'novu-email'
Novu internal mail provider
- OUTLOOK365 = 'outlook365'
Outlook 365 mail provider
- POSTMARK = 'postmark'
Postmark mail provider
- SENDGRID = 'sendgrid'
SendGrid mail provider
- SENDINBLUE = 'sendinblue'
SendInBlue mail provider
- SES = 'ses'
Amazon SES mail provider
- class novu.enums.EventStatus(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible status of an event
- PROCESSED = 'processed'
The event have been processed
- SUBSCRIBER_ID_MISSING = 'subscriber_id_missing'
The subscriber ID you gave was not found
- TEMPLATE_NOT_FOUND = 'template_not_found'
The template was not found
- TRIGGER_NOT_ACTIVE = 'trigger_not_active'
The trigger you gave is not active
- class novu.enums.ExecutionSource(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define all sources possible for an execution in Novu
- CREDENTIALS = 'Credentials'
Execution detail source is credentials
- INTERNAL = 'Internal'
Execution detail source is internal
- PAYLOAD = 'Payload'
Execution detail source is payload
- WEBHOOK = 'Webhook'
Execution detail source is webhook
- class novu.enums.ExecutionStatus(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define all status possible for an execution in Novu
- FAILED = 'Failed'
Execution failed
- PENDING = 'Pending'
Execution is pending
- QUEUED = 'Queued'
Execution is queued
- READ_CONFIRMATION = 'ReadConfirmation'
Execution reading has been confirmed
- SUCCESS = 'Success'
Execution is successful
- WARNING = 'Warning'
Execution end with a warning
- class novu.enums.FieldFilterPartOn(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible trigger (
on) for a field filter part- IS_ONLINE = 'isOnline'
Allow to check if the subscriber is online
- IS_ONLINE_IN_LAST = 'isOnlineInLast'
Allow to check if the subscriber is online in last X given minutes
- PAYLOAD = 'payload'
Filter using the payload’s data
- SUBSCRIBER = 'subscriber'
Filter using the subscriber’s data
- WEBHOOK = 'webhook'
Filter using the webhook’s data
- class novu.enums.FieldFilterPartOperator(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible operator for a field filter part
- BETWEEN = 'BETWEEN'
Between operator (
lower_range <= item <= upper_range)
- EQUAL = 'EQUAL'
Equal operator (
==)
- IN = 'IN'
Membership operator (
in)
- LARGER = 'LARGER'
Larger operator (
>)
- LARGER_EQUAL = 'LARGER_EQUAL'
Larger or equal operator (
>=)
- LIKE = 'LIKE'
LIKE operator (
sentence.find(item))
- NOT_BETWEEN = 'NOT_BETWEEN'
Not between operator (
not (lower_range <= item <= upper_range))
- NOT_EQUAL = 'NOT_EQUAL'
Not equal operator (
!=)
- NOT_IN = 'NOT_IN'
Not equal operator (
not in)
- NOT_LIKE = 'NOT_LIKE'
Not LIKE operator (
not sentence.find(item))
- SMALLER = 'SMALLER'
Smaller operator (
<)
- SMALLER_EQUAL = 'SMALLER_EQUAL'
Smaller or equal operator (
<=)
- class novu.enums.FieldFilterPartTimeOperator(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible operator for a filed filter part which is used if
FieldFilterPartDto.onis set toFieldFilterPartOn.IS_ONLINE_IN_LAST- DAYS = 'days'
The days operator
- HOURS = 'hours'
The hours operator
- MINUTES = 'minutes'
The minutes operator
- class novu.enums.InAppProviderIdEnum(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible in_app provider ID
- NOVU = 'novu'
The only in-app provider, Novu
- class novu.enums.NotificationStepMetadataType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible type of step’s metadata
- BACKOFF = 'backoff'
Metadata for a digest in back-off mode
- REGULAR = 'regular'
Metadata for a digest in regular mode
- SCHEDULED = 'scheduled'
Metadata for a scheduled step
- class novu.enums.NotificationStepMetadataUnit(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible unit of step’s metadata
- DAYS = 'days'
In days
- HOURS = 'hours'
In hours
- MINUTES = 'minutes'
In minutes
- SECONDS = 'seconds'
In seconds
- class novu.enums.PushProviderIdEnum(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible push provider ID
- APNS = 'apns'
APNS notification push provider
- EXPO = 'expo'
EXPO notification push provider
- FCM = 'fcm'
FCM notification push provider
- class novu.enums.SmsProviderIdEnum(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible sms provider ID
- BURST_SMS = 'burst-sms'
BurstSMS provider
- CLICKATELL = 'clickatell'
Click-a-tell sms provider
- FIRETEXT = 'firetext'
Firetext sms provider
- GUPSHUP = 'gupshup'
Gupshup sms provider
- INFOBIP = 'infobip-sms'
InfoBIP sms provider
- NEXMO = 'nexmo'
Nexmo sms provider
- PLIVO = 'plivo'
Plivo sms provider
- SMS77 = 'sms77'
SMS 77 provider
- SNS = 'sns'
Amazon SNS provider
- TELNYX = 'telnyx'
Telnyx sms provider
- TWILIO = 'twilio'
Twilio sms provider
- class novu.enums.StepFilterType(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)
This enumeration define possible type for a step filter
- BOOL = 'BOOLEAN'
Boolean filter
- DATE = 'DATE'
Date filter
- GROUP = 'GROUP'
Group filter
- LIST = 'LIST'
List filter
- MULTI_LIST = 'MULTI_LIST'
Multi-list filter
- NUMBER = 'NUMBER'
Number filter
- STATEMENT = 'STATEMENT'
Statement filter
- TEXT = 'TEXT'
Text filter