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

Видео: аутентификация

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

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

API Google Рекламы использует учетные данные приложения для идентификации и авторизации запросов API. Можно настроить как клиентов OAuth 2.0, так и учетные записи служб . Дополнительные сведения о настройке авторизации на стороне клиента см. в разделе OAuth2 в Google Ads API .

Если вы новичок в API Google, вы можете использовать oauth2l или OAuth 2.0 Playground, чтобы поэкспериментировать с учетными данными приложения и API Google Рекламы, прежде чем писать код для своего приложения.

Использование потоков настольных компьютеров или веб-приложений

Следуйте инструкциям, чтобы настроить проект консоли Google API для Google Ads API . Запишите идентификатор и секрет клиента , а затем вернитесь на эту страницу.

После создания клиента OAuth следуйте инструкциям по работе с классическим приложением или инструкциям по работе с веб-приложением, чтобы создать токен обновления и токен доступа .

Использование сервисных учетных записей

Следуйте общим инструкциям в руководстве по сервисным аккаунтам , чтобы настроить доступ к сервисным аккаунтам для API Google Рекламы.

После того как вы настроили учетную запись службы для доступа к своей учетной записи Google Рекламы, следуйте руководству «Использование OAuth 2.0 для межсерверных приложений» , обязательно выбрав вкладку HTTP/REST . scope доступа к Google Ads API — https://www.googleapis.com/auth/adwords .

Генерация новых токенов доступа

Получив идентификатор клиента , секрет клиента и токен обновления , вы можете сгенерировать новый токен доступа для использования в вызовах 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 к API Google Рекламы:

GET /v17/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

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

Токен разработчика

API Google Рекламы также требует токен разработчика для выполнения вызовов API. Вы можете подать заявку на получение токена для своего управляющего аккаунта непосредственно из пользовательского интерфейса Google Рекламы. Дополнительные сведения о настройке токена разработчика см. в разделе «Получение токена разработчика» .

Вам необходимо включить значение токена разработчика в HTTP developer-token каждого вызова API к API Google Рекламы:

GET /v17/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

Войти в идентификатор клиента

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

Включение этого заголовка эквивалентно выбору учетной записи в пользовательском интерфейсе Google Рекламы после входа в систему или нажатия на изображение вашего профиля в правом верхнем углу страницы. При указании идентификатора клиента обязательно удаляйте дефисы (—), например: 1234567890 , а не 123-456-7890 .

GET /v17/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID

Связанный идентификатор клиента

Этот заголовок используется только сторонними поставщиками аналитики приложений при загрузке конверсий в связанный аккаунт Google Рекламы . Дополнительные сведения см. в руководстве по структуре вызовов API .

...
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID
linked-customer-id: LINKED_CUSTOMER_ID

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

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

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

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

request-id: 2a5Cj89VV7CNhya1DZjjrC