All frameworks
Send Email from FastAPI
Send emails from FastAPI with async support
1
Install the SDK
pip install sendpigeon2
Set your API key
SENDPIGEON_API_KEY=your_api_key_hereGet your API key from the dashboard.
3
Send your first email
pythonimport os
from fastapi import FastAPI
from pydantic import BaseModel, EmailStr
from sendpigeon import SendPigeon
app = FastAPI()
client = SendPigeon(os.environ["SENDPIGEON_API_KEY"])
class ContactRequest(BaseModel):
email: EmailStr
name: str
@app.post("/contact")
async def contact(data: ContactRequest):
client.send(
to=data.email,
from_email="hello@yourdomain.com",
subject=f"Thanks for reaching out, {data.name}!",
html="<h1>We got your message</h1><p>We'll get back to you soon.</p>",
)
return {"success": True}Why use SendPigeon with FastAPI?
- Async-native integration
- Pydantic validation
- OpenAPI docs included
- 99.9% deliverability with dedicated IPs
- Real-time analytics and webhook events
🧪
Testing locally? Use our local email server to catch emails without sending real ones.
🎨
Prefer visual editing? Build email templates with our free drag-and-drop builder. Learn more →
Ready to send emails from FastAPI?
Start free with 3,000 emails/month. No credit card required.
Get Started Free