First steps
User Data
- Responsive Email Editor Review
- Designing your email
- Creating Synchronized Modules
- Setting Up Responsive Email Design
- Setting Up Smart Containers
- Creating a Gmail Promotions Annotation
- Adding The Rollover Effect
- Adding Anchor Links
- Module Library
- Adding a Table to an Email
- Adding Custom Fonts
- Creating CTA Button
- Working with Images
- Creating Timer
- Using AI in the Email Editor
- Messenger Protocol Support in Email Clients and Platforms
Omnichannel
- Setting Up Widgets for Your Site
- Widgets Gamification
- Widget Calling
- Setting Up Locations for the Widget Calling Rules
- Storing data from widgets to contact fields
- Using Annoyance Safeguard
- Actions After Form Submission
- Replacing Double Opt-In System Workflow
- Creating Pop-ups via Google Tag Manager or WordPress
- Sending Yespo Widget Events to Google Analytics
- Using A/B Tests for Widgets
- Collecting Contact Information Using Request Forms
Automation
- Building and Editing Workflows
- Configuring Workflow Start/Stop Conditions
- Start Block
- Popular Blocks
- Message Blocks
- Using One from Many Message Block
- Contact Blocks
- Conditions Blocks
- Other Blocks
- Message to Segment Blocks
- Time Blocks
- Advanced Workflow Block Parameters
- Setting Up Allowed Send Time
- Using Workflow Launch History
- Webhook Workflows
- Workflow Troubleshooting
- Double Opt-In
- Welcome Сampaign
- Welcome Series Segmented by Category
- Launching a Workflow After a Contact Import
- Regular Workflow for a Segment
- Birthday Campaign
- Linking Workflow to the Button
- Using Variables from Order in Workflow
- Collecting Order Feedback
- Customer Reactivation
- Sending Extra Campaigns
- Sending Reminders at the Time Specified by the User
- Sending Campaign to Those Who Did Not Open the Previous One
- Using A/B Tests In Workflows
Personalization
Analytics
- Email Campaign Report
- Web Push Campaign Report
- Viber Campaign Report
- Mobile Push Campaign Report
- App Inbox Campaign Report
- Telegram Campaign Report
- In-App Report
- Widget Report
- Triggered Campaign Report
- AMP Campaign Report
- SMS Campaign Report
- Multilingual Campaign Report
- Setting up UTM Tags
- Revenue from Campaigns
- Tracking Campaign Performance in Google Analytics 4
- Message Analytics
Multilanguage Campaigns
Events and Behaviour Tracking
Recommendations
API
Security and Compliance
Configuring App Inbox for Websites
Setting up App Inbox includes:
- Getting authentication token.
- Script installation and initialization.
- Integration of a widget displayed on the site.
Note
App Inbox functionality works only for users authorized on the site.
Getting Authentication Token
Send the request from your backend to our API to receive the authentication token (authToken).
Authenticate the request using one of the methods specified in the API instructions, for example, using an API key.
Request method |
POST |
URL |
https://v1/auth/contact/token |
Request header |
Content-Type: application/json |
Request body |
|
Response: HTTP 200 |
|
The request has to contain the known contact fields: email, phone, externalCustomerId (at least one field is required). Those fields are used for searching a contact in the platform. Afterward, the script uses authToken in requests to our system's server.
You can find additional information about managing contacts in API methods for adding contacts.
Important:
-
The token can become invalidated at any moment for security considerations, so you get it more than once. The script renews the token automatically by calling getAuthTokenCallback.
-
If a contact is not in the system, the token is not returned, and the following response comes back instead:
{
"token": ""
}
Script Installation and Initialization
Install and initialize the script on your frontend. Transmit getAuthTokenCallback in the parameters. This shall have the function calling your backend and returning the token.
If you have installed our script to work with web tracking, forms and recommendations, you don’t need to reinstall it. Just add parameters for App Inbox to the initialization call.
Example:
eS('init', {RECOMS: true, TRACKING: false, APP_INBOX: true}, {getAuthTokenCallback: () => yourImplementationOfAuthCallback(), language: 'en', });
Important: Call the 'init' initialization command one time at every page loading.
If you have not installed the script before, contact our support team to get it, indicating that you need it for App Inbox.
You can get the script by yourself in the Settings > Web Tracking section.
You can learn how to set up a web tracking code here.
Important: Modify the call of the 'init' command in the script generated in the Web Tracking section as follows:
instead of
eS('init')
it has to be
eS('init', {APP_INBOX: true}, {getAuthTokenCallback: () =>yourImplementationOfAuthCallback(), language: 'en', });
Example of a script with initialization:
<script> !function (t, e, c, n) {var s = e.createElement(c); s.async = 1, s.src = 'https://scripts/' + n + '.js'; var r = e.scripts[0]; r.parentNode.insertBefore(s, r); var f = function () {f.c(arguments); }; f.q = []; f.c = function () {f.q.push(arguments); }; t['eS'] = t['eS'] || f; }(window, document, 'script', 'UUID'); </script><script>eS('init', {APP_INBOX: true}, {getAuthTokenCallback: () => yourImplementationOfAuthCallback(), language: 'en', });</script>
Parameters of the Object Passed to our platform's Function
Name |
Example |
Description |
getAuthTokenCallback |
Required type: () => Promise<String> |
Asynchronous function called by the script to get authToken. It has to address to the Customer Backend and return Promise |
language |
en Required Type: String |
ISO 639-1 |
Integration of App Inbox Widget
To integrate the widget on the site, the user has to provide to our CDP:
-
Insert type position relative to other element(s) (insertAdjacentHTML method is applied).
In addition, you can submit an SVG file with the desired design of the notification icon (Bell button) and the design of notifications.
Send us a request to make up the bell button and notifications according to your design.