クライアント ライブラリは Apache Maven(または Gradle)で使用することをおすすめします。
新しい Maven/Gradle プロジェクトを作成する
選択した IDE で新しい Maven/Gradle プロジェクトを作成します。Google のアーティファクトは Maven 中央リポジトリに公開されています。
Maven 依存関係は次のとおりです。
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>google-ads</artifactId>
<version>38.0.0</version>
</dependency>
Gradle の依存関係は次のとおりです。
implementation 'com.google.api-ads:google-ads:38.0.0'
ソースからビルドすることもできます。このガイドでは、必要な依存関係が利用可能なプロジェクトが設定されていることを前提としています。
ソースからビルドする場合は、IDE でアノテーション処理を有効にしてください。
API で認証するための認証情報を取得する
Google Ads API にアクセスするには、OAuth 認証情報と Google Ads API デベロッパー トークンが必要です。このセクションでは、これらの内容、使用方法、取得方法について説明します。
デベロッパー トークン(API へのアクセス用)
デベロッパー トークンはクライアント センター(MCC)アカウントにリンクされており、Google 広告の管理画面で確認できます。
開発者トークンは MCC アカウントにリンクされますが、そのアカウントへのアクセス権は付与されません。開発者トークンは、API へのアクセス全般を許可するものであり、アカウント レベルのアクセスは OAuth を介して構成されます。
OAuth 認証情報(Google 広告アカウントへのアクセス用)
Google 広告アカウントへのアクセス権を持つ Google アカウント ユーザーとして承認するには、OAuth 認証情報のセットを指定する必要があります。
一般的に使用される OAuth フローは、デスクトップ(インストール済み)アプリとウェブアプリの 2 つです。この 2 つの主な違いは、デスクトップ アプリではシステム ブラウザを開き、Google の認証サーバーからのレスポンスを処理するためにローカル リダイレクト URI を指定する必要があるのに対し、ウェブアプリでは任意のサードパーティ ブラウザをリダイレクトして認証を完了し、認証情報をサーバーに送り返すことができるという点です。このライブラリは、あまり使用されないサービス アカウント フローもサポートしています。
- 独自の認証情報を使用して承認する場合(デスクトップ アプリフロー)
- OAuth デスクトップ アプリのフローを参照してください。これには、独自の認証情報で認証するために必要なすべての詳細が含まれます。
- サードパーティの Google ユーザーとして承認する場合(ウェブフロー)
- OAuth ウェブアプリのフローを参照してください。これは、任意のサードパーティ ユーザーに対して OAuth 認証を設定する方法の例です。
- Google Apps ドメイン ユーザーとして承認する場合(サービス アカウント フロー)
- OAuth サービス アカウントのフローを参照してください。ここでは、Google Apps ドメイン ユーザーの OAuth 認証を設定する方法の例を示します。
Google 広告クライアント アカウントに Google 広告 MCC アカウント経由でアクセスしている場合は、以下のようにログイン クライアント ID も指定する必要があります。
ログイン用のお客様 ID(MCC アカウント経由で Google 広告アカウントにアクセスする場合)
必要に応じて、配信アカウントへのアクセス権を付与するクライアント センター(MCC)アカウントの顧客 ID を指定します。MCC アカウントからクライアント アカウントにアクセスしている場合は、この値を指定する必要があります。お客様 ID へのパスで、すべてのクライアント センター(MCC)アカウントを指定する必要はありません。アクセス権限に使用している最上位のクライアント センター(MCC)ID のみを指定します。詳細については、関連ドキュメントをご覧ください。
認証情報を使用してクライアント ライブラリを構成する
クライアント ライブラリは、構成ファイル、環境変数、またはプログラムで構成できます。このガイドでは、構成ファイル アプローチを使用し、デスクトップとウェブのフローに焦点を当てます。認証情報が 1 つしかない場合(たとえば、1 つのクライアント センターでアカウントを管理している場合)は、通常、構成ファイルを使用することをおすすめします。
次の内容の ~/ads.properties
ファイルを作成します。
api.googleads.clientId=INSERT_CLIENT_ID_HERE
api.googleads.clientSecret=INSERT_CLIENT_SECRET_HERE
api.googleads.refreshToken=INSERT_REFRESH_TOKEN_HERE
api.googleads.developerToken=INSERT_DEVELOPER_TOKEN_HERE
プレースホルダは、前の手順で取得した認証情報に置き換えます。
また、更新トークンが MCC アカウントのものである場合は、このアカウントの顧客 ID をログイン顧客として指定する必要があります。
api.googleads.loginCustomerId=INSERT_LOGIN_CUSTOMER_ID_HERE
認証情報を検証する
すべてが正しく設定されていることを確認するために、GetCampaigns の例を実行します。
まず、google-ads-examples
ディレクトリに移動します。
cd google-ads-examples
この例では、値が Google 広告アカウントのお客様 ID(ハイフンなし)である --customerId
パラメータが必要です。
Gradle で実行するには:
./gradlew -q runExample --example="basicoperations.GetCampaigns --customerId INSERT_CUSTOMER_ID_HERE"
その他の例
google-ads-examples
の examples パッケージには、いくつかの有用な例が含まれています。ほとんどの例ではパラメータが必要です。パラメータを引数として渡す(推奨)か、ソースコードで INSERT_XXXXX_HERE
の値を編集します。使用状況ステートメントの例を表示するには、--help
を唯一の引数として渡します。
Gradle の場合:
./gradlew -q runExample --example="basicoperations.GetCampaigns --help"
Gradle の listExamples
タスクを使用して、すべての例、サブディレクトリ内の例、説明に検索語句が含まれる例を一覧表示することもできます。
# List all examples:
./gradlew -q listExamples
# List examples in the 'basicoperations' subdirectory:
./gradlew -q listExamples --subdirectory='basicoperations'
# Search for examples where the description includes 'Performance Max':
./gradlew -q listExamples --searchTerm='Performance Max'