Как создать аудиторию на основе списка электронных адресов

Создайте аудиторию на основе списка эл. адресов, отправив запрос CreateUserListRequest.

Как создать тело запроса

Создайте ресурс UserList. Ниже перечислены поля, которые обычно нужно задавать.

displayName
Обязательно. Отображаемое название списка. Название должно быть уникальным среди всех списков, принадлежащих аккаунту.
description
Краткое описание списка.
integrationCode
Идентификатор из вашей системы.
membershipDuration

Срок, в течение которого участник аудитории остается в списке после добавления. Значение должно быть целым числом дней. Если не задано, по умолчанию используется максимальное значение.

Если вы используете JSON, рассчитайте количество секунд, умножив количество дней на 86400 (количество секунд в сутках). Затем укажите результат умножения и добавьте s. Например, если вы хотите, чтобы подписка действовала 90 дней, используйте значение 7776000s, поскольку 90 * 86400 = 7776000.

Если вы используете формат буфера протокола, при наличии удобного метода для создания объекта Duration на основе количества дней воспользуйтесь им. Например, в библиотеке protobuf-java-util для Java есть удобный метод fromDays(). В противном случае рассчитайте количество секунд, умножив количество дней на 86400 (количество секунд в сутках), и используйте полученное значение, чтобы задать поле seconds объекта Duration.

Обязательные поля для списков электронных адресов

Поле ingestedUserListInfo обязательно для аудитории на основе списка эл. адресов.

Ниже перечислены поля, которые нужно задать в объекте IngestedUserListInfo, в зависимости от типа данных, которые вы хотите использовать для добавления пользователей в список аудитории.

Список контактной информации

Если вы хотите использовать контактную информацию (хешированные адреса электронной почты, номера телефонов или адреса) для определения аудитории, задайте следующие поля:

uploadKeyTypes

Установите значение в виде списка, содержащего тип ключа загрузки CONTACT_ID.

Список uploadKeyTypes должен содержать только одну запись.

contactIdInfo

Установите для параметра ContactIdInfo значение dataSourceType, соответствующее значению из перечисления DataSourceType.

Список идентификаторов мобильных устройств

Если вы хотите использовать мобильные идентификаторы для определения участников аудитории, задайте следующие поля:

uploadKeyTypes

Установите значение в виде списка, содержащего тип ключа загрузки MOBILE_ID.

Список uploadKeyTypes должен содержать только одну запись.

mobileIdInfo

Установите значение "сообщение" для параметра MobileIdInfo:

  • Установите для параметра dataSourceType подходящее значение из перечисления DataSourceType.

  • Присвойте свойству keySpace значение IOS или ANDROID.

  • Установите для параметра appId строку, которая однозначно идентифицирует мобильное приложение, из которого были собраны данные.

    • Для iOS идентификатор представляет собой строку из девяти цифр, которая находится в конце URL магазина приложений. Например, 476943146 для приложения Flood-It! со ссылкой на App Store https://apps.apple.com/us/app/flood-it/id476943146.

    • Для Android строка идентификатора – это название пакета приложения. Например, com.labpixies.flood для приложения Flood-It! со ссылкой на Google Play https://play.google.com/store/apps/details?id=com.labpixies.flood.

Список идентификаторов пользователей

Если вы хотите использовать идентификаторы пользователей для определения участников аудитории, задайте следующие поля:

uploadKeyTypes

Установите значение в виде списка, содержащего тип ключа загрузки USER_ID.

Список uploadKeyTypes должен содержать только одну запись.

Как создать запрос

Чтобы создать аудиторию на основе списка электронных адресов, создайте create запрос для ресурса UserList.

  1. В поле parent укажите название ресурса аккаунта. Имя ресурса должно соответствовать формату accountTypes/{accountType}/accounts/{account}.

  2. Используйте объект UserList, созданный для тела запроса.

  3. Если ваши учетные данные не относятся к аккаунту Google, который является пользователем parent, задайте заголовки, как описано в разделе Настройка целевых адресов и заголовков.

Ниже приведены примеры запросов в формате JSON для разных типов информации о пользователях. Каждый запрос устанавливает для параметра membershipDuration значение 2592000s, где 2592000 – количество секунд в 30 днях. Нажмите кнопку Открыть в API Explorer, чтобы попробовать отправить запрос.

Контактная информация

{
    "description": "Customer Match for contact info",
    "displayName": "Contact info audience",
    "ingestedUserListInfo": {
        "contactIdInfo": {
            "dataSourceType": "DATA_SOURCE_TYPE_FIRST_PARTY"
        },
        "uploadKeyTypes": [
            "CONTACT_ID"
        ]
    },
    "membershipDuration": "2592000s"
}

Идентификаторы мобильных устройств

{
    "description": "Customer Match for mobile IDs",
    "displayName": "Mobile ID audience",
    "ingestedUserListInfo": {
        "mobileIdInfo": {
            "dataSourceType": "DATA_SOURCE_TYPE_FIRST_PARTY",
            "keySpace": "ANDROID",
            "appId": "com.labpixies.flood"
        },
        "uploadKeyTypes": [
            "MOBILE_ID"
        ]
    },
    "membershipDuration": "2592000s"
}

идентификаторы пользователей;

{
    "description": "Customer Match for user IDs",
    "displayName": "User ID audience",
    "ingestedUserListInfo": {
        "userIdInfo": {
            "dataSourceType": "DATA_SOURCE_TYPE_FIRST_PARTY"
        },
        "uploadKeyTypes": [
            "USER_ID"
        ]
    },
    "membershipDuration": "2592000s"
}

Отправка запроса

Отправьте запрос и, если необходимо, добавьте заголовки запроса.

Если запрос выполнен успешно, ответ содержит созданный объект UserList с заполненными полями id и name. Запишите значения в этих полях, поскольку они понадобятся вам в запросах на добавление участников аудитории.

Если запрос не будет выполнен, проверьте ошибки, чтобы определить причину сбоя, обновите запрос и заголовки, чтобы устранить проблемы, а затем отправьте обновленный запрос и заголовки.