Enviar e-mail no Django

Chame o Publiq de uma view do Django para enviar e-mails transacionais.

Crie o cliente uma vez (nível de módulo) e use-o na view:

from django.http import JsonResponse
from publiq import Publiq

publiq = Publiq()  # reads PUBLIQ_API_KEY

def send_welcome(request):
    email = publiq.emails.send({
        "from": "you@yourdomain.com",
        "to": request.POST["email"],
        "templateKey": "welcome-email",
        "variables": {"first_name": request.POST.get("name", "there")},
    })
    return JsonResponse({"id": email["id"]})

Boas práticas

  • Chame o Publiq sempre do servidor — nunca exponha a API key no cliente.
  • Crie a instância do cliente uma vez e reutilize-a entre requisições.
  • Prefira templateKey a HTML inline para manter o conteúdo versionado.
  • Trate PubliqError (status/code); o SDK já retenta erros temporários com backoff.
  • Envie de um domínio verificado — veja Domínios.

Veja também

Enviar e-mail no Django — Publiq Docs