Skip to main content
Version: 1.3.x

Basic concepts

Let's dive into the concepts and terms you'll encounter with Engagespot.


A user in your application is anyone who can receive any form of notification. Users can be created either through the Engagespot console or by utilizing the Users API.

User Profile

Each user has a profile that can store fundamental information such as their email ID, phone number, name, and more. Certain attributes are essential for users to receive notifications through specific channels. For instance, users without an email ID in their profile won't be able to receive email notifications.


A channel in Engagespot represents a communication channel, such as Email, SMS, In-App, etc. Currently, Engagespot supports In-App, Email, SMS, WhatsApp, Webpush, Mobilepush, Slack, Discord, Teams, and Webhook.


A provider is any service that facilitates communication over a channel. For instance, SendGrid is a provider for the email channel, and Twilio serves as an SMS provider.

Provider Instance

A provider instance is created when you enable a provider in your Engagespot account using the credentials obtained from that specific provider.


A notification is information that needs to be conveyed to a user. Examples include "A new friend request," "A new unrecognized login," or "A new task," all of which can be treated as notifications.


A message, or notification message, signifies how a notification reaches the user through a specific channel. For instance, a friend request notification might be delivered to the user as an SMS message, an Email message, or an In-App toast message!

Notification Template

A notification template is a reusable entity that represents a notification, defining both the order and content of messages to be sent to users. Once you've created a notification template, it can be triggered either via the API or directly from the console.

Template Workflow

A notification template encompasses a workflow that dictates how messages should be triggered. For instance, in the friend request notification template, you can initiate an in-app message first, followed by a 20-second delay before triggering an email message. The workflow can even be conditional, based on the previous channel's delivery status.


A route determines which provider instance should be selected for delivering a particular message. For instance, you might have a primary Twilio SMS provider and a Sinch SMS provider as a backup in case the first one fails. Multiple routes can be configured for a channel.

Entry Condition

An entry condition specifies how a route should be chosen for delivering a message to a user. For instance, in the SMS channel, you can set up two routes, each with different providers. Each route can have an entry condition that limits the selection of that route based on the user's profile data, such as their country. This allows you to establish rules for selecting a specific provider based on the user's country, for example.