Краткий обзор. Рекламные сети интегрируются с AppsFlyer SKAdNetworks (SKAN), что позволяет им оптимизировать кампании и атрибутировать генерируемый ими трафик.
Предложение AppsFlyer для рекламных сетей
Узнайте больше о решении AppsFlyer SKAN для рекламодателей:
Руководство по решению SKAN | Дэшборд SKAN
-
Атрибуция к конверсиям кампании:
- Интеграция с AppsFlyer гарантирует, что рекламной сети будут атрибутированы все установки, события внутри приложения и доходы, полученные в результате кампаний, проведенных от имени рекламодателей.
- Без интеграции установки, события в приложении и доходы атрибутируются как органические, а не рекламной сети.
-
Оптимизация кампаний:
- Значение конверсии в постбэке закодировано.
- AppsFlyer позволяет рекламным сетям переводить значение конверсии каждого постбэка, обеспечивая рекламным сетям возможность оптимизировать свои кампании на основе расшифрованного значения для каждого приложения.
-
Нет необходимости в прямой интеграции с каждым рекламодателем — постбэки SKAN отправляются только в рекламную сеть, а рекламодатели могут потреблять данные, используя любое из следующего:
- Индивидуальная интеграция с каждой рекламной сетью. Решение, которое не масштабируется ни для рекламных сетей, ни для рекламодателей.
- Единая интеграция с AppsFlyer. Масштабируется как для рекламодателя, так и для рекламной сети.
-
Известность в AppsFlyer:
- Рекламные сети, имеющие интеграцию SKAN, сертифицированы и идентифицированы как таковые на дэшборде AppsFlyer.
- Это гарантирует рекламодателям, что они работают с рекламными сетями, которые могут быть детерминированно измерены с помощью этой модели атрибуции.
Поток данных SKAN
Полный путь постбэка SKAN выглядит следующим образом:
- iOS отправляет постбэк SKAN в атрибутированную рекламную сеть.
-
Рекламная сеть делает одно из следующих действий:
- Обогатить и переслать: обогащение данных в постбэке SKAN идентификатором кампании рекламной сети/идентификатором источника, названием кампании и IP-адресом устройства iOS.
- Перенаправить: сеть запрашивает iOS-устройство перенаправить постбэк непосредственно на AppsFlyer. В этом случае обогащение данных кампании будет осуществляться через отдельный API между AppsFlyer и рекламной сетью.
- AppsFlyer проверяет и декодирует постбэк. Затем он отправляет декодированный и обогащенный постбэк в рекламную сеть (параллельно с передачей его рекламодателю).
Основные части интеграции
Интеграция SKAN между AppsFlyer и рекламными сетями состоит из следующих основных частей, описанных в этой статье:
- Рекламные сети отправляют данные SKAN в AppsFlyer
- Рекламные сети получают обогащенные и декодированные данные от AppsFlyer посредством постбэков
Отправка данных в AppsFlyer
После того как рекламная сеть получает постбэк SKAN от устройства, рекламная сеть направляет его в AppsFlyer одним из следующих методов:
- Обогатить и переслать (POST)
- Перенаправить (метод перенаправления HTTP 307)
При получении постбэка SKAN AppsFlyer выполняет следующее:
- Валидация постбэка: чтобы убедиться, что он уникален.
- Расшифровка значения конверсии: генерирует записи событий установки/включения приложения для атрибуции.
- Отправляет декодированные постбэки в рекламную сеть.
- Делает данные атрибуции доступными для рекламодателей на дэшбордах и в отчетах.
Обогатить и переслать
Используя этот метод, рекламные сети передают AppsFlyer каждый постбэк, полученный с устройства.
Рекламная сеть:
- Получает постбэк от устройства iOS.
- [Необязательно] Обогащает постбэк следующими данными:
- Идентификатор кампании рекламной сети и название кампании.
- IP-адрес, полученный от устройства, необходимый в основном для целей разрешения гео.
- Временная метка постбэка, отправленного с устройства iOS.
- [Необязательно] Обогащает постбэк следующими данными:
- Идентификатор и название группы объявлений
- Идентификатор и название объявления
- Название рекламной сети
- Код страны
- ID исходного приложения
- Креатив
- Канал
- Отправляет постбэк в AppsFlyer
- Внимание! Перед отправкой постбэка в AppsFlyer проверьте подпись атрибуции Apple с помощью содержимого исходящего постбэка, чтобы убедиться, что вы случайно не повредили данные.
Протокол обогащенных постбэков SKAN
Конечная точка |
|
HTTP-метод | POST |
Принятые типы контента | application/json |
Коды возврата |
200 OK: Полученный постбэк имеет действительный формат. 400: Неверный запрос: Некорректный JSON, пустой JSON, отсутствуют обязательные поля. |
Параметры обогащенных постбэков SKAN в JSON
Параметр |
Формат |
Описание |
Источник |
---|---|---|---|
version | Строка |
Версия SKAdNetwork Пример: |
Постбэк SKAN |
ad-network-id | Строка |
Идентификатор рекламной сети Пример: |
Постбэк SKAN |
ad-network-name | Строка |
|
Рекламная сеть |
ad-network-country-code | Строка |
|
Рекламная сеть |
campaign-id | Целое число |
|
Постбэк SKAN |
transaction-id | Строка |
Идентификатор транзакции постбэка SKAdNetwork |
Постбэк SKAN |
app-id | Целое число |
|
Постбэк SKAN |
attribution-signature | Строка | Подпись атрибуции | Постбэк SKAN |
повторная загрузка | Логическое значение | Если redownload = true, это означает, что пользователь снова загрузил приложение из магазина приложений. | Постбэк SKAN |
source-app-id | Целое число |
|
Постбэк SKAN |
conversion-value | Целое число |
AppsFlyer SDK устанавливает значение конверсии в соответствии с настройками рекламодателя. Внимание!
|
Постбэк SKAN |
ad-network-campaign-id | Строка |
Чтобы обеспечить общий язык между рекламными сетями, рекламодателями и AppsFlyer, вы должны предоставить свой идентификатор кампании. |
Рекламная сеть |
ad-network-campaign-name | Строка | Название кампании рекламной сети, связанное с идентификатором кампании рекламной сети. Это название отображается на дэшбордах и в отчетах. | Рекламная сеть |
ad-network-adset-id | Строка |
Идентификатор группы объявлений рекламной сети |
Рекламная сеть |
ad-network-adset-name | Строка |
Название группы объявлений рекламной сети |
Рекламная сеть |
ad-network-ad-name | Строка |
Название объявления рекламной сети |
Рекламная сеть |
ad-network-ad-id | Строка |
Идентификатор объявления рекламной сети |
Рекламная сеть |
ip | Строка |
|
Рекламная сеть |
timestamp | Строка |
|
Рекламная сеть |
fidelity-type | Целое число |
|
Постбэк SKAN (V2.2+) |
did-win | Логическое значение |
|
Постбэк SKAN (V3.0+) |
ad-network-source-app-id | Строка |
Заполните идентификатором издателя, который вы связываете с приложением, публикующим рекламу. Обычно это ID, который вы присвоили издателю, а не ID, сгенерированный Apple. |
Рекламная сеть |
postback-sequence-index |
Целое число |
|
Постбэк SKAN 4.0 (iOS 16.2) |
coarse-conversion-value |
Строка |
|
Постбэк SKAN 4.0 (iOS 16.2) |
source-identifier |
Строка |
|
Постбэк SKAN 4.0 (iOS 16.2) |
source-domain |
Строка |
|
Постбэк SKAN 4.0 (iOS 16.2) |
Креатив |
Строка |
|
Рекламная сеть |
channel |
Строка |
|
Рекламная сеть |
Пример Curl — обогащенный постбэк SKAN 3
curl --location --request POST 'https://skadpostbacks.appsflyer.com/api/postbacks?app_id=id888707074' \
--header 'Content-type: application/json' \
--data-raw '{
"version":"3.0",
"app-id": 888707086,
"ip": "192.0.2.0",
"ad-network-campaign-name": "skadnetwork_abc_campaign",
"source-app-id": 888707074,
"ad-network-id": "abcabcabc.skadnetwork",
"transaction-id": "68eb3d91-15f5-44ee-9267-25c7655c20b6",
"redownload": false,
"attribution-signature": "MDYCGQCsQ4y8d4BlYU9b8Qb9BPWPi+ixk/OiRysCGQDZZ8fpJnuqs9my8iSQVbJO/oU1AXUROYU=",
"timestamp": "1596525944",
"ad-network-campaign-id": "222222",
"conversion-value": 63,
"campaign-id": 99
}'
Пример Curl — обогащенный постбэк SKAN 4 с точными значениями конверсии
curl --location --request POST 'https://skadpostbacks.appsflyer.com/api/postbacks?app_id=id888707074' \
--header 'Content-type: application/json' \
--data-raw '{
"version": "4.0"
"ad-network-id": "example123.skadnetwork",
"ad-network-campaign-name": "skadnetwork_abc_campaign",
"ad-network-campaign-id": "222222",
"source-identifer": "5239",
"app-id": 525463029,
"transaction-id": "6aafb7a5-0170-41b5-bbe4-fe71dedf1e30",
"redownload": false,
"source-app-id": 1234567891,
"fidelity-type": 1,
"did-win": true,
"conversion-value": 63
"postback-sequence-index": 0
"attribution-signature": "MEUCIGRmSMrqedNu6uaHyhVcifs118R5z/AB6cvRaKrRRHWRAiEAv96ne3dKQ5kJpbsfk4eYiePmrZUU6sQmo+7zfP/1Bxo="
}'
Пример Curl — обогащенный постбэк SKAN 4 с приблизительными значениями конверсии
curl --location --request POST 'https://skadpostbacks.appsflyer.com/api/postbacks?app_id=id888707074' \
--header 'Content-type: application/json' \
--data-raw '{
"version": "4.0"
"ad-network-id": "example123.skadnetwork",
"ad-network-campaign-name": "skadnetwork_abc_campaign",
"ad-network-campaign-id": "222222",
"source-identifer": "39",
"app-id": 525463029,
"transaction-id": "6aafb7a5-0170-41b5-bbe4-fe71dedf1e31",
"redownload": false,
"source-app-id": 1234567891,
"fidelity-type": 1,
"did-win": true,
"coarse-conversion-value": "high"
"postback-sequence-index": 0
"attribution-signature": "MEUCIQD4rX6eh38qEhuUKHdap345UbmlzA7KEZ1bhWZuYM8MJwIgMnyiiZe6heabDkGwOaKBYrUXQhKtF3P/ERHqkR/XpuA="
}'
Перенаправление
При использовании этого метода рекламная сеть отвечает устройству командой HTTP перенаправления (307), передавая устройству запрос об отправке постбэка непосредственно в AppsFlyer.
Метод перенаправления имеет следующие преимущества:
-
Повышенное доверие рекламодателей: MMP действует от имени рекламодателя. Предоставляя AppsFlyer доступ к постбэку из первых рук, рекламодатели уверены, что постбэки не подвергаются манипуляциям во время передачи.
- От рекламной сети не требуется обработки данных: Рекламные сети отвечают командой перенаправления (на устройство), что устраняет необходимость обработки постбэков. Для сравнения, метод обогащения и пересылки требует, чтобы рекламные сети принимали постбэк, обогащали его дополнительными параметрами и, наконец, пересылали его в AppsFlyer.
Реализация
- Настройте сервер на ответ HTTP 307, перенаправляющий постбэк на https://skadredirect.appsflyer.com/api/redirects
- Добавьте параметры запроса, содержащие сведения о кампании, используя параметры запроса, перечисленные в следующей таблице. Считайте отправку данных о вашей кампании обязательной. Информация о кампании позволяет нам обогатить данные SKAN данными о стоимости и другими данными о кампании и позволяет рекламодателям эффективно оптимизировать кампании.
Пример URL для перенаправления
https://skadredirect.appsflyer.com/api/redirects?
&ad-network-campaign-id=243232&ad-network-campaign-name=yarg_campaign_name
&ad-network-adset-name=dsdsa&creative=examplecreative&channel=channelexample
Параметры запроса для получения сведений о кампании (не обязательно)
Параметр запроса |
Описание |
---|---|
ad-network-name |
|
ad-network-campaign-id | ID кампании |
ad-network-campaign-name | Название кампании |
ad-network-adset-id | ID блока рекламы |
ad-network-adset-name | Имя блока рекламы |
ad-network-ad-id | ID рекламы. |
ad-network-ad-name | Имя рекламы |
ad-network-country-code |
|
ad-network-source-app-id | Заполните идентификатором издателя, который вы связываете с приложением, публикующим рекламу. Обычно это ID, который вы присвоили издателю, а не ID, сгенерированный Apple. |
ip |
|
timestamp |
|
Креатив |
|
channel |
|
Получение данных от AppsFlyer
Перед тем как получить свой первый постбэк, примите во внимание следующее:
- Рекламные сети должны определить конечную точку и шаблон постбэка (свяжитесь с менеджером по развитию партнеров AppsFlyer с помощью виджета помощи партнерам, чтобы убедиться, что все это есть).
- AppsFlyer отправляет постбэки SKAN, используя тот же механизм, что и при отправке вам существующих постбэков.
Принципы
-
Для каждого постбэка, отправленного из рекламной сети в AppsFlyer, AppsFlyer отправляет:
- Один постбэк об установке. Повторная загрузка обозначается параметром redownload.
- От нуля до нескольких постбэков о событиях в приложении. Точное число зависит от перевода значения конверсии. См. имитацию постбэков.
- При получении постбэков одна и та же установка или событие может быть атрибутировано несколькими решениями AppsFlyer для атрибуции. Используйте параметр attribution_source, чтобы различать типы постбэков.
Макросы постбэка доступны для партнеров –рекламных сетей
Макрос в постбэке (название) |
Описание |
Формат и пример | Актуально только для внутренних событий |
---|---|---|---|
site_id |
Приложение, опубликовавшее объявление (ID исходного приложения) |
Строка: 876534 |
|
install_time |
Оценка AppsFlyer на основе окна updateConversion. Предоставляется в виде 10-значной временной метки UNIX или в виде обычной временной метки. |
|
|
skadnetwork_ad_network_time |
Время, когда постбэк был получен рекламной сетью от устройства iOS. Сообщается рекламной сетью. Предоставляется в виде 10-значной временной метки UNIX или в виде обычной временной метки. |
|
|
|
Время, когда AppsFlyer получил постбэк от рекламной сети. Предоставляется в виде 10-значной временной метки UNIX или в виде обычной временной метки. |
|
|
event_name |
Название события
|
Строка: af_skadnetwork_revenue, abc123
|
Да |
выручка |
Сумма дохода с использованием указанного кода валюты |
Числа: 5, 20, 0.4 |
Да |
валюта |
Код валюты — это валюта, установленная рекламодателем для конкретного приложения |
Строка: EUR, USD, ZAR |
Да |
attribution_source |
Источник данных об атрибуции: SKAdNetwork: SKAdNetwork |
Строка: SKAdNetwork |
|
app_id |
ID приложения (приложение рекламодателя) |
Строка: ID123456790 |
|
Страна |
Гео установки (страна), определенная рекламной сетью |
Строка: US, UK, ZA |
|
campaign |
Название кампании, заполненное параметром ad-network-campaign-name, отправленным в постбэке из рекламной сети. |
Строка: UA_US_23+ |
|
campaign_id |
Идентификатор кампании рекламной сети, заполненный параметром ad network-campaign-id, отправленным в постбэке из рекламной сети. Примечание. Для SKAN 4 значение время равно null. |
Строка: 3456745 |
|
повторная загрузка |
Возможные значения: true, false Если redownload = true, это означает, что пользователь снова загрузил приложение из магазина приложений. |
Значения: true/false |
|
skadnetwork_ambiguous_event |
События, полученные в течение первых 72 часов после того, как рекламодатель изменил настройки SKAN на дэшборде. Из-за различных таймеров, используемых SKAN, AppsFlyer не может точно сопоставить событие. |
Значения: true/false |
|
skadnetwork_campaign_id |
Идентификатор кампании SKAN, предоставленный оригинальным постбэком SKAN |
56, 23 |
|
af_skadnetwork_nonce |
Уникальный случайный идентификатор, позволяющий партнерам идентифицировать дублирующиеся постбэки |
|
|
event_id |
Имя/идентификатор соответствующего события на платформе рекламной сети |
|
Да |
transaction_id |
Идентификатор транзакции постбэка SKAN Примечание. Рекламодатель должен явно разрешить нам передавать вам transaction_id. Попросите рекламодателя сделать это на вкладке Интеграция. |
|
|
ad_network_adset_id | Добавлено в постбэк iOS рекламной сетью | Строка | |
ad_network_adset_name | Добавлено в постбэк iOS рекламной сетью | Строка | |
ad_network_ad_name | Добавлено в постбэк iOS рекламной сетью | Строка | |
ad_network_ad_id | Добавлено в постбэк iOS рекламной сетью | Строка | |
SKAN_min_event_counter | См. примечание (1) |
Целое число |
Да |
SKAN_max_event_counter | См. примечание (1) |
Целое число |
Да |
SKAN_min_time_post-install | См. примечание (2) |
Целое число |
Да |
SKAN_max_time_post-install | См. примечание (2) |
Целое число |
Да |
SKAN_min_event_revenue | См. примечание (3) | Вещественное число | Да |
SKAN_max_event_revenue | См. примечание (3) |
Вещественное число |
Да |
fidelity-type |
Различает варианты представления объявлений, влияющие на атрибуцию. Указывается с помощью значений 0 и 1 следующим образом:
|
Целое число | |
skad_af_attribution_flag |
Используется для указания того, был ли пользователь атрибутирован AppsFlyer с помощью механизма единого источника истины. |
Логическое значение | |
skad_postback_sequence_index |
|
Целое число | |
skad_coarse_conversion_value |
|
Строка | |
skad_source_identifier |
|
Строка | |
skad_source_domain |
|
Строка | |
ad_network_creative |
|
Строка | |
ad_network_channel |
|
Строка | |
ПРИМЕЧАНИЯ
|
Примеры постбэков SKAN
Пример постбэка SKAN об установке, отправленного AppsFlyer
http://YourCompanyDomain.com/event?site_id=(publisher-id)&install_time=(timestamp)
&skan_ad_network_time=(timestamp)
&skan_af_received_time=(timestamp)
&attribution_source=skadnetwork
&app_id=(id123456789)&country=(ZA)&campaign=(campaign-name)
&campaign_id=(campaign-id)&SKAN_ambiguous_event=(boolean)
&redownload=(boolean)
&af_SKAN_nonce=(uuid)
Пример постбэка SKAN о внутреннем событии, отправленного AppsFlyer
http://YourCompanyDomain.com/event?site_id=(publisher-id)&install_time=(timestamp)
&skan_ad_network_time=(timestamp)
&skan_af_received_time=(timestamp)&revenue=(value)
¤cy=(code)&event_name=(event-name)&attribution_source=skadnetwork
&app_id=(id123456789)&country=(ZA)&campaign=(campaign-name)
&campaign_id=(campaign-id)&SKAN_ambiguous_event=(boolean)
&redownload=(boolean)
&af_SKAN_nonce=(uuid)
Тестирование интеграции
Чтобы подтвердить интеграцию с AppsFlyer, используйте один или оба из следующих методов.
- Реальные постбэки SKAN: основаны на реальном трафике SKAN, полученном сетью
- Имитация постбэков: на основе тестовых приложений AppsFlyer
Чтобы получать реальные постбэки SKAN от устройств iOS, рекламная сеть выполняет следующие действия:
- Зарегистрируйтесь в Apple
- Подпишите объявления подписью SKAdNetwork.
- Приложение издателя: Добавьте идентификатор сети в файл info.plist и вызовите функцию loadProduct при показе рекламы.
- Рекламируемое приложение: используйте последнюю версию SDK AppsFlyer для iOS. Версии до V6.0.3 не поддерживаются.
Для получения имитированных постбэков:
- Свяжитесь с нами через виджет помощи партнерам и запросите интеграцию с приложениями для симуляции.
- Укажите идентификаторы приложений из списка в следующем разделе.
Реальная среда
Используя этот метод, рекламная сеть отправляет AppsFlyer фактические постбэки SKAN из реальных приложений.
Тестирование интеграции
Ответственность | Действие |
---|---|
Рекламная сеть | Сообщите AppsFlyer через вашего менеджера по развитию партнеров (или используйте виджет помощи партнерам) ваш идентификатор сети SKAN, предоставленный Apple. |
Рекламная сеть и AppsFlyer | Договоритесь об общем клиенте (интегрировав последнюю версию SDK AppsFlyer), чтобы использовать его для проверки интеграции постбэков. |
Рекламная сеть | Отправьте постбэки SKAN для приложения в AppsFlyer, используя один из методов, описанных в этой статье. |
AppsFlyer | Отправляет декодированные постбэки в рекламную сеть в соответствии с сопоставлением значений конверсии, установленным рекламодателем. |
Критерии тестирования
Ответственность | Действие |
---|---|
Рекламная сеть | Уведомите AppsFlyer о количестве постбэков SKAN, отправленных в течение определенного периода для согласованного общего клиента. |
AppsFlyer | Проверяет количество полученных постбэков в сравнении с количеством, отправленным рекламной сетью. |
AppsFlyer |
Предоставляет рекламной сети количество постбэков, отправленных в сеть для данного приложения, с разбивкой по типам:
|
Имитация постбэков
- При использовании этого метода рекламная сеть отправляет тестовым приложениям AppsFlyer заранее подготовленные постбэки, как подробно описано в таблице ниже. AppsFlyer отвечает рекламной сети декодированными постбэками.
- Каждое тестовое приложение имеет свое сопоставление значений конверсии, как показано в таблице.
Идентификатор приложения | Режим конверсии | Инструкции |
---|---|---|
id888707085 |
Доход, в единицах по 1 долл. Ожидаемые результаты: |
|
id888707086 | Конверсия, включая события в приложении:
|
|
id888707087 | Интеракции, измеряемые с помощью события af_SKAN_revenue |
|
Этапы интеграции
Ответственность | Действие |
---|---|
Рекламная сеть | Настройте свой идентификатор сети SKAN (предоставляется компанией Apple) и шаблон постбэка SKAN на платформе управления постбэком. Для получения помощи свяжитесь с нами, используя виджет помощи партнерам. |
Рекламная сеть |
|
AppsFlyer | Отвечает декодированными постбэками в конечную точку, указанную рекламной сетью во время интеграции. |
Критерии тестирования
Ответственность | Действие |
---|---|
AppsFlyer | Обрабатывает постбэк и отправляет постбэк в рекламную сеть. |
Рекламная сеть |
|
Разъяснения
Разъяснения, касающиеся обязательных полей, обогащения, сертификации и многого другого.
Вопросы и ответы
Вопросы и ответы о постбэках |
---|
Являются ли поля обогащения данных обязательными? В настоящее время мы будем обрабатывать постбэк, даже если в нем отсутствует один или несколько из следующих параметров обогащения. Учтите, что информация необходима по следующим причинам:
|
Можем ли мы отправить либо ID кампании, либо название кампании, но не оба варианта? См. предыдущий ответ. Подумайте о том, чтобы заполнить и ID, и название одним и тем же значением. |
Мы используем метод Обогатить и переслать. Можно ли добавить пары ключ-значение, которых нет в спецификации AppsFlyer? Да, можно. Мы обработаем постбэк и проигнорируем дополнительную информацию при условии, что подпись атрибуции действительна. |
Отличаются ли шаблоны постбэков SKAN от других шаблонов постбэков? Да. Поток и структура отличаются. |
Получим ли мы постбэк SKAN и постбэк вероятностного/детерминированного моделирования, относящиеся к одной и той же установке, что означает дублирование отчетов об одной и той же установке? Да. В каждом случае, когда мы регистрируем установку, атрибутированную вам, независимо от метода, мы отправляем вам постбэк. Используйте attribution_source для различения постбэков SKAN. |
Должны ли мы обрабатывать постбэк из AppsFlyer? Нет. Считайте, что лучшей практикой является оптимизация кампаний в соответствии с качеством пользователей, о котором сообщается через постбэк. |
Ожидается ли, что мы будем вызывать ссылки атрибуции AppsFlyer или достаточно отправить постбэк с полезной нагрузкой SKAN и обогащенными данными? Достаточно отправить нам полезную нагрузку SKAN и обогащенные данные. |
Что необходимо для того, чтобы мы были сертифицированы на дэшборде AppsFlyer в качестве интегрированного партнера SKAN?
|
Как повлияет на меня ограничение в 100 идентификаторов кампаний SKAN? Ограничение 1-100 относится к тому, как вы подписываете и нумеруете свои кампании в Apple. Это означает, что в любой момент времени у вас может быть 100 одновременных уникальных кампаний. Мы позволяем вам обогащать данные постбэка названием и ID вашей реальной кампании. Это означает, что вы сопоставляете идентификатор кампании SKAN с идентификаторами ваших реальных кампаний, используемых в момент получения постбэка. Это означает, что ограничение в 100 идентификаторов не ограничивает количество кампаний, которые вы измеряете в AppsFlyer, при условии, конечно, что у вас не более 100 одновременных кампаний для данного приложения. |