Налаштування передачі рекомендацій за допомогою JavaScript API eSputnik Support

Дані користувача

Email

Омніканальність

Автоматизація

Запити JS API для різних типів сторінок сайту

Якщо ви плануєте використовувати алгоритми товарних рекомендацій eSputnik, а відображення (зовнішній вигляд блоків, сторінки показу тощо) налаштувати на своїй стороні, вам необхідно

Приклади запитів

На головній та 404 сторінці 

eS('getRecommendations', {
  'variantId': 'r554v778'
  }, function(error, products) {

  if (error) {
            console.error(error);
            return ;
        }

});

На сторінці товару

eS('getRecommendations', {
  'variantId': 'r554v778',
  'productId': 'MX-1512\42'
  }, function(error, products) {

  if (error) {
            console.error(error);
            return ;
        }

});

На сторінці кошика

eS('getRecommendations', {
  'variantId': 'r554v778',
  'productIds': ['123', '543534']
  }, function(error, products) {

  if (error) {
            console.error(error);
            return ;
        }

});

На поп-апі кошика використання події StatusCartPage

eS('sendEvent', 'StatusCartPage');

На сторінці категорій

eS('getRecommendations', {
  'variantId': 'r554v778',
  'categoryKey': 'cK'
  }, function(error, products) {


  if (error) {
            console.error(error);
            return ;
        }
});

Метод JS API – асинхронний, що дозволяє не чекати на виконання інших функцій на сайті.

Параметри запиту

Назва

Тип

Приклад

Опис

variantId

Required

String

r262v361

Унікальний ідентифікатор варіанта рекомендації, створений в акаунті eSputnik.

productId

Optional

String

MX-1512\42

Для передачі ID товару зі сторінки, на якій знаходиться користувач.

Обов'язковий параметр для рекомендацій з використанням продуктового алгоритму (схожі товари, з цим товаром купують), для інших типів алгоритмів передавати не потрібно.

productIds

Optional

List

['123', '543534']

 

Для передачі id товару або масиву ids товарів корзини.

Обов'язковий параметр для рекомендацій з використанням продуктового алгоритму (схожі товари, з цим товаром купують), для інших типів алгоритмів передавати не потрібно.

categoryKey

Optional

String

Jackets

Для передачі ключа категорії, в якій перебуває користувач.

Обов'язковий параметр для рекомендацій із використанням категоріального алгоритму (персонально для вас у цій категорії), для інших типів алгоритмів передавати не потрібно.

allFields Optional Boolean true\false

Параметр для визначення того, які атрибути товару будуть у запиті рекомендацій: Усі (які є у фіді товарних даних) або тільки

Обов'язкові:

product_id
url
container_type

За замовчуванням параметр = false

Приклад відповіді

У разі успішного надсилання запиту ви отримаєте таку відповідь:

Тіло відповіді Тип Опис
[
 {
"product_id": "02G439",
 "container_type": "19534_r24v435",
"url": "https://…?sc_content=19534_r24v435"
// та iншi атрибути товару з фiда
 }
]
List<object> ● product_id - ідентифікатор товару, що рекомендується
● container_type необхідно використовувати для передачі події ProductImpression
● url містить посилання на товар з додатковим параметром для правильного трекінгу кліків.
 

Важливо

Ви не повинні редагувати значення, що повертається в поле URL-адреси, щоб веб-трекінг працював правильно.

Приклад помилки

Приклад

Тип

Опис

variantId r262v361 was not found in config

String

Такий ідентифікатор варіанта рекомендації не знайдено.

Важливо

Після виклику та відображення блоку рекомендацій для правильного трекінгу необхідно передавати подію ProductImpressions.

Фільтрування рекомендацій

Фільтрування рекомендацій через JavaScript API дозволяє показувати товари на сайті, фільтруючи видачу рекомендацій за даними з фіду або контактними даними, що зберігаються на вашій стороні. Наприклад, можна фільтрувати рекомендації за містом проживання, розміром одягу, улюбленим брендом, акційною пропозицією тощо.

Фільтрування рекомендацій через JS API позбавляє вас необхідності кожного разу змінювати правила фільтрації в джерелі даних в eSputnik.

Формат запиту:

eS('getRecommendations', {
    variantId: 'r362v614',
                'filters': {
                       'include': [{'name': 'city', values: ['Kiev','Kharkiv']}]
                }
  },
  function(error, products) {
    if (error) {
      console.error(error);
      return;
    }
  }
);

Параметри запиту:

Назва

Тип Опис
filters Optional
Object
Параметр, який включає правила фільтрації.
include Optional
List 

Сувора фільтрація: рекомендація лише товарів згідно з заданими параметрами. Наприклад, показувати лише товари певного бренду.

exclude Optional
List

Сувора фільтрація: товари із заданими параметрами не показуються. Наприклад, не показувати акційні товари.

should Optional
List

М’яка фільтрація: товари із заданими параметрами
показуються пріоритетно, решта — за умовчанням
(якщо у видачі має бути 20 рекомендацій, буде показано 5 товарів із заданими параметрами, решта 15 — без застосування фільтра). Наприклад, включати у рекомендації товари з нової колекції.

name

Required
String

Назва параметра товару із товарного фіду.
values Required List 

Список значень для фільтрації. Кома у значеннях values — оператор OR (values: ['Kiev','Kharkiv']).

Також ви можете визначити поле (параметр), за яким в фіді відбуватиметься фільтрація категорій товарів для показу у рекомендаціях. Для цього вкажіть потрібне значення categoryField у запиті.

Приклад запиту:

eS('getRecommendations', {
    variantId: 'r1673v2111',
		categoryKey: 'ВАННА КІМНАТА',
    categoryField:'tags_all_category_names'
  },
  function(error, products) {
    if (error) {
      console.error(error);
      return;
    }
  }
);

де tags_all_category_names гарантує пошук за всіма значеннями дерева категорій.


Якщо ви хочете задавати відображення зовнішнього вигляду рекомендаційних блоків у eSputnik, ознайомтеся з цією інструкцією.

Залишилися питання?
Спеціалісти обов'язково нададуть відповідь та допоможуть вирішити вашу проблему!
Зворотний дзвінок
Залишіть заявку – і наш спеціаліст зв'яжеться з вами в робочий час.
Відправити заявку
Консультація в чаті
Готові до ваших запитань!
Написати в чат
Електронна пошта
Напишіть в службу підтримки eSputnik.
Надіслати email