Z tego przewodnika dowiesz się, jak uzyskiwać dostęp do interfejsu Google Ads API za pomocą kont usługi.
Konto usługi to konto które należy do Twojej aplikacji, a nie do indywidualnego użytkownika. Konta usługi korzystają z przepływu OAuth 2.0, który nie wymaga autoryzacji przez człowieka, ale używa pliku klucza, z którego może korzystać tylko Twoja aplikacja.
Korzystanie z kont usługi ma 2 główne zalety:
Autoryzacja dostępu do kont Google Ads za pomocą interfejsu Google Ads API jest wykonywana jako krok konfiguracji, z wykorzystaniem funkcji autoryzacji i zarządzania kontami dostępnych w interfejsie Google Ads. Dzięki temu deweloper nie musi tworzyć przepływów OAuth 2.0 ani radzić sobie z komplikacjami związanymi z interakcją z użytkownikiem, przechowywaniem danych logowania użytkownika i zarządzaniem tokenami.
Autoryzacja dostępu do kont Google Ads nie jest powiązana z danymi logowania poszczególnych użytkowników, co może być przydatne w przypadkach, gdy taka autoryzacja ma obowiązywać nawet wtedy, gdy pracownik, który pierwotnie autoryzował dostęp, opuści zespół lub firmę.
Konfigurowanie dostępu do konta
Zacznij od utworzenia konta usługi i danych logowania.
Pobierz klucz konta usługi w formacie JSON i zanotuj identyfikator oraz adres e-mail konta usługi.
Zaloguj się na konto Google Ads jako administrator. Otwórz Administracja > Dostęp i bezpieczeństwo.
Kliknij przycisk + na karcie Użytkownicy.
Wpisz adres e-mail konta usługi w polu E-mail. Wybierz odpowiedni poziom dostępu do konta (pamiętaj, że konta usługi nie obsługują poziomu dostępu Tylko e-mail ) i kliknij przycisk Dodaj konto.
Konto usługi ma teraz dostęp.
Opcjonalnie: domyślnie nie możesz przyznać kontu usługi dostępu administratora. Postępuj zgodnie z zasadą jak najmniejszych uprawnień i przyznaj dostęp administratora tylko wtedy, gdy wymagają tego wywołania interfejsu API. Możesz zwiększyć poziom dostępu w ten sposób:
- W kolumnie Poziom dostępu kliknij strzałkę w dół obok poziomu dostępu konta usługi.
- Na liście kliknij Administrator.
Konfiguracja biblioteki klienta
Aby dowiedzieć się, jak skonfigurować bibliotekę klienta, kliknij kartę odpowiadającą Twojemu językowi programowania. Jeśli Twoje konto usługi uzyskuje dostęp do kont klientów za pomocą konta menedżera Google Ads, ustaw też wartość login-customer-id (lub
loginCustomerId) na 10-cyfrowy identyfikator klienta tego konta menedżera bez
łączników (patrz Identyfikator klienta logowania).
Java
Ustaw ścieżkę do pliku JSON z kluczem prywatnym w konfiguracji. Jeśli używasz pliku ads.properties, dodaj te informacje:
api.googleads.serviceAccountSecretsPath=JSON_KEY_FILE_PATH
Więcej informacji znajdziesz w przewodniku po konfiguracji.
.NET
Ustaw wartości OAuth2Mode i OAuth2SecretsJsonPath w instancji GoogleAdsConfig i użyj jej do zainicjowania obiektu GoogleAdsClient.
GoogleAdsConfig config = new GoogleAdsConfig()
{
OAuth2Mode = OAuth2Flow.SERVICE_ACCOUNT,
OAuth2SecretsJsonPath = "JSON_KEY_FILE_PATH",
// ...
};
GoogleAdsClient client = new GoogleAdsClient(config);
Więcej informacji znajdziesz w przewodniku po konfiguracji.
Python
Ustaw ścieżkę do pliku JSON z kluczem prywatnym w konfiguracji. Jeśli używasz pliku google-ads.yaml, ciągu YAML lub dict, dodaj te informacje:
json_key_file_path: JSON_KEY_FILE_PATH
Jeśli używasz zmiennych środowiskowych, dodaj te informacje do konfiguracji lub środowiska Bash:
export GOOGLE_ADS_JSON_KEY_FILE_PATH=JSON_KEY_FILE_PATH
Więcej informacji znajdziesz w przewodniku po konfiguracji.
PHP
Skonfiguruj te klucze w pliku google_ads_php.ini.
[OAUTH2]
; For service account flow.
jsonKeyFilePath = "JSON_KEY_FILE_PATH"
scopes = "https://www.googleapis.com/auth/adwords"
Więcej informacji znajdziesz w przewodniku po konfiguracji.
Ruby
Skonfiguruj te klucze w pliku google_ads_config.rb.
c.keyfile = 'JSON_KEY_FILE_PATH'
Więcej informacji znajdziesz w przewodniku po konfiguracji.
Perl
Ustaw ścieżkę do pliku JSON z kluczem prywatnym w konfiguracji. Jeśli używasz pliku googleads.properties, dodaj te informacje:
jsonKeyFilePath=JSON_KEY_FILE_PATH
Jeśli używasz zmiennych środowiskowych, dodaj te informacje do konfiguracji lub środowiska Bash:
export GOOGLE_ADS_JSON_KEY_FILE_PATH=JSON_KEY_FILE_PATH
Więcej informacji znajdziesz w przewodniku po konfiguracji.
curl
Zacznij od ustawienia konta usługi jako aktywnych danych logowania w interfejsie gcloud.
gcloud auth login --cred-file=JSON_KEY_FILE_PATHNastępnie pobierz token dostępu OAuth 2.0 dla interfejsu Google Ads API.
gcloud auth \
print-access-token \
--scopes='https://www.googleapis.com/auth/adwords'Możesz użyć tokena dostępu w wywołaniach interfejsu API. Poniższy przykład
pokazuje, jak uruchomić raport kampanii za pomocą metody
GoogleAdsService.SearchStream, aby pobrać
kampanie na koncie. Ten przewodnik nie zawiera szczegółowych informacji o
raportowaniu.
curl -i -X POST \
https://googleads.googleapis.com/v26/customers/CUSTOMER_ID/googleAds:searchStream \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ACCESS_TOKEN" \
-H "login-customer-id: LOGIN_CUSTOMER_ID" \
--data-binary "@query.json"Zawartość pliku query.json jest taka:
{
"query": "SELECT campaign.id, campaign.name, campaign.network_settings.target_content_network FROM campaign ORDER BY campaign.id"
}