Ánh xạ JSON

Khi sử dụng giao diện REST của API Báo cáo Search Ads 360, bạn sẽ xử lý các bản trình bày JSON của cùng một tài nguyên và loại được xác định trong tệp .proto mô tả của API Báo cáo Search Ads 360. Lược đồ mã hoá JSON tuân theo lược đồ mã hoá chính tắc được mô tả trong phần JSON Mapping (Ánh xạ JSON) của vùng đệm giao thức Hướng dẫn về ngôn ngữ.

Nhìn chung, tất cả thông báo cấp cao nhất đến và gửi từ dịch vụ đều là đối tượng JSON duy nhất. Phản hồi search là các đối tượng JSON chứa một mảng results với tập hợp kết quả của truy vấn.

Giá trị nhận dạng được chuyển đổi từ snake_case (trong vùng đệm giao thức) thành snake_case trong JSON. Một lưu ý đáng chú ý đối với quy tắc này là khi sử dụng search hoặc searchStream để gửi truy vấn bằng Ngôn ngữ truy vấn Search Ads 360. Bản thân ngôn ngữ truy vấn sử dụng kiểu viết hoa dạng rắn, bất kể bạn đang sử dụng giao diện nào. Tuy nhiên, kết quả của một truy vấn trong REST được trả về dưới dạng đối tượng JSON thông thường và có giá trị nhận dạng ở dạng lowerCamelCase.

Ví dụ: truy vấn để tìm nạp danh sách từ khoá đang hoạt động trong một tài khoản sử dụng trường hợp rắn bên trong chính truy vấn đó (ad_group_criterion, không phải adGroupCriterion):

POST /v0/customers/CUSTOMER_ID/searchAds360:searchStream HTTP/1.1
Host: searchads360.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'"
}

Tuy nhiên, phản hồi là cách biểu diễn JSON của các đối tượng (được gói trong một mảng JSON vì yêu cầu này sử dụng searchStream) và sử dụng giá trị nhận dạng CamelCase adGroupCriterion:

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