বিকাশকারীর গাইড ওভারভিউ

সতর্কতা : এই পৃষ্ঠাটি Google-এর পুরানো API, Google Data APIs সম্পর্কে; এটি শুধুমাত্র Google Data APIs ডিরেক্টরিতে তালিকাভুক্ত APIগুলির সাথে প্রাসঙ্গিক, যার মধ্যে অনেকগুলি নতুন API দিয়ে প্রতিস্থাপিত হয়েছে৷ একটি নির্দিষ্ট নতুন API সম্পর্কে তথ্যের জন্য, নতুন API এর ডকুমেন্টেশন দেখুন। একটি নতুন API-এর সাহায্যে অনুরোধ অনুমোদনের বিষয়ে তথ্যের জন্য, Google অ্যাকাউন্ট প্রমাণীকরণ এবং অনুমোদন দেখুন।

Google-এর লক্ষ্য হল বিশ্বের তথ্য সংগঠিত করা এবং এটি সর্বজনীনভাবে অ্যাক্সেসযোগ্য এবং দরকারী করে তোলা। এর মধ্যে রয়েছে ওয়েব ব্রাউজার ব্যতীত অন্যান্য প্রসঙ্গে তথ্য অ্যাক্সেসযোগ্য করা এবং Google-এর বাইরের পরিষেবাগুলিতে অ্যাক্সেসযোগ্য।

Google ডেটা প্রোটোকল বহিরাগত বিকাশকারীদের নতুন অ্যাপ্লিকেশন লেখার জন্য একটি নিরাপদ উপায় সরবরাহ করে যা শেষ ব্যবহারকারীদের অনেকগুলি Google পণ্য দ্বারা সঞ্চিত ডেটা অ্যাক্সেস এবং আপডেট করতে দেয়৷ বহিরাগত বিকাশকারীরা সরাসরি Google ডেটা প্রোটোকল ব্যবহার করতে পারে, অথবা তারা ক্লায়েন্ট লাইব্রেরি দ্বারা প্রদত্ত যেকোন সমর্থিত প্রোগ্রামিং ভাষা ব্যবহার করতে পারে।

শ্রোতা

নথির এই সেটটি যে কেউ Google ডেটা প্রোটোকল বুঝতে চায় তাদের জন্য। এমনকি যদি আপনি শুধুমাত্র ভাষা-নির্দিষ্ট ক্লায়েন্ট লাইব্রেরি ব্যবহার করে এমন কোড লিখতে চান, তাহলে এই নথি সেটটি সহায়ক হতে পারে যদি আপনি বুঝতে চান যে ক্লায়েন্ট-লাইব্রেরি বিমূর্তকরণ স্তরের নীচে কী চলছে।

আপনি যদি একটি নির্দিষ্ট API-এর জন্য বিকাশকারীর নির্দেশিকা খুঁজছেন, Google ডেটা প্রোটোকল API ডিরেক্টরিতে যান৷

আপনি যদি আপনার প্রিয় প্রোগ্রামিং ভাষায় একটি API অ্যাক্সেস করতে চান তবে ক্লায়েন্ট লাইব্রেরি ডাউনলোড পৃষ্ঠাটি দেখুন।

পটভূমি

ক্যালেন্ডার এবং স্প্রেডশীটগুলির মতো Google পণ্যগুলির একটি সংখ্যা, Google ডেটা প্রোটোকলের উপর ভিত্তি করে API প্রদান করে। আপনি, বিকাশকারী, ক্লায়েন্ট অ্যাপ্লিকেশনগুলি লিখতে এই APIগুলি ব্যবহার করতে পারেন যা শেষ ব্যবহারকারীদের সেই Google পণ্যগুলিতে সঞ্চয় করা ডেটা অ্যাক্সেস এবং ম্যানিপুলেট করার নতুন উপায় দেয়৷

দ্রষ্টব্য: এপিআই প্রদানকারী Google পণ্যগুলিকে কখনও কখনও এই এবং অন্যান্য সম্পর্কিত নথিতে পরিষেবা হিসাবে উল্লেখ করা হয়৷

আপনি যদি সরাসরি Google ডেটা প্রোটোকল ব্যবহার করে এমন কোড লেখেন, তাহলে এটি GET বা POST মতো HTTP অনুরোধগুলি ব্যবহার করে API অ্যাক্সেস করে। এই অনুরোধগুলির সাথে, Google পণ্য দ্বারা সংরক্ষিত ডেটা ডেটা ফিডের আকারে তারের উপর পিছনে স্থানান্তরিত হয়। ডেটা ফিডগুলি কেবল কাঠামোবদ্ধ তালিকা যা ডেটা ধারণ করে। ঐতিহাসিকভাবে, প্রাথমিক ফিড ফর্ম্যাটটি ছিল AtomPub XML, কিন্তু এখন JSON, বা JavaScript অবজেক্ট নোটেশন, একটি বিকল্প বিন্যাস হিসাবেও উপলব্ধ।

আপনি যদি সরাসরি HTTP অনুরোধ করে এমন কোড না লিখতে পছন্দ করেন, তাহলে আপনি প্রদত্ত ক্লায়েন্ট লাইব্রেরির সেটে উপলব্ধ প্রোগ্রামিং ভাষাগুলির একটি ব্যবহার করে আপনার ক্লায়েন্ট অ্যাপ্লিকেশনটি প্রোগ্রাম করতে পারেন। আপনি যখন এটি করেন, HTTP অনুরোধের বিবরণ ক্লায়েন্ট লাইব্রেরি দ্বারা পরিচালিত হয়; আপনি ক্লায়েন্ট লাইব্রেরি দ্বারা প্রদত্ত ভাষা-নির্দিষ্ট পদ্ধতি এবং ক্লাসগুলি ব্যবহার করে আপনার কোড আরও ধারণাগত স্তরে লিখুন।

আপনি ব্যবহার করছেন API, বা API সংস্করণের জন্য উপলব্ধ নির্দিষ্ট ভাষা সম্পর্কে আরও তথ্যের জন্য পণ্য-নির্দিষ্ট ডকুমেন্টেশন পড়ুন।

প্রোটোকলের সংস্করণ

প্রোটোকল সংস্করণ 2.0 বনাম প্রোটোকল সংস্করণ 1.0

অ্যাটম পাবলিশিং প্রোটোকল চূড়ান্ত হওয়ার আগে গুগল ডেটা প্রোটোকলের প্রথম সংস্করণটি তৈরি করা হয়েছিল। Google ডেটা প্রোটোকলের দ্বিতীয় সংস্করণটি AtomPub RFC 5023 স্ট্যান্ডার্ডের সাথে সম্পূর্ণভাবে সঙ্গতিপূর্ণ।

Google ডেটা প্রোটোকল সংস্করণ 2.0 এর জন্য সমর্থন অন্তর্ভুক্ত করে:

  • HTTP ETags । একটি ওয়েব স্ট্যান্ডার্ড যা আপনার ক্লায়েন্ট অ্যাপ্লিকেশনগুলিকে HTTP ক্যাশিংয়ের আরও ভাল ব্যবহার করতে সহায়তা করে। ক্লায়েন্ট লাইব্রেরিতে অন্তর্ভুক্ত পরিষেবাগুলি যা প্রোটোকল v2.0 সমর্থন করে স্বয়ংক্রিয়ভাবে ETags পরিচালনা করে৷
  • আংশিক প্রতিক্রিয়া এবং আংশিক আপডেট (পরীক্ষামূলক) । বৈশিষ্ট্য যা আপনাকে অনুরোধ করতে দেয় যা কম ডেটা স্থানান্তর করে। শুধুমাত্র আপনার প্রয়োজনীয় তথ্যের অনুরোধ করে, অথবা আপডেট পাঠানোর মাধ্যমে যেগুলি শুধুমাত্র ডেটা অন্তর্ভুক্ত করে যা আপনি আসলে পরিবর্তন করতে চান, আপনার ক্লায়েন্ট অ্যাপ্লিকেশন নেটওয়ার্ক, CPU, এবং মেমরি সংস্থান ব্যবহারে অনেক বেশি দক্ষ হতে পারে। বর্তমানে, আংশিক প্রতিক্রিয়া এবং আংশিক আপডেট শুধুমাত্র কিছু পণ্যের জন্য উপলব্ধ; আপনার API এটি সমর্থন করে কিনা তা খুঁজে বের করতে পণ্য-নির্দিষ্ট ডকুমেন্টেশন দেখুন।

আপনার আবেদন আপডেট করা হচ্ছে

আপনি যে APIটি ব্যবহার করছেন সেটি যদি প্রোটোকলের সর্বশেষ সংস্করণে তৈরি করা হয়, তাহলে প্রোটোকল v2.0 কার্যকারিতাটি এর ডকুমেন্টেশনে অন্তর্ভুক্ত করা হয়েছে। সাধারণভাবে, আমরা সুপারিশ করি যে আপনি আপনার ক্লায়েন্ট অ্যাপ্লিকেশনটিকে আপনার API-এর জন্য উপলব্ধ সর্বশেষ সংস্করণে আপগ্রেড করুন৷

একটি ক্লায়েন্ট-লাইব্রেরি-ভিত্তিক ক্লায়েন্ট আপডেট করা হচ্ছে

যদি আপনার ক্লায়েন্ট অ্যাপ্লিকেশন একটি ক্লায়েন্ট লাইব্রেরি ব্যবহার করে, যেমন জাভা ক্লায়েন্ট লাইব্রেরি বা .NET ক্লায়েন্ট লাইব্রেরি, এতে API এর একটি সংস্করণ থাকতে পারে যা প্রোটোকল v2.0 বৈশিষ্ট্য সমর্থন করে। খুঁজে বের করতে, নিচের দুটিই সত্য কিনা তা খুঁজে বের করতে আপনি যে Google পণ্যটি ব্যবহার করছেন তার API ডকুমেন্টেশন দেখুন:

  • একটি API সংস্করণ রয়েছে যা Google ডেটা প্রোটোকল v2.0 বৈশিষ্ট্যগুলিকে সমর্থন করে৷
  • আপনি যে ক্লায়েন্ট লাইব্রেরিটি ব্যবহার করছেন সেটিও সেই API সংস্করণ সমর্থন করে।

যদি ক্লায়েন্ট লাইব্রেরি এটিকে সমর্থন করে এবং আপনি আপনার বিদ্যমান অ্যাপ্লিকেশনটি আপডেট করতে চান তবে ক্লায়েন্ট লাইব্রেরির সর্বশেষ সংস্করণটি ডাউনলোড করুন এবং ব্যবহার করুন। আপনার সমস্ত কোড এখনও কাজ করে, এবং ক্লায়েন্ট লাইব্রেরি হুডের অধীনে প্রোটোকল v2.0 পরিবর্তনগুলির যত্ন নেয়।

একটি কাঁচা HTTP ক্লায়েন্ট আপডেট করা হচ্ছে

আপনি যদি সরাসরি Google ডেটা প্রোটোকল ব্যবহার করে আপনার ক্লায়েন্ট অ্যাপ্লিকেশন লিখেছেন, তাহলে আপনাকে এই পরিবর্তনগুলি করতে হবে:

  • অ-ডিফল্ট সংস্করণ অনুরোধ. আপনার পাঠানো প্রতিটি HTTP অনুরোধে একটি HTTP সংস্করণ শিরোনাম ( GData-Version: X .0 ) যুক্ত করুন, যেখানে X হল API-এর সংস্করণ যা Google ডেটা প্রোটোকল v2.0 বৈশিষ্ট্যগুলিকে সমর্থন করে৷ বিকল্পভাবে, প্রতিটি অনুরোধের URL-এ একটি ক্যোয়ারী প্যারামিটার ( v= X .0 ) যোগ করুন, যেখানে X হল আবার, API-এর সঠিক সংস্করণ। আপনি যদি পরবর্তী সংস্করণ নির্দিষ্ট না করেন, আপনার অনুরোধগুলি ডিফল্টরূপে API-এর প্রথম সমর্থিত সংস্করণে পাঠানো হয়।
  • আশাবাদী সঙ্গতি। আপনি যদি এমন একটি API-এর সংস্করণ ব্যবহার করেন যা আশাবাদী সমঝোতা সমর্থন করে, তাহলে আপনাকে আপনার আপডেট পরিবর্তন করতে হবে এবং ETags ব্যবহার করতে কোড মুছতে হতে পারে। আরও তথ্যের জন্য, Google ডেটা প্রোটোকল রেফারেন্স ডকুমেন্টেশনের ETags বিভাগটি পড়ুন এবং আপনার ক্লায়েন্ট অ্যাপ্লিকেশনটি যে পরিষেবাটি ব্যবহার করছে তার জন্য প্রোটোকল বিকাশকারীর গাইডের আপডেট এবং মুছুন বিভাগগুলি পড়ুন।
  • স্বয়ং বা ইউআরআই সম্পাদনা করুন। যদি আপনার ক্লায়েন্ট নিজের ট্র্যাক রাখে বা ফিড বা এন্ট্রিগুলির জন্য URI গুলি সম্পাদনা করে, মনে রাখবেন যে সেই URIগুলি পরিবর্তিত হতে পারে৷ নতুন ইউআরআই পেতে, পুরানো ইউআরআই ব্যবহার করে আইটেমটি পুনরায় অনুরোধ করুন, তবে অনুরোধটিকে একটি সংস্করণ X .0 অনুরোধ হিসাবে চিহ্নিত করুন, যেখানে X হল API-এর সংস্করণ যা Google ডেটা প্রোটোকল v2.0 বৈশিষ্ট্যগুলিকে সমর্থন করে৷ সার্ভার নতুন ইউআরআই সহ এন্ট্রির নতুন উপস্থাপনা প্রদান করে, যা আপনি পুরানোগুলির জায়গায় সংরক্ষণ করতে পারেন।
  • নেমস্পেস ইউআরআই। যদি আপনার ক্লায়েন্ট স্থানীয়ভাবে Google ডেটা প্রোটোকল এপিআই নেমস্পেস ইউআরআই সঞ্চয় করে, বা সেগুলি হার্ড-কোডেড থাকে, তাহলে আপনাকে সেগুলি আপডেট করতে হবে:
    • AtomPub নামস্থান (প্রিফিক্স app ) http://purl.org/atom/app থেকে http://www.w3.org/2007/app এ পরিবর্তন করা হয়েছে।
    • OpenSearch নামস্থান (প্রিফিক্স openSearch ) http://a9.com/-/spec/opensearchrss/1.0/ থেকে http://a9.com/-/spec/opensearch/1.1/ এ পরিবর্তিত হয়েছে।