Update domain settings
Updates sender defaults (defaultSenderName, defaultFromEmail, defaultReplyToEmail) and/or sendingPurpose — at least one required. Live gates fail closed if a campaign or automation still points at a transactional domain. Verification is its own action: POST /v1/domains/{domainId}/verify. Returns the bare updated row.
Authorizations
Send your Brew API key as Authorization: Bearer brew_xxx.
Headers
The brand this request acts on. REQUIRED for organization-scoped credentials (otherwise 400 BRAND_ID_REQUIRED — there is no default brand); list ids with GET /v1/brands. Brand-scoped credentials may omit it, and sending a different brand returns 403 BRAND_SCOPE_MISMATCH. A brand outside your organization returns 404 BRAND_NOT_FOUND.
1 - 64Path Parameters
Domain id (opaque Convex document id) returned by POST /v1/domains and listed by GET /v1/domains.
1 - 64"kx7bkh53hasmfeh5kd7sqgykt187g8ww"
Body
120Change the domain purpose. Live gates fail closed if a campaign or automation still points at a transactional domain.
marketing, transactional Response
Updated.
1 - 641 - 253not_started, pending, verified, failed, temporary_failure, partially_verified, partially_failed marketing (default) or transactional. Transactional domains skip unsubscribe and may only send via API/MCP inline to (or a test send).
marketing, transactional