ট্রানজ্যাকশনাল ইমেইলের জন্য REST API
API প্রমাণীকৃত অনুরোধ গ্রহণ করে, প্রজেক্ট scope এবং ডোমেইনের অবস্থা যাচাই করে, suppression পরীক্ষা করে, তারপর গৃহীত বার্তাগুলো queue-তে রাখে।
OpenAPI 3.1 ডাউনলোড করুনপ্রমাণীকরণ
অনুরোধ / প্রতিক্রিয়া
curl --request POST 'https://api.srs-postline.com/v1/emails' \
--header 'Authorization: Bearer srs_live_...' \
--header 'Idempotency-Key: order_4821' \
--header 'Content-Type: application/json' \
--data-raw '{
"from": "Postline <info@example.com>",
"to": ["user@example.net"],
"subject": "Your order is ready",
"html": "<p>Order #4821 is ready.</p>",
"text": "Order #4821 is ready."
}'HTTP/1.1 202 Accepted
Content-Type: application/json
{
"id": "msg_01JPOSTLINEEXAMPLE",
"status": "queued",
"created_at": "2026-08-22T12:00:00Z"
}ইনপুট প্যারামিটার
| প্যারামিটার | ধরন | আবশ্যক | বিবরণ | উদাহরণ |
|---|---|---|---|---|
Authorization | header · string | হ্যাঁ | Bearer টোকেন হিসেবে ড্যাশবোর্ড থেকে ইস্যু করা scoped API কী। | Bearer srs_live_… |
Idempotency-Key | header · string | না | একটি যৌক্তিক প্রেরণের স্থিতিশীল শনাক্তকারী; দৃঢ়ভাবে সুপারিশ করা হয়। | order_4821 |
from | string | হ্যাঁ | যাচাইকৃত ডোমেইনে প্রেরকের নাম ও ঠিকানা। | Postline <info@example.com> |
to | string[] | হ্যাঁ | এক থেকে 100টি প্রাপকের ইমেইল ঠিকানা। | ["user@example.net"] |
subject | string | হ্যাঁ | বার্তার বিষয়। | আপনার অর্ডার প্রস্তুত |
html | string | না | HTML বডি। html বা text-এর একটি আবশ্যক। | <p>…</p> |
text | string | না | সাধারণ টেক্সট বডি। text বা html-এর একটি আবশ্যক। | অর্ডার #4821… |
প্রতিক্রিয়া কোড
| স্ট্যাটাস | HTTP | বিবরণ |
|---|---|---|
202 | Accepted | বার্তাটি কিউতে আছে; এর অর্থ ইনবক্সে ডেলিভারি নয়। |
400 | Bad Request | অবৈধ JSON বা অসমর্থিত ফিল্ড। |
401 | Unauthorized | API কী অবৈধ, মেয়াদোত্তীর্ণ বা প্রত্যাহার করা হয়েছে। |
403 | Forbidden | scope অনুপস্থিত অথবা প্রেরকের ডোমেইন যাচাই করা হয়নি। |
422 | Unprocessable Entity | প্রাপক suppression তালিকায় আছেন। |
429 | Too Many Requests | প্রকল্পের অনুরোধ সীমা অতিক্রম করা হয়েছে। |
HTTP/1.1 422 Unprocessable Entity
Content-Type: application/json
{
"error": "recipient suppressed"
}একটি ইমেইল পাঠান
POST /v1/emails
Authorization: Bearer srs_live_…
Idempotency-Key: reset-4821
Content-Type: application/jsonমূল রিসোর্স
POST/v1/emailsএকটি বার্তা queue করুনGET/v1/emails/{id}বার্তার অবস্থা পরীক্ষা করুনPOST/v1/domainsএকটি sending ডোমেইন যোগ করুনPOST/v1/domains/{id}/verifyDNS চেক চালানGET/POST/DELETE/v1/suppressionssuppressed প্রাপক পরিচালনা করুনGET/POST/DELETE/v1/webhooksইভেন্ট endpoint পরিচালনা করুনরেসপন্স মডেল
202 মানে queue করা হয়েছে, ইনবক্সে পৌঁছায়নি। 403 scope অনুপস্থিত বা অযাচাইকৃত ডোমেইন নির্দেশ করতে পারে। 422 একজন suppressed প্রাপককে ব্লক করে। 429 rate limiting নির্দেশ করে।
পরিষেবার বর্তমান সীমা
REST API সংযুক্তি গ্রহণ করে না। শুধু In-Reply-To, References, List-Unsubscribe এবং List-Unsubscribe-Post কাস্টম হেডার গ্রহণযোগ্য (সর্বোচ্চ 8)। হোস্ট করা মেইল আলাদা: ওয়েবে 20 সংযুক্তি, মোট 25 MiB; প্রকাশিত ডেস্কটপ ক্লায়েন্টে পাঠানোর সীমা 10 MiB। HTTP 202 এবং email.accepted মানে প্রক্রিয়াকরণের জন্য গ্রহণ; SMTP গ্রহণ ডেলিভারি বা ইনবক্সের নিশ্চয়তা নয়।
বর্তমান access model
বর্তমান key srs_live_ ব্যবহার করে। From domain যাচাইয়ের আগে shared sandbox sender শুধু project member-কে পাঠাতে পারে। এরপর plan quota, suppression, recipient throttling ও abuse control প্রযোজ্য। 202 মানে queued, delivered নয়।
ইন্টিগ্রেশন রিসোর্স
মানুষ ও AI agent-এর step-by-step guide ব্যবহার করুন; field-এর source of truth হলো OpenAPI।