মার্চেন্ট এপিআই আপনার পণ্যের ডেটা পরিচালনা করার জন্য আরও শক্তিশালী এবং স্বজ্ঞাত উপায় প্রবর্তন করে। প্রধান পরিবর্তন হল পণ্যের ডেটা দুটি স্বতন্ত্র সংস্থানে বিভক্ত করা: আপনার ডেটা জমা দেওয়ার জন্য ProductInput এবং পণ্যের স্থিতি এবং সমস্যা সহ চূড়ান্ত, প্রক্রিয়াজাত সংস্করণ দেখার জন্য Product । এই নতুন কাঠামোটি আরও অনুমানযোগ্য এবং স্বচ্ছ অভিজ্ঞতা প্রদান করে।
এই নির্দেশিকাটি আপনাকে শপিংয়ের জন্য কন্টেন্ট API থেকে আপনার ইন্টিগ্রেশন স্থানান্তর করতে সাহায্য করার জন্য মূল পার্থক্যগুলি ব্যাখ্যা করবে। নতুন বৈশিষ্ট্যগুলি ব্যবহারের বিস্তারিত নির্দেশিকা জানতে, আপনার পণ্যগুলি পরিচালনা করুন দেখুন।
মূল পার্থক্য
Content API for Shopping এর তুলনায় Merchant API তে পণ্য পরিচালনার ক্ষেত্রে সবচেয়ে উল্লেখযোগ্য পরিবর্তনগুলি এখানে দেওয়া হল:
ইনপুট এবং প্রক্রিয়াজাত ডেটার জন্য নিবেদিত সম্পদ : মার্চেন্ট API পণ্য ব্যবস্থাপনাকে দুটি সম্পদে বিভক্ত করে। আপনি আপনার পণ্যের ডেটা সন্নিবেশ, আপডেট এবং মুছে ফেলার জন্য
ProductInputসম্পদ ব্যবহার করতে পারেন। Google আপনার ইনপুট প্রক্রিয়াকরণ, নিয়ম প্রয়োগ এবং সম্পূরক উৎস থেকে ডেটা একত্রিত করার পরে চূড়ান্ত পণ্যটি দেখতে আপনি শুধুমাত্র পঠনযোগ্যProductসম্পদ ব্যবহার করতে পারেন।পণ্যের নামের জন্য এনকোডিং : আপনি
ProductInput.nameএবংProduct.nameউভয় ক্ষেত্রেই unpadded base64url (RFC 4648 Section 5) এনকোডিং ব্যবহার করতে পারেন। যদি পণ্যের নামগুলিতে Merchant API দ্বারা ব্যবহৃত অক্ষর বা URL-সংরক্ষিত অক্ষর থাকে, তাহলে এনকোডিং বাধ্যতামূলক । উদাহরণস্বরূপ, যদি পণ্যের নামগুলিতে নিম্নলিখিত অক্ষরগুলির মধ্যে কোনও একটি থাকে তবে আপনাকে অবশ্যই এনকোড করতে হবে:% . + / : ~ , ( * ! ) & ? = @ # $ইন্টিগ্রেটেড প্রোডাক্ট স্ট্যাটাস :
productstatusesপরিষেবাটি সরানো হয়েছে। প্রোডাক্ট ভ্যালিডেশন সমস্যা এবং গন্তব্য স্ট্যাটাসগুলি এখনproductStatusক্ষেত্রের মধ্যেProductরিসোর্সে সরাসরি অন্তর্ভুক্ত করা হয়েছে, যা ডেটা পুনরুদ্ধারকে সহজ করে তোলে।পূর্বাভাসযোগ্য পণ্য আপডেট : নতুন
productInputs.patchপদ্ধতিটি সরাসরি একটি নির্দিষ্ট পণ্য ইনপুট পরিবর্তন করে। এটি শপিংয়ের জন্য কন্টেন্ট API-এর তুলনায় একটি উল্লেখযোগ্য উন্নতি, যেখানে আপডেটগুলি অপ্রত্যাশিতভাবে অন্যান্য ফিড আপলোড দ্বারা ওভাররাইট করা যেতে পারে। Merchant API-তে, একটি আপডেট ততক্ষণ পর্যন্ত থাকে যতক্ষণ না সেই নির্দিষ্ট পণ্য ইনপুটটি আবার আপডেট করা হয় বা মুছে ফেলা হয়। পণ্য আপডেটগুলি প্রক্রিয়াজাতProductরিসোর্সের পরিবর্তেProductInputরিসোর্সে প্রয়োগ করা হয়।পরিষ্কার ডেটা ব্যবস্থাপনার জন্য আপনার ডেটা সোর্স নির্বাচন করুন : সমস্ত
productInputsলেখার ক্রিয়াকলাপের জন্য এখন একটিdataSourceকোয়েরি প্যারামিটার প্রয়োজন, যা স্পষ্ট করে দেয় যে আপনি কোন ডেটা সোর্সটি পরিবর্তন করছেন। এটি বিশেষভাবে কার্যকর যদি আপনার একাধিক ডেটা সোর্স ডেটা প্রদান করে।নতুন রিসোর্স শনাক্তকারী : পণ্যগুলি এখন
idক্ষেত্রের পরিবর্তে একটি RESTful রিসোর্সnameদ্বারা চিহ্নিত করা হয়। ফর্ম্যাটটি হলaccounts/{account}/products/{product}।কোনও কাস্টম ব্যাচ নেই :
custombatchপদ্ধতি আর উপলব্ধ নেই। আপনি একটি HTTP কলে একাধিক অনুরোধ পাঠাতে অ্যাসিঙ্ক্রোনাস অনুরোধ বা HTTP ব্যাচিং ব্যবহার করতে পারেন।যেকোনো ফিড লেবেল এবং ভাষার জন্য ডেটা সোর্স : মার্চেন্ট এপিআই ফিড লেবেল এবং ভাষা নির্দিষ্ট না করেই ডেটা সোর্স তৈরি করা সম্ভব করে এবং তাই যেকোনো ফিড লেবেল এবং ভাষার সাথে পণ্য সন্নিবেশ করার অনুমতি দেয়।
অনুরোধ
এই বিভাগটি শপিংয়ের জন্য কন্টেন্ট API এবং মার্চেন্ট API-এর অনুরোধ ফর্ম্যাটগুলির তুলনা করে।
| অনুরোধের বিবরণ | কেনাকাটার জন্য কন্টেন্ট API | মার্চেন্ট এপিআই |
|---|---|---|
| একটি পণ্য পান | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} | GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products/{product} |
| পণ্য তালিকাভুক্ত করুন | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products | GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products |
| একটি পণ্য ঢোকান | POST https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products | POST https://merchantapi.googleapis.com/products/v1/accounts/{account}/productInputs:insert |
| একটি পণ্য আপডেট করুন | PATCH https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} | PATCH https://merchantapi.googleapis.com/products/v1/accounts/{account}/productInputs/{productinput} |
| একটি পণ্য মুছুন | DELETE https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/products/{productId} | DELETE https://merchantapi.googleapis.com/products/v1/accounts/{account}/productInputs/{productinput} |
| পণ্যের অবস্থা জানুন | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/productstatuses/{productId} | GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products/{product} |
| পণ্যের স্ট্যাটাস তালিকাভুক্ত করুন | GET https://shoppingcontent.googleapis.com/content/v2.1/{merchantId}/productstatuses | GET https://merchantapi.googleapis.com/products/v1/accounts/{account}/products |
| একাধিক অনুরোধ ব্যাচ করুন | POST https://shoppingcontent.googleapis.com/content/v2.1/products/custombatch | অ্যাসিঙ্ক্রোনাস অনুরোধ বা HTTP ব্যাচিং ব্যবহার করুন |
শনাক্তকারী
মার্চেন্ট API-তে পণ্য শনাক্তকারীর ফর্ম্যাটটি একটি স্ট্যান্ডার্ড REST রিসোর্স নামে পরিবর্তিত হয়েছে।
| শনাক্তকারীর বর্ণনা | কেনাকাটার জন্য কন্টেন্ট API | মার্চেন্ট এপিআই |
|---|---|---|
| পণ্য আইডি | একটি কোলন ( : ) দ্বারা পৃথক করা অংশগুলির সমন্বয়ে গঠিত একটি স্ট্রিং।ফর্ম্যাট: channel:contentLanguage:targetCountry:offerId অথবা channel:contentLanguage:feedLabel:offerId ।উদাহরণ: online:en:US:sku123 | একটি REST রিসোর্স name স্ট্রিং।ফর্ম্যাট: accounts/{account}/products/{product} যেখানে {product} হল contentLanguage~feedLabel~offerId ।উদাহরণ: accounts/12345/products/en~US~sku123 ।এনকোডিং: আনপ্যাডেড base64url এনকোডিং সুপারিশকৃত এবং বাধ্যতামূলক , যদি পণ্য আইডিতে মার্চেন্ট API বা URL-সংরক্ষিত অক্ষর ব্যবহৃত হয়। |
পদ্ধতি
এই টেবিলটি Merchant API-তে শপিং পদ্ধতির জন্য Content API এবং তাদের সমতুল্যগুলি দেখায়।
| কেনাকাটা পদ্ধতির জন্য কন্টেন্ট API | মার্চেন্ট এপিআই পদ্ধতি | প্রাপ্যতা এবং নোট |
|---|---|---|
products.get | products.get | চূড়ান্ত, প্রক্রিয়াজাত পণ্য উদ্ধার করে। |
products.list | products.list | চূড়ান্ত, প্রক্রিয়াজাত পণ্যের তালিকা। |
products.insert | productInputs.insert | একটি পণ্য ইনপুট সন্নিবেশ করায়। একটি dataSource প্রয়োজন। |
products.update | productInputs.update | আচরণটি উল্লেখযোগ্যভাবে ভিন্ন। এটি একটি নির্দিষ্ট পণ্যের ইনপুট আপডেট করে এবং স্থায়ী হয়। |
products.delete | productInputs.delete | একটি নির্দিষ্ট পণ্য ইনপুট মুছে ফেলে। একটি dataSource প্রয়োজন। |
products.custombatch | পাওয়া যায় না | অ্যাসিঙ্ক্রোনাস রিকোয়েস্ট বা HTTP ব্যাচিং ব্যবহার করুন। |
productstatuses.get | products.get | productstatuses পরিষেবাটি সরানো হয়েছে। স্থিতির তথ্য এখন Product সম্পদের অংশ। |
productstatuses.list | products.list | productstatuses পরিষেবাটি সরানো হয়েছে। স্থিতির তথ্য এখন Product সম্পদের অংশ। |
productstatuses.custombatch | পাওয়া যায় না | অ্যাসিঙ্ক্রোনাস রিকোয়েস্ট অথবা HTTP ব্যাচিং ব্যবহার করুন। |
বিস্তারিত ক্ষেত্রের পরিবর্তন
এই টেবিলটি Merchant API-তে পরিবর্তন, যোগ বা সরানো গুরুত্বপূর্ণ ক্ষেত্রগুলিকে হাইলাইট করে।
| কেনাকাটার জন্য কন্টেন্ট API | মার্চেন্ট এপিআই | বিবরণ |
|---|---|---|
id | name | কোনও পণ্যের প্রাথমিক শনাক্তকারী এখন REST রিসোর্স name । Merchant API বা URL-সংরক্ষিত অক্ষর দ্বারা ব্যবহৃত অক্ষর ধারণকারী পণ্যের নামের ক্ষেত্রে আনপ্যাডেড base64url এনকোডিং সুপারিশকৃত এবং বাধ্যতামূলক । |
শীর্ষ-স্তরের পণ্য ডেটা স্পেসিফিকেশন বৈশিষ্ট্য (যেমন, title , price , link ) | productAttributes অবজেক্ট | title , price এবং link মতো পণ্যের বৈশিষ্ট্যগুলি আর শীর্ষ-স্তরের ক্ষেত্র নয়। এখন এগুলি Product এবং ProductInput উভয় রিসোর্সে productAttributes অবজেক্টের মধ্যে গোষ্ঠীভুক্ত করা হয়েছে। এটি একটি পরিষ্কার এবং আরও সুসংগঠিত রিসোর্স কাঠামো প্রদান করে। |
targetCountry | feedLabel | Merchant Center কার্যকারিতার সাথে সামঞ্জস্যপূর্ণ করার জন্য রিসোর্সের নাম এখন targetCountry এর পরিবর্তে feedLabel ব্যবহার করে। |
feedId | dataSource (কোয়েরি প্যারামিটার) | একটি dataSource নাম এখন সমস্ত productInputs লেখার পদ্ধতির ( insert , update , delete ) জন্য একটি প্রয়োজনীয় কোয়েরি প্যারামিটার। |
channel | উপলব্ধ নেই। শুধুমাত্র স্থানীয় পণ্যের জন্য legacy_local ব্যবহার করুন। | Merchant API-তে channel ফিল্ডটি আর নেই। Content API for Shopping-এ LOCAL চ্যানেল আছে এমন পণ্যের পরিবর্তে legacy_local ফিল্ডটিকে true-তে সেট করা উচিত। |
| পাওয়া যায় না | versionNumber | ProductInput এ একটি নতুন ঐচ্ছিক ক্ষেত্র যা প্রাথমিক ডেটা উৎসগুলিতে অপ্রয়োজনীয় সন্নিবেশ রোধ করতে ব্যবহার করা যেতে পারে। |
নির্ধারিত মানের সেট সহ string টাইপ ক্ষেত্র | নির্ধারিত মান সেট সহ enum টাইপ ক্ষেত্র | পণ্য বৈশিষ্ট্যের মধ্যে যেসব ক্ষেত্রগুলিতে মানগুলির একটি নির্দিষ্ট সেট থাকে (উদাহরণস্বরূপ, excluded_destinations , availability ) এখন enum ধরণের। |