Вот как настроить доступ к API Data Manager с помощью SDK или REST.
Предварительные требования
Прежде чем использовать API данных, убедитесь, что у вас есть следующее:
- Проект Google Cloud .
- Для доступа к вашему проекту Google Cloud требуется учетная запись Google, имеющая разрешение
serviceusage.services.enable, или роль, включающая это разрешение. Например,roles/ownerиroles/serviceusage.serviceUsageAdminсодержат разрешениеserviceusage.services.enable. Чтобы проверить свои разрешения, см. раздел «Просмотр текущего доступа» .
Включить API
Если вы еще этого не сделали, включите API диспетчера данных, нажав кнопку «Включить API диспетчера данных» , или следуйте инструкциям , чтобы выполнить этот шаг вручную.
Включите API менеджера данных.Если вы не можете найти API Data Manager или включение API Data Manager не удается, убедитесь, что ваша учетная запись Google соответствует необходимым требованиям .
Настройка аутентификации
Помимо ключей API, вы можете использовать любой из методов аутентификации Google . Мы рекомендуем ознакомиться с инструкцией по выбору подходящего метода аутентификации для вашего случая, чтобы определить, какой подход лучше всего подходит для ваших задач.
Два распространенных метода аутентификации — это учетные записи пользователей и служебные учетные записи :
- Учетные записи пользователей : представляют людей, которые напрямую взаимодействуют с API и сервисами Google.
- Служебные учетные записи : представляют приложения, а не людей, в качестве пользователей. Они позволяют вашим приложениям управлять аутентификацией и авторизацией. Например, если приложению необходимо получить доступ к ресурсам Google Cloud.
Ваша интеграция может использовать учетные данные по умолчанию для приложений (ADC) для автоматического поиска учетных данных в среде, поэтому вам не нужно изменять клиентский код для аутентификации.
Для настройки ADC выберите имитацию учетной записи пользователя или служебной учетной записи:
Вот шаги для аутентификации с использованием учетных данных пользователя :
Настройте параметры платформы аутентификации Google для вашего проекта.
Откройте страницу «Брендинг» в консоли Google Cloud.
Выберите свой проект.
Заполните форму и нажмите «Создать» .
Поскольку область действия API Data Manager является конфиденциальной , необходимо выполнить следующие шаги:
Перейдите в настройки доступа к данным для вашего проекта.
Нажмите «Добавить или удалить области действия» .
Установите флажок рядом с пунктом «API менеджера данных» в списке областей действия и нажмите «Обновить» .
Нажмите « Сохранить ».
Перейдите в раздел «Аудитория» в консоли Google Cloud и обновите статус публикации и тип пользователя . Подробнее об этих настройках см. в разделе «Управление аудиторией приложений» .
Нажмите «Создать клиент OAuth2» , чтобы создать клиент OAuth2 в проекте, или следуйте инструкциям , чтобы создать настольный клиент OAuth2.
Создание клиента OAuth2На последнем шаге нажмите кнопку СКАЧАТЬ КОНФИГУРАЦИЮ КЛИЕНТА и запомните выбранное вами место для загрузки.
Создайте локальный файл ADC, выполнив следующую команду. Эта команда запускает веб-процесс, в котором вам будет предложено войти в учетную запись Google, которую вы используете с API.
Замените PATH_TO_CLIENT_JSON на имя загруженного вами JSON-файла.
gcloud auth application-default login \ --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/cloud-platform" \ --client-id-file="PATH_TO_CLIENT_JSON"Подтвердите правильность настройки учетных данных с помощью следующей команды. В случае успеха команда выведет токен доступа в консоль.
gcloud auth application-default print-access-token
Чтобы узнать больше об аутентификации и учетных данных для вашего приложения, см. разделы «Методы аутентификации в Google» и «Как работают учетные данные приложения по умолчанию» .
Настройка доступа к операционной учетной записи
Предоставьте доступ кDestination электронной почты, связанной с вашей учетной записью пользователя.- Если вы используете аккаунт Google Ads или аккаунт партнера по обработке данных, следуйте инструкциям , чтобы добавить адрес электронной почты пользователя в аккаунт.
- Если вы используете учетную запись Display & Video 360, следуйте инструкциям , чтобы добавить адрес электронной почты пользователя в эту учетную запись.
Настройте SDK для вашего языка программирования.
На локальном компьютере установите выбранный вами SDK:
ОТДЫХ
- В приведенном ниже примере обновите поля-заполнители, такие как OPERATING_ACCOUNT_PRODUCT , OPERATING_ACCOUNT_ID и AUDIENCE_ID , указав значения для вашей учетной записи и назначения.
- Замените PROJECT_ID на идентификатор вашего проекта в Google Cloud.
Скопируйте образец в командную строку, чтобы отправить запрос.
Удалите атрибут
linkedAccountиз записи в спискеdestinations, если вы не используете для доступаoperatingAccountустановленную связь с продуктом.#!/bin/bash # Uses gcloud to get an access token. If the Application Default # Credentials aren't for a service account, the command that specifies # --scopes fails. This sample falls back to the command without the # --scopes argument. DATA_MANAGER_ACCESS_TOKEN="$(gcloud auth application-default print-access-token --scopes=https://www.googleapis.com/auth/datamanager || \ gcloud auth application-default print-access-token)" # Fetches and prints the scope information for the access token. If you # get scope-related errors when you send the request in the next step, # verify that this output includes the Data Manager API scope: # https://www.googleapis.com/auth/datamanager curl https://www.googleapis.com/oauth2/v1/tokeninfo?access_token="${DATA_MANAGER_ACCESS_TOKEN}" # Sends the request. curl -X POST "https://datamanager.googleapis.com/v1/audienceMembers:ingest" \ --header "Authorization: Bearer ${DATA_MANAGER_ACCESS_TOKEN}" \ --header "x-goog-user-project: PROJECT_ID" \ --header "Content-Type: application/json" \ --data @- <<EOF { "destinations": [ { "operatingAccount": { "accountType": "OPERATING_ACCOUNT_TYPE", "accountId": "OPERATING_ACCOUNT_ID" }, "loginAccount": { "accountType": "LOGIN_ACCOUNT_TYPE", "accountId": "LOGIN_ACCOUNT_ID" }, "linkedAccount": { "accountType": "LINKED_ACCOUNT_TYPE", "accountId": "LINKED_ACCOUNT_ID" }, "productDestinationId": "AUDIENCE_ID" } ], "audienceMembers": [ { "userData": { "userIdentifiers": [ { "emailAddress": "07e2f1394b0ea80e2adca010ea8318df697001a005ba7452720edda4b0ce57b3" }, { "emailAddress": "1df6b43bc68dd38eca94e6a65b4f466ae537b796c81a526918b40ac4a7b906c7" } ] } }, { "userData": { "userIdentifiers": [ { "emailAddress": "2ef46c4214c3fc1b277a2d976d55194e12b899aa50d721f28da858c7689756e3" }, { "emailAddress": "54e410b14fa652a4b49b43aff6eaf92ad680d4d1e5e62ed71b86cd3188385a51" }, { "emailAddress": "e8bd3f8da6f5af73bec1ab3fbf7beb47482c4766dfdfc94e6bd89e359c139478" } ] } }, { "userData": { "userIdentifiers": [ { "emailAddress": "05bb62526f091b45d20e243d194766cca8869137421047dc53fa4876d111a6f0" }, { "emailAddress": "f1fcde379f31f4d446b76ee8f34860eca2288adc6b6d6c0fdc56d9eee75a2fa5" } ] } }, { "userData": { "userIdentifiers": [ { "emailAddress": "83a834cc5327bc4dee7c5408988040dc5813c7662611cd93b707aff72bf7d33f" }, { "emailAddress": "223ebda6f6889b1494551ba902d9d381daf2f642bae055888e96343d53e9f9c4" } ] } } ], "consent": { "adUserData": "CONSENT_GRANTED", "adPersonalization": "CONSENT_GRANTED" }, "encoding": "HEX", "termsOfService": { "customerMatchTermsOfServiceStatus": "ACCEPTED" }, "validateOnly": true } EOF
.СЕТЬ
Установите клиентскую библиотеку.
Следуйте инструкциям в руководстве по установке клиентской библиотеки .NET , чтобы добавить зависимость от клиентской библиотеки в ваш проект.
Необязательно: получите библиотеку утилит и примеры кода.
Клонируйте репозиторий GitHub .
git clone https://github.com/googleads/data-manager-dotnet.gitВ вашем проекте .NET объявите зависимость
ProjectReferenceот библиотеки утилит. Замените PATH_TO_UTILITY_LIBRARY на путь, куда вы клонировали репозиторийdata-manager-dotnet.<ProjectReference Include="PATH_TO_UTILITY_LIBRARY\Google.Ads.DataManager.Util\src\Google.Ads.DataManager.Util.csproj" />Для форматирования данных используйте утилиту
Formatterв вашем проекте .NET.Примеры кода можно найти в подкаталоге
samplesили на GitHub .Перейдите в каталог
samplesи используйтеdotnet run, чтобы получить список доступных примеров.dotnet runПередайте аргумент
--helpпри запуске примера, чтобы вывести инструкцию по использованию с ожидаемыми параметрами.dotnet run -- ingest-audience-members --helpДля начала работы воспользуйтесь примерами данных из файла
samples/sampledata/audience_members_1.csv.
Java
Установите клиентскую библиотеку.
Если вы используете Maven с BOM , добавьте это в свой файл pom.xml:
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.cloud</groupId>
<artifactId>libraries-bom</artifactId>
<version>26.72.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>data-manager-bom</artifactId>
<version>0.1.0</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>data-manager</artifactId>
</dependency>
</dependencies>
Если вы используете Maven без BOM, добавьте это в свои зависимости:
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>data-manager</artifactId>
<version>0.1.0</version>
</dependency>
Если вы используете Gradle с BOM , добавьте это в ваши зависимости:
implementation platform('com.google.cloud:libraries-bom:26.72.0')
implementation platform('com.google.api-ads:data-manager-bom:0.1.0')
implementation 'com.google.api-ads:data-manager'
Если вы используете Gradle без BOM, добавьте это в ваши зависимости:
implementation 'com.google.api-ads:data-manager:0.1.0'
Если вы используете SBT, добавьте это в свои зависимости:
libraryDependencies += "com.google.api-ads" % "data-manager" % "0.1.0"
Необязательно: получите библиотеку утилит и примеры кода.
Клонируйте репозиторий GitHub .
git clone https://github.com/googleads/data-manager-java.gitПерейдите в каталог
data-manager-java.Соберите и опубликуйте библиотеку утилит в локальном репозитории Maven.
./gradlew data-manager-util:installВ вашем Java-проекте объявите зависимость от этой вспомогательной библиотеки.
Gradle:
implementation 'com.google.api-ads:data-manager-util:0.2.0'Мэйвен:
<dependency> <groupId>com.google.api-ads</groupId> <artifactId>data-manager-util</artifactId> <version>0.2.0</version> </dependency>Для форматирования и шифрования данных используйте утилиты
UserDataFormatterиEncrypterв вашем Java-проекте.Примеры кода можно найти в подкаталоге
data-manager-samplesили на GitHub . Для запуска примера из командной строки используйте задачу Gradlerun.Например, следующая команда запускает пример
IngestAudienceMembersи выводит инструкцию по его использованию:./gradlew data-manager-samples:run \ --args='IngestAudienceMembers --help'Для начала работы воспользуйтесь примерами данных из файла по адресу
data-manager-samples/src/main/resources/sampledata/audience_members_1.csv.
Node.js
Установите клиентскую библиотеку.
Следуйте инструкциям в руководстве по установке клиентской библиотеки Node.js , чтобы добавить зависимость от клиентской библиотеки @google-ads/datamanager в ваш проект.
Необязательно: получите библиотеку утилит и примеры кода.
Клонируйте репозиторий GitHub .
git clone https://github.com/googleads/data-manager-node.gitПерейдите в каталог
data-manager-node.Выполните следующую команду для установки зависимостей.
npm installПерейдите в каталог
util.cd utilВыполните следующую команду, чтобы скомпилировать и упаковать библиотеку утилит в файл
.tgzдля использования сnpm.npm packЭта команда создаст архив с именем
google-ads-datamanager-util-0.2.0.tgz. Запомните местоположение файла, чтобы использовать его на следующих шагах.В вашем проекте Node.js объявите зависимость от библиотеки утилит API Data Manager, добавив запись в
dependencies, указав полный путь и имя файлаgoogle-ads-datamanager-util-0.2.0.tgz.{ "dependencies": { ... "@google-ads/data-manager-util": "file:PATH_TO_UTILITY_LIBRARY/google-ads-datamanager-util-0.2.0.tgz", ... } }Для форматирования данных используйте утилиту
UserDataFormatterв вашем проекте Node.js.Просмотрите примеры кода в подкаталоге
samplesили на GitHub . Запустите примеры, выполнив следующие шаги:Перейдите в каталог
data-manager-node.Запустите примеры, передав все необходимые аргументы. При запуске примера передайте аргумент
--help, чтобы вывести инструкцию по использованию с ожидаемыми параметрами.Например, следующая команда запускает пример
ingest_audience_membersи выводит инструкцию по его использованию:npm run ingest-audience-members -w samples -- --help
Для начала работы воспользуйтесь примерами данных из файла
samples/sampledata/audience_members_1.csv.
PHP
Установите клиентскую библиотеку.
Следуйте инструкциям в руководстве по установке клиентской библиотеки PHP , чтобы добавить зависимость от клиентской библиотеки googleads/data-manager в ваш проект.
Необязательно: получите библиотеку утилит и примеры кода.
Клонируйте репозиторий GitHub .
git clone https://github.com/googleads/data-manager-php.gitПерейдите в каталог
data-manager-php.Выполните следующую команду, чтобы разрешить зависимости для библиотеки:
composer update --prefer-distВ файле
composer.jsonвашего PHP-проекта на том же хосте укажите зависимость от вспомогательной библиотеки, выполнив следующие шаги:Добавьте в раздел
repositoriesзапись, указывающую на расположение каталогаdata-manager-php."repositories" : [ { "type" : "path", "url" : "PATH_TO_UTILITY_LIBRARY" } ]Объявите зависимость от библиотеки утилит.
"require": { "googleads/data-manager-util": "@dev" }
Для форматирования данных используйте утилиту
Formatterв вашем PHP-проекте.Просмотрите примеры кода в подкаталоге
samplesили на GitHub . Запустите примеры, выполнив следующие шаги:Перейдите в каталог
samples.Выполните следующую команду, чтобы разрешить зависимости для библиотеки:
composer update --prefer-distЗапустите примеры, передав все необходимые аргументы. При запуске примера передайте аргумент
--help, чтобы вывести инструкцию по использованию с ожидаемыми параметрами.
Для начала работы воспользуйтесь примерами данных из файла
samples/sampledata/audience_members_1.csv.
Python
Установите клиентскую библиотеку.
Следуйте инструкциям в руководстве по установке клиентской библиотеки Python , чтобы добавить зависимость от клиентской библиотеки google-ads-datamanager в ваш проект.
Необязательно: получите библиотеку утилит и примеры кода.
Клонируйте репозиторий GitHub .
git clone https://github.com/googleads/data-manager-python.gitПерейдите в каталог
data-manager-python.Для установки этой вспомогательной библиотеки в вашу среду Python выполните следующую команду:
pip install .В вашем проекте на Python объявите зависимость от вспомогательной библиотеки. Например, если вы используете файл
requirements.txtв своем проекте, добавьте в него следующую строку:google-ads-data-manager-util=0.2.0Для форматирования и шифрования данных используйте утилиты
FormatterиEncrypterв вашем проекте Python.Просмотрите примеры кода в подкаталоге
samplesили на GitHub . Для запуска примеров установите необходимые зависимости:pip install .[samples]Передайте аргумент
--helpпри запуске примера, чтобы вывести инструкцию по использованию с ожидаемыми параметрами.Для начала работы воспользуйтесь примерами данных из файла
samples/sampledata/audience_members_1.csv.
Руби
Установите клиентскую библиотеку.
Следуйте инструкциям в руководстве по установке клиентской библиотеки Ruby , чтобы добавить зависимость от клиентской библиотеки в ваш проект.
Следующие шаги
- Узнайте больше об отправке данных об аудитории .
- Узнайте больше об отправке событий .
- Ознакомьтесь с документацией по REST или RPC .