All frameworks

Send Email from Django

Send emails from Django views and management commands

1

Install the SDK

pip install sendpigeon
2

Set your API key

SENDPIGEON_API_KEY=your_api_key_here

Get your API key from the dashboard.

3

Send your first email

python
# views.py
import json
import os

from django.http import JsonResponse
from django.views.decorators.http import require_POST
from sendpigeon import SendPigeon

client = SendPigeon(os.environ["SENDPIGEON_API_KEY"])

@require_POST
def contact(request):
    data = json.loads(request.body)

    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 JsonResponse({"success": True})

Why use SendPigeon with Django?

  • Works with Django views
  • Async support with Django 4.1+
  • Management command integration
  • 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 Django?

Start free with 3,000 emails/month. No credit card required.

Get Started Free

Other python frameworks