CouchDB একটি RESTful API প্রদান করে, যা HTTP প্রোটোকলের মাধ্যমে ডেটাবেসের সাথে যোগাযোগ এবং ডেটা ম্যানিপুলেশন করতে সক্ষম। REST API ব্যবহার করে আপনি CRUD (Create, Read, Update, Delete) অপারেশনগুলি সম্পাদন করতে পারবেন, এবং CouchDB এর বিভিন্ন ফিচার যেমন ডকুমেন্ট ম্যানেজমেন্ট, কুয়েরি, রেপ্লিকেশন এবং আরও অনেক কিছু পরিচালনা করা যাবে।
CouchDB এর REST API একটি JSON ভিত্তিক API, যা HTTP রিকুয়েস্ট (GET, PUT, POST, DELETE) ব্যবহার করে যোগাযোগ করে। CouchDB এ প্রতিটি ডেটাবেস এবং ডকুমেন্টের সাথে যোগাযোগ HTTP রিকুয়েস্টের মাধ্যমে ঘটে।
Create a Database
নতুন একটি ডেটাবেস তৈরি করতে PUT রিকুয়েস্ট পাঠাতে হবে।
PUT /{db_name}
উদাহরণ:
PUT /mydatabase
List Databases
সকল ডেটাবেসের তালিকা পেতে GET রিকুয়েস্ট পাঠাতে হবে।
GET /_all_dbs
এটি সকল ডেটাবেসের নামের একটি অ্যারে প্রদান করবে।
Delete a Database
একটি ডেটাবেস মুছে ফেলতে DELETE রিকুয়েস্ট পাঠাতে হবে।
DELETE /{db_name}
উদাহরণ:
DELETE /mydatabase
Create a Document
একটি নতুন ডকুমেন্ট তৈরি করতে POST রিকুয়েস্ট পাঠাতে হবে, এবং ডেটা JSON ফরম্যাটে পাঠাতে হবে।
POST /{db_name}
উদাহরণ:
POST /mydatabase
{
"name": "John Doe",
"age": 30
}
Read a Document
একটি নির্দিষ্ট ডকুমেন্ট পড়তে GET রিকুয়েস্ট পাঠাতে হবে, যেখানে ডকুমেন্টের _id প্রদান করতে হবে।
GET /{db_name}/{doc_id}
উদাহরণ:
GET /mydatabase/12345
Update a Document
একটি ডকুমেন্ট আপডেট করতে PUT রিকুয়েস্ট পাঠাতে হবে এবং ডকুমেন্টের _id এবং _rev প্রদান করতে হবে।
PUT /{db_name}/{doc_id}
উদাহরণ:
PUT /mydatabase/12345
{
"_rev": "1-abc",
"name": "Jane Doe",
"age": 32
}
Delete a Document
একটি ডকুমেন্ট মুছে ফেলতে DELETE রিকুয়েস্ট পাঠাতে হবে এবং _rev প্রদান করতে হবে।
DELETE /{db_name}/{doc_id}?rev={rev_id}
উদাহরণ:
DELETE /mydatabase/12345?rev=1-abc
List Views
একটি ডেটাবেসের সমস্ত ভিউ দেখতে GET রিকুয়েস্ট পাঠাতে হবে।
GET /{db_name}/_design/{design_doc}/_view/{view_name}
উদাহরণ:
GET /mydatabase/_design/design_doc/_view/view_name
Query Views
কাস্টম কুয়েরি তৈরি করতে, আপনি MapReduce এর মাধ্যমে views তৈরি এবং কুয়েরি করতে পারেন।
GET /{db_name}/_design/{design_doc}/_view/{view_name}?key={key_value}
উদাহরণ:
GET /mydatabase/_design/design_doc/_view/view_name?key="John Doe"
Start Replication
CouchDB রেপ্লিকেশন শুরু করতে POST রিকুয়েস্ট পাঠাতে হবে।
POST /_replicate
উদাহরণ:
POST /_replicate
{
"source": "source_db",
"target": "target_db"
}
Track Changes in a Database
CouchDB একটি _changes এন্ডপয়েন্ট প্রদান করে, যা ডেটাবেসে হওয়া পরিবর্তনগুলোর একটি ফিড প্রদান করে।
GET /{db_name}/_changes
উদাহরণ:
GET /mydatabase/_changes
PUT /mydatabase
POST /mydatabase
{
"name": "Alice",
"age": 25
}
GET /mydatabase/1a2b3c4d
PUT /mydatabase/1a2b3c4d
{
"_rev": "1-xyz",
"name": "Alice",
"age": 26
}
DELETE /mydatabase/1a2b3c4d?rev=1-xyz
CouchDB REST API একটি শক্তিশালী ও নমনীয় সমাধান প্রদান করে, যা ডেটাবেস ম্যানেজমেন্ট, ডেটা রেপ্লিকেশন, এবং কুয়েরি অপারেশন সহজে করতে সক্ষম।
common.read_more