Python · Flask
Send your first email from a Flask route using the Bird Python SDK's sync client. Three steps: install, send, run.
1. Install the SDK
Contoh kode
python -m pip install messagebird-sdk flaskRequires Python 3.10+. The import package is bird.
2. Send an email
Export your API key. The SDK reads BIRD_API_KEY from the environment and infers the region (us1 or eu1) from the bk_us1_ / bk_eu1_ prefix, so Bird() needs no arguments:
Contoh kode
export BIRD_API_KEY="bk_us1_..."Create app.py. Construct one Bird at module load and reuse it across requests: it pools connections and is safe to share across threads.
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}), 202from_ is the Python spelling of the from field (from is a reserved word). onboarding@messagebird.dev is Bird's shared onboarding sender (no domain verification needed) and delivered@messagebird.dev is a sandbox recipient that always delivers.
The SDK retries transient failures automatically and reuses the call's idempotency key on each attempt. This prevents a retry from sending the message twice.
3. Try it
Contoh kode
flask run
curl -X POST http://localhost:5000/sendBird accepts the message with a 202 and delivers it asynchronously; your route returns the em_ ID and status:
Contoh kode
{
"id": "em_01ky7ma8y2es1s2akzk53tmjn0",
"status": "accepted"
}Fetch the message by its em_ ID with client.email.get(...) and watch the status move from accepted to delivered.
Next steps
- Python SDK email reference: every method and option.
- Send your first email: the same flow with curl and the full sandbox address list.
- Sending domains: verify your own domain for production sending.
- Email API reference: the full request and response schema.
Sumber daya terkait
Lanjutkan dengan dokumentasi, panduan, dan contoh untuk topik ini. Sumber daya tersedia dalam bahasa Inggris.
Tonton panduannyaTesting email without spamming anyoneJelajahi kemampuannyaTest email deliveryIkuti jalur pembelajaranOperate messaging reliably
Coba praktiknya dan dapatkan ringkasan implementasi