Intestazioni per l'autorizzazione e HTTP

Per chiamare l'API Google Ads, sono necessarie le credenziali OAuth 2.0. Se effettui chiamate API con un account amministratore Google Ads, devi anche specificare un'intestazione login-customer-id con ogni richiesta. In questa pagina viene descritto come impostare questi valori e vengono documentate diverse intestazioni HTTP aggiuntive specifiche dell'API che vengono inviate e ricevute quando si utilizza l'interfaccia REST.

Credenziali OAuth 2.0

L'API Google Ads utilizza OAuth 2.0 per autorizzare le richieste API. Sono supportati sia il flusso di autenticazione utente sia il flusso dell'account di servizio di OAuth 2.0. Per maggiori dettagli, consulta OAuth 2.0 nell'API Google Ads.

Se non hai mai utilizzato le API di Google, puoi utilizzare lo strumento a riga di comando gcloud o OAuth 2.0 Playground per sperimentare con le credenziali OAuth 2.0 e l'API Google Ads prima di scrivere il codice per la tua app.

Ti consigliamo di utilizzare una delle librerie OAuth 2.0 disponibili all'indirizzo https://oauth.net/code/ per implementare i workflow di autorizzazione OAuth 2.0. Tuttavia, abbiamo elencato le istruzioni curl nel caso in cui tu debba implementarlo autonomamente.

Service account

Segui i passaggi per configurare un progetto Google Cloud per l'API Google Ads. Prendi nota dell'indirizzo email del service account e della chiave del service account. Poi, segui le istruzioni comuni riportate nella guida agli account di servizio per configurare l'account di servizio in modo che possa accedere al tuo account Google Ads.

Autenticazione degli utenti

Segui i passaggi per configurare un progetto della console Google Cloud per l'API Google Ads. Prendi nota dell'ID client e del client secret. Poi, segui le istruzioni per il flusso dell'app desktop o le istruzioni per il flusso dell'app web per generare un token di aggiornamento e un token di accesso. Il scope da utilizzare per l'accesso all'API Google Ads è https://www.googleapis.com/auth/adwords.

Genera nuovi token di accesso

Service account

Quando hai l'indirizzo email del service account e la chiave del service account, segui la guida Utilizzo di OAuth 2.0 per le applicazioni server-to-server per generare un set di attestazioni JWT, che può essere scambiato per ottenere un token di accesso OAuth 2.0. Assicurati di selezionare la scheda HTTP/REST mentre segui la guida. L'scope OAuth 2.0 da utilizzare per l'accesso all'API Google Ads è https://www.googleapis.com/auth/adwords. Inoltre, puoi saltare il parametro sub durante la creazione del set di dichiarazioni JWT, perché i passaggi di configurazione concedono al service account l'accesso diretto all'account Google Ads, evitando così la necessità di impersonare un utente Google Ads.

Poi, utilizza il token di accesso nell'intestazione HTTP Authorization di ogni chiamata API all'API Google Ads:

GET /v26/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN

Autenticazione degli utenti

Una volta ottenuti un ID client, un client secret e un token di aggiornamento OAuth 2.0, puoi generare un nuovo token di accesso da utilizzare nelle chiamate API con lo strumento a riga di 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

Poi, utilizza il token di accesso restituito dalla richiesta curl nell'intestazione HTTP Authorization di ogni chiamata API all'API Google Ads:

GET /v26/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN

Intestazioni delle richieste

Le sezioni seguenti descrivono le intestazioni HTTP obbligatorie o utilizzate quando si effettuano richieste all'API Google Ads.

ID cliente di accesso

Per le chiamate API Google Ads effettuate da un amministratore a un account cliente (ovvero quando accedi come amministratore per effettuare chiamate API a uno dei suoi account cliente), devi anche fornire l'intestazione HTTP login-customer-id. Questo valore rappresenta l'ID cliente Google Ads dell'amministratore che effettua la chiamata API.

L'inclusione di questa intestazione equivale a scegliere un account nell'interfaccia utente di Google Ads dopo aver eseguito l'accesso o aver fatto clic sull'immagine del profilo nell'angolo in alto a destra della pagina. Quando specifichi l'ID cliente, assicurati di rimuovere eventuali trattini (-). Ad esempio: 1234567890, non 123-456-7890. Per scoprire di più sull'ID cliente di accesso, consulta la guida al modello di accesso di Google Ads.

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

ID cliente collegato

L'intestazione ID cliente collegato viene utilizzata dai partner (ad esempio i provider di analisi dati delle app di terze parti o i partner di dati) quando agiscono su un account Google Ads collegato. Per ulteriori dettagli, consulta la guida alla struttura delle chiamate API.

Authorization: Bearer ACCESS_TOKEN
login-customer-id: PARTNER_CUSTOMER_ID
linked-customer-id: ADVERTISER_CUSTOMER_ID

Intestazioni della risposta

Le seguenti intestazioni vengono restituite nelle risposte HTTP dall'API.

ID richiesta

request-id è una stringa che identifica in modo univoco la richiesta API. Quando esegui il debug o la risoluzione dei problemi relativi a chiamate API specifiche, è importante avere a portata di mano l'identificatore request-id quando contatti l'assistenza per gli sviluppatori Google.

request-id: 2a5Cj89VV7CNhya1DZjjrC