使用 Google Ads API 的 REST 介面時,您會透過 JSON 表示法在 Google Ads API .proto 描述元檔案中定義的相同資源和類型。JSON 編碼配置遵循通訊協定緩衝區語言指南 JSON 對應一節所述的標準編碼配置。
一般而言,與服務之間的所有頂層訊息,都是單一 JSON 物件。大部分的 mut 要求包含的 operations
陣列本身,包含許多 create
、update
或 delete
作業。同樣地,search
回應是 JSON 物件,當中包含 results
陣列,其中含有查詢結果。
ID 會在 JSON 中從 snake_case (在通訊協定緩衝區中) 轉換為 lowerCamelCase。這項規則的其中一個注意事項,就是使用 search
或 searchStream
傳送 Google Ads 查詢語言查詢。無論使用何種介面,查詢語言本身都會使用蛇型大小寫。不過,REST 中的查詢結果會以一般 JSON 物件的形式傳回,並在其 ID 中產生 CCmelCase。
例如,擷取帳戶中有效關鍵字清單的查詢,會使用查詢本身 (ad_group_criterion
,而非 adGroupCriterion
) 中的蛇案例:
POST /v17/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1 Host: googleads.googleapis.com Content-Type: application/json Authorization: Bearer ACCESS_TOKEN developer-token: DEVELOPER_TOKEN { "query": "SELECT ad_group_criterion.keyword.text FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'" }
不過,回應是 JSON 表示法的物件 (因為這個要求使用 searchStream
),所以包含在 JSON 陣列中,並改用駱 lCase ID:adGroupCriterion
[ { "results": [ { "adGroupCriterion": { "resourceName": "customers/1842689525/adGroupCriteria/55771861891~10003060", "keyword": { "text": "pay per click" } } }, ... ] } ]