認証と HTTP ヘッダー

動画: 認証

Google Ads API を呼び出すときは、OAuth 2.0 アプリケーションの認証情報と開発者トークンの両方が必要です。Google 広告 MCC アカウントで API 呼び出しを行う場合は、リクエストごとに login-customer-id ヘッダーも指定する必要があります。このページでは、これらの値を設定する方法と、REST インターフェースの使用時に送受信される API 固有の追加の HTTP ヘッダーについて説明します。

OAuth 2.0 認証情報

Google Ads API では、アプリケーションの認証情報を使用して API リクエストを識別し、承認します。OAuth 2.0 クライアントとサービス アカウントの両方を構成できます。クライアントサイド認証の設定について詳しくは、Google Ads API の OAuth2 をご覧ください。

Google API を初めて使用する場合は、アプリのコードを記述する前に、oauth2l または OAuth 2.0 Playground を使用して、アプリケーションの認証情報や Google Ads API を試すことができます。

デスクトップまたはウェブアプリのフローの使用

手順に沿って、Google Ads API の Google API Console プロジェクトを設定します。クライアント IDクライアント シークレットを記録してから、このページに戻ります。

OAuth クライアントを作成したら、デスクトップ アプリのフローの手順またはウェブアプリのフローの手順に沿って、更新トークンアクセス トークンを生成します。

サービス アカウントを使用する

サービス アカウント ガイドに記載されている一般的な手順に沿って、Google Ads API のサービス アカウントのアクセス権を設定します。

Google 広告アカウントにアクセスするためのサービス アカウントを設定したら、サーバー間アプリケーションでの OAuth 2.0 の使用のガイドに沿って [HTTP/REST] タブを選択します。Google Ads API アクセスに使用する scopehttps://www.googleapis.com/auth/adwords です。

新しいアクセス トークンの生成

クライアント ID、クライアント シークレット、更新トークンを取得したら、curl コマンドライン ツールを使用して、API 呼び出しで使用する新しいアクセス トークンを生成できます。

curl \
  --data "grant_type=refresh_token" \
  --data "client_id=CLIENT_ID" \
  --data "client_secret=CLIENT_SECRET" \
  --data "refresh_token=REFRESH_TOKEN" \
  https://www.googleapis.com/oauth2/v3/token

次に、curl リクエストによって返されたアクセス トークンを、Google Ads API に対するすべての API 呼び出しの Authorization HTTP ヘッダーで使用します。

GET /v17/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

リクエスト ヘッダー

開発者トークン

Google Ads API で API を呼び出すには開発者トークンも必要です。MCC アカウントのトークンは、Google 広告の管理画面から直接申請できます。開発者トークンのセットアップについて詳しくは、開発者トークンを取得するをご覧ください。

Google Ads API に対するすべての API 呼び出しの developer-token HTTP ヘッダーに、開発者トークンの値を含める必要があります。

GET /v17/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN

ログイン用のお客様 ID

マネージャーがクライアント アカウントへの Google Ads API 呼び出しを行う(つまり、マネージャーとしてログインしてクライアント アカウントの 1 つに対して API 呼び出しを行う)場合は、login-customer-id HTTP ヘッダーも指定する必要があります。この値は、API 呼び出しを行うマネージャーの Google 広告のお客様 ID を表します。

このヘッダーを含めることは、Google 広告の管理画面でアカウントを選択するか、ページ右上のプロフィール画像をクリックしてアカウントを選択するのと同じ結果になります。お客様 ID を指定するときは、必ずハイフン(—)を削除してください。たとえば、123-456-7890 ではなく 1234567890 です。

GET /v17/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID

リンクされたお客様 ID

このヘッダーは、第三者アプリ分析プロバイダが、リンクされた Google 広告アカウントにコンバージョンをアップロードする際にのみ使用されます。詳しくは、API 呼び出しの構成ガイドをご覧ください。

...
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
login-customer-id: MANAGER_CUSTOMER_ID
linked-customer-id: LINKED_CUSTOMER_ID

レスポンス ヘッダー

API からの HTTP レスポンスでは、次のヘッダーが返されます。

リクエスト ID

request-id は、API リクエストを一意に識別する文字列です。特定の API 呼び出しに関する問題をデバッグまたはトラブルシューティングする場合、Google デベロッパー サポートに問い合わせる際に使用すると便利な ID として、request-id が重要な役割を果たします。

request-id: 2a5Cj89VV7CNhya1DZjjrC