Amazon S3 в Adapty Attribution

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

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

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

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

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

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

В поле названия бакета 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 предоставляет таблицу для хранения исторических данных о событиях установки. Таблица содержит информацию о профиле пользователя, выручке и доходах, источнике стора и других параметрах.

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

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

СтолбецОписание
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_idID устройства Android
app_set_idAndroid App Set ID
channelКанал атрибуции
campaign_idИдентификатор кампании
campaign_nameНазвание кампании
adset_idИдентификатор группы объявлений
adset_nameНазвание группы объявлений
ad_idИдентификатор объявления
ad_nameНазвание объявления
keyword_idИдентификатор ключевого слова
keyword_nameКлючевое слово
asa_org_idID организации 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