構成

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

Google Ads API PHP クライアント ライブラリには、ライブラリの動作をカスタマイズするための設定がいくつかあります。

構成ファイル

これらの構成設定のほとんどは ini ファイルに保存でき、クライアントをインスタンス化する際に使用できます(例: google_ads_php.ini)。

認証情報とクライアント ビルダーには、このようなファイルから設定を読み込むための fromFile メソッドが用意されています。

$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->fromFile('/path/to/google_ads_php.ini')
    ->withOAuth2Credential($oAuth2Credential)
    ->build();

引数として構成ファイルのパスが指定されていない場合、fromFile メソッドはデフォルトの構成ファイルのパスから読み込みます。

  1. GOOGLE_ADS_CONFIGURATION_FILE_PATH という名前の環境変数の値(設定されている場合)。
  2. それ以外の場合は、HOME ディレクトリにある google_ads_php.ini ファイル。
$oAuth2Credential = (new OAuth2TokenBuilder())
    ->fromFile()
    ->build();

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

動的構成

これらの構成設定は、クライアントをインスタンス化するときに動的に設定できます。

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

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

構成環境変数

クライアントをインスタンス化する際に、環境変数から構成の一部の設定を行うことができます(全リストをご覧ください)。

認証情報とクライアント ビルダーには、環境変数から設定を読み込む fromEnvironmentVariables メソッドが用意されています。

$oAuth2Credential = (new OAuth2TokenBuilder())
    // ...
    ->fromEnvironmentVariables()
    ->build();

$googleAdsClient = (new GoogleAdsClientBuilder())
    ->withOAuth2Credential($oAuth2Credential)
    // ...
    ->fromEnvironmentVariables()
    ->build();

設定に関する項目

設定では、カテゴリ別に整理されたいくつかのフィールドがサポートされています。

  1. OAuth2TokenBuilder で使用されるフィールド:
    • アプリケーション モード
      • [OAUTH2] clientId: OAuth2 クライアント ID。
      • [OAUTH2] clientSecret: OAuth2 クライアント シークレット。
      • [OAUTH2] refreshToken: OAuth2 更新トークン。
    • サービス アカウント モード
      • [OAUTH2] jsonKeyFilePath: JSON キーファイルのパス。
      • [OAUTH2] scopes: スコープ。
      • [OAUTH2] impersonatedEmail: なり代わるメール。
  2. GoogleAdsClientBuilder で使用されるフィールド:
    • [GOOGLE_ADS] developerToken: API にアクセスするための開発者トークン。
    • [GOOGLE_ADS] loginCustomerId: ログイン中のお客様 ID。
    • [GOOGLE_ADS] linkedCustomerId: リンクされているお客様 ID。
    • [LOGGING] logFilePath: ロギングのファイルパス。
    • [LOGGING] logLevel: ロギングレベル。
    • [CONNECTION] proxy: インターネット接続に使用するプロキシ サーバーの URL。
    • [CONNECTION] transport: トランスポート。
    • [CONNECTION] grpcChannelIsSecure: gRPC チャネルが安全かどうか。
    • [CONNECTION] grpcChannelCredential: gRPC チャネルの認証情報。
    • [CONNECTION] unaryMiddlewares: 単項ミドルウェア。
    • [CONNECTION] streamingMiddlewares: ストリーミング ミドルウェア。
    • [CONNECTION] grpcInterceptors: gRPC インターセプタ。

構成の検証

構成の設定は、クライアントをインスタンス化するときにチェックされ、無効な場合は例外がスローされます。ルールは次のとおりです。

  1. アプリケーション モードとサービス アカウント モードの両方に、[OAUTH2] フィールドを同時に設定することはできません。
  2. サービス アカウント モードを使用する場合は、[OAUTH2] jsonKeyFilePath[OAUTH2] scopes を設定する必要があります。
  3. アプリモードを使用する場合は、[OAUTH2] clientId[OAUTH2] clientSecret[OAUTH2] refreshToken を設定する必要があります。
  4. [GOOGLE_ADS] developerToken は必ず設定する必要があります。
  5. 設定する場合、[GOOGLE_ADS] loginCustomerId[GOOGLE_ADS] linkedCustomerId は正の数値にする必要があります。
  6. 設定する場合、[CONNECTION] proxy は有効な URL にする必要があります(フィルタ FILTER_VALIDATE_URL を参照)。
  7. 設定する場合、[LOGGING] logLevel は大文字の有効な PSR ログレベルINFO など)にする必要があります。
  8. 設定する場合、[CONNECTION] transportgrpc または rest にする必要があります。
  9. [CONNECTION] transportgrpc に設定されている場合、gRPC トランスポートは環境でサポートされている必要があります(トランスポートのガイドを参照)。
  10. [CONNECTION] transportgrpc に設定されていない場合は、[CONNECTION] grpcChannelIsSecuretrue にする必要があります。
  11. [CONNECTION] grpcChannelCredential は、[CONNECTION] transportgrpc に設定されている場合にのみ設定できます。
  12. [CONNECTION] grpcChannelCredential は、[CONNECTION] grpcChannelIsSecuretrue の場合にのみ設定できます。