JSON 映射

在使用 Google Ads API 的 REST 接口时,您需要使用 JSON Google Ads API 中定义的相同资源和类型的 .proto descriptor 文件。JSON 编码架构遵循 规范的编码方案, 协议的 JSON 映射部分 缓冲区语言指南

一般来说,所有接收和发送的顶级邮件 服务是单个 JSON 对象。 大多数 mutate 请求都包含一个 operations 数组,该数组本身包含许多 createupdatedelete 操作。同样,search 响应 包含带有查询结果集的 results 数组的 JSON 对象。

标识符从 snake_case(在协议缓冲区中)转换为 JSON 中的 lowerCamelCase。需要注意的一点是,使用 searchsearchStream,用于发送 Google Ads 查询语言 查询。查询语言本身采用蛇形命名法, 您使用的界面但是,REST 中的查询结果会以如下形式返回: 普通 JSON 对象,且其标识符采用 lowerCamelCase 格式。

例如,用于获取账号中有效关键字列表的查询 查询本身内的蛇形命名法(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 表示法(封装在 JSON 中) 数组,因为此请求使用 searchStream)并使用驼峰式大小写标识符 改成 adGroupCriterion

[
  {
    "results": [
      {
        "adGroupCriterion": {
          "resourceName": "customers/1842689525/adGroupCriteria/55771861891~10003060",
          "keyword": {
            "text": "pay per click"
          }
        }
      },
      ...
    ]
  }
]