- Shipped
- November 15, 2026 at 12:43 PM UTC
- Author
- Kamo
- Commit
- 36d3a91
- GET /api/email/sender-health: 0-100 score + grade + factors (authentication, complaints, bounces, warm-up, DMARC alignment, opt-out pace) from the sending domains' checks, 30 days of deliverability counts, opt-out pace, host warm-up and DMARC reports; cached 2 min per org. VIEW/MANAGE_BULK_EMAIL. - GET **************** per sending domain spfAligned, dkimAligned, dmarcPresent, oneClickUnsubscribe (read from the composer's real RFC 8058 headers), complaintRate (0.1% target, 0.3% limit), ptr (forward-confirmed, relay), tls (relay's smtp_tls_security_level). - DMARC aggregate reports: POST **************** (postfix-k3m1-inbound dmarc-mail sidecar) parses zip/gzip/XML RFC 7489 reports (namespaced or not, XXE-safe, size-capped), keeps only DKIM-verified reports (apache-jdkim now compile scope), stores rows per org in **************** (idempotent per report row), 120-day retention sweep. GET /api/email/dmarc/coach?domain= gives record, rua address, reports, step and suggested record. - GET **************** every active member's signature rendered by the compose path, with missing fields and counts. MANAGE_EMAIL_SETTINGS. - POST /api/email/test-send {kind, templateId?, scope?}: sends a template or signature to the caller's own mailbox through the org's provider. MANAGE_EMAIL_SETTINGS.
