# Обзор задачи

Если у вас есть приложения на базе технологии, для которой у нас еще нет SDK, возможно вы захотите разработать собственную интеграцию (фактически SDK). Этот раздел служит для того, чтобы дать важную информацию по разрабтке SDK и помочь избежать множества проблем, которые на начальном этапе не очевидны.

Если ваше приложение работает на одной из этих технологий, используйте уже готовые SDK:

  1. Веб (JS SDK)
  2. Android/Java/Kotlin (Android SDK)
  3. iOS/Swift (iOS SDK)
  4. ReactNative (RN SDK)

Нет необходимости разрабатывать собственный велосипед и тратить на это месяцы работы и дебага.

Документация по API находится здесь: reference.api.rees46.com (opens new window)

# Идентификация устройства и пользователя

Наши текущие SDK уже умеют:

  1. Идентифицировать и игнорировать большинство ботов
  2. Определять, когда изменился пользователь устройства и переключать устройство на нового пользователя
  3. Идентифицировать анонимных пользователей и определять их по вторичным идентификаторам нашего API
  4. Гарантировать доставку событий в API даже при плохом соединении

# Ключевые задачи SDK

  1. Идентификация устройства и попытка его "узнать"
  2. Привязка устройства к конкретному пользователю
  3. Передача данных профиля в API
  4. Передача событий в API
  5. Привязка событий к инструментам платформы (чтобы в статистике было видно, был ли клик из поиска, товарных рекомендций, письма и пр)
  6. GET запросы инструментов (рекомендации, поиск и пр)
  7. Сбор подписок на веб пуши, мобильные пуши
  8. Отправка прочих данных (отзывы NPS, отзывы о товарах)