Podczas wywoływania interfejsu Google Ads API musisz mieć zarówno dane logowania OAuth 2.0, jak i token programisty. Jeśli wysyłasz wywołania interfejsu API za pomocą konta menedżera Google Ads, musisz też podać w każdym żądaniu nagłówek login-customer-id. Na tej stronie opisujemy, jak ustawić te wartości, oraz dokumentujemy kilka dodatkowych nagłówków HTTP specyficznych dla 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ń API. Obsługiwane są zarówno przepływ uwierzytelniania użytkownika OAuth 2.0, jak i przepływ konta usługi. 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ć gcloud CLI lub OAuth 2.0 Playground, aby poeksperymentować z danymi logowania OAuth 2.0 i interfejsem Google Ads API, zanim napiszesz kod do swojej aplikacji.
Do wdrożenia przepływów autoryzacji OAuth 2.0 zalecamy użycie jednej z bibliotek OAuth 2.0 dostępnych na stronie https://oauth.net/code/. Podaliśmy jednak instrukcje dotyczące polecenia curl, jeśli chcesz samodzielnie wdrożyć tę funkcję.
Konta usługi
Wykonaj czynności, aby skonfigurować projekt 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 w przewodniku Konta usługi, aby skonfigurować konto usługi i uzyskać dostęp do konta Google Ads.
Uwierzytelnianie użytkowników
Wykonaj czynności, aby skonfigurować projekt w Google Cloud Console na potrzeby interfejsu Google Ads API. Zapisz identyfikator klienta i tajny klucz klienta. Następnie postępuj zgodnie z instrukcjami dotyczącymi aplikacji na komputery lub instrukcjami dotyczącymi aplikacji internetowych, aby wygenerować token odświeżania i token dostępu. Adres scope, którego należy użyć
do uzyskania dostępu do interfejsu Google Ads API, to https://www.googleapis.com/auth/adwords.
Generowanie nowych tokenów dostępu
Konta usługi
Gdy będziesz mieć 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 międzyserwerowych, aby wygenerować zestaw roszczeń JWT, który można następnie wymienić na token dostępu OAuth 2.0. Podczas korzystania z przewodnika wybierz kartę HTTP/REST. Zakres OAuth 2.0 scope, którego należy użyć w przypadku dostępu do interfejsu Google Ads API, to:https://www.googleapis.com/auth/adwords. Podczas tworzenia zestawu roszczeń JWT możesz też pominąć parametr
sub, 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 /v22/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
Uwierzytelnianie użytkowników
Gdy uzyskasz 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żyj tokena dostępu zwróconego przez żądanie curl w nagłówku HTTPAuthorization każdego wywołania interfejsu Google Ads API:
GET /v22/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
Nagłówki żądania
Token programisty
Interfejs Google Ads API wymaga też tokenu programisty do wykonywania wywołań interfejsu API. Jeśli masz już token programisty, możesz go znaleźć na stronie https://ads.google.com/aw/apicenter. W razie potrzeby zaloguj się na konto menedżera Google Ads. Jeśli go nie masz, wykonaj instrukcje rejestracji tokena dewelopera.
W developer-tokennagłówku HTTPdeveloper-token każdego wywołania interfejsu Google Ads API musisz podać wartość tokena programisty:
GET /v22/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
Identyfikator klienta logowania
W przypadku wywołań interfejsu Google Ads API wykonywanych przez menedżera na koncie klienta (czyli podczas logowania się jako menedżer w celu wykonywania wywołań interfejsu API na jednym z jego kont klientów) musisz też podać nagłówek HTTP login-customer-id. Ta wartość reprezentuje identyfikator klienta Google Ads konta menedżera, który wywołuje interfejs API.
Dodanie 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 (–).
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 /v22/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
Nagłówek „Identyfikator klienta połączonego konta” 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 po strukturze wywołań 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
request-id to ciąg znaków, który jednoznacznie identyfikuje żądanie interfejsu API. Podczas debugowania lub rozwiązywania problemów z konkretnymi wywołaniami interfejsu API warto mieć pod ręką identyfikator request-id, który jest ważny podczas kontaktowania się z zespołem pomocy dla deweloperów Google.
request-id: 2a5Cj89VV7CNhya1DZjjrC