Google Ads API-এর REST ইন্টারফেস ব্যবহার করার সময়, আপনি Google Ads API-এর .proto বর্ণনাকারী ফাইলগুলিতে সংজ্ঞায়িত একই সংস্থান এবং প্রকারের JSON উপস্থাপনা নিয়ে কাজ করছেন। JSON এনকোডিং স্কিমটি প্রোটোকল বাফার ল্যাঙ্গুয়েজ গাইডের JSON ম্যাপিং বিভাগে বর্ণিত ক্যানোনিকাল এনকোডিং স্কিম অনুসরণ করে।
সাধারণভাবে, পরিষেবাগুলিতে এবং থেকে আসা সমস্ত শীর্ষ-স্তরের বার্তাগুলি একক JSON অবজেক্ট। বেশিরভাগ মিউটেট অনুরোধে একটি operations
অ্যারে থাকে যেটিতে অনেকগুলি create
, update
বা delete
অপারেশন থাকে। একইভাবে, search
প্রতিক্রিয়াগুলি হল JSON অবজেক্ট যাতে আপনার প্রশ্নের ফলাফল সেটের সাথে একটি results
অ্যারে থাকে।
শনাক্তকারীগুলিকে snake_case (প্রটোকল বাফারে) থেকে JSON-এ LowerCamelCase- এ রূপান্তরিত করা হয়। Google Ads Query Language কোয়েরি পাঠানোর জন্য search
বা searchStream
ব্যবহার করার সময় এই নিয়মের একটি উল্লেখযোগ্য সতর্কতা। আপনি যে ইন্টারফেস ব্যবহার করছেন তা নির্বিশেষে ক্যোয়ারী ভাষা নিজেই স্নেক কেস ব্যবহার করে। যাইহোক, REST-এ একটি প্রশ্নের ফলাফল সাধারণ JSON অবজেক্ট হিসাবে ফেরত দেওয়া হয় এবং তাদের শনাক্তকারী LowerCamelCase-এ থাকে।
উদাহরণস্বরূপ, একটি অ্যাকাউন্টে সক্রিয় কীওয়ার্ডগুলির একটি তালিকা আনার জন্য একটি ক্যোয়ারী ক্যোয়ারীটির ভিতরেই স্নেক কেস ব্যবহার করে ( ad_group_criterion
, 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'" }
যাইহোক, প্রতিক্রিয়া হল বস্তুগুলির একটি JSON উপস্থাপনা (যেহেতু এই অনুরোধটি searchStream
ব্যবহার করে একটি JSON অ্যারেতে মোড়ানো) এবং পরিবর্তে CamelCase শনাক্তকারী adGroupCriterion
ব্যবহার করে:
[ { "results": [ { "adGroupCriterion": { "resourceName": "customers/1842689525/adGroupCriteria/55771861891~10003060", "keyword": { "text": "pay per click" } } }, ... ] } ]