Podczas wywoływania interfejsu Google Ads API potrzebujesz danych uwierzytelniających OAuth 2.0. Jeśli wywołujesz interfejs API za pomocą konta menedżera Google Ads, musisz też w każdym żądaniu podać nagłówek login-customer-id. Na tej stronie opisujemy, jak ustawić te wartości, oraz dokumentujemy kilka dodatkowych nagłówków HTTP interfejsu API, które są wysyłane i odbierane podczas korzystania z interfejsu REST.
Dane logowania OAuth 2.0
Interfejs Google Ads API używa protokołu OAuth 2.0 do autoryzowania żądań do interfejsu API. Obsługiwany jest zarówno proces uwierzytelniania użytkownika, jak i proces konta usługi w protokole OAuth 2.0. Więcej informacji znajdziesz w artykule OAuth 2.0 w interfejsie Google Ads API.
Jeśli dopiero zaczynasz korzystać z interfejsów API Google, możesz użyć narzędzia wiersza poleceń gcloud lub OAuth 2.0 Playground, aby poeksperymentować z danymi logowania OAuth 2.0 i interfejsem Google Ads API, zanim napiszesz kod aplikacji.
Zalecamy użycie jednej z bibliotek OAuth 2.0 dostępnych na stronie https://oauth.net/code/, aby wdrożyć procesy autoryzacji OAuth 2.0. Podajemy jednak instrukcje dotyczące curl na wypadek, gdyby trzeba było wdrożyć je samodzielnie.
Konta usługi
Wykonaj czynności opisane w artykule Konfigurowanie projektu Google Cloud na potrzeby interfejsu Google Ads API. Zapisz adres e-mail konta usługi i klucz konta usługi. Następnie postępuj zgodnie z ogólnymi instrukcjami podanymi w przewodniku po kontach usługi, aby skonfigurować konto usługi pod kątem dostępu do konta Google Ads.
Uwierzytelnianie użytkowników
Wykonaj czynności opisane w artykule Konfigurowanie projektu w konsoli Google Cloud na potrzeby interfejsu Google Ads API. Zapisz identyfikator klienta i tajny klucz klienta. Następnie postępuj zgodnie z instrukcjami dotyczącymi aplikacji komputerowej lub instrukcjami dotyczącymi aplikacji internetowej, aby wygenerować token odświeżania i token dostępu. scope, którego należy używać do uzyskiwania dostępu do interfejsu Google Ads API, to https://www.googleapis.com/auth/adwords.
Generowanie nowych tokenów dostępu
Konta usługi
Gdy masz już adres e-mail konta usługi i klucz konta usługi, postępuj zgodnie z przewodnikiem Używanie protokołu OAuth 2.0 w aplikacjach typu serwer-serwer, aby wygenerować zestaw oświadczeń JWT, który można następnie wymienić na token dostępu OAuth 2.0. Podczas korzystania z przewodnika wybierz kartę HTTP/REST. scope protokołu OAuth 2.0, którego należy używać do uzyskiwania dostępu do interfejsu Google Ads API, to https://www.googleapis.com/auth/adwords. Możesz też pominąć parametr sub podczas tworzenia zbioru oświadczeń JWT, ponieważ kroki konfiguracji przyznają kontu usługi bezpośredni dostęp do konta Google Ads, co eliminuje konieczność podszywania się pod użytkownika Google Ads.
Następnie używasz tokena dostępu w nagłówku HTTP Authorization każdego wywołania interfejsu Google Ads API:
GET /v26/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
Uwierzytelnianie użytkowników
Gdy masz już identyfikator klienta, tajny klucz klienta i token odświeżania OAuth 2.0, 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/tokenNastępnie używasz tokena dostępu zwróconego przez żądanie curl w nagłówku HTTP Authorization każdego wywołania interfejsu Google Ads API:
GET /v26/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
Nagłówki żądania
W sekcjach poniżej opisujemy nagłówki HTTP wymagane lub używane podczas wysyłania żądań do interfejsu Google Ads API.
Identyfikator klienta logowania
W przypadku wywołań interfejsu Google Ads API wykonywanych przez menedżera na koncie klienta (czyli gdy logujesz się jako menedżer, aby wykonywać wywołania interfejsu API na jednym z kont klienta) musisz też podać nagłówek HTTP login-customer-id. Ta wartość reprezentuje identyfikator klienta Google Ads menedżera, który wywołuje interfejs API.
Dołączenie 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. Podając identyfikator klienta, usuń wszystkie łączniki (–). Na przykład: 1234567890, a nie 123-456-7890. Więcej informacji o identyfikatorze klienta logowania znajdziesz w przewodniku po modelu dostępu do Google Ads.
GET /v26/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID
Połączony identyfikator klienta
Nagłówek Linked customer ID (Połączony identyfikator klienta) jest używany przez partnerów (np. zewnętrznych dostawców analityki aplikacji lub dostawców danych), gdy wykonują oni działania na połączonym koncie Google Ads. Więcej informacji znajdziesz w przewodniku po strukturze wywołań interfejsu API.
Authorization: Bearer ACCESS_TOKEN
login-customer-id: PARTNER_CUSTOMER_ID
linked-customer-id: ADVERTISER_CUSTOMER_ID
Nagłówki odpowiedzi
W odpowiedziach HTTP z interfejsu API zwracane są te nagłówki.
Identyfikator żądania
request-id to ciąg znaków, który jednoznacznie identyfikuje żądanie do 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 Developers.
request-id: 2a5Cj89VV7CNhya1DZjjrC