हर एक के लिए एक API
ईमेल जो आप भेजते हैं।
ट्रांज़ैक्शनल हो या मार्केटिंग, एक मैसेज हो या सौ, सब एक ही Email API से भेजें — आइडेम्पोटेंसी, सप्रेशन और वेबहुक बिल्ट-इन हैं। रॉ HTML पास करें या अपने React Email टेम्पलेट रेंडर करें।
import { BirdClient } from "@messagebird/sdk";
import { render } from "@react-email/render";
import { WelcomeEmail } from "./emails/welcome";
const bird = new BirdClient({
apiKey: process.env.BIRD_API_KEY!,
});
const { data, error } = await bird.email.send({
from: "Bird <hello@bird.com>",
to: ["ada@example.com"],
subject: "Your invite is ready",
html: await render(<WelcomeEmail name="Ada" />),
}).safe();
if (error) throw error;
console.log(data.id);
// → "em_2bX91Yk8h..."
You can sign in any time at bird.com/login.
Your test API key is on your dashboard, ready to send.
पहले से SMTP से भेज रहे हैं?
अपना मौजूदा SMTP क्लाइंट रखें और इसे Bird के रिले से जोड़ें। क्षेत्रीय होस्ट, TLS पोर्ट और प्रमाणीकरण के लिए SMTP सेटअप पेज का उपयोग करें। यदि आपके एप्लिकेशन को संदेश प्राप्त और पार्स करने की ज़रूरत है, तो इनबाउंड ईमेल से शुरू करें।
पाँच मिनट में अपना पहला ईमेल भेजें।
उसी भाषा से जो आप पहले से इस्तेमाल करते हैं।
भेजना Bird Email API का मूल है। आपका पहला संदेश एक सैंडबॉक्स पते (delivered@messagebird.dev) पर जा सकता है, ताकि आप डोमेन सत्यापित करने से पहले पूरे प्लेटफ़ॉर्म (भेजना, वेबहुक, दमन) को आज़मा सकें।
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"पाँच चीज़ें जो आपको खुद नहीं बनानी होंगी।
हर Bird चैनल पर एक ही कॉन्ट्रैक्ट।
- 01
ट्रांज़ैक्शनल + मार्केटिंग।
एक ही एंडपॉइंट पासवर्ड रीसेट भी भेजता है और कैम्पेन भी। एक कैटेगरी फ़ील्ड तय करती है कि सप्रेशन और अनसब्सक्राइब कैसे लागू होंगे।
- 02
टेम्पलेट आपके तरीके से।
रॉ HTML भेजें, अपने ऐप में React Email टेम्पलेट को HTML में रेंडर करके परिणाम भेजें, या किसी संग्रहित टेम्पलेट का नाम दें और उसे अपने लिए रेंडर करवाएँ। आपकी टूलचेन, जैसी है वैसी।
- 03
एक बार में 100 तक बैच करें।
एक कॉल में 100 तक स्वतंत्र मैसेज, हर एक का अपना प्राप्तकर्ता और वेरिएबल्स, सब एक यूनिट के रूप में वैलिडेट होते हैं ताकि आधा भेजने की स्थिति कभी न आए।
- 04
कॉन्ट्रैक्ट द्वारा आइडेम्पोटेंट।
हर सेंड एक आइडेम्पोटेंसी की स्वीकार करता है, इसलिए टाइमआउट के बाद रीट्राई किया गया रिक्वेस्ट डबल-सेंडिंग के बजाय मूल रिज़ल्ट लौटाता है।
- 05
हर स्टेट चेंज पर एक वेबहुक।
स्वीकृत, डिलीवर, ओपन, क्लिक, बाउंस, शिकायत। हर एक HMAC-साइन्ड, रीप्ले-प्रोटेक्टेड, आइडेम्पोटेंट, हर चैनल पर एक ही एनवेलप।
अपने एप्लिकेशन से पहला अनुरोध भेजें।
एक अकाउंट बनाएँ और API key बनाएँ, फिर एक परीक्षण प्राप्तकर्ता के साथ भेजने की गाइड का पालन करें।
पहले से कहीं और भेज रहे हैं? एक दोपहर में स्विच करें।
आप जो कॉल पहले से करते हैं, वह बमुश्किल बदलती है: क्लाइंट बदलें, टेम्पलेट रखें, अपने वेबहुक एक एंडपॉइंट पर पॉइंट करें। माइग्रेशन गाइड SendGrid, Amazon SES, Mailgun और Resend को कवर करती हैं।
import sgMail from "@sendgrid/mail";
sgMail.setApiKey(process.env.SENDGRID_API_KEY!);
await sgMail.send({
from: "hello@yourdomain.com",
to: "delivered@messagebird.dev",
subject: "Your invite is ready",
html: "<p>Welcome aboard, Ada.</p>",
});
import { BirdClient } from "@messagebird/sdk";
const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });
await bird.email.send({
from: "hello@yourdomain.com",
to: ["delivered@messagebird.dev"],
subject: "Your invite is ready",
html: "<p>Welcome aboard, Ada.</p>",
});
एक मैसेज या सौ, एक कॉल।
एक रिक्वेस्ट में 100 तक स्वतंत्र मैसेज बैच करें, हर एक का अपना प्राप्तकर्ता और वेरिएबल्स। बैच एक यूनिट के रूप में वैलिडेट होता है: एक खराब मैसेज पूरी कॉल को 422 के साथ रिजेक्ट कर देता है, ताकि आप कभी आधा न भेजें। एक सिंगल आइडेम्पोटेंसी की पूरे रिक्वेस्ट को रीट्राई के लिए सुरक्षित बनाती है।
import { BirdClient } from "@messagebird/sdk";
import { render } from "@react-email/render";
import { Digest } from "./emails/digest";
const bird = new BirdClient({ apiKey: process.env.BIRD_API_KEY! });
const messages = await Promise.all(
users.map(async (u) => ({
from: "Acme <hello@yourdomain.com>",
to: [u.email],
subject: "Your weekly digest",
html: await render(<Digest user={u} />),
})),
);
const { data: batch, error } = await bird.email
.sendBatch(messages)
.safe();
if (error) throw error;
console.log(`queued ${batch.data.length} messages`);
हर सेंड के साथ अपना कॉन्टेक्स्ट जोड़ें।
टैग एक फ़र्स्ट-क्लास, फ़िल्टर करने योग्य डाइमेंशन हैं: स्टैट्स API में कैम्पेन, टेम्पलेट या एक्सपेरिमेंट के हिसाब से डिलीवरी और एंगेजमेंट स्लाइस करें (प्रति मैसेज 20 तक)। मेटाडेटा मनचाहा JSON है, 2 KB तक, जो हर रीड और वेबहुक पर बिना बदले वापस आता है, ताकि आपकी अपनी IDs मैसेज के साथ चलें।
await bird.email.send({
from: "Acme <hello@yourdomain.com>",
to: ["delivered@messagebird.dev"],
subject: "Your invite is ready",
html: "<p>Welcome aboard, Ada.</p>",
tags: [{ name: "campaign", value: "spring-2026" }],
metadata: { user_id: "u_2bX91", order_id: "ord_5512" },
});
हर मैसेज को उसके पूरे जीवनचक्र में देखें।
सेंड तुरंत 202 लौटाता है; परिणाम प्रति प्राप्तकर्ता एक वेबहुक के रूप में आता है। एक सिग्नेचर वेरिफ़ाई करें, टाइप पर स्विच करें: वही एनवेलप जो आप SMS, वॉइस और WhatsApp के लिए पहले से हैंडल करते हैं।
import { bird } from "@/lib/bird";
export async function POST(req: Request) {
const event = bird.webhooks.unwrap(
await req.text(),
Object.fromEntries(req.headers),
);
switch (event.type) {
case "email.delivered":
await markDelivered(event.data.email_id);
break;
case "email.bounced":
await flag(event.data.recipient, event.data.bounce_type);
break;
}
return new Response(null, { status: 204 });
}
हार्ड बाउंस और शिकायतें प्राप्तकर्ता सप्रेशन अपडेट करती हैं। अनसब्सक्राइब एक ऑप्ट-आउट प्राथमिकता दर्ज करता है। बाद के भेजे जाने वाले संदेशों को प्रोसेस करते समय इन रिकॉर्ड की जाँच की जाती है।
email.acceptedभेजने का अनुरोध स्वीकार किया गया और डिलीवरी के लिए तैयार किया जा रहा है।email.processedप्राप्तकर्ता के मेल सर्वर के लिए कतार में है।email.deliveredप्राप्तकर्ता के मेल सर्वर ने संदेश स्वीकार कर लिया।email.deferredअस्थायी रूप से अस्वीकृत, हम फिर से प्रयास करेंगे।email.bouncedस्थायी रूप से विफल: बाउंस प्रकार और SMTP कोड पेलोड में।email.openedप्राप्तकर्ता ने संदेश खोला। एक से अधिक बार ट्रिगर हो सकता है।email.clickedप्राप्तकर्ता ने एक ट्रैक किए गए लिंक पर क्लिक किया।email.complainedप्राप्तकर्ता ने मैसेज को स्पैम के रूप में रिपोर्ट किया।email.unsubscribedप्राप्तकर्ता ने ट्रैक किए गए अनसब्सक्राइब लिंक के ज़रिए ऑप्ट आउट किया।
लाइव जाने से पहले हर परिणाम टेस्ट करें।
सैंडबॉक्स में प्राप्तकर्ता का पता परिणाम तय करता है, इसलिए आपके अकाउंट की स्थिति का कोई असर नहीं पड़ता। स्वच्छ डिलीवरी के लिए delivered@messagebird.dev पर भेजें, या हर विफलता पथ को वास्तविक पाइपलाइन और वास्तविक वेबहुक के ज़रिए चलाने के लिए bounce@, softbounce@, deferred@, complaint@, और suppressed@ पर भेजें। कोई डोमेन सत्यापित करने की ज़रूरत नहीं, आपकी प्रतिष्ठा को कोई जोखिम नहीं। प्रोडक्शन जानबूझकर गेटेड है: पहले आप एक डोमेन सत्यापित करते हैं, और कोई भी नया डोमेन या डेडिकेटेड IP पूरा वॉल्यूम उठाने से पहले वॉर्मअप से गुज़रता है।
डॉक्स में गहराई से जानें।
सेंडिंग गाइड पढ़ें, ईमेल इवेंट्स और वेबहुक सेट अप करें, या अगर आप किसी और प्रोवाइडर से आ रहे हैं तो SendGrid, SES, Mailgun, या Resend से माइग्रेशन गाइड फ़ॉलो करें।
भेजने से जुड़े व्यवहार का परीक्षण करें।
एक काम करने वाला सेंड कॉल इंटीग्रेशन की शुरुआत है। बाउंस और शिकायतों का अभ्यास करें, डुप्लिकेट webhook डिलीवरी को हैंडल करें और तय करें कि आपका एप्लिकेशन संदेशों को कैसे शेड्यूल करता है या उत्तर कैसे प्राप्त करता है।
अपनी ज़रूरत के वर्कफ़्लो के साथ आगे बढ़ें
अगले काम से मेल खाने वाला प्रोडक्ट या गाइड चुनें।
161%
Zillow की ग्राहक कहानी में ईमेल ओपन रेट में वृद्धि रिपोर्ट की गई।
Bird के साथ निर्मित
जब सही घर सामने आए, तो ईमेल समय पर पहुँचना चाहिए।
Zillow ने समय-संवेदनशील प्रॉपर्टी अलर्ट Bird पर लाए, जिसमें भेजने की तेज़ी को संभालने की क्षमता और जुड़ाव को समझने के लिए एनालिटिक्स शामिल थे। उनकी टीम ने पहले महीने में ओपन रेट में 161% की वृद्धि रिपोर्ट की।
माइग्रेशन या अधिक वॉल्यूम वाली ईमेल भेजने की योजना बना रहे हैं?
सेल्स से संपर्क करेंईमेल भेजने के बारे में प्रश्न
क्या मैं ट्रांज़ैक्शनल और मार्केटिंग दोनों ईमेल भेज सकता हूँ?
अगर कोई रिक्वेस्ट टाइम आउट हो जाए और मैं फिर से प्रयास करूँ तो क्या होगा?
क्या मैं बाद में भेजने के लिए शेड्यूल कर सकता हूँ?
क्या मैं फ़ाइलें अटैच कर सकता हूँ?
भेजने को अपने बाकी वर्कफ़्लो से जोड़ें
हमारी ईमेल टीम से बात करें
अपना अगला ईमेल इंटीग्रेशन बनाएँ।
ट्रांज़ैक्शनल मैसेज, बैच सेंड और डिलीवरी इवेंट के बारे में बात करें। हम आपके इंटीग्रेशन, भेजने की मात्रा और माइग्रेशन की योजना बनाने में मदद करेंगे।
अपना अकाउंट बनाएँ, फिर एक API key बनाएँ और एक परीक्षण संदेश भेजें।
बिना नियंत्रण खोए
स्केल करें।
टीमों को वर्कस्पेस में व्यवस्थित करें, API एक्सेस नियंत्रित करें, और ऑडिट लॉग से बदलावों को ट्रेस करें।
Audit log
Production- Workspace
- Production
- Resource
- Delivery agent
- ReadRead & write