curl --request GET \
--url https://app.sendmux.ai/api/v1/providers/{public_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.sendmux.ai/api/v1/providers/{public_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.sendmux.ai/api/v1/providers/{public_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.sendmux.ai/api/v1/providers/{public_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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": {
"allowed_actions": {
"activate": true,
"deactivate": true,
"delete": true,
"test": true,
"update": true
},
"created_at": "2026-05-25T02:18:00Z",
"from_email": "<string>",
"from_name": "<string>",
"has_refresh_token": true,
"has_smtp_password": true,
"id": "dprov_clxxxxxxxxxxxxxxxxxxxxxxxxx",
"is_active": true,
"is_editable": true,
"is_shared": true,
"last_tested_at": "<string>",
"last_used_at": "<string>",
"name": "Transactional SMTP",
"oauth_email": "<string>",
"percentage": 100,
"quotas": {
"per_day": {
"max": 60,
"min": 60
},
"per_hour": {
"max": 60,
"min": 60
},
"per_minute": {
"max": 60,
"min": 60
},
"per_second": {
"max": 60,
"min": 60
}
},
"reply_to_email": "<string>",
"reply_to_name": "<string>",
"smtp_host": "<string>",
"smtp_port": 123,
"smtp_protocol": "<string>",
"smtp_username": "<string>",
"status": "active",
"status_reason": "<string>",
"tracking_domain": "<string>",
"type": "smtp",
"updated_at": "2026-05-25T02:18:00Z"
}
}{
"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
}Get a sending account
Returns one sending account. Responses include an ETag for conditional GET and optimistic PATCH.
curl --request GET \
--url https://app.sendmux.ai/api/v1/providers/{public_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://app.sendmux.ai/api/v1/providers/{public_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://app.sendmux.ai/api/v1/providers/{public_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://app.sendmux.ai/api/v1/providers/{public_id}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
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": {
"allowed_actions": {
"activate": true,
"deactivate": true,
"delete": true,
"test": true,
"update": true
},
"created_at": "2026-05-25T02:18:00Z",
"from_email": "<string>",
"from_name": "<string>",
"has_refresh_token": true,
"has_smtp_password": true,
"id": "dprov_clxxxxxxxxxxxxxxxxxxxxxxxxx",
"is_active": true,
"is_editable": true,
"is_shared": true,
"last_tested_at": "<string>",
"last_used_at": "<string>",
"name": "Transactional SMTP",
"oauth_email": "<string>",
"percentage": 100,
"quotas": {
"per_day": {
"max": 60,
"min": 60
},
"per_hour": {
"max": 60,
"min": 60
},
"per_minute": {
"max": 60,
"min": 60
},
"per_second": {
"max": 60,
"min": 60
}
},
"reply_to_email": "<string>",
"reply_to_name": "<string>",
"smtp_host": "<string>",
"smtp_port": 123,
"smtp_protocol": "<string>",
"smtp_username": "<string>",
"status": "active",
"status_reason": "<string>",
"tracking_domain": "<string>",
"type": "smtp",
"updated_at": "2026-05-25T02:18:00Z"
}
}{
"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 previous response. Returns 304 when unchanged.
Path Parameters
Sending account public ID
"dprov_clxxxxxxxxxxxxxxxxxxxxxxxxx"
Response
Sending account
true Hide child attributes
Hide child attributes
ISO 8601 creation timestamp
"2026-05-25T02:18:00Z"
Default From email address.
Default From display name.
Whether an OAuth account has an active connection token.
Whether a custom SMTP password is stored.
Sending account public ID
"dprov_clxxxxxxxxxxxxxxxxxxxxxxxxx"
Whether this account is enabled for sending.
False when the account is platform-managed.
True for the team's shared Amazon SES account.
Last connection test timestamp.
Last send timestamp.
Display name
"Transactional SMTP"
Connected account email for OAuth accounts.
Routing weight percentage.
100
Hide child attributes
Hide child attributes
Default Reply-To email address.
Default Reply-To display name.
SMTP host for custom SMTP accounts.
SMTP port for custom SMTP accounts.
SMTP security mode.
SMTP username for custom SMTP accounts.
Current sending account status.
active, inactive, error, pending "active"
Public-safe reason for the current status.
Custom tracking hostname.
Sending account type. amazon_ses is the shared managed account.
smtp, gmail_api, outlook_api, amazon_ses "smtp"
ISO 8601 last update timestamp
"2026-05-25T02:18:00Z"
Was this page helpful?