Apache Maven(または Gradle)でクライアント ライブラリを使用することをおすすめします。
新しい Maven/Gradle プロジェクトを作成する
任意の IDE で新しい Maven/Gradle プロジェクトを作成します。このアーティファクトは、Maven セントラル リポジトリで公開されています。
Maven の依存関係は次のとおりです。
<dependency>
<groupId>com.google.api-ads</groupId>
<artifactId>google-ads</artifactId>
<version>31.0.0</version>
</dependency>
Gradle の依存関係は次のとおりです。
implementation 'com.google.api-ads:google-ads:31.0.0'
ソースからビルドすることもできます。このガイドでは、プロジェクトが設定され、必要な依存関係を利用できることを前提としています。
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 広告クライアント センター(MCC)アカウントから Google 広告のお客様アカウントにアクセスする場合は、下記の手順に沿ってログイン用のお客様 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'