# Товарные рекомендации

Проверка инициализации SDK

Проверяйте флаг инициализации SDK, прежде чем делать запросы к API. Если SDK не инициализирован, то нет гарантии, что did и seance корректные и попытка отправить запрос может привести к ошибкам. А массовая история может привести к DDOS-атаке.

Когда пользователь попадает на экран приложения, на котором должны быть блоки, необходимо выполнить запросы к API /recommend для каждого блока со всеми необходимыми параметрами текущего контекста:

  1. Если пользователь находится на карточке товара, передать ID текущего товара.
  2. Если пользователь находится в категории, передать ID текущей категории.
  3. Если пользователь находится на экране с пустыми результатами поиска, передать поисковый запрос.
  4. И т.д.: смотрите документацию с параметрами блоков рекомендаций.

Не забудьте в запросе указать параметр extended=1, чтобы получить не только идентификаторы товаров, но и их характеристики. В этом случае в ответе также вернется готовый HTML по шаблону из редактора блока рекомендаций -- в мобильном приложении его игнорируйте. Это для сайта.

Обязательно используйте обработчик ошибок, если с запросом к API что-то случится.

# Типичные проблемы

  1. В карточке товара для блока рекомендаций не передается ID текущего товара.
  2. На экране категории для блока рекомендаций не передается ID текущей категории.
  3. Большое количество блоков на экране (10-20) при том, что они спрятаны в разных вкладках и одновременно пользователь может увидеть не более трех блоков. Делайте поисковые запросы
  4. Большой лимит товаров в блоке. Не делайте в блоке рекомендаций более 30 товаров. Если вы хотите вывести в категории персонализированную выдачу на 100-200 товаров, это делается другим способом.

# Обработка ошибок

Ошибка Что делать
SDK не инициализирован Не обращаться к API
Нет связи Повторить попытку с интервалом в 5 секунд не более 3 раз
4xx Не делать повторные попытки
500 Повторить попытку с интервалом в 5 секунд не более 3 раз
502 Не делать повторные попытки
504 Не делать повторные попытки