REST em JSON. Formato de resposta: {"success", "message", "data"}.
Sem autenticação para leitura — quem souber o endereço vê o inbox.
Criação de mailbox tem rate limit (10/min/IP, 200/dia/IP).
/api/mailbox
Cria um mailbox. Corpo JSON opcional: { prefix?, domain? }. Sem prefixo, gera um aleatório.
curl -X POST http://mail.verifywaba.store/api/mailbox \
-H 'Content-Type: application/json' \
-d '{"prefix":"meu-nome"}'
/api/mailbox/<address>
Retorna metadados do mailbox.
curl http://mail.verifywaba.store/api/mailbox/meu-nome@alndigital.com
/api/mailbox/<address>
Exclui o mailbox e todas as mensagens (e arquivos em disco).
curl -X DELETE http://mail.verifywaba.store/api/mailbox/meu-nome@alndigital.com
/api/mailbox/<address>/messages
Lista resumos das mensagens. Query: ?since=<ISO 8601>&limit=<1..200>.
curl 'http://mail.verifywaba.store/api/mailbox/meu-nome@alndigital.com/messages?limit=50'
/api/messages/<id>
Retorna a mensagem completa: cabeçalhos, corpo texto, HTML saneado, anexos.
curl http://mail.verifywaba.store/api/messages/1
/api/messages/<id>/raw
Download da mensagem em formato .eml (texto).
curl -OJ http://mail.verifywaba.store/api/messages/1/raw
/api/messages/<id>/attachments/<aid>
Download binário de um anexo.
curl -OJ http://mail.verifywaba.store/api/messages/1/attachments/1
/api/messages/<id>/read
Marca a mensagem como lida.
curl -X POST http://mail.verifywaba.store/api/messages/1/read
/api/messages/<id>
Exclui uma mensagem.
curl -X DELETE http://mail.verifywaba.store/api/messages/1
/api/domains
Lista os domínios aceitos por este instance e o domínio padrão.
curl http://mail.verifywaba.store/api/domains
/api/health
Liveness probe. Sempre 200 quando o processo está de pé.
curl http://mail.verifywaba.store/api/health