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)
->withDeveloperToken('INSERT_DEVELOPER_TOKEN_HERE')
// ...
->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] 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 インターセプタ。
[GAPIC] useGapicV2Source
: サービス クライアントの作成時に GAPIC v2 ソースコードを使用するかどうか。
構成の検証
構成設定はクライアントをインスタンス化するときにチェックされ、無効な場合は例外がスローされます。ルールは次のとおりです。
- アプリケーション モードとサービス アカウント モードの両方に
[OAUTH2]
フィールドを設定することはできません。 - サービス アカウント モードを使用する場合は、
[OAUTH2] jsonKeyFilePath
と[OAUTH2] scopes
を設定する必要があります。 - アプリモードを使用する場合は、
[OAUTH2] clientId
、[OAUTH2] clientSecret
、[OAUTH2] refreshToken
を設定する必要があります。 [GOOGLE_ADS] developerToken
は常に設定する必要があります。- 設定する場合、
[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] transport
がgrpc
に設定されていない場合は、[CONNECTION] grpcChannelIsSecure
をtrue
にする必要があります。[CONNECTION] grpcChannelCredential
は、[CONNECTION] transport
がgrpc
に設定されている場合にのみ設定できます。[CONNECTION] grpcChannelCredential
は、[CONNECTION] grpcChannelIsSecure
がtrue
の場合にのみ設定できます。