Die PHP-Clientbibliothek der Google Ads API bietet mehrere Konfigurationseinstellungen, mit denen Sie das Verhalten der Bibliothek anpassen können.
Konfigurationsdatei
Die meisten dieser Konfigurationseinstellungen können Sie in ini
-Dateien speichern und bei der Instanziierung von Clients verwenden, z. B. google_ads_php.ini
.
Sowohl die Anmeldedaten- als auch der Client-Builder bieten fromFile
-Methoden, um Einstellungen aus solchen Dateien zu laden:
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile('/path/to/google_ads_php.ini')
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile('/path/to/google_ads_php.ini')
->withOAuth2Credential($oAuth2Credential)
->build();
Wenn kein Konfigurationspfad als Argument angegeben ist, werden die fromFile
-Methoden aus dem Standardkonfigurationspfad geladen:
- Der Wert der Umgebungsvariablen
GOOGLE_ADS_CONFIGURATION_FILE_PATH
, falls festgelegt. - Andernfalls die Datei
google_ads_php.ini
im VerzeichnisHOME
.
$oAuth2Credential = (new OAuth2TokenBuilder())
->fromFile()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->fromFile()
->withOAuth2Credential($oAuth2Credential)
->build();
Dynamische Konfiguration
Sie können diese Konfigurationseinstellungen dynamisch festlegen, wenn Sie Clients instanziieren.
$oAuth2Credential = (new OAuth2TokenBuilder())
->withClientId('INSERT_CLIENT_ID')
// ...
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->build();
Konfigurationsumgebungsvariablen
Einige der Konfigurationseinstellungen können Sie über Umgebungsvariablen festlegen, wenn Sie Clients instanziieren (siehe vollständige Liste).
Die Anmeldedaten- und Client-Builder bieten beide fromEnvironmentVariables
-Methoden zum Laden von Einstellungen aus Umgebungsvariablen:
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
Felder für die Konfiguration
Die Konfigurationseinstellungen unterstützen mehrere Felder, die in Kategorien unterteilt sind.
- Von
OAuth2TokenBuilder
verwendete Felder:- Anwendungsmodus
[OAUTH2] clientId
: Ihre OAuth2-Client-ID.[OAUTH2] clientSecret
: Ihr OAuth2-Clientschlüssel.[OAUTH2] refreshToken
: Ihr OAuth2-Aktualisierungstoken.
- Dienstkontomodus
[OAUTH2] jsonKeyFilePath
: Der Pfad zur JSON-Schlüsseldatei.[OAUTH2] scopes
: Die Bereiche.[OAUTH2] impersonatedEmail
: Die E-Mail-Adresse, deren Identität angenommen werden soll.
- Anwendungsmodus
- Von
GoogleAdsClientBuilder
verwendete Felder:[GOOGLE_ADS] developerToken
: Ihr Entwicklertoken für den Zugriff auf die API.[GOOGLE_ADS] loginCustomerId
: Die ID des autorisierten Kunden, die in der Anfrage verwendet werden soll.[GOOGLE_ADS] linkedCustomerId
: Die verknüpfte Kundennummer.[LOGGING] logFilePath
: Der Dateipfad für die Protokollierung.[LOGGING] logLevel
: Die Logging-Ebene.[CONNECTION] proxy
: Die für die Internetverbindung verwendete Proxyserver-URL.[CONNECTION] transport
: Der Transport.[CONNECTION] grpcChannelIsSecure
: Ob der gRPC-Channel sicher ist oder nicht.[CONNECTION] grpcChannelCredential
: Die gRPC-Kanal-Anmeldedaten.[CONNECTION] unaryMiddlewares
: Die unären Middlewares.[CONNECTION] streamingMiddlewares
: Die Streaming-Middlewares.[CONNECTION] grpcInterceptors
: Die gRPC-Interceptors.
Konfigurationsprüfung
Die Konfigurationseinstellungen werden überprüft, wenn Clients instanziiert werden. Ausnahmen werden ausgelöst, wenn sie ungültig sind. Folgende Regeln gelten:
[OAUTH2]
-Felder dürfen nicht gleichzeitig für den Anwendungsmodus und den Dienstkontomodus festgelegt werden.[OAUTH2] jsonKeyFilePath
und[OAUTH2] scopes
müssen festgelegt werden, wenn Sie den Dienstkontomodus verwenden.[OAUTH2] clientId
,[OAUTH2] clientSecret
und[OAUTH2] refreshToken
müssen bei Verwendung des Anwendungsmodus festgelegt werden.[GOOGLE_ADS] developerToken
muss immer festgelegt werden.- Wenn festgelegt, müssen
[GOOGLE_ADS] loginCustomerId
und[GOOGLE_ADS] linkedCustomerId
positive Zahlen sein. - Wenn festgelegt, muss
[CONNECTION] proxy
eine gültige URL sein (siehe Filter FILTER_VALIDATE_URL). - Wenn festgelegt, muss
[LOGGING] logLevel
eine gültige PSR-Protokollebene in Großbuchstaben sein, z. B.INFO
. - Falls festgelegt, muss
[CONNECTION] transport
entwedergrpc
oderrest
sein. - Wenn
[CONNECTION] transport
aufgrpc
festgelegt ist, muss der gRPC-Transport von der Umgebung unterstützt werden (siehe Anleitung transport). [CONNECTION] grpcChannelIsSecure
musstrue
sein, wenn[CONNECTION] transport
nicht aufgrpc
festgelegt ist.[CONNECTION] grpcChannelCredential
kann nur festgelegt werden, wenn[CONNECTION] transport
aufgrpc
gesetzt ist.[CONNECTION] grpcChannelCredential
kann nur festgelegt werden, wenn[CONNECTION] grpcChannelIsSecure
=true
ist.