驗證 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 頁面。