feat: MAIL FROM label override and aggregate domain verification#392
feat: MAIL FROM label override and aggregate domain verification#392amanjuman wants to merge 1 commit intousesend:mainfrom
Conversation
Adds optional mailFromLabel on Domain, SES MAIL FROM sync, aggregate verification status (identity + DKIM + SPF), domain UI and API updates, and webhook payload field mailFromLabel. Also fixes contactBookId type in webhook-service unit test (string) so apps/web tsc passes. Made-with: Cursor
|
@amanjuman is attempting to deploy a commit to the kmkoushik's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Adds optional mailFromLabel on Domain, SES MAIL FROM sync, aggregate verification status (identity + DKIM + SPF), domain UI and API updates, and webhook payload field mailFromLabel.
Also fixes contactBookId type in webhook-service unit test (string) so apps/web tsc passes.
Summary by cubic
Adds an optional MAIL FROM label override and an aggregate domain verification status (identity + DKIM + SPF) across UI, API, SES, and webhooks to make setup clearer and safer. Domains are “Verified” only when all checks pass; MX/SPF DNS names now follow the effective MAIL FROM label.
New Features
mailFromLabelto Domain (nullable; defaults to using the SESregionas the label).domain.setMailFromLabel(id, mailFromLabel)with validation (1–63 chars, letters/digits/hyphens, no leading/trailing hyphen). Syncs SES viaputEmailIdentityMailFromDomain; changing the label sets SPF to PENDING and re-verifies.region). Default MAIL FROM is{region}.{domain}; resetting sets it back to default.aggregateDomainStatus(worst-of identity, DKIM, SPF). Exposed asaggregateStatusin the domain API schema and used for badges, verification emails, webhook event type selection, and from-email validation.DomainPayloadnow includesmailFromLabel.Bug Fixes
contactBookIdis a string in webhook-service unit tests soapps/webTypeScript passes.Written for commit 249f9bc. Summary will update on new commits.