Sign inGet Started

Python · FastAPI

Bird Python SDK के async क्लाइंट का उपयोग करके FastAPI एंडपॉइंट से अपना पहला ईमेल भेजें। तीन चरण: इंस्टॉल करें, भेजें, चलाएँ।

1. SDK इंस्टॉल करें

कोड उदाहरण
python -m pip install messagebird-sdk "fastapi[standard]"
Python 3.10+ आवश्यक है। इम्पोर्ट पैकेज bird है।

2. ईमेल भेजें

अपनी API कुंजी एक्सपोर्ट करें। SDK एनवायरनमेंट से BIRD_API_KEY पढ़ता है और bk_us1_ / bk_eu1_ प्रीफ़िक्स से रीजन (us1 या eu1) का अनुमान लगाता है, इसलिए AsyncBird() को किसी आर्ग्युमेंट की ज़रूरत नहीं:
कोड उदाहरण
export BIRD_API_KEY="bk_us1_..."
main.py बनाएँ। स्टार्टअप पर एक AsyncBird बनाएँ और सभी रिक्वेस्ट में इसे दोबारा इस्तेमाल करें: यह कनेक्शन पूल करता है और टास्क के बीच शेयर करना सुरक्षित है।
कोड उदाहरण
from bird import AsyncBird, APIError
from fastapi import FastAPI, HTTPException

app = FastAPI()
client = AsyncBird()


@app.post("/send", status_code=202)
async def send() -> dict[str, str]:
    try:
        message = await client.email.send(
            from_="onboarding@messagebird.dev",
            to=["delivered@messagebird.dev"],
            subject="Hello from Bird",
            html="<p>My first Bird email.</p>",
        )
    except APIError as err:
        raise HTTPException(status_code=502, detail=str(err))
    return {"id": message.id, "status": message.status}
from_ फ़ील्ड from की Python स्पेलिंग है (from एक रिज़र्व्ड वर्ड है)। onboarding@messagebird.dev Bird का शेयर्ड ऑनबोर्डिंग सेंडर है (डोमेन सत्यापन की ज़रूरत नहीं) और delivered@messagebird.dev एक सैंडबॉक्स रिसीपिएंट है जो हमेशा डिलीवर होता है।
SDK क्षणिक विफलताओं पर स्वचालित रूप से फिर से प्रयास करता है और हर प्रयास में कॉल की idempotency key दोबारा उपयोग करता है। इससे फिर से प्रयास करने पर संदेश दो बार नहीं भेजा जाता।

3. आज़माएँ

कोड उदाहरण
fastapi dev main.py
curl -X POST http://localhost:8000/send
Bird संदेश को 202 के साथ स्वीकार करता है और इसे एसिंक्रोनस रूप से डिलीवर करता है; आपका एंडपॉइंट em_ ID और स्टेटस लौटाता है:
कोड उदाहरण
{
  "id": "em_01ky7ma8y2es1s2akzk53tmjn0",
  "status": "accepted"
}
await client.email.get(...) के साथ संदेश को उसकी em_ ID से फ़ेच करें और स्टेटस को accepted से delivered में बदलते देखें।

अगले चरण

संबंधित संसाधन

इस विषय के लिए डॉक्यूमेंटेशन, गाइड और उदाहरणों के साथ आगे बढ़ें। संसाधन अंग्रेज़ी में हैं।

अभ्यास करें और इम्प्लीमेंटेशन ब्रीफ़ पाएँ