直接提出要求

建議您改用 用戶端 實作的程式庫和範例。不過,如果您的整合服務 有特殊需求 (例如使用不支援的語言) 提出直接要求,方法如下所述。

通話方式

REST 是一種軟體架構,可提供簡便且一致的資料要求及修改方法。

REST 這個詞是「Representational State Transfer (表現層狀態轉換)」的簡稱。在 Google API 中,這是指使用 HTTP 動詞來擷取及修改 Google 所儲存資料的表示法。

在符合 REST 樣式的系統中,資源會儲存在資料儲存庫中。用戶端向伺服器發出執行特定動作 (例如建立、擷取、更新或刪除資源) 的要求後,伺服器就會執行指定動作並傳回回應 (大多採用指定資源表示法的形式)。

在具備 REST 特性的各種 Google API 中,用戶端會使用 POSTGETPUTDELETE 等 HTTP 動詞來指定動作。接著,該動詞會透過全域唯一的 URI 來指定資源,格式如下:

https://www.googleapis.com/apiName/apiVersion/resourcePath?parameters

由於所有 API 資源都有可供 HTTP 存取的專屬 URI,因此 REST 不僅能夠支援資料快取,也非常適合與網路的分散式基礎架構搭配運作。

您可以在 HTTP 1.1 標準說明文件中找到實用的方法定義;包括 GETPOSTPUTDELETE 的規格。

AdSense Management API 中的 REST

受支援的操作直接對應於 REST HTTP 動詞,如 AdSense Management API 操作

AdSense Management API URI 的專用格式如下:

https://adsense.googleapis.com/v2/resourceID?parameters

其中 resourceID 是廣告 ID 用戶端、廣告單元、網址管道、自訂管道或報表集合,以及 parameters 是任何要套用的參數 查詢。

resourceID 路徑擴充功能的格式 可讓您找出目前對哪個資源執行操作 範例:

https://adsense.googleapis.com/v2/accounts/account_id/adclients
https://adsense.googleapis.com/v2/accounts/account_id/adclients/adClientId
https://adsense.googleapis.com/v2/accounts/account_id/adclients/adClientId/adunits
https://adsense.googleapis.com/v2/accounts/account_id/adclients/adClientId/adunits/adUnitId
https://adsense.googleapis.com/v2/accounts/account_id/adclients/adClientId/urlchannels
...

關於 API 中一共有哪些 URI 用於各項支援的操作 都已總結在 AdSense Management API 參考資料 文件。

以下舉幾個例子來說明此格式在 AdSense Management API 中的運作方式。

列出廣告用戶端:

GET https://adsense.googleapis.com/v2/accounts/account_id/adclients/

列出廣告用戶端 ca-pub-1234567890123456 中的廣告單元:

GET https://adsense.googleapis.com/v2/accounts/account_id/adclients/ca-pub-1234567890123456/adunits

資料格式

JSON (JavaScript Object Notation) 是一種不涉及語言的常用資料格式,可透過簡單的文字呈現多種資料結構。詳情請參閱 json.org

授權要求

請注意,AdSense 不支援服務帳戶 必須使用 [已安裝的應用程式] 流程。

凡是您應用程式向 AdSense Management API 發出的請求,都必須包含一個授權權杖,這個權杖也可讓 Google 識別您的應用程式。

關於授權通訊協定

您的應用程式必須使用 OAuth 2.0 對要求進行授權,系統不支援其他授權通訊協定。如果您的應用程式採用使用 Google 帳戶登入功能,系統會為您處理部分授權事項。

使用 OAuth 2.0 對要求進行授權

凡是向 AdSense Management API 發出的請求,都必須由通過驗證的使用者進行授權。

您必須使用 OAuth 用戶端 ID 進行這項程序。

取得 OAuth 用戶端 ID

或是在「憑證」頁面中建立。

OAuth 2.0 授權程序 (或「流程」) 的細節會根據您編寫的應用程式類型而有所不同。下列一般程序適用於所有應用程式類型:

  1. 當應用程式需要存取使用者資料時,會向 Google 要求特定的存取範圍
  2. Google 會向使用者顯示同意畫面,請對方授權您的應用程式要求部分資料。
  3. 如果使用者同意,Google 即會授予短期存取權杖給您的應用程式。
  4. 您的應用程式向使用者要求資料,並且在要求中附上存取權杖。
  5. 如果 Google 判定您的要求與權杖有效,便會傳回您要求的資料。

部分流程包含額外步驟,例如使用「更新權杖」來取得新的存取權杖。如要進一步瞭解各類應用程式的流程,請參閱 Google 的 OAuth 2.0 說明文件

OAuth 2.0 的 AdSense Management API 範圍資訊如下:

範圍 意義
https://www.googleapis.com/auth/adsense AdSense 資料的讀取/寫入權限。
https://www.googleapis.com/auth/adsense.readonly AdSense 資料的唯讀存取權。

如要透過 OAuth 2.0 要求存取權,您的應用程式需要範圍資訊,以及 Google 在您註冊應用程式時提供的資訊 (例如用戶端 ID 和用戶端密碼)。

提示:Google API 用戶端程式庫可以為您處理部分授權程序,且適用於多種程式設計語言;詳情請參閱程式庫和範例頁面

提出請求

最後一個步驟是提出 API 要求。詳情請參閱 參考說明文件, 可能不準確或不適當