Инструкция для серверной интеграции модуля рекомендаций
Для получения рекомендаций нужно установить специальный запрос на backend страницы с товаром.
Запрос предполагает получение данных в формате json, который содержит в себе идентификатор товара, для которого мы выводим рекомендации и список самих рекомендации со всеми параметрами из товарного фида.
Получение рекомендаций
Выдача с авторизацией
Если в настройках вы указали, что выдача рекомендаций должна происходить с авторизацией, то используйте:
POST enrecom.enkod.ru/recom/?id={}&scriptId={}&limit={} - получить рекомендации для товара по его по id.
Тело запроса:
{
"login": "login",
"pass": "pass",
}
Выдача без авторизации
GET enrecom.enkod.ru/recom/?id={}&scriptId={}&limit={} - получить рекомендации для товара по его по id.
Заголовки
Чтобы запросы выполнились верно, вам нужно прописать заголовки:
- X-Account - системное имя аккаунта (запросите у аккаунт-менеджера)
- X-SessionGUID - идентификатор сессии
X-SessionGUID можно получить с помощью API-метода или с помощью скрипта (сессию необходимо считать с localstorage параметр enPop_sessionId.data и передать в этом заголовке).
Рекомендации формируются для сессии контакта и выдаются только в том случае, если контакт (с этой сессией) есть в базе enKod
Параметры
| Имя | Тип | Описание | Обязательность |
|---|---|---|---|
| id | String | Артикул товара, для которого нужны рекомендации | Обязательно для товароориентированных алгоритмов |
| scriptId | String | ID блока рекомендаций (в интерфейсе) | Обязательно |
| limit | String | Кол-во товаров в блоке рекомендаций | Необязательно |
| login | String | Логин для авторизации | Обязательно для выдачи с авторизацией |
| pass | String | Пароль для авторизации | Обязательно для выдачи с авторизацией |
Подробнее о параметре id
Обязательность параметра зависит от алгоритма, который используется в блоке рекомендаций. Для товароориентированных алгоритмов передача Id обязательна, для остальных - не передавайте параметр id.
Для каких алгоритмов требуется передавать Id товара:
- Похожие товары по тексту
- Похожие товары по изображению
- Сопутствующие товары
- Популярные товары в категории
Подробнее о параметре limit
Вы можете передать параметр limit, если вам требуется в конкретном месте вывести меньше рекомендованных товаров, чем было настроено в блоке в интерфейсе. Если передать в параметре значение больше установленного, то мы не сформируем рекомендации, превышающие лимит в настройках блока.
Пример ответа на запрос от нашего сервиса в формате json:
{
"productId": "123",
"recom":
[
{
"id": 88405,
"information": {
"id":88405,
"title":"Спальный мешок Lynx",
"availability":"in stock",
"price":"12540 RUB",
"gtin":"0191476115395",
"color":"оранжевый",
"gender":"unisex",
"size":"Regular Right-Handed"
}
},
{
"id": 89130,
"information": {
"id":89130,
"title":"Спальный мешок Lynx",
"availability":"in stock",
"price":"12540 RUB",
"gtin":"0191476115395",
"color":"оранжевый",
"gender":"unisex",
"size":"Regular Right-Handed"
}
}
]
}
Вывод рекомендаций на сайт
После настройки получения рекомендаций вам необходимо реализовать вывод товаров на сайт. Для этого нужно сверстать блок товаров в соответствии с вашим дизайном и логикой сайта. Воспользуйтесь примером верстки блока, который вы можете использовать, как основу. В примере прописаны все основные и обязательные атрибуты для корректной работы рекомендаций.
Клик по товару в блоке рекомендаций
POST ext.enkod.ru/recom/saveinfo
Чтобы запросы выполнились верно, вам нужно прописать заголовки:
- X-Account - системное имя аккаунта, это значение подскажет ваш менеджер;
- X-Session-Id - идентификатор сессии
Пример тела запроса:
{
"id": "12345",
"scriptId": "10",
}
Параметры запроса:
| Имя | Тип | Описание | Обязательность |
|---|---|---|---|
| id | String | Артикул товара, на который кликнули | Обязательно |
| scriptId | Int | ID блока рекомендаций (в интерфейсе) | Обязательно |