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 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ług ma 2 główne zalety:
Autoryzacja dostępu interfejsu Google Ads API do kont Google Ads odbywa się w ramach konfiguracji z wykorzystaniem funkcji autoryzacji i zarządzania kontami oferowanych przez interfejs Google Ads. Dzięki temu deweloperzy nie muszą tworzyć przepływów OAuth 2.0 ani radzić sobie z komplikacjami związanymi z interakcją użytkownika, 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 sytuacjach, gdy 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. Kliknij Administracja > Dostęp i bezpieczeństwo.
Na karcie Użytkownicy kliknij przycisk +.
Wpisz adres e-mail konta usługi w polu Adres 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 otrzymuje dostęp.
Opcjonalnie: domyślnie nie możesz przyznać dostępu administratora do konta usługi. Postępuj zgodnie z zasadą jak najmniejszych uprawnień i przyznawaj dostęp administratora tylko wtedy, gdy jest to wymagane przez wywołania interfejsu API. Dostęp możesz uaktualnić w ten sposób:
- W kolumnie Poziom dostępu kliknij strzałkę menu obok poziomu dostępu konta usługi.
- Z menu wybierz Administrator.
Konfiguracja biblioteki klienta
Wybierz kartę odpowiadającą Twojemu językowi programowania, aby uzyskać instrukcje konfigurowania biblioteki klienta. Jeśli Twoje konto usługi uzyskuje dostęp do kont klientów za pomocą konta menedżera Google Ads (MCK), ustaw też wartość login-customer-id (lub loginCustomerId) na 10-cyfrowy identyfikator klienta tego konta menedżera bez łączników (patrz Logowanie za pomocą identyfikatora klienta).
Java
W konfiguracji ustaw ścieżkę do klucza prywatnego JSON. 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 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
W konfiguracji ustaw ścieżkę do klucza prywatnego JSON. 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 do konfiguracji lub środowiska Bash te informacje:
export GOOGLE_ADS_JSON_KEY_FILE_PATH=JSON_KEY_FILE_PATH
Więcej informacji znajdziesz w przewodniku po konfiguracji.
PHP
Skonfiguruj w pliku google_ads_php.ini te klucze.
[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 google_ads_config.rb.
c.keyfile = 'JSON_KEY_FILE_PATH'
Więcej informacji znajdziesz w przewodniku po konfiguracji.
Perl
W konfiguracji ustaw ścieżkę do klucza prywatnego JSON. Jeśli używasz pliku googleads.properties, dodaj te informacje:
jsonKeyFilePath=JSON_KEY_FILE_PATH
Jeśli używasz zmiennych środowiskowych, dodaj do konfiguracji lub środowiska Bash te informacje:
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 wiersza poleceń 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'Tokena dostępu możesz używać w wywołaniach interfejsu API. W tym przykładzie pokazujemy, jak wygenerować 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/v25/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 następująca:
{
"query": "SELECT campaign.id, campaign.name, campaign.network_settings.target_content_network FROM campaign ORDER BY campaign.id"
}