Autoryzacja i nagłówki HTTP

Film: uwierzytelnianie

Aby wywołać interfejs Google Ads API, musisz mieć zarówno dane uwierzytelniające aplikacji OAuth 2.0, jak i token dewelopera. Jeśli wywołujesz interfejs API za pomocą konta menedżera Google Ads, musisz też w każdej prośbie podać nagłówek login-customer-id. Na tej stronie opisaliśmy, jak ustawić te wartości, oraz podano kilka dodatkowych nagłówków HTTP związanych z danym interfejsem API, które są wysyłane i odbierane podczas korzystania z interfejsu REST.

Dane uwierzytelniające OAuth 2.0

Interfejs Google Ads API używa danych logowania aplikacji do identyfikowania i autoryzowania żądań interfejsu API. Można skonfigurować zarówno klientów OAuth 2.0, jak i konta usługi. Więcej informacji o konfigurowaniu autoryzacji po stronie klienta znajdziesz w artykule OAuth2 w interfejsie Google Ads API.

Jeśli dopiero zaczynasz korzystać z interfejsów API Google, możesz użyć narzędzia oauth2l lub OAuth 2.0 Playground, aby eksperymentować z danymi logowania aplikacji i interfejsem Google Ads API, zanim napiszesz kod aplikacji.

Korzystanie z przepływów aplikacji na komputerze lub w przeglądarce

Wykonaj czynności opisane w artykule Konfigurowanie projektu w Konsoli interfejsów API Google do obsługi interfejsu Google Ads API. Zapisz identyfikator klienta i tajny klucz klienta, a następnie wróć na tę stronę.

Po utworzeniu klienta OAuth postępuj zgodnie z instrukcjami dotyczącymi procesu korzystania z aplikacji na komputer lub instrukcjami dotyczącymi procesu korzystania z aplikacji internetowej, aby wygenerować token odświeżaniatoken dostępu.

Korzystanie z kont usługi

Aby skonfigurować dostęp konta usługi do interfejsu Google Ads API, wykonaj ogólne instrukcje podane w przewodniku Konta usługi.

Po skonfigurowaniu konta usługi, które ma mieć dostęp do konta Google Ads, postępuj zgodnie z instrukcjami w artykule Używanie protokołu OAuth 2.0 w aplikacjach międzyserwerowych, pamiętając o wybraniu karty HTTP/REST. scope do użycia do uzyskania dostępu do interfejsu Google Ads API to https://www.googleapis.com/auth/adwords.

Generowanie nowych tokenów dostępu

Gdy masz już identyfikator klienta, klucz tajny klienta i token odświeżania, możesz wygenerować nowy token dostępu do użycia w wywołaniach interfejsu API za pomocą narzędzia wiersza poleceń 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

Następnie użyj tokena dostępu zwróconego przez żądanie curl w Authorization nagłówku HTTP każdego wywołania interfejsu Google Ads API:

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

Nagłówki żądania

Token programisty

Aby wykonywać wywołania interfejsu API, interfejs Google Ads API wymaga też tokenu programisty. Token na potrzeby konta menedżera możesz poprosić bezpośrednio w interfejsie Google Ads. Więcej informacji o konfigurowaniu tokenu programisty znajdziesz w artykule Uzyskiwanie tokenu programisty.

Wartość tokenu programisty musisz podać w nagłówku developer-token HTTP każdego wywołania interfejsu Google Ads API:

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

Identyfikator logowania klienta

W przypadku wywołań interfejsu Google Ads API przez menedżera na koncie klienta (czyli gdy logujesz się jako menedżer, aby wywołać interfejs API na jednym z kont klienta) musisz też podać nagłówek HTTP login-customer-id. Ta wartość to identyfikator klienta Google Ads menedżera, który wysyła żądanie do interfejsu API.

Użycie tego nagłówka jest równoznaczne z wybraniem konta w interfejsie Google Ads po zalogowaniu się lub kliknięciu zdjęcia profilowego w prawym górnym rogu strony. Podczas podawania identyfikatora klienta usuń wszystkie łączniki (–). Na przykład: 1234567890, a nie 123-456-7890.

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

Połączony identyfikator klienta

Ten nagłówek jest używany tylko przez zewnętrznych dostawców analityki aplikacji podczas przesyłania konwersji na połączone konto Google Ads. Więcej informacji znajdziesz w przewodniku Struktura wywołania interfejsu API.

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

Nagłówki odpowiedzi

W odpowiedziach HTTP z interfejsu API zwracane są te nagłówki.

Identyfikator żądania

Wartość request-id to ciąg znaków jednoznacznie identyfikujący żądanie interfejsu API. Podczas debugowania lub rozwiązywania problemów z konkretnymi wywołaniami interfejsu API request-id jest ważnym identyfikatorem, który warto mieć pod ręką, gdy kontaktujesz się z zespołem pomocy Google dla deweloperów.

request-id: 2a5Cj89VV7CNhya1DZjjrC