Интеграция с Tenjin

Tenjin — это платформа мобильной атрибуции и аналитики для разработчиков приложений и маркетологов. Она предоставляет инструменты для измерения и оптимизации кампаний по привлечению пользователей, предлагая детальную аналитику по эффективности приложения и поведению пользователей. Благодаря прозрачному и гибкому подходу Tenjin агрегирует данные из рекламных сетей и магазинов приложений, позволяя командам анализировать ROI, отслеживать конверсии и мониторить ключевые метрики эффективности.

Пересылая события подписки в Tenjin, вы точно видите, откуда приходят конверсии и какие кампании приносят наибольшую ценность по всем каналам, платформам и устройствам. По сути, дашборды Tenjin предоставляют расширенную аналитику для маркетинговых кампаний.

Пересылая атрибуцию Tenjin в Adapty, вы обогащаете аналитику Adapty дополнительными критериями фильтрации, которые можно использовать в когортном анализе и анализе конверсий.

Интеграция работает в двух направлениях:

  1. Получение данных атрибуции от Tenjin После настройки интеграции Adapty собирает данные атрибуции от Tenjin. Эту информацию можно просмотреть на странице профиля пользователя в дашборде Adapty.
  2. Отправка событий подписки в Tenjin Adapty отправляет события покупок в Tenjin в режиме реального времени. Эти события помогают оценить эффективность рекламных кампаний непосредственно в дашборде Tenjin.
Характеристика интеграцииОписание
РасписаниеВ реальном времени
Направление данных

Двусторонняя передача:

  • События Adapty: с сервера Adapty на сервер Tenjin
  • Атрибуция Tenjin: из SDK Tenjin на сервер Adapty
Точка интеграции Adapty
  • SDK Tenjin и Adapty в коде мобильного приложения
  • Сервер Adapty

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

Подключение Adapty к Tenjin

  1. Откройте страницу Integrations -> Tenjin в дашборде Adapty.

  2. Включите переключатель, чтобы активировать интеграцию.

    tenjin-toggle.webp
  3. Войдите в дашборд Tenjin.

  4. В меню навигации перейдите в Configuration -> Apps.

    tenjin-apps.webp
  5. Выберите приложение для вашей платформы (iOS или Android) и перейдите на вкладку App and SDK.

  6. На вкладке App and SDK нажмите Copy в столбце SDK Key. Если у вас ещё нет SDK-ключа, нажмите кнопку Generate SDK Key, чтобы создать его.

    tenjin-copy-sdk-key.webp
  7. Вернитесь в дашборд Adapty и вставьте скопированный SDK Key в соответствующее поле платформы:

    • Для iOS-приложений: вставьте в поле iOS SDK Key или iOS Sandbox SDK Key
    • Для Android-приложений: вставьте в поле Android SDK Key или Android Sandbox SDK Key

    У Tenjin нет специального режима песочницы для server-to-server интеграции. Используйте отдельное приложение Tenjin или один и тот же ключ как для продакшн, так и для sandbox-событий.

    tenjin-keys.webp
  8. Если у вас есть приложения на обеих платформах, повторите шаги 5–7 для другой платформы.

  9. (опционально) При необходимости настройте раздел How the revenue data should be sent. Подробное описание настроек см. в разделе Настройки интеграции.

  10. Нажмите Save, чтобы завершить настройку.

Теперь Adapty будет отправлять события покупок в Tenjin и получать данные атрибуции. Вы можете настроить передачу событий в разделе Events names.

Настройка событий и тегов

Tenjin принимает только события покупок и Trial started. В разделе Events names выберите, какие события следует передавать в Tenjin в соответствии с вашими целями отслеживания.

tenjin-events.webp

Подключение приложения к Tenjin

Используйте метод SDK Adapty.updateAttribution(), чтобы получить данные атрибуции от Tenjin и передать их в Adapty.

Структура события

Adapty отправляет выбранные события в Tenjin в соответствии с настройками в разделе Events names на странице интеграции с Tenjin. Каждое событие имеет следующую структуру:

{
  "price": 99.0,
  "locale": "en-US",
  "country": "ME",
  "postcut": "false",
  "currency": "USD",
  "platform": "ios",
  "quantity": 1,
  "bundle_id": "com.adapty.adaptydemoapp",
  "ip_address": "127.0.0.1",
  "os_version": "18.1.1",
  "product_id": "month.premium.99",
  "app_version": "3.2.0",
  "sdk_version": "server",
  "device_model": "iPhone 13 Mini",
  "advertising_id": "00000000-0000-0000-0000-000000000000",
  "os_version_release": "18.1.1",
  "developer_device_id": "00000000-0000-0000-0000-000000000000",
  "analytics_installation_id": "00000000-0000-0000-0000-000000000000"
}

Где:

ПараметрТипОписание
priceFloatЦена единицы товара в стандартных единицах валюты (например, для USD указывается в долларах).
localeStringЛокаль устройства. Для Android: Locale.getDefault().toString(). Для iOS: [[NSLocale currentLocale] localeIdentifier].
countryStringКод страны по стандарту ISO (например, US для США).
postcutString (Boolean)Указывает, была ли покупка отправлена после вычета комиссии платформы. 1 — да, 0 — нет.
currencyStringКод валюты по стандарту ISO (например, USD для долларов США).
platformStringПлатформа устройства (например, ios, android, windows, amazon).
quantityIntegerКоличество купленных единиц.
bundle_idStringИдентификатор пакета приложения (например, com.example.app).
ip_addressString (IPv4)IP-адрес пользователя. Используется для определения страны.
os_versionStringВерсия ОС устройства. Для Android: String.valueOf(Build.VERSION.SDK_INT). Для iOS: [[UIDevice currentDevice] systemVersion].
product_idStringУникальный идентификатор купленного продукта.
app_versionFloat, DecimalВерсия приложения. Для Android: context.getPackageManager().getPackageInfo(). Для iOS: [[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"].
sdk_versionStringИспользуемая версия SDK, всегда равна server.
device_modelStringМодель устройства. Для Android: Build.MODEL. Для iOS: sysctl("hw.machine").
advertising_idUUIDРекламный идентификатор устройства. Обязателен для Android. Для iOS может быть пустым или состоять из нулей.
os_version_releaseStringВерсия выпуска ОС. Для Android: String.valueOf(Build.VERSION.RELEASE). Для iOS: [[UIDevice currentDevice] systemVersion].
developer_device_idUUIDИдентификатор вендора (только для iOS).
analytics_installation_idUUIDИдентификатор аналитической установки. Подробнее см. в документации на https://docs.tenjin.com.