Enviar desde un formulario con Server Actions
Usa Server Actions de Next.js para enviar correos directo desde un formulario, sin crear una ruta de API.
La action "use server" se ejecuta en el servidor cuando el formulario se envía:
'use server';
import { Publiq } from 'publiq';
const publiq = new Publiq(process.env.PUBLIQ_API_KEY);
export async function subscribe(formData: FormData) {
await publiq.emails.send({
from: 'you@yourdomain.com',
to: String(formData.get('email')),
templateKey: 'welcome-email',
});
}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.