設定

Ads API クライアント ライブラリには、ライブラリの動作のカスタマイズに使用できる設定がいくつか用意されています。

構成ファイル

クライアントをインスタンス化するときに使用する googleads.properties ファイルを指定できます。

インスタンス化時に引数を使用しない場合:

my $api_client = Google::Ads::GoogleAds::Client->new();

すると、ライブラリは HOME ディレクトリでファイルを探します。

または、パスを指定することもできます。

my $properties_file = "/path/to/googleads.properties";

my $api_client = Google::Ads::GoogleAds::Client->new({
  properties_file => $properties_file
});

この場合、クライアントはそのファイルパスでファイルを探します。

このファイルを生成する最も簡単な方法は、GitHub リポジトリから googleads.properties をコピーし、それを変更してクライアント ID、クライアント シークレット、更新トークンを含めることです。

動的設定

この構成は、ライブラリをインスタンス化するときに動的に設定することも、後で設定することもできます。

my $api_client = Google::Ads::GoogleAds::Client->new({
  developer_token   => "INSERT_DEVELOPER_TOKEN_HERE",
  login_customer_id => "INSERT_LOGIN_CUSTOMER_ID_HERE"
});

インスタンス化後に構成を変更することもできます。

$api_client->set_login_customer_id("INSERT_LOGIN_CUSTOMER_ID_HERE");

API Client から OAuth2ApplicationsHandler オブジェクトを取得し、実行時にクライアント ID、クライアント シークレット、更新トークンを変更することもできます。

my $oauth2_applications_handler = $api_client->get_oauth2_applications_handler();
$oauth2_applications_handler->set_client_id("INSERT_CLIENT_ID");
$oauth2_applications_handler->set_client_secret("INSERT_CLIENT_SECRET");
$oauth2_applications_handler->set_refresh_token("INSERT_REFRESH_TOKEN");

構成環境変数

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

クライアント モジュールには、環境変数から値を読み込む configure_from_environment_variables 関数が用意されています。

# Get the Google Ads Client. By default, any credentials will be read from
# ~/googleads.properties, or, if set, from the file specified in the
# GOOGLE_ADS_CONFIGURATION_FILE_PATH environment variable.
my $api_client = Google::Ads::GoogleAds::Client->new();

# Load the configuration from any set environment variables.
$api_client->configure_from_environment_variables();

設定に関する項目

構成プロパティは、次のフィールドをサポートします。

OAuth2ApplicationsHandler に保持されるフィールド:

  • client_id: OAuth2 クライアント ID。
  • client_secret: OAuth2 クライアント シークレット。
  • refresh_token: OAuth2 更新トークン。

API クライアントで保持されるフィールド:

  • developer_token: API にアクセスするための開発者トークン。
  • login_customer_id: login-customer-id のドキュメントをご覧ください。
  • proxy: インターネット接続に使用されるプロキシ サーバーの URL。