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.iniim 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
OAuth2TokenBuilderverwendete 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
GoogleAdsClientBuilderverwendete 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] jsonKeyFilePathund[OAUTH2] scopesmüssen festgelegt werden, wenn Sie den Dienstkontomodus verwenden.[OAUTH2] clientId,[OAUTH2] clientSecretund[OAUTH2] refreshTokenmüssen bei Verwendung des Anwendungsmodus festgelegt werden.[GOOGLE_ADS] developerTokenmuss immer festgelegt werden.- Wenn festgelegt, müssen
[GOOGLE_ADS] loginCustomerIdund[GOOGLE_ADS] linkedCustomerIdpositive Zahlen sein. - Wenn festgelegt, muss
[CONNECTION] proxyeine gültige URL sein (siehe Filter FILTER_VALIDATE_URL). - Wenn festgelegt, muss
[LOGGING] logLeveleine gültige PSR-Protokollebene in Großbuchstaben sein, z. B.INFO. - Falls festgelegt, muss
[CONNECTION] transportentwedergrpcoderrestsein. - Wenn
[CONNECTION] transportaufgrpcfestgelegt ist, muss der gRPC-Transport von der Umgebung unterstützt werden (siehe Anleitung transport). [CONNECTION] grpcChannelIsSecuremusstruesein, wenn[CONNECTION] transportnicht aufgrpcfestgelegt ist.[CONNECTION] grpcChannelCredentialkann nur festgelegt werden, wenn[CONNECTION] transportaufgrpcgesetzt ist.[CONNECTION] grpcChannelCredentialkann nur festgelegt werden, wenn[CONNECTION] grpcChannelIsSecure=trueist.