La bibliothèque cliente Java recherche un fichier de configuration nommé ads.properties dans votre répertoire d'accueil (System.getProperty("user.home") + "/ads.properties" ou ~/ads.properties). Vous pouvez remplacer ce chemin d'accès et ce nom de fichier au moment de l'exécution lors de la construction de GoogleAdsClient à l'aide de l'un des mécanismes suivants :
- Appelez
fromPropertiesFile(PATH_TO_CONFIG_FILE), oùPATH_TO_CONFIG_FILEcorrespond au chemin d'accès et au nom de fichierFilede votre fichier de configuration. - Définissez la variable d'environnement
GOOGLE_ADS_CONFIGURATION_FILE_PATHsur le chemin d'accès et le nom de fichier de votre fichier de configuration, puis appelezfromPropertiesFile().
Le format du fichier de configuration est un fichier Properties Java standard de paires clé/valeur. Les clés compatibles varient en fonction du flux d'authentification choisi.
Clés compatibles pour les flux d'applications de bureau et Web
Si vous utilisez le flux d'application à un seul utilisateur ou à plusieurs utilisateurs, 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
# 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
# Specifies whether to use Application Default Credentials.
api.googleads.useApplicationDefaultCredentials=false
Clés acceptées pour les comptes de service
Si vous utilisez le flux de 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
# Optional: Email address of the user to impersonate when using Google Workspace
# domain-wide delegation. This should be a user who has access to your Google Ads
# account and is in the same Google Workspace domain as the service account.
# api.googleads.serviceAccountUser=INSERT_USER_EMAIL_ADDRESS_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 est compatible avec toutes les variables d'environnement standards des bibliothèques clientes de l'API Google Ads. Le tableau suivant indique la variable d'environnement qui correspond à chaque propriété du fichier de configuration :
| Propriété du fichier de configuration | Variable d'environnement |
|---|---|
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 |
api.googleads.useApplicationDefaultCredentials |
GOOGLE_ADS_USE_APPLICATION_DEFAULT_CREDENTIALS |
api.googleads.developerToken (facultatif dans v46.0.0 et versions ultérieures) |
GOOGLE_ADS_DEVELOPER_TOKEN |
Une fois que vous avez défini les variables d'environnement appropriées, configurez votre GoogleAdsClient en appelant fromEnvironment() sur le générateur :
GoogleAdsClient googleAdsClient =
GoogleAdsClient.newBuilder()
.fromEnvironment()
.build();
Combiner les approches de configuration
GoogleAdsClient et son générateur 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 et 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();
Vous pouvez apporter d'autres modifications au moment de l'exécution à l'aide des autres méthodes de configuration du compilateur avant d'appeler build().
Arrêt des jetons de développeur
Suite à l'arrêt des jetons de développeur le 9 septembre 2026, les niveaux d'accès à l'API seront déterminés par votre projet Google Cloud sur le serveur de l'API plutôt que par un jeton de développeur :
- Modifications de la configuration : vous n'avez plus besoin de spécifier
api.googleads.developerTokendansads.propertiesniGOOGLE_ADS_DEVELOPER_TOKENdans vos variables d'environnement. Les applications existantes qui spécifient toujoursapi.googleads.developerTokencontinuent de fonctionner, car les serveurs d'API ignorent l'en-têtedeveloper-token(bien qu'une future version majeure de l'API Google Ads le rejettera). - Exigences concernant la version de la bibliothèque cliente : pour omettre le jeton de développeur de votre configuration, utilisez
google-ads-javav46.0.0ou version ultérieure, qui a supprimé la validation côté client nécessitant un jeton de développeur. - Modifications apportées aux erreurs d'autorisation : si un projet Google Cloud avec un accès test uniquement appelle un compte Google Ads de production,
v25et les versions ultérieures de l'API Google Ads renvoientAuthorizationError.CLOUD_PROJECT_NOT_APPROVED_FOR_PRODUCTION, tandis quev24et les versions antérieures renvoientAuthorizationError.ACTION_NOT_PERMITTED.