Z tego przewodnika dowiesz się, jak uzyskać dostęp do interfejsu Google Ads API za pomocą kont usługi.
Konto usługi to konto, które należy do 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.
Używanie kont usługi zapewnia 2 główne korzyści:
Autoryzacja dostępu interfejsu Google Ads API do kont Google Ads jest wykonywana jako krok konfiguracji, który wykorzystuje funkcje autoryzacji i zarządzania kontem oferowane przez interfejs Google Ads. Dzięki temu deweloper nie musi tworzyć przepływów OAuth 2.0 i radzić sobie z komplikacjami związanymi z interakcją z użytkownikiem, przechowywaniem danych logowania użytkownika i zarządzaniem tokenami.
Upoważnienie do dostępu do kont Google Ads nie jest powiązane z danymi logowania poszczególnych użytkowników, co może być przydatne w przypadkach, gdy upoważnienie 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 zapisz identyfikator oraz adres e-mail konta usługi.
Zaloguj się na konto Google Ads jako administrator. Kliknij 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 otrzyma 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 wymagają tego wywołania interfejsu API. Dostęp możesz uaktualnić w ten sposób:
- W kolumnie Poziom dostępu kliknij strzałkę w dół obok poziomu dostępu konta usługi.
- Z listy wybierz Administrator.
Konfiguracja biblioteki klienta
Wybierz kartę odpowiadającą Twojemu językowi programowania, aby dowiedzieć się, jak skonfigurować bibliotekę klienta. Jeśli Twoje konto usługi uzyskuje dostęp do kont klientów przez konto menedżera Google Ads, ustaw też 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ę klucza prywatnego JSON 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 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ę klucza prywatnego JSON w konfiguracji. Jeśli używasz pliku google-ads.yaml, ciągu YAML lub dict, dodaj:
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 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ę klucza prywatnego JSON w konfiguracji. Jeśli używasz pliku googleads.properties, dodaj:
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'Możesz używać tokena dostępu w wywołaniach interfejsu API. Poniższy przykład pokazuje, 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/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:
{
"query": "SELECT campaign.id, campaign.name, campaign.network_settings.target_content_network FROM campaign ORDER BY campaign.id"
}