Configurazione

La libreria client Perl dell'API Google Ads fornisce diverse impostazioni di configurazione che puoi utilizzare per personalizzare il comportamento della libreria.

File di configurazione

Puoi specificare un file googleads.properties da utilizzare quando istanzia il client.

Se non utilizzi argomenti durante l'istanza:

my $api_client = Google::Ads::GoogleAds::Client->new();

quindi la libreria cerca il file nella directory HOME o nel percorso specificato nella variabile di ambiente GOOGLE_ADS_CONFIGURATION_FILE_PATH, se è impostata.

In alternativa, puoi specificare un percorso in modo esplicito:

my $properties_file = "/path/to/googleads.properties";

my $api_client = Google::Ads::GoogleAds::Client->new({
  properties_file => $properties_file,
});

In questo caso, il client cerca il file in quel percorso.

Il modo più semplice per generare questo file è copiare googleads.properties dal repository GitHub e modificarlo in modo da includere l'ID client, il client secret e il token di aggiornamento.

Configurazione dinamica

Puoi configurare la configurazione in modo dinamico durante l'istanza della libreria o dopo l'istanza:

my $api_client = Google::Ads::GoogleAds::Client->new({
  login_customer_id => "INSERT_LOGIN_CUSTOMER_ID_HERE",
});

Puoi anche modificare la configurazione dopo l'istanza:

$api_client->set_login_customer_id("INSERT_LOGIN_CUSTOMER_ID_HERE");

Puoi anche ottenere un oggetto OAuth2ApplicationsHandler dall'istanza Client e modificare l'ID client, il client secret e il token di aggiornamento in fase di runtime:

my $oauth2_applications_handler =
  $api_client->get_oauth2_applications_handler();
$oauth2_applications_handler->set_client_id("INSERT_CLIENT_ID_HERE");
$oauth2_applications_handler->set_client_secret("INSERT_CLIENT_SECRET_HERE");
$oauth2_applications_handler->set_refresh_token("INSERT_REFRESH_TOKEN_HERE");

Variabili di ambiente di configurazione

Puoi impostare alcune impostazioni di configurazione dalle variabili di ambiente durante l'istanza dei client (vedi le variabili di ambiente standard).

Il modulo Client fornisce la funzione configure_from_environment_variables per caricare i valori dalle variabili di ambiente.

# Get the Google Ads API Client. By default, any credentials are read from
# ~/googleads.properties, or, if set, from the file specified in the
# GOOGLE_ADS_CONFIGURATION_FILE_PATH environment variable.
my $api_client = Google::Ads::GoogleAds::Client->new();

# Load the configuration from any set environment variables.
$api_client->configure_from_environment_variables();

Campi di configurazione

Tieni presente che le chiavi googleads.properties utilizzano camelCase (ad esempio loginCustomerId e linkedCustomerId), mentre gli argomenti del costruttore Client->new({...}) e i metodi del gestore utilizzano snake_case (ad esempio login_customer_id e linked_customer_id).

Campi mantenuti in OAuth2ApplicationsHandler:

  • client_id (clientId in googleads.properties, GOOGLE_ADS_CLIENT_ID): Il tuo ID client OAuth2.
  • client_secret (clientSecret in googleads.properties, GOOGLE_ADS_CLIENT_SECRET): il client secret OAuth2.
  • refresh_token (refreshToken in googleads.properties, GOOGLE_ADS_REFRESH_TOKEN): il token di aggiornamento OAuth2.
  • additional_scopes (additionalScopes in googleads.properties): Ambiti OAuth2 aggiuntivi da richiedere.

Campi mantenuti in OAuth2ServiceAccountsHandler:

  • json_key_file_path (jsonKeyFilePath in googleads.properties, GOOGLE_ADS_JSON_KEY_FILE_PATH): il percorso del file JSON della chiave del service account.
  • impersonated_email (impersonatedEmail in googleads.properties, GOOGLE_ADS_IMPERSONATED_EMAIL): l'indirizzo email da impersonare quando utilizzi la delega a livello di dominio di Google Workspace.
  • additional_scopes (additionalScopes in googleads.properties): Ambiti OAuth2 aggiuntivi da richiedere.

Campi mantenuti in Client:

  • developer_token (developerToken in googleads.properties, GOOGLE_ADS_DEVELOPER_TOKEN): (ritiro il 9 settembre 2026) Il token sviluppatore dell'API Google Ads. Facoltativo, ignorato dai server API indipendentemente dalla versione della libreria client e verrà rifiutato in una futura versione principale dell'API Google Ads.
    • v35.0.0 e versioni successive: non richiesto all'inizializzazione del client (la convalida developerToken lato client locale è stata rimossa in v35.0.0).
    • Versioni precedenti a v35.0.0: richieste dalla convalida della configurazione lato client locale se non hai eseguito l'upgrade alla versione v35.0.0 o successive.
  • login_customer_id (loginCustomerId in googleads.properties, GOOGLE_ADS_LOGIN_CUSTOMER_ID): l'ID dell'account amministratore utilizzato per accedere all'account cliente. Consulta la documentazione login-customer-id.
  • linked_customer_id (linkedCustomerId in googleads.properties, GOOGLE_ADS_LINKED_CUSTOMER_ID): l'ID cliente collegato.
  • service_address (serviceAddress in googleads.properties, GOOGLE_ADS_ENDPOINT): l'URL dell'indirizzo del servizio API Google Ads (il valore predefinito è "https://googleads.googleapis.com").
  • user_agent (userAgent in googleads.properties, GOOGLE_ADS_PERL_USER_AGENT): prefisso dell'intestazione user-agent personalizzata incluso nelle richieste HTTP.
  • proxy (proxy in googleads.properties, GOOGLE_ADS_PERL_PROXY): l'URL del server proxy utilizzato per la connettività a internet.
  • version (Client->new o set_version): il modulo della versione dell'API Google Ads da utilizzare (il valore predefinito è "V25").
  • die_on_faults (Client->new o set_die_on_faults): impostalo su 1 per fare in modo che i metodi di servizio chiamino die() con il payload di risposta non elaborato in caso di errori API anziché restituire un oggetto Google::Ads::GoogleAds::GoogleAdsException (il valore predefinito è 0).
  • http_timeout (Client->new o set_http_timeout): il timeout HTTP in secondi (il valore predefinito è 3600).
  • http_retry_timing (Client->new o set_http_retry_timing): intervalli di pausa per i tentativi in secondi per gli errori HTTP temporanei 503 e 504 (il valore predefinito è "5,10,15").