Configurazione

La libreria cerca un file di configurazione in System.getProperty("user.home") + "/ads.properties". Puoi eseguire l'override il percorso e il nome del file in fase di runtime durante la creazione di GoogleAdsClient utilizzando uno dei seguenti meccanismi:

  • Chiama fromPropertiesFile(PATH_TO_CONFIG_FILE), dove PATH_TO_CONFIG_FILE corrisponde al percorso e al nome del file di configurazione.
  • Imposta la variabile di ambiente GOOGLE_ADS_CONFIGURATION_FILE_PATH su percorso e nome file del file di configurazione, quindi richiama fromPropertiesFile().

Il formato del file di configurazione è quello di una Java Proprietà di coppie chiave-valore. I tasti supportati variano a seconda della scelta non è un flusso di autenticazione.

Chiavi supportate per i flussi di applicazioni desktop e web

Se utilizzi il computer o del flusso di applicazioni web, le chiavi supportate sono i seguenti:

# Credential for accessing Google's OAuth servers.
# Provided by console.cloud.google.com.
api.googleads.clientId=INSERT_CLIENT_ID_HERE

# Credential for accessing Google's OAuth servers.
# Provided by console.cloud.google.com.
api.googleads.clientSecret=INSERT_CLIENT_SECRET_HERE

# Renewable OAuth credential associated with 1 or more Google Ads accounts.
api.googleads.refreshToken=INSERT_REFRESH_TOKEN_HERE

# Token which provides access to the Google Ads API in general. It does not
# grant access to any particular ad account (OAuth is used for this purpose).
api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE

# Required for manager accounts only: Specify the login customer ID used to
# authenticate API calls. This will be the customer ID of the authenticated
# manager account. You can also specify this later in code if your application
# uses multiple manager account + OAuth pairs.
#
# api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE

# Only required if explicitly instructed by the service documentation.
# api.googleads.linkedCustomerId=INSERT_LINKED_CUSTOMER_ID_HERE

# Maximum allowed response payload size, in bytes.
# Customize this to allow response sizes for GoogleAdsService.search and
# GoogleAdsService.searchStream API calls to exceed the default limit of 64MB.
# api.googleads.maxInboundMessageBytes=INSERT_MAX_INBOUND_MESSAGE_BYTES_HERE

Chiavi supportate per gli account di servizio

Se utilizzi l'account di servizio le chiavi supportate sono le seguenti:

# Path to the service account secrets file in JSON format.
# Provided by console.cloud.google.com.
api.googleads.serviceAccountSecretsPath=INSERT_PATH_TO_JSON_HERE

# Email address of the user to impersonate.
# This should be a user who has access to your Google Ads account and is in the same
# Google Apps Domain as the service account.
api.googleads.serviceAccountUser=INSERT_USER_EMAIL_ADDRESS_HERE

# Token which provides access to the Google Ads API in general. It does not
# grant access to any particular ad account (OAuth is used for this purpose).
api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE

# Required for manager accounts only: Specify the login customer ID used to
# authenticate API calls. This will be the customer ID of the authenticated
# manager account. You can also specify this later in code if your application
# uses multiple manager account + OAuth pairs.
#
# api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE

Utilizzo delle variabili di ambiente

La libreria supporta tutte le variabili di ambiente comuni a tutte le API Google Ads librerie client. La tabella seguente mostra le che corrisponde a ogni proprietà del file di configurazione.

Proprietà del file di configurazione Variabile di ambiente
api.googleads.developerToken GOOGLE_ADS_DEVELOPER_TOKEN
api.googleads.clientId GOOGLE_ADS_CLIENT_ID
api.googleads.clientSecret GOOGLE_ADS_CLIENT_SECRET
api.googleads.refreshToken GOOGLE_ADS_REFRESH_TOKEN
api.googleads.serviceAccountSecretsPath GOOGLE_ADS_JSON_KEY_FILE_PATH
api.googleads.serviceAccountUser GOOGLE_ADS_IMPERSONATED_EMAIL
api.googleads.loginCustomerId GOOGLE_ADS_LOGIN_CUSTOMER_ID
api.googleads.linkedCustomerId GOOGLE_ADS_LINKED_CUSTOMER_ID
api.googleads.maxInboundMessageBytes GOOGLE_ADS_MAX_INBOUND_MESSAGE_BYTES

Una volta impostate le variabili di ambiente appropriate, GoogleAdsClient chiamando fromEnvironment() sullo strumento di creazione.

GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
  .fromEnvironment()
  .build();

Combinazione di approcci alla configurazione

GoogleAdsClient e il relativo builder supportano la combinazione di configurazioni diverse strategie. Ad esempio, puoi utilizzare le variabili di ambiente per configurare le credenziali dell'istanza e un file delle proprietà per altri attributi nel seguente snippet.

GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
    .fromEnvironment()
    .fromPropertiesFile()
    .build();

In questo esempio, la libreria client utilizzerà il valore del file delle proprietà per qualsiasi attributo definito sia tramite la sua variabile di ambiente sia nel file delle proprietà. Per il comportamento opposto, richiama semplicemente fromPropertiesFile() prima del giorno fromEnvironment().

Puoi apportare ulteriori modifiche in fase di runtime utilizzando l'altra configurazione del builder prima di chiamare build().