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 メソッドはデフォルトの構成パスから読み込みます。デフォルトの構成パスは次のとおりです。
- 環境変数
GOOGLE_ADS_CONFIGURATION_FILE_PATHが設定されている場合は、その値。 - それ以外の場合は、
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)
// ...
->build();
構成環境変数
クライアントのインスタンス化時に、環境変数から一部の構成設定を設定できます(完全なリストをご覧ください)。
認証情報ビルダーとクライアント ビルダーには、どちらも環境変数から設定を読み込むための fromEnvironmentVariables メソッドが用意されています。
$oAuth2Credential = (new OAuth2TokenBuilder())
// ...
->fromEnvironmentVariables()
->build();
$googleAdsClient = (new GoogleAdsClientBuilder())
->withOAuth2Credential($oAuth2Credential)
// ...
->fromEnvironmentVariables()
->build();
構成フィールド
構成設定では、カテゴリ別に整理された複数のフィールドがサポートされています。
OAuth2TokenBuilderで使用されるフィールド:- アプリモード
[OAUTH2] clientId: OAuth2 クライアント ID。[OAUTH2] clientSecret: OAuth2 クライアント シークレット。[OAUTH2] refreshToken: OAuth2 更新トークン。
- サービス アカウント モード
[OAUTH2] jsonKeyFilePath: Json キーパス。[OAUTH2] scopes: スコープ。[OAUTH2] impersonatedEmail: 偽装するメールアドレス。
- アプリモード
GoogleAdsClientBuilderで使用されるフィールド:[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 インターセプタ。
構成の検証
構成設定は、クライアントのインスタンス化時にチェックされ、無効な場合は例外がスローされます。ルールは次のとおりです。
[OAUTH2]フィールドは、アプリモードとサービス アカウント モードの両方に同時に設定することはできません。- サービス アカウント モードを使用する場合は、
[OAUTH2] jsonKeyFilePathと[OAUTH2] scopesを設定する必要があります。 - アプリモードを使用する場合は、
[OAUTH2] clientId、[OAUTH2] clientSecret、[OAUTH2] refreshTokenを設定する必要があります。 - 設定されている場合、
[GOOGLE_ADS] loginCustomerIdと[GOOGLE_ADS] linkedCustomerIdは正の数にする必要があります。 - 設定されている場合、
[CONNECTION] proxyは有効な URL である必要があります(フィルタ FILTER_VALIDATE_URL をご覧ください)。 - 設定されている場合、
[LOGGING] logLevelは有効な PSR ログ レベル(大文字)にする必要があります(例:INFO)。 - 設定されている場合、
[CONNECTION] transportはgrpcまたはrestのいずれかにする必要があります。 [CONNECTION] transportがgrpcに設定されている場合、gRPC トランスポートは環境で サポートされている必要があります(トランスポートのガイドをご覧ください)。[CONNECTION] grpcChannelIsSecureはtrueにする必要があります。[CONNECTION] transportがgrpcに設定されていない場合。[CONNECTION] grpcChannelCredentialは、[CONNECTION] transportがgrpcに設定されている場合にのみ設定できます。[CONNECTION] grpcChannelCredentialは、[CONNECTION] grpcChannelIsSecureがtrueの場合にのみ設定できます。