For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /pt/docs/web/resend-email.md (or send Accept: text/markdown).
Adicionar o email com Resend
Crie uma conta Resend gratuita, verifique um domínio de envio e mude EMAIL_PROVIDER para que códigos e recibos cheguem a caixas de entrada reais.
Passo a passo para iniciantes
Pré-requisitos: a app a correr em local (Online em 5 minutos). Comece grátis — sem cartão, e o nível gratuito da Resend cobre os volumes de desenvolvimento.
Terminologia rápida: EMAIL_PROVIDER=local é o predefinido — as mensagens são escritas na página incorporada /mail-preview e nunca saem da sua máquina, o que é perfeito enquanto constrói. A Resend é o adaptador que entrega em caixas de entrada reais. EMAIL_FROM é a identidade de remetente que os templates usam; o seu endereço tem de estar num domínio que a Resend verificou. Os registos DNS são as linhas que cola no seu registrador ou na Cloudflare para que as caixas recetoras confiem no seu remetente.
O que cria: uma conta Resend, um domínio de envio verificado e uma chave de API — o passo do domínio é a única parte de espera, já que a propagação de DNS vai de minutos a horas.
Criar a conta Resend
1. Abra resend.com → Sign up, confirme o seu email e chega ao painel.
2. Comece com o nível gratuito — pode até enviar correio de teste a partir do remetente partilhado da Resend antes de ter um domínio, que é o que a secção seguinte cobre.
Verificar o seu domínio de envio
Teste rápido sem domínio: o endereço [email protected] funciona imediatamente como EMAIL_FROM — mas só entrega ao email com que se registou, nunca a utilizadores. Use-o para ver o pipeline a funcionar e depois faça a configuração real.
1. Abra Domains → Add Domain e introduza o domínio a partir do qual envia (por exemplo yourdomain.com; um subdomínio como mail.yourdomain.com também funciona e mantém os registos arrumados).
2. A Resend lista os registos DNS a criar — registos TXT DKIM mais entradas MX/SPF ou CNAME consoante a idade da conta. Adicione cada um no seu anfitrião de DNS: a página de DNS do seu registrador, ou a Cloudflare se moveu os nameservers. Na Cloudflare mantenha a nuvem do proxy cinzenta (DNS only) para os registos de correio — registos com proxy nunca verificam.
3. De volta na Resend clique em Verify. Esperado: o domínio passa a Verified. A propagação varia de minutos a um dia; a página do domínio nomeia o registo exato que ainda não resolve.
Uma vez verificado, qualquer endereço do domínio funciona como remetente — hello@, no-reply@, o que EMAIL_FROM usar — sem registo por endereço.
Criar a chave de API
1. Abra API Keys → Create API Key.
2. Permission: Sending access chega — o kit só envia. Dê à chave o nome do seu ambiente (production, local) para que uma chave de dev exposta possa ser revogada sem tocar na produção.
3. Copie a chave re_… agora — é mostrada uma vez. Perdê-la significa apenas criar outra.
Adicionar os valores à app
Preencha as linhas abaixo em apps/web/.env.local. RESEND_API_KEY é apenas do servidor — nunca NEXT_PUBLIC_/EXPO_PUBLIC_, nunca commitada; EMAIL_PROVIDER e EMAIL_FROM são configuração simples. Reinicie o servidor de desenvolvimento depois de editar.
EMAIL_FROM tem de estar no domínio verificado: [email protected] só chega ao seu próprio endereço de registo, e um domínio não verificado recebe uma rejeição 403 da Resend.
# apps/web/.env.local
EMAIL_PROVIDER=resend
EMAIL_FROM="Your Product <[email protected]>"
RESEND_API_KEY=re_…Verificar e resolver problemas
Reinicie, abra /auth e peça um código de início de sessão para uma caixa de entrada real que controle. Esperado: a mensagem chega, e Resend → Emails mostra a entrega com estado verde — esse registo é também onde vivem os motivos de bounce e erro.
Nada enviado? Verifique que EMAIL_PROVIDER=resend ficou mesmo guardado em apps/web/.env.local e reinicie. Um 403 no registo do servidor significa que EMAIL_FROM não está no domínio verificado — ou que [email protected] foi enviado a alguém que não você.
Outro provedor mais tarde? EMAIL_PROVIDER também aceita ses (com as chaves AWS) e os transportes postmark, sendgrid, mailgun, smtp, brevo — mesmo contrato EMAIL_FROM, nomes env diferentes, todos listados em .env.example. O guia de email compara-os.
Para continuar a configuração, leia Configurar e-mail do Amazon SES.