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 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
chargent le 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.ini
se 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')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->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 (consultez la liste exhaustive).
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 par catégories.
- Champs utilisés par
OAuth2TokenBuilder
:- Mode Application
[OAUTH2] clientId
: votre ID client OAuth2.[OAUTH2] clientSecret
: code secret de votre client OAuth2.[OAUTH2] refreshToken
: votre jeton d'actualisation OAuth2.
- Mode Compte de service
[OAUTH2] jsonKeyFilePath
: chemin d'accès au fichier de clé JSON.[OAUTH2] scopes
: les champs d'application.[OAUTH2] impersonatedEmail
: adresse e-mail dont l'identité doit être empruntée.
- Mode Application
- Champs utilisés par
GoogleAdsClientBuilder
:[GOOGLE_ADS] developerToken
: votre jeton de développeur pour accéder à l'API.[GOOGLE_ADS] loginCustomerId
: ID du client autorisé à utiliser dans la requête.[GOOGLE_ADS] linkedCustomerId
: ID client associé.[LOGGING] logFilePath
: chemin d'accès au fichier journal.[LOGGING] logLevel
: niveau de journalisation.[CONNECTION] proxy
: URL du serveur proxy utilisé pour la connectivité Internet.[CONNECTION] transport
: transport.[CONNECTION] grpcChannelIsSecure
: indique si le canal gRPC est sécurisé ou non.[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 en cas de paramètres non valides. Voici les règles :
- Les champs
[OAUTH2]
ne doivent pas être définis simultanément pour le mode Application et le mode Compte de service. [OAUTH2] jsonKeyFilePath
et[OAUTH2] scopes
doivent être définis lorsque vous utilisez le mode Compte de service.[OAUTH2] clientId
,[OAUTH2] clientSecret
et[OAUTH2] refreshToken
doivent être définis lorsque vous utilisez le mode Application.[GOOGLE_ADS] developerToken
doit toujours être défini.- Si elles sont définies,
[GOOGLE_ADS] loginCustomerId
et[GOOGLE_ADS] linkedCustomerId
doivent être des nombres positifs. - Si la valeur est définie,
[CONNECTION] proxy
doit être une URL valide (voir le filtre FILTER_VALIDATE_URL). - Si elle est définie,
[LOGGING] logLevel
doit être un niveau de journalisation PSR valide en majuscules, tel queINFO
. - Si la valeur est définie,
[CONNECTION] transport
doit êtregrpc
ourest
. - Si
[CONNECTION] transport
est défini surgrpc
, le transport gRPC doit être pris en charge par l'environnement (voir le guide transport). [CONNECTION] grpcChannelIsSecure
doit être défini surtrue
lorsque[CONNECTION] transport
n'est pas défini surgrpc
.[CONNECTION] grpcChannelCredential
ne peut être défini que lorsque[CONNECTION] transport
est défini surgrpc
.[CONNECTION] grpcChannelCredential
ne peut être défini que lorsque[CONNECTION] grpcChannelIsSecure
esttrue
.