驗證 API 呼叫

在這個範例中,我們將說明如何使用服務帳戶呼叫 AdSense 平台 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 頁面。