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 crei un'istanza del client.
Se non utilizzi argomenti durante la creazione di un'istanza:
my $api_client = Google::Ads::GoogleAds::Client->new();
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 impostare la configurazione in modo dinamico durante la creazione di un'istanza della libreria o dopo la creazione dell'istanza:
my $api_client = Google::Ads::GoogleAds::Client->new({
login_customer_id => "INSERT_LOGIN_CUSTOMER_ID_HERE",
});
Puoi anche modificare la configurazione dopo la creazione dell'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 delle impostazioni di configurazione dalle variabili di ambiente quando crei le istanze dei client (consulta 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 persistenti in OAuth2ApplicationsHandler:
client_id(clientIdingoogleads.properties,GOOGLE_ADS_CLIENT_ID): il tuo ID client OAuth2.client_secret(clientSecretingoogleads.properties,GOOGLE_ADS_CLIENT_SECRET): il client secret OAuth2.refresh_token(refreshTokeningoogleads.properties,GOOGLE_ADS_REFRESH_TOKEN): il tuo token di aggiornamento OAuth2.additional_scopes(additionalScopesingoogleads.properties): Ambiti OAuth2 aggiuntivi da richiedere.
Campi persistenti in OAuth2ServiceAccountsHandler:
json_key_file_path(jsonKeyFilePathingoogleads.properties,GOOGLE_ADS_JSON_KEY_FILE_PATH): il percorso del file della chiave JSON del service account.impersonated_email(impersonatedEmailingoogleads.properties,GOOGLE_ADS_IMPERSONATED_EMAIL): l'indirizzo email da impersonare quando utilizzi la delega a livello di dominio di Google Workspace.additional_scopes(additionalScopesingoogleads.properties): Ambiti OAuth2 aggiuntivi da richiedere.
Campi persistenti in Client:
login_customer_id(loginCustomerIdingoogleads.properties,GOOGLE_ADS_LOGIN_CUSTOMER_ID): l'ID dell'account amministratore utilizzato per accedere all'account cliente. Consulta la documentazione relativa a login-customer-id.linked_customer_id(linkedCustomerIdingoogleads.properties,GOOGLE_ADS_LINKED_CUSTOMER_ID): l'ID cliente collegato.service_address(serviceAddressingoogleads.properties,GOOGLE_ADS_ENDPOINT): l'URL dell'indirizzo del servizio API Google Ads (il valore predefinito è"https://googleads.googleapis.com").user_agent(userAgentingoogleads.properties,GOOGLE_ADS_PERL_USER_AGENT): prefisso dell'intestazione dello user agent personalizzato incluso nelle richieste HTTP.proxy(proxyingoogleads.properties,GOOGLE_ADS_PERL_PROXY): l'URL del server proxy utilizzato per la connessione a internet.version(Client->newoset_version): il modulo della versione dell'API Google Ads da utilizzare (il valore predefinito è"V26").die_on_faults(Client->newoset_die_on_faults): impostalo su1per fare in modo che le chiamate al metodo del servizio chiaminodie()con il payload della risposta non elaborato in caso di errori dell'API anziché restituire un oggettoGoogle::Ads::GoogleAds::GoogleAdsException(il valore predefinito è0).http_timeout(Client->newoset_http_timeout): il timeout HTTP in secondi (il valore predefinito è3600).http_retry_timing(Client->newoset_http_retry_timing): intervalli di pausa dei nuovi tentativi in secondi per gli errori HTTP temporanei503e504(il valore predefinito è"5,10,15").