La biblioteca cliente de Perl de la API de Google Ads proporciona varios parámetros de configuración que puedes usar para personalizar el comportamiento de la biblioteca.
Archivo de configuración
Puedes especificar un archivo googleads.properties para usar cuando se crea una instancia del cliente.
Si no usas argumentos cuando creas una instancia, haz lo siguiente:
my $api_client = Google::Ads::GoogleAds::Client->new();
luego, la biblioteca busca el archivo en tu directorio HOME o en la ruta de acceso especificada en la variable de entorno GOOGLE_ADS_CONFIGURATION_FILE_PATH si está configurada.
Como alternativa, puedes especificar una ruta de acceso de forma explícita:
my $properties_file = "/path/to/googleads.properties";
my $api_client = Google::Ads::GoogleAds::Client->new({
properties_file => $properties_file,
});
en cuyo caso el cliente buscará el archivo en esa ruta.
La forma más sencilla de generar este archivo es copiar googleads.properties del repositorio de GitHub y modificarlo para incluir tu ID de cliente, secreto del cliente y token de actualización.
Configuración dinámica
Puedes configurar los parámetros de forma dinámica cuando creas una instancia de la biblioteca o después de crearla:
my $api_client = Google::Ads::GoogleAds::Client->new({
login_customer_id => "INSERT_LOGIN_CUSTOMER_ID_HERE",
});
También puedes modificar la configuración después de la creación de instancias:
$api_client->set_login_customer_id("INSERT_LOGIN_CUSTOMER_ID_HERE");
También puedes obtener un objeto OAuth2ApplicationsHandler de la instancia Client y cambiar el ID de cliente, el secreto del cliente y el token de actualización en el tiempo de ejecución:
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 de entorno de configuración
Puedes establecer algunos parámetros de configuración a partir de variables de entorno cuando creas instancias de clientes (consulta las variables de entorno estándar).
El módulo Client proporciona la función configure_from_environment_variables para cargar valores de variables de entorno.
# 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();
Campos de configuración
Ten en cuenta que las claves googleads.properties usan camelCase (como loginCustomerId y linkedCustomerId), mientras que los argumentos del constructor Client->new({...}) y los métodos del controlador usan snake_case (como login_customer_id y linked_customer_id).
Campos que se conservan en OAuth2ApplicationsHandler:
client_id(clientIdengoogleads.properties,GOOGLE_ADS_CLIENT_ID): Es tu ID de cliente de OAuth2.client_secret(clientSecretengoogleads.properties,GOOGLE_ADS_CLIENT_SECRET): Es el secreto de tu cliente de OAuth2.refresh_token(refreshTokenengoogleads.properties,GOOGLE_ADS_REFRESH_TOKEN): Es tu token de actualización de OAuth2.additional_scopes(additionalScopesengoogleads.properties): Permisos de OAuth2 adicionales que se pueden solicitar.
Campos que se conservan en OAuth2ServiceAccountsHandler:
json_key_file_path(jsonKeyFilePathengoogleads.properties,GOOGLE_ADS_JSON_KEY_FILE_PATH): Es la ruta de acceso al archivo de clave JSON de tu cuenta de servicio.impersonated_email(impersonatedEmailengoogleads.properties,GOOGLE_ADS_IMPERSONATED_EMAIL): Es la dirección de correo electrónico que se suplantará cuando se use la delegación de todo el dominio de Google Workspace.additional_scopes(additionalScopesengoogleads.properties): Permisos de OAuth2 adicionales que se pueden solicitar.
Campos que se conservan en Client:
developer_token(developerTokenengoogleads.properties,GOOGLE_ADS_DEVELOPER_TOKEN): (Baja el 9 de septiembre de 2026) Es tu token de desarrollador de la API de Google Ads. Es opcional y los servidores de la API lo ignoran independientemente de la versión de la biblioteca cliente. Además, se rechazará en una versión principal futura de la API de Google Ads.v35.0.0y versiones posteriores: No se requiere en la inicialización del cliente (se quitó la validación local del clientedeveloperTokenenv35.0.0).- Versiones anteriores a
v35.0.0: Se requiere para la validación de la configuración local del cliente si no actualizaste av35.0.0o una versión posterior.
login_customer_id(loginCustomerIdengoogleads.properties,GOOGLE_ADS_LOGIN_CUSTOMER_ID): Es el ID de la cuenta de administrador que se usa para acceder a la cuenta de cliente. Consulta la documentación de login-customer-id.linked_customer_id(linkedCustomerIdengoogleads.properties,GOOGLE_ADS_LINKED_CUSTOMER_ID): Es el ID del cliente vinculado.service_address(serviceAddressengoogleads.properties,GOOGLE_ADS_ENDPOINT): Es la URL de la dirección del servicio de la API de Google Ads (el valor predeterminado es"https://googleads.googleapis.com").user_agent(userAgentengoogleads.properties,GOOGLE_ADS_PERL_USER_AGENT): Es el prefijo del encabezado User-Agent personalizado que se incluye en las solicitudes HTTP.proxy(proxyengoogleads.properties,GOOGLE_ADS_PERL_PROXY): Es la URL del servidor proxy que se usa para la conectividad a Internet.version(Client->newoset_version): Módulo de la versión de la API de Google Ads que se usará (el valor predeterminado es"V25").die_on_faults(Client->newoset_die_on_faults): Se establece en1para que los métodos de servicio llamen adie()con la carga útil de respuesta sin procesar en los errores de la API, en lugar de devolver un objetoGoogle::Ads::GoogleAds::GoogleAdsException(el valor predeterminado es0).http_timeout(Client->newoset_http_timeout): Es el tiempo de espera de HTTP en segundos (el valor predeterminado es3600).http_retry_timing(Client->newoset_http_retry_timing): Intervalos de pausa de reintento en segundos para errores transitorios de HTTP503y504(el valor predeterminado es"5,10,15").