Configuration

La bibliothèque recherche un fichier de configuration dans System.getProperty("user.home") + "/ads.properties". Vous pouvez remplacer ce chemin et ce nom de fichier au moment de l'exécution, lors de la construction de GoogleAdsClient en utilisant l'un des mécanismes suivants:

  • Appelez fromPropertiesFile(PATH_TO_CONFIG_FILE), où PATH_TO_CONFIG_FILE correspond au chemin d'accès et au nom de votre fichier de configuration.
  • Définissez la variable d'environnement GOOGLE_ADS_CONFIGURATION_FILE_PATH sur le chemin et le nom du fichier de configuration, puis appelez fromPropertiesFile().

Le fichier de configuration prend la forme d'un fichier Propriétés Java de paires clé/valeur. Les clés compatibles varient en fonction du parcours d'authentification choisi.

Clés compatibles avec les flux d'applications Web et de bureau

Si vous utilisez le flux d'application ordinateur ou Web, les clés compatibles sont les suivantes:

# 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

Clés compatibles avec les comptes de service

Si vous utilisez le flux du compte de service, les clés compatibles sont les suivantes:

# 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

Utiliser des variables d'environnement

La bibliothèque accepte toutes les variables d'environnement communes à toutes les bibliothèques clientes de l'API Google Ads. Le tableau ci-dessous montre la variable d'environnement correspondant à chaque propriété de fichier de configuration.

Propriété du fichier de configuration Variable d'environnement
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

Une fois que vous avez défini les variables d'environnement appropriées, configurez votre GoogleAdsClient en appelant fromEnvironment() sur le compilateur.

GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
  .fromEnvironment()
  .build();

Combiner des approches de configuration

La GoogleAdsClient et son compilateur permettent de combiner différentes stratégies de configuration. Par exemple, vous pouvez utiliser des variables d'environnement pour configurer les identifiants de l'instance, ainsi qu'un fichier de propriétés pour d'autres attributs à l'aide de l'extrait de code suivant.

GoogleAdsClient googleAdsClient = GoogleAdsClient.newBuilder()
    .fromEnvironment()
    .fromPropertiesFile()
    .build();

Dans cet exemple, la bibliothèque cliente utilisera la valeur du fichier des propriétés pour tout attribut défini à la fois via sa variable d'environnement et une entrée du fichier de propriétés. Pour le comportement opposé, appelez simplement fromPropertiesFile() avant fromEnvironment().

Vous pouvez apporter d'autres modifications à l'exécution à l'aide des autres méthodes de configuration du compilateur avant d'appeler build().

Réutiliser les fichiers de configuration de la bibliothèque cliente de l'API AdWords pour Java

Vous pouvez utiliser le même fichier ads.properties que celui utilisé pour l'API AdWords. Copiez simplement les lignes correspondant aux clés suivantes, puis remplacez le préfixe api.adwords de chaque clé par api.adwords par api.googleads :

api.adwords.developerToken     --> api.googleads.developerToken
# For desktop or web OAuth credentials:
api.adwords.clientId           --> api.googleads.clientId
api.adwords.clientSecret       --> api.googleads.clientSecret
api.adwords.refreshToken       --> api.googleads.refreshToken
# For service account OAuth credentials:
api.adwords.jsonKeyFilePath    --> api.googleads.serviceAccountSecretsPath
api.adwords.serviceAccountUser --> api.googleads.serviceAccountUser

Si vous vous authentifiez en tant que compte administrateur, vous devez également spécifier les éléments suivants:

api.googleads.loginCustomerId --> Manager account ID (with hyphens removed).