Авторизация и HTTP-заголовки

Для вызова Search Ads 360 Reporting API вам потребуются учетные данные приложения OAuth 2.0. Если вы выполняете вызовы API в качестве управляющего аккаунта Поисковой рекламы 360, то в каждом запросе также необходимо указывать заголовок login-customer-id. На этой странице описывается, как задать эти значения, и приводятся дополнительные HTTP-заголовки, которые отправляются и принимаются при использовании интерфейса REST.

Учетные данные OAuth 2.0

Search Ads 360 Reporting API использует учетные данные приложения для идентификации и авторизации запросов к API. Клиенты OAuth 2.0 можно настраивать. Все вызовы Search Ads 360 Reporting API должны быть авторизованы через OAuth2. OAuth2 позволяет API-клиенту Search Ads 360 Reporting API получать доступ к аккаунту Поисковой рекламы 360 без необходимости обрабатывать или хранить данные для входа.

Если вы раньше не работали с API Google, то можете использовать oauth2l или OAuth 2.0 Playground, чтобы поэкспериментировать с учетными данными приложения и Search Ads 360 Reporting API, прежде чем писать код для своего приложения. Вы также можете сгенерировать токен обновления OAuth, запустив предоставленный скрипт генерации учетных данных пользователя.

Создание новых токенов доступа

Получив идентификатор клиента, секретный код клиента и токен обновления, вы можете сгенерировать новый токен доступа для вызовов API с помощью инструмента командной строки curl:

curl \
  --data "grant_type=refresh_token" \
  --data "client_id=CLIENT_ID" \
  --data "client_secret=CLIENT_SECRET" \
  --data "refresh_token=REFRESH_TOKEN" \
  https://www.googleapis.com/oauth2/v3/token

Затем вы используете токен доступа, возвращенный curl-запросом, в HTTP-заголовке Authorization каждого вызова API к Search Ads 360 Reporting API:

GET /v0/customers:listAccessibleCustomers HTTP/1.1
Host: searchads360.googleapis.com
Authorization: Bearer ACCESS_TOKEN

Заголовки запроса

Идентификатор клиента для входа

Для вызовов Search Ads 360 Reporting API, которые управляющий аккаунт отправляет клиентскому (то есть когда вы входите в управляющий аккаунт, чтобы отправить вызовы API одному из его клиентских аккаунтов), также необходимо указать HTTP-заголовок login-customer-id. Это значение представляет собой идентификатор клиента Поисковой рекламы 360, который относится к управляющему аккаунту, выполняющему вызов API.

Добавление этого заголовка эквивалентно выбору аккаунта в интерфейсе Поисковой рекламы 360 после входа в систему или нажатия на изображение профиля в правом верхнем углу страницы. При указании идентификатора клиента не используйте дефисы (—). Например, вместо 123-456-7890 нужно указать 1234567890.

GET /v0/customers:listAccessibleCustomers HTTP/1.1
Host: searchads360.googleapis.com
Authorization: Bearer ACCESS_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID

Заголовки ответа

В HTTP-ответах от API возвращаются следующие заголовки:

Идентификатор запроса

request-id – это строка, которая уникальным образом идентифицирует запрос к API. При отладке или устранении неполадок, связанных с определенными вызовами API, request-id – это важный идентификатор, который нужно иметь под рукой при обращении в службу поддержки Google Developers.

request-id: 2a5Cj89VV7CNhya1DZjjrC