Como enviar e-mails com SvelteKit
No SvelteKit, use um endpoint `+server.ts` (ou uma form action) para enviar do servidor. Leia a chave via `$env/static/private`.
Instale o SDK (npm install publiq) e defina PUBLIQ_API_KEY no ambiente do servidor. O código abaixo roda no servidor — a API key nunca vai ao cliente.
import { json } from '@sveltejs/kit';
import { Publiq } from 'publiq';
import { PUBLIQ_API_KEY } from '$env/static/private';
const publiq = new Publiq(PUBLIQ_API_KEY);
export async function POST({ request }) {
const { to } = await request.json();
const email = await publiq.emails.send({
from: 'you@yourdomain.com',
to,
templateKey: 'welcome-email',
});
return json({ 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
templateKeya 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.