Existing resources
SES production access is enabled; the account reported 50,000 recipients/day and 14/second. Application pilot limits remain separate (200/day at setup). Account suppression covers bounces and complaints. No account-level SES settings are managed by this Terraform package.
Verified
- DNS resolves
smtp.xem.emailto the Elastic IP. - The persistent Dokploy port and mount survive redeployment.
- The backend can read the certificate as its non-root user; writes to the host mirror fail read-only, including from a root container.
- External
smtp-smoke.pypassed again during this package’s validation: public certificate trust and hostname, TLS 1.3, no advertised AUTH before TLS, rejection of pre-TLS AUTH and unauthenticated MAIL FROM. - The Let’s Encrypt certificate expires 2026-12-10 19:47:02 UTC. Renewal export runs every five minutes; this timestamp is not a substitute for monitoring.
- The API health endpoint returned HTTP 200 during initial setup.
Required before claiming full delivery readiness
- Approve a test workspace through the supported sending-admin workflow, verify its custom domain and sender, and create a revocable SMTP credential through Xem. Do not reuse AWS/SES credentials as Xem SMTP credentials.
- Send one authorized test message to a controlled mailbox, securely supplying credentials without logging them. Confirm queue acceptance, SES message acceptance, actual receipt and SPF/DKIM/DMARC results. Check the runtime role’s real access and tenant/configuration-set behavior.
- Configure the CloudFormation
FeedbackEndpointafter the backend knows the exact topic ARN. It is currently blank. Confirm the SNS subscription and verify signed delivery, bounce and complaint events using the SES mailbox simulator and a test workspace. Confirm suppression and repeat-recipient rejection. - Verify revocation, domain isolation, pilot limits and retry behavior with that test workspace. Review quota and abuse controls before widening access.
- Test the onboarding checklist and domain verification UI against these real results. Revoke the test credential after testing.
ses:*/Resource:* based on speculation. Diagnose any real denial against AWS’s action/resource support and retest.
Some earlier setup screens exposed bootstrap/Redis credentials; credential rotation was recommended but is not recorded as completed. Rotate through their owning systems, redeploy dependants and verify access. Never copy those values into this repository.
