Amazon S3 в Adapty Attribution

Интеграция Adapty Attribution с Amazon S3 позволяет централизованно и безопасно хранить данные о кампаниях по привлечению пользователей. Вы сможете сохранять данные об эффективности кампаний, данные атрибуции и события привлечения пользователей в бакет Amazon S3 в виде .csv-файлов. Чтобы настроить эту интеграцию, выполните несколько простых шагов в AWS Console и дашборде Adapty Attribution.

Note

Adapty Attribution экспортирует один набор файлов за каждый календарный день. Планировщик экспорта запускается три раза в день — в 02:00, 04:00 и 06:00 UTC. Каждый запуск либо создаёт задание экспорта за предыдущий день (если оно ещё не существует), либо повторяет его, если более ранний запуск завершился ошибкой. Таким образом, ваши данные, как правило, появляются после запуска в 02:00, а последующие запуски предназначены для восстановления после сбоев, а не для добавления новых данных.

Каждый файл будет содержать данные о событиях, созданных за весь предыдущий календарный день в UTC. Например, данные, экспортированные 8 марта, будут содержать все события, созданные 7 марта с 00:00:00 до 23:59:59 по UTC.

Warning

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

Как настроить интеграцию с Amazon S3

Для получения данных вам потребуются следующие учётные данные:

  1. Access key ID
  2. Secret access key
  3. Название бакета S3
  4. Название папки внутри бакета S3
Note

Вложенные директории

В поле названия бакета Amazon S3 можно указывать вложенные директории, например: adapty-ua-events/com.sample-app

Шаг 1. Создайте учётные данные Amazon S3

Этот гайд поможет вам создать необходимые учётные данные в консоли AWS.

1.1. Создайте политику доступа

  1. Перейдите в IAM Policy Dashboard в консоли AWS
  2. Выберите Create Policy
7af075c-CleanShot_2023-03-21_at_10.52.002x.webp
  1. В редакторе политик вставьте следующий JSON и замените adapty-s3-integration-test на имя вашего бакета:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "AllowListObjectsInBucket",
            "Effect": "Allow",
            "Action": "s3:ListBucket",
            "Resource": "arn:aws:s3:::adapty-s3-integration-test"
        },
        {
            "Sid": "AllowAllObjectActions",
            "Effect": "Allow",
            "Action": "s3:*Object",
            "Resource": [
                "arn:aws:s3:::adapty-s3-integration-test/*",
                "arn:aws:s3:::adapty-s3-integration-test"
            ]
        },
        {
            "Sid": "AllowBucketLocation",
            "Effect": "Allow",
            "Action": "s3:GetBucketLocation",
            "Resource": "arn:aws:s3:::adapty-s3-integration-test"
        }
    ]
}
d4e474a-CleanShot_2023-03-21_at_10.56.212x.webp
  1. После завершения настройки политики вы можете добавить теги (по желанию), а затем нажмите Next, чтобы перейти к последнему шагу
  2. На этом шаге укажите название политики и нажмите Create policy, чтобы завершить её создание
7dcb02f-CleanShot_2023-03-21_at_11.03.372x.webp

1.2. Создайте пользователя IAM

Чтобы Adapty Attribution мог загружать отчёты с сырыми данными в ваш бакет, вам нужно предоставить Access Key ID и Secret Access Key пользователя с правом записи в этот бакет.

  1. Перейдите в консоль IAM и откройте раздел Users
  2. Нажмите кнопку Add users
bb612c8-CleanShot_2023-03-21_at_11.12.392x.webp
  1. Задайте имя пользователя, выберите Access key – Programmatic access и перейдите к настройке прав доступа
467ee4d-j6aoX.webp
  1. На следующем шаге выберите опцию Add user to group, затем нажмите кнопку Create group
bfd0e80-CleanShot_2023-03-21_at_11.24.592x.webp
  1. Затем нужно задать имя для вашей группы пользователей и выбрать политику, которую вы создали ранее
  2. После выбора политики нажмите кнопку Create group, чтобы завершить процесс
df29c12-CleanShot_2023-03-21_at_11.28.052x.webp
  1. После успешного создания группы выберите её и перейдите к следующему шагу
1f3722e-CleanShot_2023-03-21_at_11.36.192x.webp
  1. Это последний шаг данного раздела — просто нажмите кнопку Create User
ea43722-CleanShot_2023-03-21_at_11.40.462x.webp
  1. Наконец, вы можете скачать учётные данные в формате .csv или скопировать их напрямую из дашборда
bcf35e1-S3created.webp

Шаг 2. Настройка интеграции в Adapty Attribution

  1. Перейдите в Integrations -> Amazon S3
  2. Включите переключатель Export install events to Amazon S3.
  3. Заполните следующие поля, чтобы установить связь между Amazon S3 и профилями Adapty Attribution: | Поле | Описание | |:-----------------------------| :----------------------------------------------------------- | | Access Key ID | Уникальный идентификатор для аутентификации пользователя или приложения при доступе к сервису AWS. Найдите этот идентификатор в скачанном csv-файле. | | Secret Access Key | Приватный ключ, используемый вместе с Access Key ID для аутентификации при доступе к сервису AWS. Найдите этот ключ в скачанном csv-файле. | | S3 Bucket Name | Глобально уникальное имя, идентифицирующее конкретный бакет S3 в облаке AWS. Бакеты S3 — это простое хранилище, позволяющее загружать и получать объекты данных (файлы, изображения и т. д.) в облаке. | | Folder Inside the Bucker | Имя папки, которую вы хотите создать внутри выбранного бакета S3. Обратите внимание, что S3 эмулирует папки с помощью префиксов ключей объектов, которые по сути и являются именами папок. | | Region (опционально) | Узнайте ваш регион в консоли управления AWS в разделе вашего IAM-аккаунта. |
ua-amazon-s3.webp

Ручной экспорт данных

Помимо автоматического экспорта данных о событиях в Amazon S3, Adapty UA поддерживает и ручной экспорт файлов. С его помощью вы можете выбрать конкретную дату для данных по привлечению пользователей и экспортировать их в свой бакет S3 вручную. Это даёт больше контроля над тем, какие данные и когда экспортировать.

Структура таблицы

В интеграции с AWS S3 Adapty Attribution предоставляет таблицу для хранения исторических данных о событиях установки. Таблица содержит информацию о профиле пользователя, выручке и доходах, источнике стора и других параметрах.

Warning

Обратите внимание, что эта структура может со временем расширяться — мы или наши партнёры можем добавлять новые данные. Убедитесь, что ваш код, обрабатывающий эти данные, достаточно устойчив и опирается на конкретные поля, а не на структуру в целом.

Вот структура таблицы для событий:

СтолбецОписание
adapty_profile_idУникальный идентификатор профиля Adapty
install_idУникальный идентификатор установки
created_atВременна́я метка создания записи (ISO 8601)
installed_atВременна́я метка установки приложения (ISO 8601)
storeСтор (ios, android)
countryКод страны пользователя (ISO 3166-1 alpha-2)
ip_addressIP-адрес клиента
idfaiOS Identifier for Advertisers
idfviOS Identifier for Vendors
gaidGoogle Advertising ID (Android)
android_idИдентификатор устройства Android
app_set_idAndroid App Set ID
bundle_idИдентификатор бандла приложения (например, com.example.app)
device_brandБренд устройства (например, Apple, Samsung)
device_modelМодель устройства (например, iPhone15,2)
os_versionОсновная версия ОС
app_versionВерсия приложения, переданная SDK
sdk_versionВерсия Adapty SDK
channelКанал атрибуции
campaign_idИдентификатор кампании
campaign_nameНазвание кампании
adset_idИдентификатор группы объявлений
adset_nameНазвание группы объявлений
ad_idИдентификатор объявления
ad_nameНазвание объявления
keyword_idИдентификатор ключевого слова
keyword_nameКлючевое слово
asa_org_idИдентификатор организации Apple Search Ads
asa_keyword_match_typeТип соответствия ключевого слова ASA (Exact, Broad)
asa_attributionДанные атрибуции ASA (строка JSON)
asa_conversion_typeТип конверсии ASA
asa_country_or_regionСтрана или регион ASA
asa_creative_set_nameНазвание креативного набора ASA
fbclidFacebook Click ID
ttclidTikTok Click ID
utm_sourceПараметр UTM source
utm_mediumПараметр UTM medium
utm_campaignПараметр UTM campaign
utm_termПараметр UTM term
utm_contentПараметр UTM content
click_timeВременна́я метка атрибутированного клика в секундах Unix. Пустое значение, если клик к установке не атрибутирован.