✉️ Use this endpoint to request a change to the sender names (and optionally the mailbox aliases/email addresses) on an existing domain's mailboxes.
⚠️ This creates a pending request, same as /swap-domainand/swap-redirect— it does not change anything immediately. Our team reviews and applies it.
POST /api/v1/swap-sender-name/:old_domainold_domain (required)organization_id (required)mode (required)"name_only" — Only the sender's display name changes. Every existing mailbox alias is kept exactly as-is — no re-warming needed."name_and_alias" — A new alias is generated per mailbox too. The old mailbox is deleted and a new one is created, which needs 2-4 days to warm up before sending at full volume.sender_names (required){ first_name, last_name } objects, distributed evenly across the domain's existing mailboxes in order."sender_names": [
{ "first_name": "John", "last_name": "Doe" },
{ "first_name": "Jane", "last_name": "Smith" }
]first_name and last_name.sender_names cannot have more entries than the domain has mailboxes (e.g. a Google domain with 2 mailboxes accepts at most 2 sender names).mode=name_only: rename senders, keep every aliasmode=name_and_alias: one sender for every mailboxmode=name_and_alias: multiple senders split across mailboxes{
"message": "Sender Name Swap Requested"
}{ "error": "Invalid domain format" }mode{ "error": "mode query param is required and must be 'name_only' or 'name_and_alias'" }sender_names{ "error": "sender_names must be a non-empty array of { first_name, last_name }" }{ "error": "Domain not found" }{ "error": "This domain has no mailboxes to rename" }sender_names than the domain has mailboxes{ "error": "outreach-one.com has 2 mailboxes, but 4 sender_names were passed -- sender_names cannot exceed the domain's mailbox count" }name_and_alias mode){ "error": "Error generating aliases for John Doe: we cannot create 5 aliases. Kindly try other name or lower the number of aliases" }{ "error": "Cannot create domain swap request. Domain \"outreach-one.com\" already has a pending Sender Names change request (Status: New Order)" }mode is a query parameter, not a body field — pass it in the URL alongside organization_id.mode=name_only whenever you just want a display-name refresh without affecting deliverability or triggering a warm-up period.curl --location 'https://server.scaledmail.com/api/v1/swap-sender-name/?organization_id=undefined' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: text/plain' \
--data '{
"new_redirect":"scaledmail.com"
}'{}