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
templateKeysobre 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.