所有 Google Ad Manager API 呼叫都必須透過 OAuth2 開放標準授權,該標準可讓使用者對第三方應用程式授予權限,讓應用程式能代表使用者與網路服務互動。OAuth2 可讓您的 Ad Manager API 用戶端應用程式存取使用者的 Ad Manager 帳戶,而不必處理或儲存使用者的使用者名稱或密碼。
產生 OAuth2 憑證
請按照下列步驟產生 OAuth2 憑證。
1. 決定驗證類型
請參閱下表,瞭解哪種驗證類型最適合您的 Ad Manager API 應用程式:
選擇 OAuth2 驗證類型 | |
---|---|
服務帳戶 |
如果您只需要存取自己的 Ad Manager 資料,請選擇這個選項。 瞭解詳情。 |
網頁應用程式 |
如果您要以任何使用者的身分進行驗證,允許您的應用程式存取他們的 Ad Manager 資料,請選擇這個選項。 瞭解詳情。 |
2. 建立 OAuth2 憑證
確定驗證類型後,請點選下方的對應分頁,並按照操作說明產生 OAuth2 憑證:
- 開啟 Google API 控制台「憑證」頁面。
- 在專案下拉式選單中選取「Create a new project」(建立新專案),輸入專案名稱,然後視需要編輯所提供的專案 ID。按一下「Create」(建立)。
- 在「Credentials」(憑證) 頁面上選取「Create credentials」(建立憑證),然後選取「Service account key」(服務帳戶金鑰)。
- 選取「新增服務帳戶」,然後選取「JSON」。
- 按一下「建立」,下載內含私密金鑰的檔案。
- 開啟 Google API 控制台「憑證」頁面。
- 在專案下拉式選單中選取「Create a new project」(建立新專案) ,然後輸入專案名稱 (可視需要編輯提供的專案 ID),然後按一下「Create」(建立)。
- 在「Credentials」(憑證) 頁面上選取「Create credentials」(建立憑證),然後選取「OAuth client ID」(OAuth 用戶端 ID)。
- 系統可能會提示您在「同意畫面」頁面上設定產品名稱;如果是的話,請按一下「設定同意畫面」,提供必要資訊,然後按一下「儲存」返回「憑證」頁面。
- 在「應用程式類型」中選取 [網路應用程式]。請按照操作說明輸入 JavaScript 來源和/或重新導向 URI。
- 點選「建立」。
- 在顯示的頁面中,將「用戶端 ID」和「用戶端密鑰」複製到剪貼簿,因為在設定用戶端程式庫時需要用到。
3. 設定 Ad Manager 聯播網
如果您是第三方開發人員,可能需要請客戶為您執行這個步驟。
- 前往 Ad Manager 聯播網。
- 按一下 [管理] 分頁標籤。
- 確認已啟用 API 存取權。
- 按一下「新增服務帳戶使用者」按鈕。
- 使用服務帳戶電子郵件地址填寫表單。您必須向服務帳戶使用者授予能存取實體的權限,就像該服務帳戶使用者會存取 UI 上的實體一樣。
- 按一下「儲存」按鈕。您應該會看到一則訊息,確認已新增服務帳戶。
- 如要查看現有的服務帳戶使用者,請前往「使用者」分頁,然後按一下「服務帳戶」篩選器。
- 前往 Ad Manager 聯播網。
- 按一下 [管理] 分頁標籤。
- 確認已啟用 API 存取權。
4. 設定及使用用戶端程式庫
請按照下列相關指南操作,在用戶端程式庫中使用憑證:
Java
.NET
Python
PHP
Ruby
如果您選擇不使用我們的用戶端程式庫,則必須自行實作 OAuth2 服務帳戶或網頁應用程式流程。
幕後花絮
我們的用戶端程式庫會自動處理下方涵蓋的細節,因此如果您對幕後作業有興趣,可以繼續閱讀。本節適用於熟悉 OAuth2 規格,並瞭解如何搭配使用 OAuth2 與 Google API 的進階使用者。
HTTP 請求標頭
對 Ad Manager API 發出的每個請求中,HTTP 標頭都必須包含下列形式的存取權杖:
Authorization: Bearer ACCESS_TOKEN
例如:
POST … HTTP/1.1 Host: … Authorization: Bearer 1/fFAGRNJru1FTz70BzhT3Zg Content-Type: text/xml;charset=UTF-8 Content-Length: … <?xml version="1.0"?> <soap:Envelope xmlns:soap="http://www.w3.org/2001/12/soap-envelope"> … </soap:Envelope>
範圍
單一存取權杖可授予多個 API 的存取權不一。名為 scope
的變數參數會控制存取權杖允許的一組資源和作業。在存取權杖要求期間,您的應用程式會在 scope
參數中傳送一或多個值。
Ad Manager 只有一個範圍,如下所示。應在產品內的使用者層級執行授權作業。
範圍 | 權限 |
---|---|
https://www.googleapis.com/auth/dfp |
查看及管理您在 Ad Manager 中的廣告活動。 |