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 sie OAuth 2.0 mit Google APIs verwenden.

Umfang

Ein einzelnes Zugriffstoken kann unterschiedliche Zugriffsebenen auf mehrere APIs gewähren. Ein variabler Parameter namens scope steuert die Menge der Ressourcen und Vorgänge, die ein Zugriffstoken zulässt. Bei der Anfrage für das Zugriffstoken sendet Ihre App einen oder mehrere Werte im Parameter scope.

Der Umfang für die Google Ads API ist:

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

Offlinezugriff

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

Wenn Sie Offlinezugriff für einen Web-App-Typ anfordern möchten, legen Sie den Parameter access_type auf offline fest. Weitere Informationen finden Sie in Google's OAuth 2.0-Leitfaden.

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, fügen Sie jeder Anfrage das Zugriffstoken hinzu. Sie können eine Credential an einen Channel binden, um sie für alle Anfragen in diesem Channel zu verwenden. Sie können auch für jeden Aufruf eine benutzerdefinierte Anmeldedaten senden. Weitere Informationen zur Autorisierung finden Sie im gRPC-Autorisierungs leitfaden.

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}" \