عند استخدام واجهة REST في Search Ads 360 Reporting API، يعني ذلك أنّك تعمل باستخدام تمثيلات JSON للموارد والأنواع نفسها المحدّدة في ملفات .proto descriptor في Search Ads 360 Reporting API. يتّبع مخطّط ترميز JSON مخطّط الترميز الرسمي الموضّح في القسم تعيين JSON من دليل لغة ملفّات تخزين مؤقت للبروتوكول.
بوجه عام، جميع الرسائل من المستوى الأعلى المُرسَلة إلى
الخدمات والمُرسَلة منها هي كائنات JSON فردية. search
ردّ هي عناصر JSON تحتوي على مصفوفة results
مع مجموعة نتائج طلب البحث.
يتم تحويل المعرّفات من snake_case (في بروتوكول Buffers) إلى
lowerCamelCase في JSON. من الملاحظات المهمة لهذه القاعدة أنّه عند استخدام
search
أو searchStream
لإرسال طلبات بحث لغة طلبات البحث في إعلانات شبكة البحث 360. تستخدم لغة طلب البحث نفسها تنسيق snake case، بغض النظر عن
الواجهة التي تستخدمها. ومع ذلك، يتم عرض نتائج طلب البحث في REST على هيئة
عناصر JSON عادية وتتضمّن معرّفاتها تنسيق lowerCamelCase.
على سبيل المثال، يستخدم طلب البحث لجلب قائمة بالكلمات الرئيسية النشطة في حساب حالة الثعبان داخل طلب البحث نفسه (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" } } }, ... ] } ]