Cómo enviar correos con Elixir / Phoenix
Envía correos desde Elixir/Phoenix con la librería `Req`.
No hay SDK oficial — llama a la API REST de Publiq con el cliente HTTP del lenguaje, desde el servidor, con la API key en el header Authorization.
defmodule MyApp.Publiq do
def send_welcome(email) do
Req.post!("https://api.publiq.digital/v1/emails",
headers: [{"authorization", "Bearer #{System.get_env("PUBLIQ_API_KEY")}"}],
json: %{
from: "you@yourdomain.com",
to: email,
templateKey: "welcome-email",
variables: %{first_name: "Ana"}
}
)
end
endBuenas 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.