OAuth 2.0-Interna für die Google Ads API

Dieser Abschnitt richtet sich an fortgeschrittene Nutzer, die bereits mit der OAuth 2.0-Spezifikation vertraut sind und wissen, wie OAuth 2.0 mit Google APIs verwendet wird.

Umfang

Ein einzelnes Zugriffstoken kann unterschiedliche Zugriffsebenen für mehrere APIs gewähren. Ein variabler Parameter namens scope steuert die Menge der Ressourcen und Vorgänge, die mit einem Zugriffstoken zulässig sind. Während der Anfrage für das Zugriffstoken sendet Ihre App einen oder mehrere Werte im Parameter scope.

Der Umfang der Google Ads API ist:

https://www.googleapis.com/auth/adwords

Offlinezugriff

Eine Google Ads API-Client-Anwendung fordert häufig Offlinezugriff an. Ihre App soll beispielsweise Batchjobs ausführen, wenn der Nutzer nicht physisch online ist und Ihre Website nicht aufruft.

Wenn Sie Offlinezugriff für eine Webanwendung anfordern möchten, müssen Sie den Parameter access_type auf offline setzen. Weitere Informationen finden Sie im OAuth 2.0-Leitfaden von Google.

Für den Desktop-App-Typ ist der Offlinezugriff standardmäßig aktiviert. Sie müssen ihn nicht explizit anfordern.

Anfrageheader

gRPC-Header

Wenn Sie die gRPC API verwenden, müssen Sie das Zugriffstoken in jede Anfrage einfügen. Sie können ein Credential an ein Channel binden, damit es für alle Anfragen in diesem Channel verwendet wird. Sie können auch für jeden Aufruf benutzerdefinierte Anmeldedaten senden. Weitere Informationen zur Autorisierung finden Sie im gRPC-Autorisierungsleitfaden.

REST-Header

Wenn Sie die REST API verwenden, übergeben Sie das Zugriffstoken über den HTTP-Header Authorization. Hier sehen Sie ein Beispiel für eine HTTP-Anfrage:

# Returns the resource names of customers directly accessible by the user
# authenticating the call.
#
# Variables:
#   API_VERSION,
#   DEVELOPER_TOKEN,
#   OAUTH2_ACCESS_TOKEN:
#     See https://developers.google.com/google-ads/api/rest/auth#request_headers
#     for details.
#
curl -f --request GET \
"https://googleads.googleapis.com/v${API_VERSION}/customers:listAccessibleCustomers" \
--header "Content-Type: application/json" \
--header "developer-token: ${DEVELOPER_TOKEN}" \
--header "Authorization: Bearer ${OAUTH2_ACCESS_TOKEN}" \