La biblioteca busca un archivo de configuración en System.getProperty("user.home") + "/ads.properties"
. Puedes anular esta ruta de acceso y el nombre del archivo durante el tiempo de ejecución cuando construyes el GoogleAdsClient
con cualquiera de los siguientes mecanismos:
- Llama a
fromPropertiesFile(PATH_TO_CONFIG_FILE)
, en la quePATH_TO_CONFIG_FILE
es la ruta y el nombre de tu archivo de configuración. - Establece la variable de entorno
GOOGLE_ADS_CONFIGURATION_FILE_PATH
en la ruta de acceso y el nombre del archivo de configuración y, luego, llama afromPropertiesFile()
.
El formato del archivo de configuración es el de un archivo Properties de Java de pares clave-valor. Las claves compatibles varían según el flujo de autenticación elegido.
Claves compatibles para flujos de aplicaciones web y de escritorio
Si usas el flujo de aplicaciones para computadoras o web, las claves compatibles son las siguientes:
# Credential for accessing Google's OAuth servers.
# Provided by console.cloud.google.com.
api.googleads.clientId=INSERT_CLIENT_ID_HERE
# Credential for accessing Google's OAuth servers.
# Provided by console.cloud.google.com.
api.googleads.clientSecret=INSERT_CLIENT_SECRET_HERE
# Renewable OAuth credential associated with 1 or more Google Ads accounts.
api.googleads.refreshToken=INSERT_REFRESH_TOKEN_HERE
# Token which provides access to the Google Ads API in general. It does not
# grant access to any particular ad account (OAuth is used for this purpose).
api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE
# Required for manager accounts only: Specify the login customer ID used to
# authenticate API calls. This will be the customer ID of the authenticated
# manager account. You can also specify this later in code if your application
# uses multiple manager account + OAuth pairs.
#
# api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
# Only required if explicitly instructed by the service documentation.
# api.googleads.linkedCustomerId=INSERT_LINKED_CUSTOMER_ID_HERE
# Maximum allowed response payload size, in bytes.
# Customize this to allow response sizes for GoogleAdsService.search and
# GoogleAdsService.searchStream API calls to exceed the default limit of 64MB.
# api.googleads.maxInboundMessageBytes=INSERT_MAX_INBOUND_MESSAGE_BYTES_HERE
Claves admitidas para cuentas de servicio
Si usas el flujo de cuenta de servicio, las claves admitidas son las siguientes:
# Path to the service account secrets file in JSON format.
# Provided by console.cloud.google.com.
api.googleads.serviceAccountSecretsPath=INSERT_PATH_TO_JSON_HERE
# Email address of the user to impersonate.
# This should be a user who has access to your Google Ads account and is in the same
# Google Apps Domain as the service account.
api.googleads.serviceAccountUser=INSERT_USER_EMAIL_ADDRESS_HERE
# Token which provides access to the Google Ads API in general. It does not
# grant access to any particular ad account (OAuth is used for this purpose).
api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE
# Required for manager accounts only: Specify the login customer ID used to
# authenticate API calls. This will be the customer ID of the authenticated
# manager account. You can also specify this later in code if your application
# uses multiple manager account + OAuth pairs.
#
# api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
Usa variables de entorno
La biblioteca admite todas las variables de entorno comunes a todas las bibliotecas cliente de la API de Google Ads. En la siguiente tabla, se muestra la variable de entorno que corresponde a cada propiedad del archivo de configuración.
Propiedad del archivo de configuración | Variable de entorno |
---|---|
api.googleads.developerToken |
GOOGLE_ADS_DEVELOPER_TOKEN |
api.googleads.clientId |
GOOGLE_ADS_CLIENT_ID |
api.googleads.clientSecret |
GOOGLE_ADS_CLIENT_SECRET |
api.googleads.refreshToken |
GOOGLE_ADS_REFRESH_TOKEN |
api.googleads.serviceAccountSecretsPath |
GOOGLE_ADS_JSON_KEY_FILE_PATH |
api.googleads.serviceAccountUser |
GOOGLE_ADS_IMPERSONATED_EMAIL |
api.googleads.loginCustomerId |
GOOGLE_ADS_LOGIN_CUSTOMER_ID |
api.googleads.linkedCustomerId |
GOOGLE_ADS_LINKED_CUSTOMER_ID |
api.googleads.maxInboundMessageBytes |
GOOGLE_ADS_MAX_INBOUND_MESSAGE_BYTES |
Una vez que hayas configurado las variables de entorno adecuadas, llama a fromEnvironment()
en el compilador para configurar tu GoogleAdsClient
.
GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
.fromEnvironment()
.build();
Combinación de enfoques de configuración
GoogleAdsClient
y su compilador admiten la combinación de diferentes estrategias de configuración. Por ejemplo, puedes usar variables de entorno para configurar las credenciales de la instancia y un archivo de propiedades para otros atributos con el siguiente fragmento.
GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
.fromEnvironment()
.fromPropertiesFile()
.build();
En este ejemplo, la biblioteca cliente usará el valor del archivo de propiedades para cualquier atributo que se defina a través de su variable de entorno y una entrada en el archivo de propiedades. Para obtener el comportamiento opuesto, simplemente llama a fromPropertiesFile()
antes de fromEnvironment()
.
Puedes realizar más cambios en el entorno de ejecución con los otros métodos de configuración del compilador antes de llamar a build()
.