Python · FastAPI
Verstuur je eerste e-mail vanuit een FastAPI-endpoint met de async client van de Bird Python SDK. Drie stappen: installeren, versturen, uitvoeren.
1. Installeer de SDK
Codevoorbeeld
python -m pip install messagebird-sdk "fastapi[standard]"Vereist Python 3.10+. Het importpakket is bird.
2. Verstuur een e-mail
Exporteer je API-sleutel. De SDK leest BIRD_API_KEY uit de omgeving en leidt de regio (us1 of eu1) af uit het bk_us1_ / bk_eu1_-prefix, dus AsyncBird() heeft geen argumenten nodig:
Codevoorbeeld
export BIRD_API_KEY="bk_us1_..."Maak main.py aan. Maak één AsyncBird aan bij het opstarten en hergebruik deze voor alle requests: het poolt verbindingen en kan veilig worden gedeeld tussen taken.
Codevoorbeeld
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_ is de Python-schrijfwijze van het from-veld (from is een gereserveerd woord). onboarding@messagebird.dev is de gedeelde onboarding-afzender van Bird (geen domeinverificatie nodig) en delivered@messagebird.dev is een sandbox-ontvanger die altijd aflevert.
De SDK probeert tijdelijke fouten automatisch opnieuw en hergebruikt de idempotentiesleutel van de aanroep bij elke poging. Dit voorkomt dat een nieuwe poging het bericht dubbel verstuurt.
3. Probeer het
Codevoorbeeld
fastapi dev main.py
curl -X POST http://localhost:8000/sendBird accepteert het bericht met een 202 en bezorgt het asynchroon; je endpoint retourneert het em_-ID en de status:
Codevoorbeeld
{
"id": "em_01ky7ma8y2es1s2akzk53tmjn0",
"status": "accepted"
}Haal het bericht op via zijn em_-ID met await client.email.get(...) en volg hoe de status van accepted naar delivered verandert.
Volgende stappen
- Python SDK e-mailreferentie: elke methode en optie.
- Verstuur je eerste e-mail: dezelfde flow met curl en de volledige lijst met sandbox-adressen.
- Verzenddomeinen: verifieer je eigen domein voor productieverzending.
- E-mail API-referentie: het volledige request- en responseschema.
Gerelateerde bronnen
Ga verder met de documentatie, gidsen en voorbeelden voor dit onderwerp. De bronnen zijn in het Engels.
Bekijk de gidsTesting email without spamming anyoneOntdek de mogelijkheidTest email deliveryVolg het leerpadOperate messaging reliably
Probeer de oefening en ontvang een implementatieoverzicht