تعيينات JSON

عند استخدام واجهة REST في Search Ads 360 Reporting API، يمكنك استخدام تمثيلات JSON للموارد والأنواع نفسها المحدّدة في ملفات وصف.proto في Search Ads 360 Reporting API. يتّبع مخطَّط ترميز JSON نظام الترميز الأساسي الموضح في قسم تعيين JSON في المخزن المؤقت للبروتوكولات في دليل اللغة.

بشكل عام، تكون جميع الرسائل ذات المستوى الأعلى من وإلى الخدمات عبارة عن كائنات JSON واحدة. ردود search هي كائنات JSON تحتوي على مصفوفة results مع مجموعة نتائج طلب البحث.

يتم تحويل المعرّفات من snake_case (في مخازن البروتوكول المؤقتة) إلى lowerCamelCase بتنسيق JSON. وتجدر الإشارة إلى نقطة ملاحظة بارزة على هذه القاعدة في حال استخدام search أو searchStream لإرسال طلبات بحث لغة طلب البحث في "إعلانات شبكة البحث 360". تستخدم لغة الاستعلام نفسها حالة الثعبان، بغض النظر عن الواجهة التي تستخدمها. ومع ذلك، يتم عرض نتائج طلب البحث في REST ككائنات JSON عادية وتكون معرّفاتها في LowCamelCase.

على سبيل المثال، يستخدم طلب البحث لجلب قائمة بالكلمات الرئيسية النشطة في أحد الحسابات حالة الثعبان داخل طلب البحث نفسه (ad_group_criterion، وليس 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'"
}

مع ذلك، تكون الاستجابة هي تمثيل JSON للكائنات (يتم عرضها في مصفوفة JSON لأن هذا الطلب يستخدم searchStream) وتستخدم معرِّف camelCase adGroupCriterion بدلاً منها:

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