Für den Aufruf der Google Ads API benötigen Sie OAuth 2.0-Anmeldedaten. Wenn Sie API-Aufrufe mit einem Google Ads-Verwaltungskonto ausführen, müssen Sie bei jeder Anfrage auch einen login-customer-id-Header angeben. Auf dieser Seite wird beschrieben, wie Sie diese Werte festlegen. Außerdem werden mehrere zusätzliche API-spezifische HTTP-Header dokumentiert, die bei Verwendung der REST-Schnittstelle gesendet und empfangen werden.
OAuth 2.0-Anmeldedaten
Die Google Ads API verwendet OAuth 2.0 zur Autorisierung von API-Anfragen. Sowohl der OAuth 2.0-Nutzerauthentifizierungsablauf als auch der Dienstkontoablauf werden unterstützt. Weitere Informationen finden Sie unter OAuth 2.0 in der Google Ads API.
Wenn Sie noch keine Erfahrung mit Google APIs haben, können Sie das gcloud-Befehlszeilentool oder den OAuth 2.0 Playground verwenden, um mit OAuth 2.0-Anmeldedaten und der Google Ads API zu experimentieren, bevor Sie Code für Ihre App schreiben.
Wir empfehlen, eine der OAuth 2.0-Bibliotheken unter https://oauth.net/code/ zu verwenden, um die OAuth 2.0-Autorisierungs-Workflows zu implementieren. Wir haben jedoch die curl-Anleitung aufgeführt, falls Sie sie selbst implementieren müssen.
Dienstkonten
Folgen Sie der Anleitung zum Konfigurieren eines Google Cloud-Projekts für die Google Ads API. Notieren Sie sich die E-Mail-Adresse des Dienstkontos und den Dienstkontoschlüssel. Folgen Sie als Nächstes der allgemeinen Anleitung im Leitfaden zu Dienstkonten, um das Dienstkonto für den Zugriff auf Ihr Google Ads-Konto einzurichten.
Nutzerauthentifizierung
Folgen Sie der Anleitung zum Konfigurieren eines Google Cloud Console-Projekts für die Google Ads API. Notieren Sie sich die Client-ID und den Clientschlüssel. Folgen Sie dann der Anleitung für Desktop-Anwendungen oder der Anleitung für Webanwendungen, um ein Aktualisierungstoken und ein Zugriffstoken zu generieren. Der scope, der für den Zugriff auf die Google Ads API verwendet werden soll, ist https://www.googleapis.com/auth/adwords.
Neue Zugriffstokens generieren
Dienstkonten
Wenn Sie die E-Mail-Adresse des Dienstkontos und den Dienstkontoschlüssel haben, folgen Sie der Anleitung OAuth 2.0 für Server-zu-Server-Anwendungen verwenden, um einen JWT-Anspruchssatz zu generieren. Dieser kann dann gegen ein OAuth 2.0-Zugriffstoken eingetauscht werden. Achten Sie darauf, dass Sie den Tab HTTP/REST auswählen, während Sie der Anleitung folgen. Das OAuth 2.0-scope für den Zugriff auf die Google Ads API ist https://www.googleapis.com/auth/adwords. Außerdem können Sie den Parameter sub beim Erstellen des JWT-Anspruchssatzes überspringen, da das Dienstkonto durch die Einrichtungsschritte direkten Zugriff auf das Google Ads-Konto erhält und Sie sich daher nicht als Google Ads-Nutzer ausgeben müssen.
Anschließend verwenden Sie das Zugriffstoken im HTTP-Header Authorization jedes API-Aufrufs an die Google Ads API:
GET /v26/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
Nutzerauthentifizierung
Sobald Sie eine OAuth 2.0-Client-ID, einen Clientschlüssel und ein Aktualisierungstoken haben, können Sie mit dem curl-Befehlszeilentool ein neues Zugriffstoken für API-Aufrufe generieren:
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/tokenAnschließend verwenden Sie das von der curl-Anfrage zurückgegebene Zugriffstoken im HTTP-Header Authorization jedes API-Aufrufs an die Google Ads API:
GET /v26/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
Anfrageheader
In den folgenden Abschnitten werden die HTTP-Header beschrieben, die für Anfragen an die Google Ads API erforderlich sind oder verwendet werden.
Kundennummer für die Anmeldung
Für Google Ads API-Aufrufe, die von einem Verwaltungskonto an ein Kundenkonto gesendet werden (also wenn Sie sich als Verwalter anmelden, um API-Aufrufe an eines Ihrer Kundenkonten zu senden), müssen Sie auch den HTTP-Header login-customer-id angeben. Dieser Wert stellt die Google Ads-Kundennummer des Verwaltungskontos dar, das den API-Aufruf ausführt.
Das Einfügen dieses Headers entspricht der Auswahl eines Kontos in der Google Ads-Benutzeroberfläche nach der Anmeldung oder dem Klicken auf Ihr Profilbild oben rechts auf der Seite. Entfernen Sie bei der Angabe der Kundennummer alle Bindestriche (—). Beispiel: 1234567890, nicht 123-456-7890. Weitere Informationen zur Kundennummer für die Anmeldung finden Sie im Leitfaden zum Google Ads-Zugriffsmodell.
GET /v26/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID
Verknüpfte Kundennummer
Der Header „Linked customer ID“ wird von Partnern (z. B. Drittanbietern von App-Analysetools oder Datenpartnern) verwendet, wenn sie im Namen eines verknüpften Google Ads-Kontos agieren. Weitere Informationen finden Sie im Leitfaden zur API-Aufrufstruktur.
Authorization: Bearer ACCESS_TOKEN
login-customer-id: PARTNER_CUSTOMER_ID
linked-customer-id: ADVERTISER_CUSTOMER_ID
Antwortheader
Die folgenden Header werden in HTTP-Antworten von der API zurückgegeben.
Anfrage-ID
request-id ist ein String, der die API-Anfrage eindeutig identifiziert. Beim Debuggen oder Beheben von Problemen mit bestimmten API-Aufrufen ist die request-id eine wichtige Kennung, die Sie zur Hand haben sollten, wenn Sie sich an den Google-Entwicklersupport wenden.
request-id: 2a5Cj89VV7CNhya1DZjjrC