驗證 API 呼叫

本例展示如何使用服務帳戶呼叫 AdSense Platforms API 來建立及管理子帳戶。

步驟 1:建立新的 Google Cloud 專案 (或使用現有專案)

如果您目前擁有 Google Cloud 專案,可以直接使用。或者,您也可以按照下列指南設定新專案:

https://cloud.google.com/resource-manager/docs/creating-managing-projects

步驟 2:建立服務帳戶

使用服務帳戶是建立子帳戶的最佳方式。請按照下列步驟建立服務帳戶:

  • 前往 Google Cloud 的服務帳戶頁面
  • 您可以使用現有的服務帳戶,也可以建立新帳戶:
    • 按一下「+ 建立服務帳戶」
    • 填寫「服務帳戶詳細資料」表單
    • 選用頁面的步驟 2 和 3 (授予存取權給專案和使用者)

進一步瞭解如何建立及管理服務帳戶

建立服務帳戶後,您必須將帳戶傳送給 Google,才能加進 AdSense 帳戶。您必須這麼做,因為必須允許服務帳戶存取您的 AdSense 帳戶。請洽您的客戶經理。

步驟 3:為 Google Cloud 專案啟用 AdSense Platform API

找不到 AdSense Platform API,您必須前往下列連結為專案啟用這個 API:

https://console.developers.google.com/apis/api/adsenseplatform.googleapis.com/overview

步驟 4:建立服務金鑰

為了產生用於 API 呼叫的存取權杖,您必須建立服務金鑰。請按照下列步驟操作:

  • 前往 Google Cloud 的服務帳戶頁面
  • 在「動作」欄中,針對您要用來建立子帳戶的服務帳戶按一下 ,然後點選「管理金鑰」
  • 按一下「新增金鑰」,然後選取「建立新的金鑰」
  • 保持選取 JSON 做為金鑰類型,然後按一下「建立」
  • 系統會建立 JSON 檔案並下載至您的電腦中。請妥善保管這個問題,因為驗證 API 呼叫需要

進一步瞭解如何建立及管理服務帳戶金鑰

步驟 5:使用 Google 的 OAuth 程式庫產生存取權杖

Google 會提供程式庫,協助產生存取權杖,並可用於執行 API 呼叫。如要瞭解如何為服務帳戶產生憑證,請參閱:

https://developers.google.com/identity/protocols/oauth2/service-account#authorizingrequests

AdSense Platforms API 的範圍如下: https://www.googleapis.com/auth/adsense

Python 範例

from google.auth.transport import requests
from google.oauth2 import service_account

CREDENTIAL_SCOPES = ["https://www.googleapis.com/auth/adsense"]
CREDENTIALS_KEY_PATH = 'service.json'

def get_service_account_token():
  credentials = service_account.Credentials.from_service_account_file(
          CREDENTIALS_KEY_PATH, scopes=CREDENTIAL_SCOPES)
  credentials.refresh(requests.Request())
  return credentials.token

在這個階段,您已經可以開始呼叫 API。由於 AdSense Platform API 尚不支援用戶端程式庫,因此必須改為直接 HTTP 要求。存取權杖應以標頭的形式加入 HTTP 要求。標頭應如下所示:

Authorization: OAuth <credentials>

相關範例請參閱 API 頁面。