Настройка передачи рекомендаций с помощью 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