Configuration

La bibliothèque cliente Perl de l'API Google Ads fournit plusieurs paramètres de configuration que vous pouvez utiliser pour personnaliser le comportement de la bibliothèque.

Fichier de configuration

Vous pouvez spécifier un fichier googleads.properties à utiliser lors de l'instanciation du client.

Si vous n'utilisez aucun argument lors de l'instanciation :

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

La bibliothèque recherche ensuite le fichier dans votre répertoire HOME ou au chemin d'accès spécifié dans la variable d'environnement GOOGLE_ADS_CONFIGURATION_FILE_PATH, le cas échéant.

Vous pouvez également spécifier un chemin d'accès de manière explicite :

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

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

Dans ce cas, le client recherche le fichier à ce chemin d'accès.

Le moyen le plus simple de générer ce fichier consiste à copier googleads.properties à partir du dépôt GitHub et à le modifier pour inclure votre ID client, votre code secret du client et votre jeton d'actualisation.

Configuration dynamique

Vous pouvez configurer la bibliothèque de manière dynamique lors de son instanciation ou après :

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

Vous pouvez également modifier la configuration après l'instanciation :

$api_client->set_login_customer_id("INSERT_LOGIN_CUSTOMER_ID_HERE");

Vous pouvez également obtenir un objet OAuth2ApplicationsHandler à partir de l'instance Client et modifier l'ID client, le code secret du client et le jeton d'actualisation au moment de l'exécution :

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");

Variables d'environnement de configuration

Vous pouvez définir certains paramètres de configuration à partir de variables d'environnement lors de l'instanciation des clients (voir les variables d'environnement standards).

Le module Client fournit la fonction configure_from_environment_variables pour charger les valeurs des variables d'environnement.

# 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();

Champs de configuration

Notez que les clés googleads.properties utilisent camelCase (comme loginCustomerId et linkedCustomerId), tandis que les arguments du constructeur Client->new({...}) et les méthodes de gestionnaire utilisent snake_case (comme login_customer_id et linked_customer_id).

Champs conservés dans OAuth2ApplicationsHandler :

  • client_id (clientId dans googleads.properties, GOOGLE_ADS_CLIENT_ID) : votre ID client OAuth2.
  • client_secret (clientSecret dans googleads.properties, GOOGLE_ADS_CLIENT_SECRET) : code secret de votre client OAuth2.
  • refresh_token (refreshToken dans googleads.properties, GOOGLE_ADS_REFRESH_TOKEN) : votre jeton d'actualisation OAuth2.
  • additional_scopes (additionalScopes dans googleads.properties) : champs d'application OAuth2 supplémentaires à demander.

Champs conservés dans OAuth2ServiceAccountsHandler :

  • json_key_file_path (jsonKeyFilePath dans googleads.properties, GOOGLE_ADS_JSON_KEY_FILE_PATH) : chemin d'accès au fichier de clé JSON de votre compte de service.
  • impersonated_email (impersonatedEmail dans googleads.properties, GOOGLE_ADS_IMPERSONATED_EMAIL) : adresse e-mail à emprunter lors de l'utilisation de la délégation au niveau du domaine Google Workspace.
  • additional_scopes (additionalScopes dans googleads.properties) : champs d'application OAuth2 supplémentaires à demander.

Champs conservés dans Client :

  • developer_token (developerToken dans googleads.properties, GOOGLE_ADS_DEVELOPER_TOKEN) : (Arrêt le 9 septembre 2026) Jeton de développeur de l'API Google Ads. Cette valeur est facultative, ignorée par les serveurs d'API quelle que soit la version de la bibliothèque cliente, et sera refusée dans une future version majeure de l'API Google Ads.
    • v35.0.0 et versions ultérieures : non requis lors de l'initialisation du client (la validation developerToken côté client local a été supprimée dans v35.0.0).
    • Versions antérieures à v35.0.0 : obligatoire pour la validation de la configuration côté client local si vous n'êtes pas passé à la version v35.0.0 ou ultérieure.
  • login_customer_id (loginCustomerId dans googleads.properties, GOOGLE_ADS_LOGIN_CUSTOMER_ID) : ID du compte administrateur utilisé pour accéder au compte client. Consultez la documentation sur login-customer-id.
  • linked_customer_id (linkedCustomerId dans googleads.properties, GOOGLE_ADS_LINKED_CUSTOMER_ID) : ID client associé.
  • service_address (serviceAddress dans googleads.properties, GOOGLE_ADS_ENDPOINT) : URL de l'adresse du service de l'API Google Ads (par défaut, "https://googleads.googleapis.com").
  • user_agent (userAgent dans googleads.properties, GOOGLE_ADS_PERL_USER_AGENT) : préfixe d'en-tête User-Agent personnalisé inclus dans les requêtes HTTP.
  • proxy (proxy dans googleads.properties, GOOGLE_ADS_PERL_PROXY) : URL du serveur proxy utilisé pour la connectivité Internet.
  • version (Client->new ou set_version) : module de version de l'API Google Ads à utiliser ("V25" par défaut).
  • die_on_faults (Client->new ou set_die_on_faults) : définissez la valeur sur 1 pour que les méthodes de service appellent die() avec la charge utile de réponse brute en cas d'erreurs d'API au lieu de renvoyer un objet Google::Ads::GoogleAds::GoogleAdsException (la valeur par défaut est 0).
  • http_timeout (Client->new ou set_http_timeout) : délai d'expiration HTTP en secondes (3600 par défaut).
  • http_retry_timing (Client->new ou set_http_retry_timing) : intervalles de pause de la nouvelle tentative en secondes pour les erreurs HTTP temporaires 503 et 504 (par défaut, "5,10,15").