এই ডকুমেন্টে ব্লগার এপিআই ব্যবহার শুরু করার পদ্ধতি ব্যাখ্যা করা হয়েছে।
শুরু করার আগে
একটি গুগল অ্যাকাউন্ট পান
আপনার একটি Google অ্যাকাউন্ট সেট আপ করা আছে কিনা তা নিশ্চিত করুন। দুর্ঘটনাজনিত ডেটা হারিয়ে যাওয়া থেকে নিজেকে রক্ষা করার জন্য আমরা আপনাকে ডেভেলপমেন্ট এবং পরীক্ষার উদ্দেশ্যে একটি পৃথক Google অ্যাকাউন্ট ব্যবহার করার পরামর্শ দিচ্ছি। যদি আপনার ইতিমধ্যেই একটি পরীক্ষা অ্যাকাউন্ট থাকে, তাহলে আপনার সবকিছু প্রস্তুত; আপনি আপনার পরীক্ষার ডেটা সেট আপ, সম্পাদনা বা দেখতে ব্লগার ব্যবহারকারী ইন্টারফেসে যেতে পারেন।
ব্লগারের সাথে পরিচিত হোন
যদি আপনি ব্লগার ধারণাগুলির সাথে অপরিচিত থাকেন, তাহলে এই ডকুমেন্টটি পড়ুন এবং কোডিং শুরু করার আগে ইউজার ইন্টারফেসটি পরীক্ষা করে দেখুন। এই ডকুমেন্টটি ধরে নেয় যে আপনি ব্লগার, ওয়েব প্রোগ্রামিং ধারণা এবং ওয়েব ডেটা ফর্ম্যাটের সাথে পরিচিত।
অনুরোধ অনুমোদন এবং আপনার আবেদন শনাক্তকরণ সম্পর্কে জানুন
যখন আপনার অ্যাপ্লিকেশন ব্যক্তিগত তথ্যের জন্য অনুরোধ করে, তখন অনুরোধটি অবশ্যই একজন অনুমোদিত ব্যবহারকারী দ্বারা অনুমোদিত হতে হবে যার সেই ডেটাতে অ্যাক্সেস আছে।
যখন আপনার অ্যাপ্লিকেশনটি সর্বজনীন ডেটার অনুরোধ করে, তখন অনুরোধটির অনুমোদনের প্রয়োজন হয় না, তবে একটি সনাক্তকারী, যেমন একটি API কী, এর সাথে থাকা প্রয়োজন।
অনুরোধগুলি কীভাবে অনুমোদন করবেন এবং API কীগুলি কীভাবে ব্যবহার করবেন সে সম্পর্কে তথ্যের জন্য, API ব্যবহার নথিতে অনুরোধগুলি অনুমোদন করা এবং আপনার অ্যাপ্লিকেশন সনাক্তকরণ দেখুন।
ব্লগার এপিআই ব্যাকগ্রাউন্ড
ব্লগার ধারণা
ব্লগার পাঁচটি মৌলিক ধারণার উপর নির্মিত:
- ব্লগ : API এর মূল ধারণা। একটি ব্লগে পোস্ট এবং পৃষ্ঠা থাকে। এটি ব্লগের নাম এবং বর্ণনার মতো ব্লগের মেটা-তথ্যের ধারক।
- পোস্ট : ব্লগ পোস্ট হল প্রকাশযোগ্য আইটেম যা ব্লগ লেখক তৈরি করেন। এই তথ্য সময়োপযোগী হতে হবে, লেখকরা এখন বিশ্বের কাছে কী প্রকাশ করতে চান তা প্রতিফলিত করে। এটা বোঝা যায় যে সময়ের সাথে সাথে ব্লগ পোস্টের বিষয়বস্তু পুরানো হয় এবং কম প্রাসঙ্গিক হয়ে ওঠে।
- মন্তব্য : মন্তব্য হল সেই জায়গা যেখানে ব্লগ পোস্টের লেখক ছাড়া অন্যরা লেখকের লেখার প্রতি প্রতিক্রিয়া ব্যক্ত করে। ইট থেকে শুরু করে তোড়া পর্যন্ত সবকিছু।
- পৃষ্ঠা : একটি পৃষ্ঠা হল স্থির বিষয়বস্তুর একটি স্থান, যেমন জীবনী সংক্রান্ত তথ্য, অথবা ব্যবহারকারীর সাথে যোগাযোগের উপায়। এটি সাধারণত কালজয়ী তথ্য যা খুব বেশি পরিবর্তন হয় না।
- ব্যবহারকারী : একজন ব্যবহারকারী হলেন এমন একজন যিনি ব্লগারের সাথে যোগাযোগ করেন, সে লেখক, প্রশাসক বা কেবল একজন পাঠক হিসেবেই কাজ করুক না কেন। পাবলিক ব্লগের ক্ষেত্রে, পাঠকরা বেনামী হতে পারেন, কিন্তু ব্যক্তিগত ব্লগে একজন পাঠককে ব্লগার দ্বারা চিহ্নিত করতে হবে।
ব্লগার এপিআই ডেটা মডেল
একটি রিসোর্স হল একটি স্বতন্ত্র ডেটা সত্তা যার একটি অনন্য শনাক্তকারী থাকে। ব্লগার JSON API পাঁচ ধরণের রিসোর্সের উপর কাজ করে:
- ব্লগ রিসোর্স : একটি ব্লগের প্রতিনিধিত্ব করে।
- পোস্ট রিসোর্স : একটি পোস্টের প্রতিনিধিত্ব করে; প্রতিটি পোস্ট রিসোর্স একটি ব্লগ রিসোর্সের একটি সন্তান।
- মন্তব্য রিসোর্স : একটি নির্দিষ্ট পোস্টের উপর একটি মন্তব্য প্রতিনিধিত্ব করে; প্রতিটি মন্তব্য রিসোর্স একটি পোস্ট রিসোর্সের একটি সন্তান।
- পেজ রিসোর্স : একটি স্ট্যাটিক পেজ প্রতিনিধিত্ব করে; প্রতিটি পেজ রিসোর্স একটি ব্লগ রিসোর্সের একটি সন্তান।
- ব্যবহারকারীর সম্পদ : একজন অজ্ঞাত ব্যবহারকারীকে প্রতিনিধিত্ব করে। এটি একটি পৃষ্ঠা, পোস্ট বা মন্তব্যের লেখককে সনাক্ত করতে ব্যবহৃত হয়।

ব্লগার এপিআই ডেটা মডেলটি সংগ্রহ নামে পরিচিত সম্পদের গ্রুপের উপর ভিত্তি করে তৈরি:
- ব্লগ সংগ্রহ
- ক ব্লগ সংগ্রহে একজন ব্যবহারকারীর অ্যাক্সেস অধিকার থাকা সমস্ত ব্লগ থাকে। আপনি ব্যবহারকারী অনুসারে ব্লগ তালিকাভুক্ত করতে পারেন, অথবা আইডি অনুসারে একটি একক ব্লগ পুনরুদ্ধার করতে পারেন।
- পোস্ট সংগ্রহ
- একটি পোস্ট সংগ্রহে একটি নির্দিষ্ট ব্লগ রিসোর্সের মধ্যে থাকা সমস্ত পোস্ট রিসোর্স থাকে।
- মন্তব্য সংগ্রহ
- একটি মন্তব্য সংগ্রহে একটি নির্দিষ্ট পোস্ট রিসোর্সের মধ্যে থাকা সমস্ত মন্তব্য রিসোর্স থাকে।
- পৃষ্ঠা সংগ্রহ
- একটি পৃষ্ঠা সংগ্রহে একটি নির্দিষ্ট ব্লগ রিসোর্সের মধ্যে থাকা সমস্ত পৃষ্ঠা রিসোর্স থাকে।
- ব্যবহারকারী সংগ্রহ
- একটি ব্যবহারকারী সংগ্রহে ব্লগারের সমস্ত ব্যবহারকারীর সম্পদ থাকে, এবং তাই তালিকাভুক্ত করা যায় না। একজন ব্যবহারকারী তাদের নিজস্ব ব্যবহারকারীর সম্পদ (কিন্তু অন্য কারোর নয়) আইডি দ্বারা, অথবা সনাক্তকারী
selfব্যবহার করে পুনরুদ্ধার করতে পারেন।
ব্লগার এপিআই অপারেশন
আপনি ব্লগার এপিআই-তে সংগ্রহ এবং রিসোর্স সম্পর্কিত বিভিন্ন পদ্ধতি ব্যবহার করতে পারেন, যেমনটি নিম্নলিখিত টেবিলে বর্ণিত হয়েছে।
| অপারেশন | বিবরণ | REST HTTP ম্যাপিং |
|---|---|---|
| তালিকা | একটি সংগ্রহের মধ্যে থাকা সমস্ত সম্পদের তালিকা তৈরি করে। | একটি সংগ্রহ URI-তে GET । |
| পাওয়া | একটি নির্দিষ্ট সম্পদ পায়। | একটি রিসোর্স URI-তে GET । |
| getByUrl সম্পর্কে | URL দিয়ে খোঁজ করে একটি রিসোর্স পায়। | একটি প্যারামিটার হিসেবে URL পাস করে GET । |
| getByPath সম্পর্কে | তার পথ ধরে অনুসন্ধান করে একটি সম্পদ পায়। | প্যারামিটার হিসেবে পাথটি পাস করে GET । |
| ব্যবহারকারীর তালিকা | একজন ব্যবহারকারীর মালিকানাধীন সম্পদের তালিকা তৈরি করে। | ব্যবহারকারীর মালিকানাধীন সংগ্রহে GET । |
| অনুসন্ধান | একটি কোয়েরি প্যারামিটারের উপর ভিত্তি করে সম্পদ অনুসন্ধান করুন। | একটি সার্চ URL-এ GET , যেখানে কোয়েরিটি একটি প্যারামিটার হিসেবে পাস করা হবে। |
| ঢোকান | একটি সংগ্রহে একটি সম্পদ তৈরি করুন। | একটি সংগ্রহ URI-তে POST । |
| মুছে ফেলা | একটি রিসোর্স মুছে ফেলে। | একটি রিসোর্স URI-তে DELETE । |
| প্যাচ | প্যাচ সেমান্টিক্স ব্যবহার করে একটি রিসোর্স আপডেট করুন। | একটি রিসোর্স URI-তে PATCH । |
| আপডেট | একটি রিসোর্স আপডেট করুন। | একটি রিসোর্স URI-তে PUT । |
নিচের সারণীতে প্রতিটি রিসোর্স টাইপের দ্বারা কোন পদ্ধতিগুলি সমর্থিত তা দেখানো হয়েছে। ব্যক্তিগত ব্লগে সমস্ত তালিকা এবং গেট অপারেশনের জন্য প্রমাণীকরণ প্রয়োজন।
রিসোর্সের ধরণ | সমর্থিত পদ্ধতি | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| তালিকা | পাওয়া | getByUrl সম্পর্কে | getByPath সম্পর্কে | ব্যবহারকারীর তালিকা | অনুসন্ধান | ঢোকান | মুছে ফেলা | প্যাচ | আপডেট | |
| ব্লগ | না | হ্যাঁ | হ্যাঁ | না | হ্যাঁ | না | না | না | না | না |
| পোস্টগুলি | হ্যাঁ | হ্যাঁ | না | হ্যাঁ | না | হ্যাঁ | হ্যাঁ | হ্যাঁ | হ্যাঁ | হ্যাঁ |
| মন্তব্য | হ্যাঁ | হ্যাঁ | না | না | না | না | না | না | না | না |
| পাতা | হ্যাঁ | হ্যাঁ | না | না | না | না | না | না | না | না |
| ব্যবহারকারীরা | না | হ্যাঁ | না | না | না | না | না | না | না | না |
কলিং স্টাইল
API চালু করার বিভিন্ন উপায় রয়েছে:
- সরাসরি অথবা জাভাস্ক্রিপ্ট থেকে REST ব্যবহার করা (কোনও সার্ভার-সাইড কোডের প্রয়োজন নেই)
- ক্লায়েন্ট লাইব্রেরি ব্যবহার করে।
বিশ্রাম
REST হল সফ্টওয়্যার আর্কিটেকচারের একটি স্টাইল যা ডেটা অনুরোধ এবং পরিবর্তন করার জন্য একটি সুবিধাজনক এবং সামঞ্জস্যপূর্ণ পদ্ধতি প্রদান করে।
REST শব্দটি " প্রতিনিধিত্বমূলক অবস্থা স্থানান্তর " এর সংক্ষিপ্ত রূপ। Google API-এর প্রসঙ্গে, এটি Google দ্বারা সংরক্ষিত ডেটার উপস্থাপনা পুনরুদ্ধার এবং সংশোধন করার জন্য HTTP ক্রিয়াপদ ব্যবহারকে বোঝায়।
একটি RESTful সিস্টেমে, রিসোর্সগুলি একটি ডেটা স্টোরে সংরক্ষণ করা হয়; একটি ক্লায়েন্ট সার্ভারকে একটি নির্দিষ্ট ক্রিয়া সম্পাদন করার জন্য একটি অনুরোধ পাঠায় (যেমন একটি রিসোর্স তৈরি করা, পুনরুদ্ধার করা, আপডেট করা বা মুছে ফেলা), এবং সার্ভারটি ক্রিয়াটি সম্পাদন করে এবং একটি প্রতিক্রিয়া পাঠায়, প্রায়শই নির্দিষ্ট রিসোর্সের প্রতিনিধিত্বের আকারে।
গুগলের RESTful API গুলিতে, ক্লায়েন্ট POST , GET , PUT , অথবা DELETE এর মতো HTTP ক্রিয়া ব্যবহার করে একটি ক্রিয়া নির্দিষ্ট করে। এটি নিম্নলিখিত ফর্মের একটি বিশ্বব্যাপী-অনন্য URI দ্বারা একটি সংস্থান নির্দিষ্ট করে:
https://www.googleapis.com/apiName/apiVersion/resourcePath?parameters
যেহেতু সমস্ত API রিসোর্সে অনন্য HTTP-অ্যাক্সেসযোগ্য URI থাকে, তাই REST ডেটা ক্যাশিং সক্ষম করে এবং ওয়েবের বিতরণকৃত অবকাঠামোর সাথে কাজ করার জন্য অপ্টিমাইজ করা হয়।
HTTP 1.1 স্ট্যান্ডার্ড ডকুমেন্টেশনে থাকা পদ্ধতির সংজ্ঞাগুলি আপনার কাজে লাগতে পারে; এগুলিতে GET , POST , PUT , এবং DELETE এর স্পেসিফিকেশন অন্তর্ভুক্ত রয়েছে।
ব্লগার এপিআই-তে বিশ্রাম নিন
সমর্থিত ব্লগার অপারেশনগুলি সরাসরি REST HTTP ক্রিয়াপদের সাথে ম্যাপ করে, যেমনটি ব্লগার API অপারেশনগুলিতে বর্ণিত হয়েছে।
ব্লগার এপিআই ইউআরআই-এর জন্য নির্দিষ্ট ফর্ম্যাট হল:
https://www.googleapis.com/blogger/v3/users/userId https://www.googleapis.com/blogger/v3/users/self https://www.googleapis.com/blogger/v3/users/userId/blogs https://www.googleapis.com/blogger/v3/users/self/blogs https://www.googleapis.com/blogger/v3/blogs/blogId https://www.googleapis.com/blogger/v3/blogs/byurl https://www.googleapis.com/blogger/v3/blogs/blogId/posts https://www.googleapis.com/blogger/v3/blogs/blogId/posts/bypath https://www.googleapis.com/blogger/v3/blogs/blogId/posts/search https://www.googleapis.com/blogger/v3/blogs/blogId/posts/postId https://www.googleapis.com/blogger/v3/blogs/blogId/posts/postId/comments https://www.googleapis.com/blogger/v3/blogs/blogId/posts/postId/comments/commentId https://www.googleapis.com/blogger/v3/blogs/blogId/pages https://www.googleapis.com/blogger/v3/blogs/blogId/pages/pageId
API-তে ব্যবহৃত প্রতিটি সমর্থিত ক্রিয়াকলাপের জন্য ব্যবহৃত URI-গুলির সম্পূর্ণ ব্যাখ্যা এবং ফলাফল ব্লগার API রেফারেন্স ডকুমেন্টে সংক্ষেপে দেওয়া হয়েছে।
উদাহরণ
প্রমাণিত ব্যবহারকারীর যেসব ব্লগে অ্যাক্সেসের অধিকার রয়েছে তার তালিকা তৈরি করুন:
GET https://www.googleapis.com/blogger/v3/users/self/blogs?key=YOUR-API-KEY
code.blogger.com ব্লগে পোস্টগুলি পান, যার ব্লগ আইডি 3213900:
GET https://www.googleapis.com/blogger/v3/blogs/3213900?key=YOUR-API-KEY
জাভাস্ক্রিপ্ট থেকে REST
আপনি জাভাস্ক্রিপ্ট থেকে ব্লগার API চালু করতে পারেন, callback কোয়েরি প্যারামিটার ব্যবহার করে এবং একটি কলব্যাক ফাংশন প্রদান করে। ব্রাউজার যখন স্ক্রিপ্ট লোড করে, তখন কলব্যাক ফাংশনটি কার্যকর করা হয় এবং কলব্যাক ফাংশনে প্রতিক্রিয়া প্রদান করা হয়। এই পদ্ধতিটি আপনাকে সমৃদ্ধ অ্যাপ্লিকেশন লিখতে দেয় যা সার্ভার সাইড কোডের প্রয়োজন ছাড়াই ব্লগার ডেটা প্রদর্শন করে।
আপনার API কী দিয়ে YOUR-API-KEY প্রতিস্থাপন করার পরে, নিম্নলিখিত উদাহরণটি code.blogger.com ব্লগ থেকে একটি পোস্ট পুনরুদ্ধার করে।
<html>
<head>
<title>Blogger API Example</title>
</head>
<body>
<div id="content"></div>
<script>
function handleResponse(response) {
document.getElementById("content").innerHTML += "<h1>" + response.title + "</h1>" + response.content;
}
</script>
<script
src="https://www.googleapis.com/blogger/v3/blogs/3213900/posts/8398240586497962757?callback=handleResponse&key=YOUR-API-KEY"></script>
</body>
</html>ডেটা ফর্ম্যাট
JSON সম্পর্কে
JSON (জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন) হল একটি সাধারণ, ভাষা-স্বাধীন ডেটা ফর্ম্যাট যা ইচ্ছামত ডেটা স্ট্রাকচারের একটি সহজ টেক্সট উপস্থাপনা প্রদান করে। আরও তথ্যের জন্য, json.org দেখুন।