Autorisierung und HTTP-Header

Video: Authentifizierung

Zum Aufrufen der Google Ads API benötigen Sie sowohl die Anmeldedaten für die OAuth 2.0-Anwendung als auch ein Entwickler-Token. Wenn Sie API-Aufrufe über ein Google Ads-Verwaltungskonto ausführen, müssen Sie außerdem in jeder Anfrage 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.

Anmeldedaten für OAuth 2.0

Die Google Ads API verwendet die Anmeldedaten, um API-Anfragen zu identifizieren und zu autorisieren. Es können sowohl OAuth 2.0-Clients als auch Dienstkonten konfiguriert werden. Weitere Informationen zum Konfigurieren der clientseitigen Autorisierung finden Sie unter OAuth2 in der Google Ads API.

Wenn Sie mit Google APIs noch nicht vertraut sind, können Sie oauth2l oder den OAuth 2.0 Playground verwenden, um mit Anwendungsanmeldedaten und der Google Ads API zu experimentieren, bevor Sie den Code für Ihre Anwendung schreiben.

Abläufe für Desktop- oder Web-Apps verwenden

Führen Sie die Schritte zum Konfigurieren eines Google API Console-Projekts für die Google Ads API aus. Notieren Sie sich die Client-ID und den Clientschlüssel und kehren Sie dann zu dieser Seite zurück.

Folge der Anleitung für Desktop-Anwendungen oder der Anleitung für Webanwendungen, nachdem du einen OAuth-Client erstellt hast, um ein Aktualisierungstoken und ein Zugriffstoken zu generieren.

Dienstkonten verwenden

Folgen Sie der allgemeinen Anleitung im Leitfaden zu Dienstkonten, um den Dienstkontozugriff für die Google Ads API einzurichten.

Nachdem Sie ein Dienstkonto für den Zugriff auf Ihr Google Ads-Konto eingerichtet haben, folgen Sie der Anleitung OAuth 2.0 für Server-zu-Server-Anwendungen verwenden und wählen Sie den Tab HTTP/REST aus. Die scope für den Zugriff auf die Google Ads API ist https://www.googleapis.com/auth/adwords.

Neue Zugriffstokens werden generiert

Sobald Sie eine Client-ID, einen Clientschlüssel und ein Aktualisierungstoken haben, können Sie ein neues Zugriffstoken zur Verwendung in API-Aufrufen mit dem curl-Befehlszeilentool erstellen:

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

Anschließend verwenden Sie das Zugriffstoken, das von der curl-Anfrage im Authorization-HTTP-Header jedes API-Aufrufs an die Google Ads API zurückgegeben wird:

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

Anfrageheader

Entwicklertoken

Über die Google Ads API ist außerdem ein Entwickler-Token erforderlich, um Aufrufe an die API senden zu können. Sie können ein Token für Ihr Verwaltungskonto direkt über die Google Ads-Benutzeroberfläche beantragen. Weitere Informationen zur Einrichtung eines Entwicklertokens finden Sie unter Entwicklertoken erhalten.

Bei jedem API-Aufruf an die Google Ads API müssen Sie den Wert Ihres Entwicklertokens in den HTTP-Header developer-token aufnehmen:

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

Log-in-Kundennummer

Für Google Ads API-Aufrufe eines Managers an ein Kundenkonto (wenn Sie sich also als Administrator anmelden, um API-Aufrufe an eines seiner Kundenkonten auszuführen), müssen Sie auch den HTTP-Header login-customer-id angeben. Dieser Wert steht für die Google Ads-Kundennummer des Managers, der den API-Aufruf durchführt.

Das Einfügen dieser Kopfzeile entspricht der Auswahl eines Kontos in der Google Ads-Benutzeroberfläche, nachdem Sie sich angemeldet oder oben rechts auf Ihr Profilbild geklickt haben. Entfernen Sie bei Angabe der Kundennummer alle Bindestriche (–), z. B. 1234567890 und nicht 123-456-7890.

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

Verknüpfte Kundennummer

Dieser Header wird von Drittanbietern von App-Analysetools nur verwendet, wenn sie Conversions in ein verknüpftes Google Ads-Konto hochladen. Weitere Informationen finden Sie im Leitfaden zur API-Aufrufstruktur.

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

Antwortheader

Die folgenden Header werden in HTTP-Antworten von der API zurückgegeben.

Antrags-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 du zur Hand haben solltest, wenn du dich an den Google-Entwicklersupport wendest.

request-id: 2a5Cj89VV7CNhya1DZjjrC