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
crees una instancia del cliente.
Si no usas argumentos cuando creas una instancia, ocurrirá lo siguiente:
my $api_client = Google::Ads::GoogleAds::Client->new();
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 busca el archivo en esa ruta de acceso.
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, el secreto del cliente y el token de actualización.
Configuración dinámica
Puedes establecer la configuración de forma dinámica cuando crees 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 crear una instancia:
$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 entorno 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 de los parámetros de configuración desde las 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 de 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 tu secreto de cliente de OAuth2.refresh_token(refreshTokenengoogleads.properties,GOOGLE_ADS_REFRESH_TOKEN): Es tu token de actualización de OAuth2.additional_scopes(additionalScopesengoogleads.properties): Son los permisos de OAuth2 adicionales que se deben 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 claves JSON de tu cuenta de servicio.impersonated_email(impersonatedEmailengoogleads.properties,GOOGLE_ADS_IMPERSONATED_EMAIL): Es la dirección de correo electrónico que se usará para la identidad cuando se use la delegación de todo el dominio de Google Workspace.additional_scopes(additionalScopesengoogleads.properties): Son los permisos de OAuth2 adicionales que se deben solicitar.
Campos que se conservan en Client:
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 de 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 de encabezado de usuario-agente 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): Es el módulo de versión de la API de Google Ads que se usará (el valor predeterminado es"V26").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): Son los intervalos de pausa de reintento en segundos para los errores transitorios de HTTP503y504(el valor predeterminado es"5,10,15").