curl --request PATCH \
--url https://app.sendmux.ai/api/v1/domains/{public_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"mode": "send_receive"
}
'import requests
url = "https://app.sendmux.ai/api/v1/domains/{public_id}"
payload = { "mode": "send_receive" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({mode: 'send_receive'})
};
fetch('https://app.sendmux.ai/api/v1/domains/{public_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.sendmux.ai/api/v1/domains/{public_id}"
payload := strings.NewReader("{\n \"mode\": \"send_receive\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": true,
"data": {
"created_at": "<string>",
"dns_records": {
"dkim": [
{
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
}
],
"dmarc": {
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
},
"mail_from": {
"mx": {
"name": "bounce.acme.com",
"priority": 10,
"target": "feedback-smtp.eu-central-1.amazonses.com"
},
"spf": {
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
}
},
"mx": [
{
"priority": 10,
"target": "mail.sendmux.ai"
}
],
"spf": {
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
},
"verification": {
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
}
},
"domain": "mail.acme.com",
"id": "mdom_clxxxxxxxxxxxxxxxxxxxxxxxxx",
"mailbox_count": 14,
"mode": "send_receive",
"ses_dkim_status": "<string>",
"ses_mail_from_status": "<string>",
"verified_at": "<string>"
}
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}Update a mailbox domain
Upgrades a send-only domain to sending and receiving. Downgrades are rejected. After upgrade, the domain returns to pending until the required MX record verifies.
curl --request PATCH \
--url https://app.sendmux.ai/api/v1/domains/{public_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"mode": "send_receive"
}
'import requests
url = "https://app.sendmux.ai/api/v1/domains/{public_id}"
payload = { "mode": "send_receive" }
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PATCH',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({mode: 'send_receive'})
};
fetch('https://app.sendmux.ai/api/v1/domains/{public_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://app.sendmux.ai/api/v1/domains/{public_id}"
payload := strings.NewReader("{\n \"mode\": \"send_receive\"\n}")
req, _ := http.NewRequest("PATCH", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": true,
"data": {
"created_at": "<string>",
"dns_records": {
"dkim": [
{
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
}
],
"dmarc": {
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
},
"mail_from": {
"mx": {
"name": "bounce.acme.com",
"priority": 10,
"target": "feedback-smtp.eu-central-1.amazonses.com"
},
"spf": {
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
}
},
"mx": [
{
"priority": 10,
"target": "mail.sendmux.ai"
}
],
"spf": {
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
},
"verification": {
"name": "_sendmux.acme.com",
"value": "sendmux-verify=team_abc123"
}
},
"domain": "mail.acme.com",
"id": "mdom_clxxxxxxxxxxxxxxxxxxxxxxxxx",
"mailbox_count": 14,
"mode": "send_receive",
"ses_dkim_status": "<string>",
"ses_mail_from_status": "<string>",
"verified_at": "<string>"
}
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}{
"error": {
"code": "invalid_parameter",
"message": "<string>",
"retryable": false,
"doc_url": "<string>",
"errors": [
{
"code": "invalid_string",
"field": "recipient.email",
"message": "<string>"
}
],
"param": "<string>"
},
"meta": {
"request_id": "req_clxxxxxxxxxxxxxxxxxxxxxxxxx"
},
"ok": false
}Authorizations
Sendmux API key. Use a root API key for Management API routes, or a mailbox credential for Mailbox API routes. Obtain keys from the dashboard under API Keys.
Headers
Weak ETag from a prior GET. Reject with 409 conflict when the server's current ETag differs.
Path Parameters
Domain public ID
"mdom_clxxxxxxxxxxxxxxxxxxxxxxxxx"
Body
The only supported update is upgrading to send_receive.
send_receive "send_receive"
Response
Updated domain
true Hide child attributes
Hide child attributes
ISO 8601 creation timestamp
Hide child attributes
Hide child attributes
Custom MAIL FROM records for Amazon SES bounce handling
Hide child attributes
Hide child attributes
MX record for Amazon SES bounce handling
Fully qualified domain name
"mail.acme.com"
Public ID
"mdom_clxxxxxxxxxxxxxxxxxxxxxxxxx"
Active mailboxes currently using this domain
x >= 014
send_only verifies outbound DNS only. send_receive also verifies MX records and can host mailboxes.
send_only, send_receive "send_receive"
Amazon SES DKIM status (pending/success/failed/temporary_failure/not_started)
Amazon SES MAIL FROM status (pending/success/failed/temporary_failure/not_started)
Current verification state
pending, verified, failed ISO 8601 timestamp of last successful verification
Was this page helpful?