Чем мы можем помочь?

Обмен данными Advanced-Matching

  • Обновлено

Краткий обзор: Функция Advanced-Matching Data Sharing позволяет передавать хэшированные пользовательские идентификаторы — например, адрес электронной почты и номер телефона — из AppsFlyer в выбранные рекламные сети, что даёт партнёрам возможность атрибутировать события взаимодействия с рекламой без идентификатора устройства.

Об Advanced-Matching Data Sharing

По мере того как идентификаторы устройств становятся менее доступными, рекламные сети всё чаще используют собственные данные для сопоставления взаимодействий с рекламой. Функция Advanced-Matching Data Sharing закрывает этот пробел, пересылая хэшированные идентификаторы поддерживаемым партнёрам в соответствии с требованиями конфиденциальности.

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

Все идентификаторы должны быть хешированы с помощью SHA-256 перед передачей в AppsFlyer, либо на устройстве через SDK, либо на стороне сервера через S2S API. Никогда не принимаются, не сохраняются и не пересылаются данные в открытом виде, а любое значение, не прошедшее проверку, отбрасывается на этапе приёма.

Поддерживаемые партнеры:

Обмен данными Advanced Matching доступен для следующих сетей:

Партнер Идентификатор партнера (PID)
Google googleads_int
Meta facebook_int, metaweb_int
Moloco moloco_int
OpenAI openai_int
pinterest pinterest_int
Snapchat snapchat_int, snapweb_int
TikTok tiktokglobal_int, tiktokweb_int
Reddit reddit_int
Rokt roktv2_int
Roku  rokuads_int

Сквозной процесс

Вот что происходит с момента получения идентификатора до момента его передачи партнеру:

  1. Идентификатор (адрес электронной почты, номер телефона или другой поддерживаемый тип) извлекается в приложении или на бэкенде.
  2. Идентификатор нормализуется и хешируется с использованием SHA-256: автоматически с помощью SDK AppsFlyer или на сервере перед отправкой через API S2S.
  3. Хэшированный идентификатор отправляется в AppsFlyer вместе с событием (установка, переустановка, повторное вовлечение или внутреннее событие приложения).
  4. Если для партнёра включена функция Advanced-Matching Data Sharing, AppsFlyer пересылает хеш вместе с полезной нагрузкой события.
  5. Партнер использует хеш для сопоставления события с известным пользователем, что повышает точность атрибуции и качество сопоставления.

Хэшированные идентификаторы передаются партнерам только в том случае, если включена функция Advanced-Matching Data Sharing. Когда переключатель «включено/выключено» находится в положении «выключено», хешированные данные не передаются партнеру, даже если идентификаторы присутствуют в событии.

Как хешированные идентификаторы пользователей попадают в AppsFlyer

Хэшированные идентификаторы поступают в AppsFlyer двумя способами: через SDK или API «сервер-к-серверу» (S2S). В обоих случаях принимаются только правильно хешированные значения. Вкладки ниже описывают каждый метод.

SDK (пакет средств разработки ПО)

В SDK V7.0.1 представлен метод передачи необработанных идентификаторов в SDK AppsFlyer для Android и iOS . SDK нормализует входные данные и хэширует их перед отправкой в AppsFlyer:

SDK выполняет следующие шаги в указанной последовательности:

  1. Нормализует входные данные в соответствии с требованиями каждого партнера.
  2. Хэширует нормализованное значение с помощью SHA-256.
  3. Отправляет в AppsFlyer только хешированное значение . Сырые данные никогда не покидают устройство.

Неверные значения отклоняются SDK с ошибкой и не отправляются в AppsFlyer.

Поддержка Android и iOS доступна начиная с версии SDK 7.0.1.

Подробную информацию о внедрении см. в руководстве по интеграции с Android SDK и руководстве по интеграции с iOS SDK .

S2S API

При отправке событий через S2S API для событий внутри приложения идентификаторы должны быть нормализованы и хэшированы на стороне сервера до отправки. API принимает следующие поля:

Поле Описание
email_hashed Хэшированный адрес электронной почты
phone_number_hashed Хэшированный номер телефона, только цифры
phone_number_e164_hashed Хэшированный номер телефона в формате E.164
first_name_hashed Хэшированное имя
last_name_hashed Хэшированная фамилия
fb_login_id Идентификатор входа Facebook (без хэширования; передаётся как есть)

Все поля в этой таблица (кромеfb_login_id ) проверены на соответствие формату SHA-256. Значения, которые не соответствуют требованиям, тихо отбрасываются и не передаются ни одному партнёру. Остальные поля в событии обрабатываются в обычном режиме.

Почему здесь два поля для ввода номера телефона?

Сети сопоставляют события, сравнивая хеш, который передаёт AppsFlyer, со своим сохранённым хешем номера телефона пользователя. Поскольку один и тот же номер, нормализованный в разных форматах, даёт разные хеши, обе стороны должны хэшировать номер в одинаковом формате, чтобы получить совпадение. Поскольку сети нормализуют номера телефонов по-разному, а AppsFlyer получает уже хэшированные значения, необходимо отправлять обе версии, чтобы охватить всех поддерживаемых партнёров.

  • phone_number_hashed: для Meta и Snapchat. Формат нормализации перед хешированием: 16501234567
  • phone_number_e164_hashed: для Google и TikTok. Формат нормализации перед хешированием: +16501234567

Нормализация и хеширование идентификаторов

Нормализуйте исходное значение точно так, как описано ниже, затем выполните хэширование по алгоритму SHA-256 и отправьте шестнадцатеричную строку хеша в нижнем регистре.

Электронная почта (email_hashed)

Нормализуйте и хешируйте адрес электронной почты следующим образом:

  1. Удалите все пробелы.
  2. Преобразовать в нижний регистр.
  3. Хэширование с использованием SHA-256.

Пример:

User@Example.COMuser@example.com → Хэш SHA-256

Номер телефона, только цифры (phone_number_hashed)

Используйте это для Meta, Reddit, Pinterest и Snapchat. Нормализуйте номер телефона и выполните его хеширование следующим образом:

  1. Добавьте код страны в начало.
  2. Удалите все символы, буквы и ведущие нули.
  3. Хэширование с использованием SHA-256.

Пример:

+1 (650) 123-456716501234567 → Хэш SHA-256

Номер телефона, E.164 (phone_number_e164_hashed)

Используйте это для Google, TikTok и Roku. Нормализуйте номер телефона и выполните его хеширование следующим образом:

  1. Добавьте код страны в начало.
  2. Удалите все символы, буквы и ведущие нули.
  3. Добавить в начало знак+.
  4. Хэширование с использованием SHA-256.

Интервалы окна активности.

+1 (650) 123-4567+16501234567 → Хэш SHA-256

Имя (first_name_hashed) и фамилия (last_name_hashed)

Нормализуйте имя и выполните его хеширование следующим образом:

  1. Удалите все пробелы.
  2. Преобразовать в нижний регистр.
  3. Хэширование с использованием SHA-256.
Идентификатор входа Facebook (fb_login_id)

Отправляйте исходный идентификатор входа Facebook в том виде, в каком его передаёт Facebook Login SDK. Это поле не хешируется.

Включите Advanced-Matching Data Sharing

Функция Advanced-Matching Data Sharing управляется отдельно для каждого партнёра и приложения и должна быть явно включена для каждой сети.

Чтобы включить Advanced-Matching Data Sharing:

  1. В AppsFlyerв в боковом меню выберите Совместная работа > Активные интеграции.
  2. Найдите партнера и выберите его.
  3. Включите Advanced-Matching Data Sharing .
  4. Нажмите Сохранить интеграцию.

Когда функция Advanced-Matching Data Sharing включена, любые события, содержащие один или несколько поддерживаемых идентификаторов, будут отправляться партнёру вместе с этими полями.

Отключение функции Advanced-Matching Data Sharing немедленно прекращает обмен хешированными данными с этим партнером. Другие настройки интеграции, включая постбэки и данные событий, не затрагиваются.

Конфиденциальность и обработка данных

Когда функция Advanced-Matching Data Sharing включена для партнёра, AppsFlyer начинает передавать хэшированные пользовательские идентификаторы в эту сеть вместе с данными событий. Перед включением подтвердите следующее:

  • Существует законное основание (в соответствии с применимыми законами о конфиденциальности, такими как Общий регламент по защите данных (GDPR) или Калифорнийский закон о конфиденциальности потребителей (CCPA)) для передачи этих данных партнеру.
  • Ваша политика конфиденциальности обновлена, и, где это необходимо, получено согласие пользователя.
  • Ваши методы обмена данными соответствуют условиям партнера.

AppsFlyer не обрабатывает и не хранит персональные данные (PII) в открытом текстовом виде. Все поля идентификаторов проходят проверку при приеме: значения, не соответствующие формату SHA-256, отбрасываются и никогда не передаются партнёрам.

Часто задаваемые вопросы

Является ли Advanced-Matching Data Sharing той же функцией, что и возможность Audiences по отправке хешированных адресов электронной почты и телефонных номеров?

Нет. Это отдельные механизмы. Списки пользователей формируются для таргетинга рекламы. Advanced-Matching Data Sharing пересылает хэшированные идентификаторы вместе с отдельными событиями, чтобы повысить уровень совпадений на стороне партнёра. AppsFlyer планирует объединить оба метода, применив новый способ получения данных как для Advanced-Matching Data Sharing, так и для аудиторий.

Что произойдет, если я отправлю недействительное хеш-значение?

Данные удаляются на этапе загрузки и не передаются ни одному партнеру. Остальные поля в событии обрабатываются в обычном режиме.

Нужно ли отправлять все поддерживаемые поля?

Нет. Необходимо указывать только те идентификаторы, которые доступны и актуальны для настроенных партнеров. Отсутствующие поля не передаются.

Улучшит ли функция Advanced-Matching Data Sharing атрибуцию установок?

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

Получает ли AppsFlyer когда-нибудь идентификаторы пользователей в открытом виде?

Нет. Как указано в примечании "Важно!" в верхней части этой статьи, идентификаторы всегда хешируются до того, как попадают в AppsFlyer, — как на устройстве через SDK, так и на стороне сервера через S2S API. AppsFlyer принимает только хешированные значения.