Konfiguration

Die Google Ads API-PHP-Client-Bibliothek bietet verschiedene Konfigurationseinstellungen, die Sie mit denen das Bibliotheksverhalten angepasst werden kann.

Konfigurationsdatei

Sie können die meisten dieser Konfigurationseinstellungen ini und bei der Instanziierung von Clients verwenden, z. B. google_ads_php.ini

Die Anmeldedaten- und Client-Builder bieten beide fromFile-Methoden zum Laden Einstellungen aus solchen Dateien:

$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 Konfigurationsdateipfad als Argument angegeben wird, wird die fromFile -Methoden aus dem Standard-Konfigurationsdateipfad geladen, der lautet:

  1. Wert der Umgebungsvariable GOOGLE_ADS_CONFIGURATION_FILE_PATH, falls festgelegt.
  2. Andernfalls die Datei google_ads_php.ini im Verzeichnis HOME.
$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile()
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile()
    ->withOAuth2Credential($oAuth2Credential)
    ->build();

Dynamische Konfiguration

Sie können diese Konfigurationseinstellungen bei der Instanziierung von Clients dynamisch festlegen.

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->withClientId('INSERT_CLIENT_ID')
    // ...
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    ->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
    // ...
    ->build();

Umgebungsvariablen für die Konfiguration

Sie können einige Konfigurationseinstellungen über Umgebungsvariablen festlegen, Instanziieren von Clients (siehe vollständige Liste) angezeigt.

Die Anmeldedaten und der 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, in Kategorien organisierte Felder.

  1. Von OAuth2TokenBuilder verwendete Felder:
    • App-Modus
      • [OAUTH2] clientId: Ihre OAuth2-Client-ID.
      • [OAUTH2] clientSecret: Ihr OAuth2-Clientschlüssel
      • [OAUTH2] refreshToken: Ihr OAuth2-Aktualisierungstoken.
    • Dienstkontomodus
      • [OAUTH2] jsonKeyFilePath: der Pfad der JSON-Schlüsseldatei.
      • [OAUTH2] scopes: Die Bereiche.
      • [OAUTH2] impersonatedEmail: Die E-Mail-Adresse, deren Identität angenommen wird.
  2. Von GoogleAdsClientBuilder verwendete Felder:
    • [GOOGLE_ADS] developerToken: Ihr Entwicklertoken für den Zugriff auf die API.
    • [GOOGLE_ADS] loginCustomerId: die ID des autorisierten customer in der Anfrage verwenden.
    • [GOOGLE_ADS] linkedCustomerId: Die verknüpfte Kundennummer.
    • [LOGGING] logFilePath: Der Dateipfad für das Logging.
    • [LOGGING] logLevel: Die Logging-Ebene.
    • [CONNECTION] proxy: Die für die Internetverbindung verwendete Proxyserver-URL.
    • [CONNECTION] transport: Transport.
    • [CONNECTION] grpcChannelIsSecure: Gibt an, ob der gRPC-Kanal sicher oder nicht.
    • [CONNECTION] grpcChannelCredential: Die Anmeldedaten des gRPC-Kanals.
    • [CONNECTION] unaryMiddlewares: Die unären Middlewares.
    • [CONNECTION] streamingMiddlewares: Die Streaming-Middlewares.
    • [CONNECTION] grpcInterceptors: Die gRPC-Abfangenden.
  3. [GAPIC] useGapicV2Source: Gibt an, ob GAPIC v2-Quelle verwendet werden soll beim Erstellen von Dienstclients.

Konfigurationsprüfung

Die Konfigurationseinstellungen werden beim Instanziieren von Clients und Ausnahmen geprüft bei ungültigen Werten ausgegeben. Dies sind die Regeln:

  1. Das Feld „[OAUTH2]“ darf nicht sowohl für den Anwendungsmodus als auch für den Dienst festgelegt werden Kontomodus aktivieren.
  2. [OAUTH2] jsonKeyFilePath und [OAUTH2] scopes müssen festgelegt werden, wenn verwendet wird Dienstkontomodus.
  3. [OAUTH2] clientId, [OAUTH2] clientSecret und [OAUTH2] refreshToken müssen festgelegt werden kann.
  4. [GOOGLE_ADS] developerToken muss immer festgelegt werden.
  5. Wenn festgelegt, [GOOGLE_ADS] loginCustomerId und [GOOGLE_ADS] linkedCustomerId muss positive Zahlen sein.
  6. Wenn festgelegt, muss [CONNECTION] proxy eine gültige URL sein (siehe Filter). FILTER_VALIDATE_URL).
  7. Wenn festgelegt, muss [LOGGING] logLevel ein gültiges PSR-Log sein Level in Großbuchstaben wie INFO.
  8. Wenn festgelegt, muss [CONNECTION] transport entweder grpc oder rest sein.
  9. Wenn [CONNECTION] transport auf grpc gesetzt ist, muss der gRPC-Transport von der Umgebung unterstützt wird (siehe Leitfaden transport).
  10. [CONNECTION] grpcChannelIsSecure muss true sein, wenn [CONNECTION] transport nicht auf grpc festgelegt ist.
  11. [CONNECTION] grpcChannelCredential kann nur festgelegt werden, wenn [CONNECTION] transport auf grpc gesetzt ist.
  12. [CONNECTION] grpcChannelCredential kann nur festgelegt werden, wenn [CONNECTION] grpcChannelIsSecure den Wert true hat.