Sign inGet Started

Python · Flask

Kirim email pertama Anda dari route Flask menggunakan klien sinkron Bird Python SDK. Tiga langkah: instal, kirim, jalankan.

1. Instal SDK

Contoh kode
python -m pip install messagebird-sdk flask
Memerlukan Python 3.10+. Paket impor-nya adalah bird.

2. Kirim email

Ekspor kunci API Anda. SDK membaca BIRD_API_KEY dari environment dan menyimpulkan region (us1 atau eu1) dari prefiks bk_us1_ / bk_eu1_, sehingga Bird() tidak memerlukan argumen:
Contoh kode
export BIRD_API_KEY="bk_us1_..."
Buat app.py. Buat satu Bird saat modul dimuat dan gunakan ulang di seluruh request: objek ini mengelola pool koneksi dan aman digunakan bersama antar-thread.
Contoh kode
from bird import Bird, APIError
from flask import Flask, jsonify

app = Flask(__name__)
client = Bird()


@app.post("/send")
def send():
    try:
        message = 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:
        return jsonify({"error": str(err)}), 502
    return jsonify({"id": message.id, "status": message.status}), 202
from_ adalah penulisan Python untuk field from (from adalah reserved word). onboarding@messagebird.dev adalah pengirim onboarding bersama milik Bird (tidak perlu verifikasi domain) dan delivered@messagebird.dev adalah penerima sandbox yang selalu berhasil dikirim.
SDK mencoba ulang kegagalan sementara secara otomatis dan menggunakan kembali kunci idempotensi panggilan pada setiap percobaan. Ini mencegah percobaan ulang mengirim pesan dua kali.

3. Coba

Contoh kode
flask run
curl -X POST http://localhost:5000/send
Bird menerima pesan dengan 202 dan mengirimnya secara asinkron; route Anda mengembalikan ID em_ dan statusnya:
Contoh kode
{
  "id": "em_01ky7ma8y2es1s2akzk53tmjn0",
  "status": "accepted"
}
Ambil pesan berdasarkan ID em_ dengan client.email.get(...) dan perhatikan status berubah dari accepted ke delivered.

Langkah selanjutnya