JSON 映射

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

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

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

例如,用于获取账号中有效关键字列表的查询 查询本身内的蛇形命名法(ad_group_criterion,而不是 adGroupCriterion):

POST /v26/customers/CUSTOMER_ID/googleAds:searchStream HTTP/1.1
Host: googleads.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_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"
          }
        }
      },
      ...
    ]
  }
]