Краткий обзор: Отправляйте сырые данные о событиях атрибуции на серверные конечные точки.
Push API
Push API передает сырые данные, создаваемые средствами атрибуции AppsFlyer и SKAdNetwork, в виде сообщений на ваши серверы. Вы можете выбрать типы и контент сообщений и задать конечные точки.
Доступные типы сообщений, частота обновления данных и поля зависят от выполняющей атрибуцию инфраструктуры (AppsFlyer или SKAN), как описано в следующих разделах.
Сообщения атрибуции AppsFlyer
Характеристики сообщения
| Характеристика | Подробности |
|---|---|
| Разделение сообщений на типы |
Пример: Сообщение содержит следующие данные:
Используя таблицу, определяем, что это событие является событием установки, выполненной органическим пользователем. |
| Обновление данных | Сообщения отправляются вскоре после регистрации события на платформе AppsFlyer. Обычно это происходит в течение нескольких минут. |
| Содержание сообщения (поля) |
|
| Формат полей меток времени |
|
Доступные типы сообщений
| Контекст атрибуции | Тип сообщения | Поле conversion_type | Поле campaign_type | Поле event_name | Поле event_type |
|---|---|---|---|---|---|
| Привлечение пользователей | Установка* | Установить |
Неорганические: UA Органические: organic |
Установить |
|
| Привлечение пользователей | События внутри приложения при установке | Установить |
Неорганические: UA Органические: organic |
Имена событий, определяемые рекламодателем |
|
| Ретаргетинг | повторное вовлечение | повторное вовлечение | ретаргетинг | повторное вовлечение | повторная атрибуция |
| Ретаргетинг | События повторного вовлечения внутри приложения | повторное вовлечение | ретаргетинг | Имена событий, определяемые рекламодателем | re-engagement-in-app-event |
| Ретаргетинг | Повторная атрибуция | Повторные установки | ретаргетинг | повторная атрибуция | повторная атрибуция |
| Привлечение пользователей | Переустановка | Повторные установки |
Неорганические: UA Органические: organic |
Повторные установки |
|
| Ретаргетинг | События реатрибуции внутри приложения | Повторные установки | ретаргетинг | Имена событий, определяемые рекламодателем | re-attribution-in-app-event |
| * Некоторые установки, связанные с атрибуцией по просмотрам, атрибутируются ограниченному медиа-источнику. | |||||
Уникальные поля
| Отображаемое имя | Название Push API |
|---|---|
| Выбранная валюта* | selected_currency |
| Выручка в выбранной валюте | revenue_in_selected_ currency |
| Затраты в выбранной валюте | cost_in_selected_ currency |
| Время загрузки на устройство согласно выбранному часовому поясу | device_download_time_selected_timezone |
| Время атрибутированного взаимодействия согласно выбранному часовому поясу | attributed_touch_time_selected_timezone |
| Время установки согласно выбранному часовому поясу | install_time_selected_ timezone |
| Время события согласно выбранному часовому поясу | event_time_selected_ timezone |
| Выбранный часовой пояс(*) | selected_timezone |
| *Это настройка уровня приложения, действующая на момент отправки сообщения API. | |
Сообщения атрибуции SKAN
В этом разделе описаны сообщения (типы отчетов), доступные для SKAN, и способы их идентификации. Ознакомившись с содержимым этого раздела, переходите к теме Настройка конечной точки для атрибуции SKAN.
Связанная литература: Поля сырых данных SKAN. Сообщения Push API имеют аналогичную структуру и поля.
Характеристики сообщений
| Характеристика | Подробности |
|---|---|
| Разделение сообщений на типы |
Пример: Сообщение содержит следующие данные:
Исходя из этого, мы можем определить, что:
|
| Обновление данных |
|
| Примеры сообщений | Файл содержит примеры сообщений. В приведенном примере используется формат JSON. Пример сообщений SKAN. |
Типы сообщений для атрибуции SKAN
| Тип сообщения | Поле event_name | Поле skad_redownload | Поле event_type |
|---|---|---|---|
| Установки | Установить |
|
skad-install |
| Повторные загрузки | Установить | True | skad-re-download |
| Внутренние события приложения | Название события, заданное рекламодателем | Название события, заданное рекламодателем | skad-in-app-event |
| Постбэки от iOS | Недоступно в этом сообщении | Иногда доступно | skad_postback |
| Копии постбэков | Недоступно в этом сообщении | Иногда доступно | skad-postback-copy |
Настройка конечных точек Push API
Предупреждение
Не используйте Push API для отправки данных атрибуции AppsFlyer третьим сторонам, поскольку:
- Вы можете нарушить законы о конфиденциальности, такие как GDPR, если пользователь сообщил о своем нежелании передавать данные третьим сторонам.
- Некоторые медиа-источники ограничивают использование предоставляемых ими данных уровня пользователя, передачу таких данных третьим сторонам, или и то, и другое. Убедитесь, что вы соблюдаете условия использования медиа-источников.
Например, X Ads, Snapchat,Pinterest.
Примечание: Это предупреждение не распространяется на данные SKAN. Для отправки данных SKAN на сторонние конечные точки используйте Push API.
Чтобы настроить Push API, выполните следующий список действий.
Чек-лист по настройке Push API
| Шаг № | Атрибуция Appsflyer | Атрибуция SKAdNetwork |
|---|---|---|
| 1 |
Если у вас уже есть активная конечная точка Push API, этот шаг можно пропустить. Заполните требования к серверу. |
|
| 2 | Для атрибуции AppsFlyer планируйте настройки конечных точек с помощью чек-листа для планирования Push API. | Не применимо |
| 3 | Настройка конечной точки для атрибуции AppsFlyer | Настройка конечной точки для атрибуции SKAdNetwork |
Требования к серверу (ваш сервер)
Убедитесь, что ваш сервер соответствует следующим требованиям:
Требования к серверу
| URL-адрес конечной точки |
|
| Ответный код конечной точки | После получения сообщения конечная точка должна вернуть код состояния HTTP 200. |
| Список одобренных серверов AppsFlyer | Для обеспечения связи с конечной точкой занесите IP-адреса серверов AppsFlyer в разрешенный список ваших межсетевых экранов и систем безопасности. |
| Версии TLS |
|
| Порты | Порты: 80, 443 |
Важно! Действует механизм тайм-аута со временем ожидания 4 секунды. Если за это время AppsFlyer не получит сообщение OK, AppsFlyer будет считать это сбоем отправки сообщения.
Чек-лист планирования Push API для атрибуции AppsFlyer
- Используйте этот чек-лист для планирования настроек конечных точек AppsFlyer. Цифры на рисунке соответствуют номерам строк в чек-листе.
- Этот раздел неактуален для атрибуции SKAdNetwork. См. раздел Настройка атрибуции SKAdNetwork.
Конечная точка
Таблица планирования конечных точек
| Нет. | Настройка | Подробности | Используйте этот столбец для записи планируемых настроек |
|---|---|---|---|
| 1 | Метод | POST или GET | |
| 2 | URL-адрес конечной точки | - | |
| 3 | Типы сообщений о событиях |
|
|
| 4 |
|
ПредупреждениеЕсли отметить пункт Выбрать все, то вновь добавленные поля также будут автоматически выбраны. Во избежание проблем убедитесь, что вы можете поддерживать все автоматически добавляемые в схему новые поля.
|
|
| 5 |
Типы внутренних событий
|
Фильтруйте по внутренним событиям, чтобы уменьшить трафик, отправляемый на вашу конечную точку.
|
Настройка конечной точки для атрибуции AppsFlyer
Примечание. Только владелец аккаунта AppsFlyer может изменять настройки Push API. Другие пользователи аккаунта могут только просматривать эти настройки.
Чтобы добавить конечную точку атрибуции AppsFlyer
- Перейдите в раздел Отчет > Доступ к API. Прокрутите вниз до раздела Push API.
- Нажмите Добавить конечную точку.
- Выберите метод HTTP: POST или GET
- Введите URL-адрес конечной точки. Если вы получили сообщение «Этот URL-адрес небезопасен», свяжитесь со службой поддержки AppsFlyer.
- Выберите один или несколько типов событий. Примечание: Если сообщения о внутренних событиях отключены, значит, пока не было записано ни одного внутреннего события.
- Выберите поля, которые нужно включить в сообщение Push API. Примечание:
- Обязательные поля, которые отправляются всегда: идентификатор приложения, имя события, время события, IDFA (iOS) или Advertising ID (Android)
- Чтобы выбрать дополнительные поля, используйте элементы управления, изображенные на рисунке ниже.
- Наиболее часто используемые поля уже выбраны по умолчанию. Вы можете отменить их выбор.
- Выберите нужные вам дополнительные поля.
- Выберите Очистить все , чтобы очистить все дополнительные поля.
- Мы не отправляем пустые поля и связанный с ними ключ. Просим учесть это при планировании ваших процессов импорта/анализа.
- Выберите одно или несколько (до 52) событий или Все события в приложении.
- Список заполняется типами событий, которые уже зарегистрированы. Если какое-то событие отсутствует, отправьте событие такого типа с помощью тестового устройства.
- Нажмите Сохранить.
Push API активен. Данные о конверсиях отправляются на конечную точку. - Проверьте конечную точку в соответствии с описанной ниже процедурой.
Проверить конечную точку:
- Нажмите Отправить тест.
Сообщение с результатом теста появится под кнопкой Отправить тест.
Тестовое сообщение отправлено на конечную точку. Если тест пройдет неудачно, проверьте, внесены ли IP-адреса AppsFlyer в список разрешенных.
Важно! Действует механизм тайм-аута со временем ожидания 2 секунды. Если за это время AppsFlyer не получит сообщение OK, AppsFlyer будет считать это сбоем отправки сообщения. - Проверьте, получено ли тестовое сообщение конечной точкой.
Смотреть копию отправленного сообщения.
Настройка конечной точки для атрибуции SKAdNetwork
Примечание. Только владелец аккаунта AppsFlyer может изменять настройки Push API. Другие пользователи аккаунта могут только просматривать эти настройки.
Чтобы добавить конечную точку SKAdNetwork для Push API:
- Перейдите в раздел Отчет > Доступ к API. Прокрутите вниз до раздела Push API.
- Выберите SKAdNetwork в качестве субъекта, выполняющего атрибуцию.
- Нажмите Добавить конечную точку.
Примечание: Можно задать 1–3 конечные точки SKAdNetwork на приложение. - Выберите метод HTTP: POST или GET
- Введите URL-адрес конечной точки. Если вы получили сообщение «Этот URL-адрес небезопасен», свяжитесь со службой поддержки AppsFlyer.
- Мы не отправляем пустые поля и связанный с ними ключ. Просим учесть это при планировании ваших процессов импорта/анализа.
- Нажмите Сохранить.
Push API активен. Данные отправляются на конечную точку.
Настройка токена аутентификации
Используя токен аутентификации Push API, клиенты могут бесшовно интегрировать и защитить свои сообщения Push-API, добавив пользовательский заголовок авторизации с запрашиваемым токеном.
Вы можете настроить заголовок авторизации, который будет отправляться вместе с вашими сообщениями Push-API, определив имя и значение токена, связанные с каждым идентификатором приложения. Это гарантирует, что ваши сообщения будут не только безопасны, но и настроены под ваши конкретные требования.
Дополнительные процедуры: управление конечными точками
Изменение конечной точки
Примечание. Только владелец аккаунта AppsFlyer может изменять настройки Push API. Другие пользователи аккаунта могут только просматривать эти настройки.
Чтобы изменить настройки конечной точки:
- Перейдите в раздел Отчеты > Доступ к API. Прокрутите вниз до раздела Push API.
- Найдите конечную точку, которую нужно изменить.
- Внесите изменения.
- Нажмите Сохранить.
Удаление конечной точки
Примечание. Только владелец аккаунта AppsFlyer может изменять настройки Push API. Другие пользователи аккаунта могут только просматривать эти настройки.
Чтобы удалить конечную точку:
- Перейдите в раздел Отчет > Доступ к API. Прокрутите вниз до раздела Доступ к Push API.
- Нажмите Удалить конечную точку.
- Нажмите Сохранить.
Конечная точка удалена.
Поиск и устранение неполадок, особенности и ограничения
Ошибка тестового сообщения
Если вы не получили тестовое сообщение, и доступ к вашим серверам органичен по IP-адресу, проверьте, что все IP-адреса AppsFlyer внесены в разрешенный список.
Повторяющиеся события ретаргетинга в приложении
События ретаргетинга в приложении дублируются, когда событие покупки происходит как часть кампании ретаргетинга во время окна повторного вовлечения UA. Это сделано, чтобы атрибутировать доход как медиа-источнику UA, так и медиа-источнику ретаргетинга.
Вы будете получать дублированные события, только если активированы одновременно:
- События внутри приложения при установке
- События ретаргетинга внутри приложений.
Выявление и дедупликация внутренних событий приложения
Выбор сообщений о событиях приложения отключен
- Событие приложения можно выбрать только после того, как было зарегистрировано хотя бы одно такое событие.
- Используйте тестовое устройство, чтобы сгенерировать внутреннее событие, или S2S API, чтобы сделать это вручную.
Отсутствующие push-сообщения и CloudFront
Вы используете Amazon CloudFront в качестве конечной точки? Если да, проверьте, не отклоняет ли CloudFront сообщение с кодом 421. Если это так, обратитесь к статье Как CloudFront отрабатывает запросы HTTPS.
Сообщения об ошибках конечных точек
Признак ошибки: сообщение «Этот URL-адрес небезопасен» отображается при установке URL-адреса конечной точки.
Требуемое действие: обратитесь в службу поддержки AppsFlyer; сообщите идентификатор приложения, URL-адрес конечной точки и приложите скриншот с сообщением об ошибке.
Характеристики и ограничения
| Специфика | Примечания |
|---|---|
| Рекламные сети | Недоступно |
| Агентства | Недоступно |
| Часовой пояс конкретного приложения | Поддерживается |
| Валюта приложения | Поддерживается |
| Ограничения на размер | Не применимо |
| Органический | Да |
| Неорганические | Да |
| Обновление данных | Непрерывно |
| Исторические данные | Не поддерживается. Если вам не хватает данных, используйте Pull API, чтобы получить нужные данные. В случае SKAN некоторые исторические данные можно получить через Data Locker (ограничено окном доступности Data Locker). |
| Доступ владельца аккаунта / пользователей |
Только владелец аккаунта AppsFlyer может изменять настройки Push API.
Другие пользователи аккаунта могут просматривать настройки Push API, но не могут их изменять. |
| Токен аутентификации в тестовых сообщениях | Заголовки тестовых сообщений не содержат токен аутентификации. |
Могу ли я включить пользовательские заголовки в запрос Push API?
Нет. Push API поддерживает использование заголовка Authorization только для токенов аутентификации. Дополнительные пользовательские заголовки, такие как consumer-key, не поддерживаются.
Если вам нужно передать дополнительные параметры, включите их в URL-адрес. Например:
https://your.server.com?consumer_key=abc456