Rejeições, reclamações e supressões
Rejeições
Seção intitulada “Rejeições”| Tipo | Significado | Evento | Resultado |
|---|---|---|---|
| Hard (permanente) | O endereço não existe ou o domínio rejeita e-mails de forma permanente. | email.bounced |
last_event passa a bounced; o endereço é adicionado à sua lista de supressão. |
| Soft (transitória) | Um problema temporário, como uma caixa cheia ou uma queda de servidor. O SES continua tentando. | email.delivery_delayed |
Nada é suprimido no início. Após 3 rejeições transitórias em e-mails diferentes em 30 dias, o endereço é adicionado à sua lista de supressão. |
As rejeições permanentes incluem bounce.type: "Permanent" e um bounce.subType no payload do webhook.
Um endereço que continua gerando rejeições transitórias costuma estar abandonado, e os provedores de caixa de entrada contam as tentativas repetidas contra você. As rejeições transitórias causadas pela mensagem e não pelo endereço (mensagem grande demais, conteúdo ou anexo rejeitado) não contam para o limite; corrija a mensagem.
Reclamações
Seção intitulada “Reclamações”Uma reclamação acontece quando um destinatário marca o seu e-mail como spam e o provedor da caixa de entrada dele informa isso (um feedback loop). O SpacePost dispara email.complained, define last_event como complained e adiciona o destinatário à sua lista de supressão. As reclamações são o sinal negativo mais forte que existe: mantenha-as abaixo de 0,1%.
A lista de supressão
Seção intitulada “A lista de supressão”A lista de supressão é uma lista de não envio por equipe. Antes de cada envio, o SpacePost confere todos os destinatários (to, cc, bcc) contra ela:
- Os destinatários suprimidos são removidos da mensagem e um evento
email.suppressedé disparado. - Se não sobrar nenhum destinatário, nada é enviado e o
last_eventdo e-mail passa asuppressed. - A cota é contada quando o e-mail é aceito, antes da verificação de supressão, então os destinatários suprimidos ainda contam para a sua cota mensal.
As entradas são adicionadas automaticamente em caso de rejeições permanentes, rejeições transitórias repetidas e reclamações, ou manualmente pela API. Cada entrada tem um reason (bounce, complaint, unsubscribe ou manual) e um detail legível, como Hard bounce (NoEmail) ou 3 soft bounces in 30 days (MailboxFull). O primeiro motivo registrado para um endereço é mantido: adicionar um endereço manualmente nunca sobrescreve uma rejeição ou uma reclamação.
import { SpacePost } from "@spacepost/node";
const spacepost = new SpacePost();
await spacepost.suppressions.create({ email: "do-not-mail@example.com" });
const { data } = await spacepost.suppressions.list({ limit: 100 });for (const s of data?.data ?? []) console.log(s.email, s.reason);
await spacepost.suppressions.remove("do-not-mail@example.com"); // by email or id# listcurl https://api.spacepost.dev/suppressions?limit=100 -H "Authorization: Bearer $SPACEPOST_API_KEY"
# addcurl -X POST https://api.spacepost.dev/suppressions \ -H "Authorization: Bearer $SPACEPOST_API_KEY" -H "Content-Type: application/json" \ -d '{ "email": "do-not-mail@example.com" }'
# remove, by email or idcurl -X DELETE https://api.spacepost.dev/suppressions/do-not-mail@example.com -H "Authorization: Bearer $SPACEPOST_API_KEY"{ "object": "suppression", "id": "0192e1c4-0000-7000-8000-0000000000d1", "email": "nobody@example.com", "reason": "bounce", "detail": "Hard bounce (NoEmail)", "created_at": "2026-10-23T14:02:12.000Z"}Domínios de destinatários que não recebem e-mails
Seção intitulada “Domínios de destinatários que não recebem e-mails”Se o domínio de um destinatário não aceita e-mails de forma alguma (sem registros MX nem A), o SpacePost ignora esse destinatário em vez de tentar a entrega e dispara email.suppressed. Isso protege a sua taxa de rejeição. Veja Verificação da conta e limites de envio.
Usando endereços de teste
Seção intitulada “Usando endereços de teste”bounced@test.spacepost.dev, complained@test.spacepost.dev e (após três envios) softbounced@test.spacepost.dev criam entradas reais de supressão e contam para as suas taxas. Remova-as depois de testar. Veja Testes.