La bibliothèque cliente PHP de l'API Google Ads fournit plusieurs paramètres de configuration que vous pouvez utiliser pour personnaliser le comportement de la bibliothèque.
Fichier de configuration
Vous pouvez stocker la plupart de ces paramètres de configuration dans des fichiers de configuration INI et les utiliser lors de l'instanciation des clients, par exemple google_ads_php.ini.
Les créateurs d'identifiants et de clients fournissent tous deux des méthodes fromFile pour charger les paramètres à partir de ces fichiers :
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
Si aucun chemin de configuration n'est fourni en tant qu'argument, les méthodes fromFile sont chargées à partir du chemin de configuration par défaut, qui est le suivant :
- Valeur de la variable d'environnement nommée
GOOGLE_ADS_CONFIGURATION_FILE_PATH, si elle est définie. - Sinon, le fichier
google_ads_php.inise trouve dans votre répertoireHOME.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Configuration dynamique
Vous pouvez définir ces paramètres de configuration de manière dynamique lors de l'instanciation des clients :
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID_HERE')
->withClientSecret('INSERT_CLIENT_SECRET_HERE')
->withRefreshToken('INSERT_REFRESH_TOKEN_HERE')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->build();
Variables d'environnement de configuration
Vous pouvez définir certains paramètres de configuration à partir de variables d'environnement lors de l'instanciation des clients (voir les variables d'environnement standards).
Les générateurs d'identifiants et de clients fournissent tous deux des méthodes fromEnvironmentVariables pour charger les paramètres à partir des variables d'environnement.
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Champs de configuration
Les paramètres de configuration sont compatibles avec plusieurs champs organisés en catégories :
- Champs utilisés par
OAuth2TokenBuilder:- Mode Application :
[OAUTH2] clientId: votre ID client OAuth2.[OAUTH2] clientSecret: votre code secret client OAuth2.[OAUTH2] refreshToken: votre jeton d'actualisation OAuth2.
- Mode compte de service :
[OAUTH2] jsonKeyFilePath: chemin d'accès à la clé JSON.[OAUTH2] scopes: les habilitations OAuth2 (par défaut,https://www.googleapis.com/auth/adwordsdansv32.1.0et versions ultérieures ; obligatoires dans les versions antérieures àv32.1.0ou lorsque vous utilisez des habilitations personnalisées ;fromEnvironmentVariables()ne les lit pas à partir d'une variable d'environnement).[OAUTH2] impersonatedEmail: adresse e-mail facultative à emprunter lors de l'utilisation de la délégation au niveau du domaine Google Workspace.
- Mode Identifiants par défaut de l'application :
- Lorsque les champs "Mode Application" et "Mode Compte de service" ne sont pas définis,
OAuth2TokenBuilderrevient automatiquement aux identifiants par défaut de l'application (ADC).
- Lorsque les champs "Mode Application" et "Mode Compte de service" ne sont pas définis,
- Mode Application :
- Champs utilisés par
GoogleAdsClientBuilder:[GOOGLE_ADS] developerToken: (Arrêt le 9 septembre 2026) Votre jeton de développeur de l'API Google Ads. Cette valeur est facultative et ignorée par les serveurs d'API, quelle que soit la version de la bibliothèque cliente. Elle sera refusée dans une prochaine version majeure de l'API Google Ads.v35.0.0et versions ultérieures : non requis lors de l'initialisation du client (GoogleAdsClientBuildera supprimé la validation locale du jeton de développeur côté client).- Versions antérieures à
v35.0.0: requises par la validation de la configuration côté client local.
[GOOGLE_ADS] loginCustomerId: ID du client autorisé à utiliser dans la requête.[GOOGLE_ADS] linkedCustomerId: ID client associé.[GOOGLE_ADS] endpoint: point de terminaison du serveur de l'API Google Ads alternatif et facultatif.[LOGGING] logFilePath: chemin d'accès à la sortie de journalisation.[LOGGING] logLevel: niveau de journalisation.[CONNECTION] proxy: URL du serveur proxy utilisé pour la connectivité Internet.[CONNECTION] transport: transport réseau (grpcourest).[CONNECTION] grpcChannelIsSecure: indique si le canal gRPC est sécurisé.[CONNECTION] grpcChannelCredential: identifiants du canal gRPC.[CONNECTION] unaryMiddlewares: middlewares unaires.[CONNECTION] streamingMiddlewares: middlewares de streaming.[CONNECTION] grpcInterceptors: intercepteurs gRPC.
Validation de la configuration
Les paramètres de configuration sont vérifiés lors de l'instanciation des clients, et des exceptions sont générées lorsqu'ils ne sont pas valides. Voici les règles de validation :
- Les champs
[OAUTH2]ne doivent pas être définis simultanément pour le mode Application et le mode Compte de service. [OAUTH2] jsonKeyFilePathdoit être défini lorsque vous utilisez le mode Compte de service (dans les versions antérieures àv32.1.0,[OAUTH2] scopesdoit également être défini ; dansv32.1.0et les versions ultérieures,scopesest défini par défaut surhttps://www.googleapis.com/auth/adwords).[OAUTH2] clientId,[OAUTH2] clientSecretet[OAUTH2] refreshTokendoivent être définis lorsque vous utilisez le mode Application.- Dans les versions antérieures à
v35.0.0,[GOOGLE_ADS] developerTokenest vérifié par la validation locale côté client (dansv35.0.0et les versions ultérieures,[GOOGLE_ADS] developerTokenn'est pas requis). - Si elles sont définies,
[GOOGLE_ADS] loginCustomerIdet[GOOGLE_ADS] linkedCustomerIddoivent être des nombres positifs. - Si elle est définie,
[CONNECTION] proxydoit être une URL valide (voir le filtreFILTER_VALIDATE_URL). - Si elle est définie,
[LOGGING] logLeveldoit être un niveau de journalisation PSR valide en majuscules, tel queINFO. - Si elle est définie,
[CONNECTION] transportdoit êtregrpcourest. - Si
[CONNECTION] transportest défini surgrpc, le transport gRPC doit être compatible avec l'environnement (consultez le guide de transport). [CONNECTION] grpcChannelIsSecuredoit être défini surtruelorsque[CONNECTION] transportn'est pas défini surgrpc(les connexions REST nécessitent toujours HTTPS).[CONNECTION] grpcChannelCredentialne peut être défini que lorsque[CONNECTION] transportest défini surgrpc.[CONNECTION] grpcChannelCredentialne peut être défini que lorsque[CONNECTION] grpcChannelIsSecureesttrue.