CSS API সেরা অনুশীলন

এই দস্তাবেজটি CSS API ব্যবহার করার আশেপাশে সেরা কিছু অনুশীলনের বর্ণনা করে। এই পৃষ্ঠায় দেওয়া পরামর্শ API ব্যবহার করার জন্য বাধ্যতামূলক নয়, তবে কিছু উদ্দেশ্যমূলক ব্যবহারকে স্পষ্ট করতে সাহায্য করতে পারে।

আপনার পরিবেশ সেট আপ করুন

আপনার উন্নয়ন পরিবেশ সেটআপ করতে, Quickstart ডকুমেন্টেশন থেকে প্রদত্ত পদক্ষেপগুলি অনুসরণ করুন।

  • Google ক্লাউড কনসোলে একটি ব্যবহারকারী এবং একটি অনুমতি JSON ফাইল তৈরি করুন
  • Google ক্লাউড কনসোলে CSS API সক্ষম করুন
  • আপনার সিএসএস অ্যাকাউন্টে (সিএসএস গ্রুপ বা সিএসএস ডোমেন) অ্যাডমিন অনুমতি সহ সেই ব্যবহারকারীকে যুক্ত করুন
  • আপনি সঠিক OAuth সুযোগ ব্যবহার করছেন তা যাচাই করুন: https://www.googleapis.com/auth/content

ক্লায়েন্ট লাইব্রেরিগুলি এখন বেশিরভাগ প্রোগ্রামিং ভাষার জন্য স্ট্যান্ডার্ড রিপোজিটরিতে রয়েছে। আপনি আমাদের ক্লায়েন্ট লাইব্রেরি পৃষ্ঠায় তাদের একটি তালিকা খুঁজে পেতে পারেন।

সঠিক আইডি ব্যবহার করুন

সঠিক API এন্ডপয়েন্ট সহ সঠিক আইডি ব্যবহার করুন:

  • CSS API ( css.googleapis.com ): CSS পণ্যগুলির সাথে ইন্টারঅ্যাক্ট করার সময় CSS ডোমেন আইডি ব্যবহার করুন (যেমন, accounts/{cssDomainId}/cssProductInputs:insert )।
  • মার্চেন্ট এপিআই ( merchantapi.googleapis.com ): স্ট্যান্ডার্ড মার্চেন্ট পণ্যের জন্য মার্চেন্ট এপিআই ব্যবহার করুন।

এইগুলি মিশ্রিত করার ফলে ত্রুটি হবে। আরো বিস্তারিত জানার জন্য CSS API ওভারভিউ পড়ুন।

শুরু করার জন্য ভাল পদ্ধতি

আমরা নিম্নলিখিত পদ্ধতিগুলির সাথে পরীক্ষা করার পরামর্শ দিই:

চাইল্ড অ্যাকাউন্টের তালিকা করুন

ListChildAccounts হল একটি পঠনযোগ্য কল যা আপনার সমস্ত CSS ডোমেন (যদি একটি CSS গ্রুপের জন্য বলা হয়) বা আপনার ব্যবসায়ীদের (যদি একটি CSS ডোমেনের জন্য বলা হয়) তালিকাভুক্ত করে। তাই সবকিছু সঠিকভাবে সেটআপ করা হয়েছে কিনা তা পরীক্ষা করার জন্য এটি একটি ভাল পদ্ধতি।

একটি পণ্য সন্নিবেশ/তালিকা/আপডেট/মুছুন

একবার আপনি জানেন যে API নিজেই কাজ করে, একটি পণ্য যোগ করার চেষ্টা করুন। নিশ্চিত করুন যে আপনি একটি raw_provided_id ব্যবহার করেছেন যা আপনার মনে আছে।

  • InsertCssProductInput ব্যবহার করে একটি পরীক্ষার পণ্য সন্নিবেশ করুন। আমাদের কাছে নমুনা কোড আছে যদি আপনার সাহায্যের প্রয়োজন হয় কোন গুণাবলী পাঠাতে হবে।
  • ListCssProducts ব্যবহার করে আপনার সমস্ত পণ্য তালিকাভুক্ত করুন। একটি পণ্য সন্নিবেশের পরে প্রদর্শিত হওয়ার আগে একটি ছোট প্রক্রিয়াকরণ বিলম্ব হয়, তাই আপনি যদি এটি দেখতে না পান তবে কয়েক সেকেন্ড পরে আবার চেষ্টা করুন।
  • আপনার cssproductinput.name ব্যবহার করে UpdateCssProductInput ব্যবহার করে একটি একক পণ্য আপডেট করুন। আপডেট করার জন্য আপনাকে শুধুমাত্র প্রয়োজনীয় বৈশিষ্ট্যগুলি পাঠাতে হবে। এখানে নমুনা কোড পড়ুন.
  • DeleteCssProductInput ব্যবহার করে পরীক্ষার পণ্যটি মুছুন। আপনাকে raw_provided_id ব্যবহার করতে হবে।

কর্মক্ষমতা উন্নত করতে Async ব্যবহার করুন

CSS API সমান্তরাল কলের জন্য ডিজাইন করা হয়েছে। আপনি দেখতে পাবেন যে একক ক্রিয়াকলাপের কার্যক্ষমতা ধীর হতে পারে, কিন্তু একই অপারেশন একাধিকবার সমান্তরালভাবে কল করার সময় অনেক দ্রুত হবে। এই বৈশিষ্ট্যটি ব্যবহার করার সর্বোত্তম উপায় হল আপনার প্রোগ্রামিং ভাষার অ্যাসিঙ্ক কার্যকারিতা ব্যবহার করা।

কিছু প্রোগ্রামিং ভাষার উদাহরণ:

একই সময়ে একাধিক পণ্য সন্নিবেশ করতে আপনার প্রোগ্রামিং ভাষার Async কার্যকারিতা খুঁজুন এবং ব্যবহার করুন। আমাদের সিস্টেমগুলিকে ওভারলোড করার বিষয়ে আপনার চিন্তা করার দরকার নেই - এই জন্যই কোটা সীমা

আরো বিস্তারিত আমাদের কর্মক্ষমতা পৃষ্ঠায় পাওয়া যাবে.

আপনার পেলোড যাচাই করুন

সাধারণ ত্রুটিগুলি এড়াতে, আপনার JSON পেলোডগুলি সঠিকভাবে ফর্ম্যাট করা হয়েছে তা যাচাই করুন:

  • অফিসিয়াল ডকুমেন্টেশনের সাথে পরামর্শ করুন: ক্ষেত্রের সংজ্ঞা, enums, ডেটা প্রকার এবং পেলোড কাঠামোর জন্য সর্বদা সর্বশেষ CSS API রেফারেন্স দেখুন।
  • নমুনা পেলোড পর্যালোচনা করুন: অসঙ্গতি সনাক্ত করতে প্রদত্ত কোড নমুনার সাথে আপনার পেলোডের তুলনা করুন।
  • ডেটা টাইপস: ডকুমেন্টেশনে উল্লেখ করা সঠিক ডেটা টাইপ (যেমন, স্ট্রিং, অবজেক্ট, অ্যারে) ব্যবহার করছেন কিনা নিশ্চিত করুন।
  • ক্রমবর্ধমানভাবে পরীক্ষা করুন: মৌলিক সংযোগ নিশ্চিত করতে ন্যূনতম বৈধ পেলোড দিয়ে শুরু করুন এবং ধীরে ধীরে আরও বৈশিষ্ট্য যোগ করুন।

একটি পণ্য আপডেট করুন

একবার একটি পণ্য আপলোড করা হলে, এটি আপডেট, মুছে ফেলা বা মেয়াদ শেষ না হওয়া পর্যন্ত এটি আমাদের সিস্টেমে থাকবে।

  • আপনি প্রাথমিকভাবে যে raw_provided_id ব্যবহার করেছেন সেটি ব্যবহার করে আপনি InsertCssProductInput অনুরোধ পাঠিয়ে সম্পূর্ণ পণ্য আপডেট করতে পারেন। আপাতত, আপনাকে সম্পূর্ণ পণ্যের ডেটা পাঠাতে হবে, এমনকি শুধুমাত্র কিছু বৈশিষ্ট্য (সম্ভবত শুধুমাত্র মূল্য/উপলভ্যতা) পরিবর্তিত হলেও।
  • আপনি PATCH পদ্ধতি UpdateCssProductInput ব্যবহার করে, পণ্যের নাম উল্লেখ করে, এবং পণ্যটির জন্য আপনি যে ডেটা আপডেট করতে চান এমন একটি JSON বডি ব্যবহার করে আপনি একটি পণ্যের অংশ আপডেট করতে পারেন। InsertCssProductInput বিপরীতে, যার জন্য সমস্ত প্রযোজ্য ক্ষেত্র সরবরাহ করা প্রয়োজন, UpdateCssProductInput জন্য শুধুমাত্র আপনি যে ক্ষেত্রগুলি পরিবর্তন করতে চান তা নির্দিষ্ট করতে হবে৷
  • আপনি একই raw_provided_id দিয়ে DeleteCssProductInput কল করে একটি পণ্য মুছে ফেলতে পারেন।
  • পণ্যগুলি শেষ আপডেটের প্রায় এক মাস পরে স্বয়ংক্রিয়ভাবে মেয়াদ শেষ হয়ে যায়।

ক্রমাগত অপারেশন মোড

একটি ক্রমাগত অপারেশন মোড নিম্নলিখিত মত দেখতে পারে:

  • raw_provided_id হিসাবে আপনার নিজস্ব অভ্যন্তরীণ আইডি ব্যবহার করুন।
  • একটি নিয়মিত সময়সূচী সব পণ্য পুনরায় আপলোড, হতে পারে সাপ্তাহিক. এটি নিশ্চিত করবে যে সক্রিয় পণ্যের মেয়াদ শেষ হবে না।
  • আপনার বণিকদের থেকে পরিবর্তিত ডেটা পাওয়ার সাথে সাথে পৃথক পণ্য আপডেট করুন।
    • আপনি যদি পরিবর্তনগুলিতে অবিলম্বে প্রতিক্রিয়া জানাতে না পারেন, তবে সমস্ত পরিবর্তিত পণ্যগুলি ঘন ঘন (সম্ভবত ঘন্টায়) সন্ধান করুন এবং শুধুমাত্র সেই পণ্যগুলি পুনরায় আপলোড করুন৷
    • যে পণ্যগুলি আর উপলব্ধ নয়, আপনি হয় ডিলিট কল ব্যবহার করতে পারেন বা উপলব্ধ অফারের সংখ্যা 0 এ সেট করতে পারেন৷
    • আমাদের ঘন ঘন অপরিবর্তিত পণ্য পাঠাবেন না। এই কলগুলি আপনার API কোটার সাথে গণনা করা হবে। একটি সাপ্তাহিক রিফ্রেশ যথেষ্ট।

শিরোনাম অফার নির্বাচন

শিরোনাম অফার অগত্যা আপনার সাইটে শীর্ষ অফার বা সস্তা অফার হতে হবে না, কিন্তু এটি বিশিষ্টভাবে বৈশিষ্ট্যযুক্ত করা প্রয়োজন. আপনার শীর্ষ অফার দ্রুত পরিবর্তন হচ্ছে এমন ক্ষেত্রে আপনি এটি ব্যবহার করতে পারেন: এখানে আপনি আরও স্থিতিশীল অন্য অফার নির্বাচন করতে পারেন।

এই দস্তাবেজটি প্রতিবার একবার পরীক্ষণ করুন

এই APIকে কীভাবে উন্নত করা যায় সে সম্পর্কে আমরা প্রতিক্রিয়া পেয়েছি এবং এর মধ্যে কিছু উন্নতি উপলব্ধ করার জন্য কাজ করছি। এই পৃষ্ঠাটি আপডেট করা হবে যখন আমাদের কাছে নতুন বৈশিষ্ট্য উপলব্ধ থাকবে যা CSS API-এর ব্যবহারকে সহজ করবে৷