Краткий обзор: Функция Advanced-Matching Data Sharing позволяет передавать хэшированные пользовательские идентификаторы — например, адрес электронной почты и номер телефона — из AppsFlyer в выбранные рекламные сети, что даёт партнёрам возможность атрибутировать события взаимодействия с рекламой без идентификатора устройства.
Об Advanced-Matching Data Sharing
По мере того как идентификаторы устройств становятся менее доступными, рекламные сети всё чаще используют собственные данные для сопоставления взаимодействий с рекламой. Функция Advanced-Matching Data Sharing закрывает этот пробел, пересылая хэшированные идентификаторы поддерживаемым партнёрам в соответствии с требованиями конфиденциальности.
Эта функция является необязательной и настраивается каждым партнером индивидуально. Когда функция включена для поддерживаемой сети, AppsFlyer пересылает хэшированные идентификаторы вместе с данными событий об установках, повторных вовлечениях и событиях внутри приложения.
Важно!
Все идентификаторы должны быть хешированы с помощью SHA-256 перед передачей в AppsFlyer, либо на устройстве через SDK, либо на стороне сервера через S2S API. Никогда не принимаются, не сохраняются и не пересылаются данные в открытом виде, а любое значение, не прошедшее проверку, отбрасывается на этапе приёма.
Поддерживаемые партнеры:
Объём функции Advanced-Matching Data Sharing зависит от партнёра. Snapchat и TikTok поддерживают атрибуцию установок, повторных вовлечений и событий внутри приложения, тогда как Google и Meta ограничены сопоставлением только событий внутри приложения. В настоящее время эта функция доступна в следующих сетях:
| Партнер | Тип интеграции | Поддерживаемые события |
|---|---|---|
| Google (googleads_int) | OCI | События внутри приложения |
| Meta (facebook_int, Metaweb_int) | SRN + CAPI | События внутри приложения |
| OpenAI (openai_int) | CAPI | Установки, повторное вовлечение, события в приложении |
| TikTok (tiktokglobal_int, tiktokweb_int) | SRN + CAPI | Установки, повторное вовлечение, события в приложении |
| Snapchat (snapchat_int, snapweb_int) | SRN + CAPI | Установки, повторное вовлечение, события в приложении |
| Pinterest (pinterest_int) | CAPI | Установки, повторное вовлечение, события в приложении |
| Reddit (reddit_int) | CAPI | Установки, повторное вовлечение, события в приложении |
| Roku (rokuads_int) | SRN + CAPI | События внутри приложения |
Сквозной процесс
Вот что происходит с момента получения идентификатора до момента его передачи партнеру:
- Идентификатор (адрес электронной почты, номер телефона или другой поддерживаемый тип) извлекается в приложении или на бэкенде.
- Идентификатор нормализуется и хешируется с использованием SHA-256: автоматически с помощью SDK AppsFlyer или на сервере перед отправкой через API S2S.
- Хэшированный идентификатор отправляется в AppsFlyer вместе с событием (установка, переустановка, повторное вовлечение или внутреннее событие приложения).
- Если для партнёра включена функция Advanced-Matching Data Sharing, AppsFlyer пересылает хеш вместе с полезной нагрузкой события.
- Партнер использует хеш для сопоставления события с известным пользователем, что повышает точность атрибуции и качество сопоставления.
Примечание
Хэшированные идентификаторы передаются партнерам только в том случае, если включена функция Advanced-Matching Data Sharing. Когда переключатель «включено/выключено» находится в положении «выключено», хешированные данные не передаются партнеру, даже если идентификаторы присутствуют в событии.
Как хешированные идентификаторы пользователей попадают в AppsFlyer
Хэшированные идентификаторы поступают в AppsFlyer двумя способами: через SDK или API «сервер-к-серверу» (S2S). В обоих случаях принимаются только правильно хешированные значения. Вкладки ниже описывают каждый метод.
В SDK V7.0.1 представлен метод передачи необработанных идентификаторов в SDK AppsFlyer для Android и iOS . SDK нормализует входные данные и хэширует их перед отправкой в AppsFlyer:
SDK выполняет следующие шаги в указанной последовательности:
- Нормализует входные данные в соответствии с требованиями каждого партнера.
- Хэширует нормализованное значение с помощью SHA-256.
- Отправляет в AppsFlyer только хешированное значение . Сырые данные никогда не покидают устройство.
Неверные значения отклоняются SDK с ошибкой и не отправляются в AppsFlyer.
Примечание
Поддержка Android и iOS доступна начиная с версии SDK 7.0.1.
Подробную информацию о внедрении см. в руководстве по интеграции с Android SDK и руководстве по интеграции с iOS SDK .
При отправке событий через 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)
- Удалите все пробелы.
- Преобразовать в нижний регистр.
- Хэширование с использованием SHA-256.
Пример:
User@Example.COM →user@example.com → Хэш SHA-256
Номер телефона, только цифры (phone_number_hashed)
Использовать для Meta и Snapchat.
- Добавьте код страны в начало.
- Удалите все символы, буквы и ведущие нули.
- Хэширование с использованием SHA-256.
Пример:
+1 (650) 123-4567 →16501234567 → Хэш SHA-256
Номер телефона, E.164 (phone_number_e164_hashed)
Использовать для Google и TikTok.
- Добавьте код страны в начало.
- Удалите все символы, буквы и ведущие нули.
- Добавить в начало знак
+. - Хэширование с использованием SHA-256.
Пример:
+1 (650) 123-4567 →+16501234567 → Хэш SHA-256
Имя (first_name_hashed) и фамилия (last_name_hashed)
- Удалите все пробелы.
- Преобразовать в нижний регистр.
- Хэширование с использованием SHA-256.
Идентификатор входа Facebook (fb_login_id)
Отправляйте исходный идентификатор входа Facebook в том виде, в каком его передаёт Facebook Login SDK. Это поле не хешируется.
Включите Advanced-Matching Data Sharing
Функция Advanced-Matching Data Sharing управляется отдельно для каждого партнёра и приложения и должна быть явно включена для каждой сети.
Чтобы включить Advanced-Matching Data Sharing:
- В AppsFlyerв в боковом меню выберите Совместная работа > Активные интеграции.
- Найдите партнера и выберите его.
- Включите Advanced-Matching Data Sharing .
- Нажмите Сохранить интеграцию.
Когда функция 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 атрибуцию установок?
Для Snapchat и TikTok — да. Эти партнёры поддерживают атрибуцию установок и повторных вовлечений на основе хэшированных адресов электронной почты и номеров телефонов. В случае Google и Meta улучшение уровня совпадений пока распространяется только на события внутри приложения.
Получает ли AppsFlyer когда-нибудь идентификаторы пользователей в открытом виде?
Нет. При использовании SDK хеширование происходит на устройстве до того, как что-либо будет отправлено в AppsFlyer. При использовании S2S API хеширование происходит на сервере перед отправкой запроса. AppsFlyer принимает только хешированные значения.