First steps
User Data
- Email Builder Review
- Designing your email
- Creating a Synchronized Module
- Setting Responsivity
- Building Smart Containers
- Creating a Gmail Promotions Annotation
- Adding a Rollover Effect
- Adding a Background to an Email
- Adding Anchor Links
- Adding a Video to an Email
- Adding a Table to an Email
- Adding a Custom Font
- Adding Social Media Buttons
- Editing HTML and CSS
- Working with “Images” block
- Using AI in the Email Editor
Omnichannel
- SDK for Mobile Apps
- Managing mobile SDK access keys
- Connecting Mobile App
- Creating a Google Project for Mobile Push Notifications
- Creating Mobile Push Messages
- Setting Up Delivery and Clicks Analytics
- Deep Links and Universal Links
- Scheduled Mobile Push Message
- Sending Test Messages from the Event Debug View
- Setting Up Widgets for Your Site
- Widget Calling
- Storing data from widgets to contact fields
- Using Annoyance Safeguard
- Actions After Form Submission
- Yespo Extension for Google Chrome
- Creating Pop-ups via Google Tag Manager or WordPress
- Sending Yespo Widget Events to Google Analytics
- Replacing Double Opt-In System Workflow
- Setting Up Locations for the Widget Calling Rules
Automation
Personalization
Analytics
- Email Campaign Report
- Web Push Campaign Report
- Viber Campaign Report
- Mobile Push Campaign Report
- App Inbox Campaign 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
Multilanguage Campaigns
Events and Behaviour Tracking
Recommendations
API
Security and Compliance
Integration
Transferring Recommendations via JavaScript API
In order to use Yespo product recommendation algorithms and customize their display on your side (appearance of blocks, display pages, etc.), follow these steps:
- install the script on the site to track the behavior of site visitors;
- upload product data feed to your Yespo account;
- set up the passing of recommendations from Yespo to your website.
Settings Description
The JS API function is required to receive recommendations and their further use in product blocks on the site.
Scripts for receiving recommendations
On the home page and 404 page
eS('getRecommendations', {
'variantId': 'r554v778'
}, function(error, products) {
if (error) {
console.error(error);
return ;
}
});
On the product page
eS('getRecommendations', {
'variantId': 'r554v778',
'productId': 'MX-1512\42'
}, function(error, products) {
if (error) {
console.error(error);
return ;
}
});
On the cart page
eS('getRecommendations', {
'variantId': 'r554v778',
'productIds': ['123', '543534']
}, function(error, products) {
if (error) {
console.error(error);
return ;
}
});
Use the StatusCartPage event to determine the page type and display recommendations on the cart pop-up. Example:
eS('sendEvent', 'StatusCartPage');
On the categories page
eS('getRecommendations', {
'variantId': 'r554v778',
'categoryKey': 'cK'
}, function(error, products) {
if (error) {
console.error(error);
return ;
}
});
The JS API method is asynchronous, which allows not to wait for the execution of other functions on the site.
Request parameters
Name | Type | Example | Description |
variantId |
Required String |
r262v361 |
The unique ID of the recommendation variation in the Yespo account. |
productId |
Optional String |
MX-1512\42 |
To pass the product ID from the page the user is on. Required parameter for recommendations using the product algorithm (similar products, products that were bought together with some items); for other types of algorithms, it is not necessary to pass. |
productIds |
Optional List |
['123', '543534']
|
To pass a product ID or an array of cart product IDs. Required parameter for recommendations using the product algorithm (similar products, products that were bought together with some items); for other types of algorithms, it is not necessary to pass. |
categoryKey |
Optional String |
Jackets |
To pass the key of the category the user is in. Required parameter for recommendations using a categorical algorithm (personally for you in this category); for other types of algorithms, it is not necessary to pass. |
allFields | Optional Boolean | true\false |
Parameter for determining which product attributes will be in the recommendation request: All (which are available in the product data feed) or only Required: product_id Default parameter setting = false |
Response example
Upon successful submission of the request, you will receive a response similar to the following:
Response body | Type | Description |
|
List<object> | ● product_id - recommended product ID ● container_type must be used when passing the event ProductImpression ● URL contains a link to the product, with an additional parameter for proper web tracking |
Important!
Don’t edit the return value in the URL field for web tracking to work correctly.
Error example
Example | Type | Description |
variantId r262v361 was not found in config |
String |
No such recommendation variant identifier was found. |
Important!
Send the ProductImpressions event after calling and displaying the recommendations block for proper tracking.
Filtering Recommendations
Filtering recommendations through the JavaScript API allows you to show products on your site by filtering recommendations based on data from the feed or contact information stored on your side. For example, you can filter recommendations by the city of residence, clothing size, favorite brand, promotional offer, etc.
Filtering recommendations through JS API saves you from changing the filtering rules in the data source in Yespo account every time.
Request format:
eS('getRecommendations', {
variantId: 'r362v614',
'filters': {
'include': [{'name': 'city', values: ['Kiev','Kharkiv']}]
}
},
function(error, products) {
if (error) {
console.error(error);
return;
}
}
);
Request parameters:
Name |
Type |
Description |
filters | Optional Object |
A parameter that includes filtering rules. |
include | Optional List |
Strict filtering: recommend only products according to the given parameters. For example, show only products of a certain brand. |
exclude | Optional List |
Strict filtering: products with specified parameters are not shown. For example, do not show discount items. |
should | Optional List |
Non-strict filtering: products with specified parameters |
name |
Required |
The name of the product parameter from the product feed. |
values | Required List |
List of values to filter. The comma in values is the OR operator (values: ['Kiev','Kharkiv']). |
To set the appearance of recommendation blocks in eSputnik, please read this guide.