Как начать работу с Ads Data Hub API

Из этого руководства вы узнаете, как начать создавать приложения, в которых используется REST API Ads Data Hub для взаимодействия с Ads Data Hub. С помощью REST API Ads Data Hub можно получать сведения о клиентах Ads Data Hub, связанных с вашим аккаунтом Google, а также создавать и выполнять запросы.

Настройка

Прежде чем приступить к использованию Ads Data Hub API, нужно выполнить несколько действий:

  1. Убедитесь, что у пользователя, который включает API, есть разрешение serviceusage.services.enable для проекта Google Cloud. Пользователь с разрешением serviceusage.services.enable также должен быть в белом списке, чтобы иметь доступ к API.
  2. Включите Ads Data Hub API в проекте Google Cloud, в котором были созданы учетные данные клиента или сервисный аккаунт. Чтобы включить Ads Data Hub API для проекта с помощью консоли:
    1. Перейдите в библиотеку API Cloud Console.
    2. Выберите нужный проект из списка.
    3. Выполните поиск по запросу "Ads Data Hub API".
    4. На странице API нажмите Включить.
  3. Настройте разрешения:
    1. Адрес электронной почты или сервисный аккаунт, которые использовались для создания учетных данных, нужно добавить в Ads Data Hub с необходимыми разрешениями. Для сервисного аккаунта используется его адрес электронной почты. Для OAuth нужно указать адрес пользователя. Это предоставит сервисному аккаунту или аккаунту конечного пользователя разрешение на выполнение запросов в Ads Data Hub.
  4. Рекомендуем установить клиентскую библиотеку API Google:
    1. Предоставляются клиентские библиотеки API Google для нескольких популярных языков программирования. С их помощью можно работать со множеством API Google. Клиентские библиотеки использовать не обязательно, но они позволяют уменьшить объем кода, который вам нужно написать, и упрощают настройку аутентификации.
Клиентская библиотека Примеры для Ads Data Hub
Клиентская библиотека API Google для Java Java
Клиентская библиотека API Google для Python

Аутентификация и авторизация

С помощью Ads Data Hub API можно получить доступ к данным в аккаунте Ads Data Hub и изменить их, поэтому вам нужно подтвердить, что вы являетесь авторизованным пользователем. По этой причине вам нужно пройти авторизацию, прежде чем приступать к работе с Ads Data Hub API. После авторизации вы получите необходимые разрешения для взаимодействия с API. Аутентификацию можно выполнить с помощью OAuth 2.0 или сервисного аккаунта.

Как настроить сервисный аккаунт

  1. Перейдите в Google API Console и выберите проект для администрирования.
  2. Убедитесь, что в разделе APIs & Services (API и сервисы) для вашего проекта включен Ads Data Hub API.
    1. В противном случае нажмите + Enable APIs and services (Включить API и сервисы) и включите Ads Data Hub API.
  3. На панели навигации слева выберите IAM & Admin (IAM и администрирование) > Service Accounts (Сервисные аккаунты).
    1. Создайте сервисный аккаунт, если ещё не сделали этого.
  4. В разделе Actions (Действия) нажмите на меню с тремя точками () и выберите Manage keys (Управление ключами).
    1. Нажмите Add key (Добавить ключ) и выберите Create new key (Создать ключ).
    2. Убедившись, что выбрано значение "JSON", нажмите Create (Создать).
  5. Добавьте адрес электронной почты сервисного аккаунта в аккаунт Ads Data Hub в качестве пользователя.

Как отправить тестовый запрос

#!/usr/bin/env python3

"""This sample shows how to retrieve all accounts associated with the user.
"""
import json
from google.oauth2.service_account import Credentials
from googleapiclient.discovery import build

SCOPES = ['https://www.googleapis.com/auth/adsdatahub']
DISCOVERY_URL = 'https://adsdatahub.googleapis.com/$discovery/rest?version=v1'
creds = Credentials.from_service_account_file(
    'service-account.json').with_scopes(SCOPES)
developer_key = 'YOUR_DEVELOPER_KEY'  # Replace with your developer key.
service = build('AdsDataHub', 'v1', credentials=creds,
                developerKey=developer_key, discoveryServiceUrl=DISCOVERY_URL)

# Replace with your customer ID.
customer_name = input('Customer name (e.g. "customers/123"): ').strip()
queries = service.customers().analysisQueries().list(
    parent=customer_name).execute()
print(json.dumps(queries, sort_keys=True, indent=4))

Дальнейшие действия

  • Ознакомьтесь с примерами запросов, которые можно создать и выполнить с помощью REST API Ads Data Hub.
  • Попробуйте менять примеры запросов, чтобы лучше ознакомиться с API и настроить его под свои потребности. Затем попробуйте:
  • Если у вас возникли вопросы или предложения, связанные с API, обратитесь в службу поддержки ADH.