呼叫 Google Ads API 時,您需要同時具備 OAuth 2.0 應用程式憑證和開發人員權杖。如果您使用 Google Ads 管理員帳戶發出 API 呼叫,則您也需要在每個要求中指定 login-customer-id
標頭。本頁面說明如何設定這些值,並記錄使用 REST 介面時傳送和接收的其他 API 專屬 HTTP 標頭。
OAuth 2.0 憑證
Google Ads API 會使用應用程式憑證來識別及授權 API 要求。您可以設定 OAuth 2.0 用戶端和服務帳戶。如要進一步瞭解如何設定用戶端授權,請參閱「Google Ads API 中的 OAuth 2」。
如果您是 Google API 新手,可以使用 oauth2l 或 OAuth 2.0 Playground 來試驗應用程式憑證和 Google Ads API,然後再編寫應用程式程式碼。
使用電腦或網頁應用程式流程
請按照這篇文章的步驟,為 Google Ads API 設定 Google API 控制台專案。記下「用戶端 ID」和「用戶端密碼」,然後返回本頁。
建立 OAuth 用戶端後,請按照電腦版應用程式流程操作說明或網頁應用程式流程操作說明產生更新權杖和存取權杖。
使用服務帳戶
請按照「服務帳戶」指南中的一般操作說明,設定 Google Ads API 的服務帳戶存取權。
設定服務帳戶以存取 Google Ads 帳戶後,請按照「使用 OAuth 2.0 進行伺服器對伺服器應用程式」指南操作,並務必選取「HTTP/REST
」分頁標籤。用於 Google Ads API 存取權的 scope
為 https://www.googleapis.com/auth/adwords
。
產生新的存取權杖
取得 client ID、client secret 和重新整理權杖後,您可以使用 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
接著,您可以在每個 Google Ads API 呼叫的 API 呼叫 Authorization
HTTP 標頭中,使用 curl 要求傳回的存取權杖:
GET /v19/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
要求標頭
開發人員權杖:
Google Ads API 也需要開發人員權杖才能呼叫 API。您可以直接透過 Google Ads 使用者介面,為管理員帳戶申請符記。如要進一步瞭解如何設定開發人員權杖,請參閱「取得開發人員權杖」。
您必須在每個 Google Ads API 的 API 呼叫 developer-token
HTTP 標頭中,加入開發人員權杖值:
GET /v19/customers:listAccessibleCustomers HTTP/1.1
Host: googleads.googleapis.com
Authorization: Bearer ACCESS_TOKEN
developer-token: DEVELOPER_TOKEN
登入客戶 ID
管理員向客戶帳戶發出的 Google Ads API 呼叫 (也就是以管理員身分登入,向其中一個客戶帳戶發出 API 呼叫),也需要提供 login-customer-id
HTTP 標頭。這個值代表進行 API 呼叫的管理員的 Google Ads 客戶 ID。
加入這個標頭,就等同於在登入 Google Ads UI 後,或點按頁面右上角的個人資料相片,在其中選擇帳戶。指定客戶 ID 時,請務必移除所有連字號 (—),例如:1234567890
,而非 123-456-7890
。
GET /v19/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 Ads 帳戶時,才會使用這項標頭。詳情請參閱 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 開發人員支援團隊聯絡時的重要 ID。
request-id: 2a5Cj89VV7CNhya1DZjjrC