Python · FastAPI
Kirim email pertama Anda dari endpoint FastAPI menggunakan klien async Bird Python SDK. Tiga langkah: instal, kirim, jalankan.
1. Instal SDK
python -m pip install messagebird-sdk "fastapi[standard]"Memerlukan Python 3.10+. Paket impor adalah bird.
2. Kirim email
Ekspor kunci API Anda dari Platform tools > API keys di dasbor. SDK membaca BIRD_API_KEY dari environment dan menentukan region (us1 atau eu1) dari awalan bk_us1_ / bk_eu1_, sehingga AsyncBird() tidak memerlukan argumen:
export BIRD_API_KEY="bk_us1_..."Buat main.py. Buat satu AsyncBird saat startup dan gunakan kembali di seluruh request: objek ini mengelola pool koneksi dan aman digunakan bersama antar-task.
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_ adalah penulisan Python untuk field from (from adalah kata yang dicadangkan). onboarding@messagebird.dev adalah pengirim onboarding bersama milik Bird (tidak perlu verifikasi domain) dan delivered@messagebird.dev adalah penerima sandbox yang pengirimannya selalu berhasil.
SDK otomatis mencoba lagi kegagalan sementara dan menggunakan kembali kunci idempotensi panggilan pada setiap percobaan. Dengan begitu, percobaan ulang tidak mengirim pesan dua kali.
3. Coba
fastapi dev main.py
curl -X POST http://localhost:8000/sendBird menerima pesan dengan 202 dan mengirimkannya secara asinkron; endpoint Anda mengembalikan ID em_ dan statusnya:
{
"id": "em_01ky7ma8y2es1s2akzk53tmjn0",
"status": "accepted"
}Ambil pesan berdasarkan ID em_ dengan await client.email.get(...) dan pantau status berubah dari accepted ke delivered.
Langkah selanjutnya
- Python SDK: semua method dan opsi.
- Kirim email pertama Anda: alur yang sama dengan curl dan daftar lengkap alamat sandbox.
- Domain pengiriman: verifikasi domain Anda sendiri untuk pengiriman produksi.
- Referensi API email: skema request dan response lengkap.
Sumber daya terkait
Lanjutkan dengan dokumentasi, panduan, dan contoh untuk topik ini.