Ánh xạ JSON

Khi sử dụng giao diện REST của API Google Ads, tức là bạn đang dùng JSON bản trình bày cùng một tài nguyên và loại được xác định trong API Google Ads .proto mô tả tệp. Lược đồ mã hoá JSON tuân theo lược đồ mã hoá chuẩn được mô tả trong Mục Ánh xạ JSON của giao thức vùng đệm Hướng dẫn về ngôn ngữ.

Nhìn chung, tất cả thư gửi đến và đi từ cấp cao nhất services là các đối tượng JSON đơn lẻ. Hầu hết các yêu cầu thay đổi đều chứa một mảng operations mà chính nó chứa nhiều Toán tử create, update hoặc delete. Tương tự, search câu trả lời là Các đối tượng JSON chứa một mảng results kèm theo nhóm kết quả truy vấn của bạn.

Giá trị nhận dạng được chuyển đổi từ snake_case (trong vùng đệm giao thức) thành lowerCamelCase 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 Ngôn ngữ truy vấn Google Ads truy vấn. Bản thân ngôn ngữ truy vấn sử dụng kiểu viết hoa rắn, bất kể kiểu mà bạn đang sử dụng. 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 trong bottomCamelCase.

Ví dụ: một truy vấn để tìm nạp danh sách các từ khoá đang hoạt động trong một tài khoản sẽ sử dụng viết hoa con rắn bên trong chính truy vấn (ad_group_criterion, không phải 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'"
}

Tuy nhiên, phản hồi là bản trình bày JSON của các đối tượng (được gói trong một tệp JSON mảng vì yêu cầu này dùng searchStream) và sử dụng giá trị nhận dạng camelCase Thay vào đó là adGroupCriterion:

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