Move the return path to vxmail
const url = 'https://api.vaartix.com/domains/dom_5bvatg1v837anztd/return-path';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"subdomain":"vxmail"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request PUT \ --url https://api.vaartix.com/domains/dom_5bvatg1v837anztd/return-path \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "subdomain": "vxmail" }'Moves a domain added before vxmail was the standard (on vx-bounces, or a subdomain chosen back then) to vxmail.400), and asking for vxmail on a domain already there changes nothing. Publish the new MX and TXT records the response lists; sending carries on meanwhile, with Amazon SES’s own return path until they verify. Refused (409) if vxmail.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”Example
dom_5bvatg1v837anztdRequest Bodyrequired
Section titled “Request Bodyrequired”object
Always vxmail (vxmail.<domain> is accepted too).
Example
vxmailResponses
Section titled “Responses”The domain, with the new return-path records.
object
The DKIM TXT record (vaartix._domainkey, with the domain’s public key), the MAIL FROM MX and SPF TXT records on the return path (vxmail for new domains, vx-bounces if vxmail was in use and for older domains), and a recommended DMARC TXT record. Domains added before 30 October 2026 show three DKIM CNAME records and send instead.
object
Full record name.
The name relative to the registrable domain (by the public suffix list), which is what goes in a DNS provider’s Name or Host field. @ for the registrable domain itself.
MX records only.
For the optional DMARC record: verified when a DMARC record was found (on the domain or its registrable domain) at the last check, pending when not, and left out until the domain has been checked once.
True for the recommended DMARC record: it isn’t needed to send, so its status doesn’t affect the domain’s status.
The return-path (MAIL FROM) domain: where bounces go, and what Gmail shows as “mailed-by” under “Show details”. Always vxmail.<domain>, except vx-bounces.<domain> when vxmail was in use, and on domains added before vxmail was the standard (which can move with PUT /domains/{id}/return-path).
Default for emails from this domain. Off unless turned on.
Default for emails from this domain. Off unless turned on.
Example
{ "id": "dom_5bvatg1v837anztd", "name": "acme.in", "status": "pending", "region": "ap-south-1", "records": [ { "type": "TXT", "name": "vaartix._domainkey.acme.in", "host": "vaartix._domainkey", "value": "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA...", "status": "pending" }, { "type": "MX", "name": "vxmail.acme.in", "host": "vxmail", "value": "feedback-smtp.ap-south-1.amazonses.com", "priority": 10, "status": "pending" }, { "type": "TXT", "name": "vxmail.acme.in", "host": "vxmail", "value": "v=spf1 include:amazonses.com ~all", "status": "pending" }, { "type": "TXT", "name": "_dmarc.acme.in", "host": "_dmarc", "value": "v=DMARC1; p=none;" } ], "returnPath": "vxmail.acme.in"}validation_error: the request is invalid. The message says which field and why.
object
object
Stable, machine-readable error type.
Human-readable explanation, safe to show to developers.
Example
{ "error": { "type": "validation_error", "message": "to: \"priya@\" is not a valid email address." }}unauthorized: the API key is missing, invalid or revoked.
object
object
Stable, machine-readable error type.
Human-readable explanation, safe to show to developers.
Example
{ "error": { "type": "validation_error" }}forbidden: the key cannot do this, for example a send-only key on a management endpoint.
object
object
Stable, machine-readable error type.
Human-readable explanation, safe to show to developers.
Example
{ "error": { "type": "validation_error" }}not_found: no such resource in your team.
object
object
Stable, machine-readable error type.
Human-readable explanation, safe to show to developers.
Example
{ "error": { "type": "validation_error" }}conflict: the request clashes with the current state, for example too many endpoints.
object
object
Stable, machine-readable error type.
Human-readable explanation, safe to show to developers.
Example
{ "error": { "type": "validation_error" }}