Enviar correo en Django

Llama a Publiq desde una view de Django para enviar correos transaccionales.

Crea el cliente una vez (nivel de módulo) y úsalo en la 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"]})

Buenas prácticas

  • Llama a Publiq siempre desde el servidor — nunca expongas la API key en el cliente.
  • Crea la instancia del cliente una vez y reutilízala entre peticiones.
  • Prefiere templateKey sobre HTML inline para mantener el contenido versionado.
  • Maneja PubliqError (status/code); el SDK ya reintenta errores transitorios con backoff.
  • Envía desde un dominio verificado — ver Dominios.

Ver también

Enviar correo en Django — Publiq Docs