Autorização e cabeçalhos HTTP

Vídeo: autenticação

Você precisa das credenciais do aplicativo OAuth 2.0 e de um token de desenvolvedor ao chamar a Google Ads API. Se você faz chamadas de API com uma conta de administrador do Google Ads, também precisa especificar um cabeçalho login-customer-id em cada solicitação. Nesta página, descrevemos como definir esses valores e documentos com vários cabeçalhos HTTP específicos da API, que são enviados e recebidos ao usar a interface REST.

Credenciais do OAuth 2.0

A Google Ads API usa credenciais de aplicativos para identificar e autorizar solicitações de API. Tanto os clientes OAuth 2.0 quanto as contas de serviço podem ser configurados. Para mais detalhes sobre como configurar a autorização do lado do cliente, consulte OAuth2 na API Google Ads.

Se você nunca usou as APIs do Google, use o oauth2l ou o OAuth 2.0 Playground para testar as credenciais dos aplicativos e a API Google Ads antes de escrever o código do app.

Como usar fluxos de apps da Web ou para computadores

Siga as etapas para configurar um projeto do Console de APIs do Google para a API Google Ads. Registre o ID do cliente e a chave secreta do cliente e volte para esta página.

Depois de criar um cliente OAuth, siga as instruções de fluxo de apps para computador ou as instruções de fluxo de apps da Web para gerar um token de atualização e um token de acesso.

Como usar contas de serviço

Siga as instruções comuns no guia Contas de serviço para configurar o acesso à conta de serviço para a API Google Ads.

Depois de configurar uma conta de serviço para acessar sua conta do Google Ads, siga o guia Usar o OAuth 2.0 para aplicativos de servidor para servidor, certificando-se de selecionar a guia HTTP/REST. O scope a ser usado para acesso à API Google Ads é https://www.googleapis.com/auth/adwords.

Gerar novos tokens de acesso

Com o ID do cliente, a chave secreta do cliente e o token de atualização, é possível gerar um novo token de acesso para usar em chamadas de API com a ferramenta de linha de comando 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

Em seguida, use o token de acesso retornado pela solicitação curl no cabeçalho HTTP Authorization de cada chamada de API para a API Google Ads:

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

Cabeçalhos de solicitação

Token de desenvolvedor

A API Google Ads também exige um token de desenvolvedor para fazer chamadas a ela. Você pode solicitar um token para sua conta de administrador diretamente na interface do Google Ads. Para mais detalhes sobre como configurar com um token de desenvolvedor, consulte Receber seu token de desenvolvedor.

É necessário incluir o valor do token de desenvolvedor no cabeçalho HTTP developer-token de cada chamada de API para a API Google Ads:

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

ID de cliente de login

No caso das chamadas da API Google Ads feitas por um administrador a uma conta de cliente (ou seja, ao fazer login como administrador para realizar chamadas de API a uma das contas de cliente), você também precisa fornecer o cabeçalho HTTP login-customer-id. Esse valor representa o ID de cliente do Google Ads do administrador que faz a chamada de API.

Incluir esse cabeçalho equivale a escolher uma conta na interface do Google Ads depois de fazer login ou clicar na imagem do seu perfil no canto superior direito da página. Ao especificar o ID de cliente, remova todos os hifens (—), por exemplo: 1234567890, não 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

ID de cliente vinculado

Esse cabeçalho é usado apenas por provedores de análise de aplicativos de terceiros no upload de conversões para uma conta vinculada do Google Ads. Consulte o Guia de estrutura de chamada de API para mais detalhes.

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

Cabeçalhos de resposta

Os cabeçalhos a seguir são retornados em respostas HTTP da API.

ID da solicitação

O request-id é uma string que identifica de forma exclusiva a solicitação de API. Ao depurar ou resolver problemas com chamadas de API específicas, o request-id é um identificador importante que precisa ser usado ao entrar em contato com o suporte ao desenvolvedor do Google.

request-id: 2a5Cj89VV7CNhya1DZjjrC