認証と 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 /v20/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 /v20/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 広告 UI でアカウントを選択するか、ページの右上にある自分のプロフィール画像をクリックすることと同じです。お客様 ID を指定する際は、必ずハイフン(—)を削除してください(例: 1234567890123-456-7890 ではありません)。

GET /v20/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 呼び出しに関する問題のデバッグやトラブルシューティングを行う場合、request-id は Google デベロッパー サポートにお問い合わせの際に重要な識別子となります。

request-id: 2a5Cj89VV7CNhya1DZjjrC