Sign inGet Started

cURL

केवल curl से अपना पहला ईमेल भेजें: एक API कुंजी export करें, एक संदेश POST करें, और उसे GET करके उसकी डिलीवरी देखें। यह कच्चा HTTP फ़्लो है; SDK जो कुछ भी करते हैं, उसकी शुरुआत यहीं से होती है।

1. अपनी API कुंजी export करें

डैशबोर्ड में Developers > API keys के अंतर्गत एक कुंजी बनाएँ (अपना पहला ईमेल भेजें में इसके चरण दिए गए हैं), फिर उसे export करें:

कोड उदाहरण
export BIRD_API_KEY="bk_us1_..."

क्षेत्र प्रीफ़िक्स से आपका API होस्ट तय होता है: bk_us1_ कुंजियाँ https://us1.platform.bird.com को कॉल करती हैं, और bk_eu1_ कुंजियाँ https://eu1.platform.bird.com को। भेजने के उदाहरण us1 का उपयोग करते हैं; यदि आपकी कुंजी किसी अन्य क्षेत्र की है, तो होस्ट बदल दें।

2. एक ईमेल भेजें

/v1/email/messages पर POST करें, और हमारे साझा ऑनबोर्डिंग डोमेन से delivered@messagebird.dev सैंडबॉक्स पते पर भेजें। आपको डोमेन सत्यापन या असली मेलबॉक्स की ज़रूरत नहीं है। इस क्विकस्टार्ट के लिए cURL टैब चुनें।

const msg = await bird.email.send({
  from: { email: "onboarding@messagebird.dev", name: "Bird" },
  to: ["delivered@messagebird.dev"],
  subject: "Hello from Bird",
  html: "<p>My first Bird email.</p>",
});
console.log(msg.id, msg.status); // "em_…", "accepted"

API 202 के साथ जवाब देता है: Bird ने ईमेल स्वीकार कर लिया है और उसे एसिंक्रोनस रूप से डिलीवर करता है। *_count फ़ील्ड डिलीवरी की अवस्थाओं में प्राप्तकर्ताओं को ट्रैक करते हैं। शुरुआती प्रतिक्रिया में एक प्राप्तकर्ता स्वीकार किया गया है और कोई भी डिलीवर नहीं हुआ है:

कोड उदाहरण
{
  "id": "em_01ky7ma8y2es1s2akzk53tmjn0",
  "status": "accepted",
  "category": "marketing",
  "from": { "email": "onboarding@messagebird.dev" },
  "to": [{ "email": "delivered@messagebird.dev" }],
  "subject": "Hello from Bird",
  "accepted_count": 1,
  "processed_count": 0,
  "delivered_count": 0,
  "deferred_count": 0,
  "bounced_count": 0,
  "complained_count": 0,
  "rejected_count": 0,
  "open_count": 0,
  "click_count": 0,
  "track_opens": true,
  "track_clicks": true,
  "created_at": "2026-07-23T13:58:20.866Z"
}

कच्चे HTTP में ऐसा कोई SDK नहीं है जो आपके लिए idempotency कुंजी बनाए। फिर से प्रयास करने पर सुरक्षा के लिए, पहले प्रयास में एक कुंजी दें और फिर से प्रयास करते समय उसी का दोबारा उपयोग करें। उदाहरण और replay सीमाओं के लिए Idempotency देखें।

3. डिलीवरी देखें

संदेश को उसकी em_ ID से GET करें और देखें कि स्टेटस accepted से processed होते हुए delivered तक कैसे बदलता है। फिर से cURL टैब चुनें:

const msg = await bird.email.get("em_abc123");
msg.status; // "accepted" | "processed" | "delivered" | "bounced" | …
msg.delivered_count;
msg.bounced_count;

प्राप्तकर्ता delivered@messagebird.dev सैंडबॉक्स पता है, इसलिए डिलीवरी की गारंटी है: संदेश Bird की असली पाइपलाइन से होकर गुज़रता है, लेकिन किसी असली मेलबॉक्स तक कभी नहीं पहुँचता।

अगले कदम

इस विषय के लिए दस्तावेज़, गाइड और उदाहरणों के साथ आगे बढ़ें।