クライアント ライブラリは Apache Maven(または Gradle)で使用することをおすすめします。
新しい Maven/Gradle プロジェクトを作成する
任意の IDE で新しい Maven/Gradle プロジェクトを作成します。アーティファクトは Maven 中央リポジトリに公開されています。
Maven 依存関係は次のとおりです。
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>google-ads</artifactId>
<version>36.0.0</version>
</dependency>
Gradle の依存関係は次のとおりです。
implementation 'com.google.api-ads:google-ads:36.0.0'
ソースからビルドすることもできます。このガイドでは、必要な依存関係が利用可能なプロジェクトが設定されていることを前提としています。
API で認証するための認証情報を取得する
Google Ads API にアクセスするには、OAuth 認証情報と Google Ads API デベロッパー トークンが必要です。このセクションでは、これらの機能の概要、使用方法、取得方法について説明します。
デベロッパー トークン(API へのアクセス用)
デベロッパー トークンはマネージャー アカウントにリンクされており、Google 広告の管理画面で確認できます。
開発者トークンは MCC アカウントにリンクされていますが、そのアカウントへのアクセス権は付与されません。代わりに、開発者トークンは API への一般的なアクセスを許可し、アカウント レベルのアクセスは OAuth で構成されます。
OAuth 認証情報(Google 広告アカウントへのアクセス用)
Google 広告アカウントへのアクセス権を持つ Google アカウント ユーザーとして承認するには、OAuth 認証情報を指定する必要があります。
一般に使用される OAuth フローは、デスクトップ(インストール済み)アプリとウェブアプリの 2 つです。この 2 つの主な違いは、デスクトップ アプリではシステム ブラウザを開き、ローカル リダイレクト URI を指定して Google の認可サーバーからのレスポンスを処理する必要がある一方、ウェブアプリでは任意のサードパーティ ブラウザをリダイレクトして認可を完了し、認証情報をサーバーに送り返すことができるという点です。このライブラリは、あまり使用されていないサービス アカウントのフローもサポートしています。
- 独自の認証情報の使用を承認する場合(デスクトップ アプリのフロー)
- OAuth デスクトップ アプリのフローを参照してください。これには、独自の認証情報で認可するために必要なすべての詳細が含まれています。
- サードパーティの Google ユーザーとして承認する場合(ウェブフロー)
- OAuth ウェブアプリのフローを参照してください。任意のサードパーティ ユーザーの OAuth 認可を設定する方法の例を示します。
- Google Apps ドメイン ユーザーとして承認する場合(サービス アカウントのフロー)
- OAuth サービス アカウントのフローを参照してください。これは、Google Apps ドメイン ユーザーの OAuth 認可を設定する方法の例です。
Google 広告クライアント アカウントに Google 広告クライアント センター(MCC)アカウントからアクセスする場合は、後述のようにログイン用お客様 ID も指定する必要があります。
ログイン用お客様 ID(MCC アカウントから Google 広告アカウントにアクセスする場合)
必要に応じて、サービング アカウントへのアクセス権を持つクライアント センター(MCC)アカウントのお客様 ID を指定します。MCC アカウントからクライアント アカウントにアクセスしている場合は、この値を指定する必要があります。お客様 ID へのパス上のすべてのマネージャー アカウントを指定する必要はありません。アクセス権限に使用している最上位のマネージャー 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
この例では、--customerId
パラメータが必要です。値には、Google 広告アカウントのお客様 ID をハイフンなしで指定します。
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'