Returns a list of all domains across all accounts for the authenticated user.
Response includes: - parked_domain (boolean): Indicates if the domain is parked (true) or live (false). Parked domains have limited message volume. - tags (array): Array of tag objects associated with the domain, each containing id, name, and color.
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |
{
"domains": [
{
"id": 2593,
"user_id": 1,
"address": "123.com",
"slug": "123-com",
"rua_report": true,
"ruf_report": true,
"mta_sts_report": null,
"dmarc_status": "dmarc_record_published",
"mta_sts_status": "mta_sts_inactive",
"parked_domain": false,
"created_at": "2023-03-31T11:49:04.099Z",
"updated_at": "2023-04-06T16:00:41.258Z",
"tags": [
{
"id": 1,
"name": "Production",
"color": "#3B82F6"
}
]
},
{
"id": 2503,
"user_id": 1,
"address": "sampledomain.com",
"slug": "sampledomain-com",
"rua_report": true,
"ruf_report": true,
"mta_sts_report": false,
"dmarc_status": "dmarc_inactive",
"mta_sts_status": "mta_sts_inactive",
"parked_domain": true,
"created_at": "2022-04-15T11:05:05.212Z",
"updated_at": "2023-04-06T16:00:26.839Z",
"tags": []
},
{
"id": 2596,
"user_id": 1,
"address": "dmarcreport.com",
"slug": "dmarcreport-com",
"rua_report": true,
"ruf_report": true,
"mta_sts_report": true,
"dmarc_status": "dmarc_record_published",
"mta_sts_status": "mta_sts_active",
"parked_domain": false,
"created_at": "2022-04-15T11:05:05.212Z",
"updated_at": "2023-04-06T16:00:26.839Z",
"tags": [
{
"id": 2,
"name": "Client-A",
"color": "#10B981"
},
{
"id": 3,
"name": "Enterprise",
"color": "#F59E0B"
}
]
}
]
}
Returns a list of all domains in the specified account.
Response includes: - parked_domain (boolean): Indicates if the domain is parked (true) or live (false). Parked domains have limited message volume. - tags (array): Array of tag objects associated with the domain, each containing id, name, and color.
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |
{
"domains": [
{
"id": 2593,
"user_id": 1,
"address": "123.com",
"slug": "123-com",
"rua_report": true,
"ruf_report": true,
"mta_sts_report": null,
"dmarc_status": "dmarc_record_published",
"mta_sts_status": "mta_sts_inactive",
"parked_domain": false,
"created_at": "2023-03-31T11:49:04.099Z",
"updated_at": "2023-04-06T16:00:41.258Z",
"tags": [
{
"id": 1,
"name": "Production",
"color": "#3B82F6"
}
]
},
{
"id": 2503,
"user_id": 1,
"address": "sampledomain.com",
"slug": "sampledomain-com",
"rua_report": true,
"ruf_report": true,
"mta_sts_report": false,
"dmarc_status": "dmarc_inactive",
"mta_sts_status": "mta_sts_inactive",
"parked_domain": true,
"created_at": "2022-04-15T11:05:05.212Z",
"updated_at": "2023-04-06T16:00:26.839Z",
"tags": []
},
{
"id": 2596,
"user_id": 1,
"address": "dmarcreport.com",
"slug": "dmarcreport-com",
"rua_report": true,
"ruf_report": true,
"mta_sts_report": true,
"dmarc_status": "dmarc_record_published",
"mta_sts_status": "mta_sts_active",
"parked_domain": false,
"created_at": "2022-04-15T11:05:05.212Z",
"updated_at": "2023-04-06T16:00:26.839Z",
"tags": [
{
"id": 2,
"name": "Client-A",
"color": "#10B981"
},
{
"id": 3,
"name": "Enterprise",
"color": "#F59E0B"
}
]
}
]
}
Returns detailed information about a specific domain.
The :id parameter can be either the numeric ID or the slug of the domain.
Response includes: - parked_domain (boolean): Indicates if the domain is parked (true) or live (false). Parked domains have limited message volume. - tags (array): Array of tag objects associated with the domain, each containing id, name, and color.
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |
{
"id": 16,
"user_id": 1,
"address": "abc.com",
"slug": "abc-com",
"rua_report": true,
"ruf_report": true,
"mta_sts_report": true,
"dmarc_status": "dmarc_active",
"mta_sts_status": "mta_sts_active",
"parked_domain": false,
"created_at": "2020-04-21T23:33:47.526Z",
"updated_at": "2023-04-06T16:00:24.086Z",
"tags": [
{
"id": 1,
"name": "Production",
"color": "#3B82F6"
},
{
"id": 2,
"name": "Client-A",
"color": "#10B981"
}
]
}
| Param name | Description |
|---|---|
|
id required |
Domain ID (numeric, e.g., “123”) or slug (e.g., “example-com”) Validations:
|
Creates a new domain in the specified account.
Parked Domains: Set parked_domain: true to create a parked domain. Parked domains have limited message volume and are useful for domains that don’t actively send email. Requires parked domain quota in your subscription.
Response includes: - parked_domain (boolean): Indicates if the domain is parked or live - parked_domain_credits (integer): Message credits remaining (only for parked domains) - parked_domain_status (string): Status of parked domain (only for parked domains) - tags (array): Array of tag objects associated with the domain
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |
| Param name | Description |
|---|---|
|
domain required |
Validations:
|
|
domain[address] required |
Address of your domain Validations:
|
|
domain[rua_report] required |
Receives RUA Report against your domain Validations:
|
|
domain[ruf_report] required |
Receives RUF Report against your domain Validations:
|
|
domain[mta_sts_report] optional |
Receives MTA-STS Report against your domain Validations:
|
|
domain[parked_domain] optional |
Set to true to create a parked domain with limited message volume (requires parked domain quota) Validations:
|
|
domain[tag_ids] optional |
Array of tag IDs to attach to the domain Validations:
|
|
domain[tag_names] optional |
Array of tag names to attach to the domain (must exist) Validations:
|
|
domain[mta_sts_policy] optional |
Validations:
|
|
domain[mta_sts_policy][mode] required |
Policy Mode Validations:
|
|
domain[mta_sts_policy][mx] required |
Detected Mail Records Separated by comma eg: custmx.cscdns.net, mail.dmarc.com Validations:
|
|
domain[mta_sts_policy][mx_age] required |
Policy Age (Valid Time in_days) Validations:
|
Updates settings for a specific domain.
Hosted Services: Enable hosted DMARC or MTA-STS to have DNS records managed by our system. When enabled, the response includes CNAME records you must add to your DNS.
hosted_dmarc: Enable hosted DMARC (requires paid plan)hosted_mta_sts: Enable hosted MTA-STS (requires paid plan and mta_sts_report enabled)hosted_dmarc_config: Custom DMARC record (optional)DMARC Record: When you enable hosted DMARC, we generate a default record for you. The response includes default_dmarc_record and current_dmarc_config fields. If you want to customize the record (policy, sp, pct, etc.), provide hosted_dmarc_config but keep the RUA and RUF addresses from the default record - these are required to receive reports.
Parked Domain Restrictions: - Hosted MTA-STS is not available for parked domains - Hosted DMARC for parked domains requires p=reject policy - Subdomain policy (sp) must also be reject for parked domains
After adding the CNAME records, use the verify endpoints to check propagation.
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |
| Param name | Description |
|---|---|
|
domain required |
Validations:
|
|
domain[rua_report] optional |
Receives RUA Report against your domain Validations:
|
|
domain[ruf_report] optional |
Receives RUF Report against your domain Validations:
|
|
domain[mta_sts_report] optional |
Receives MTA-STS Report against your domain Validations:
|
|
domain[hosted_dmarc] optional |
Enable hosted DMARC - DNS records managed by our system (requires paid plan) Validations:
|
|
domain[hosted_dmarc_config] optional |
Custom DMARC record. Must include RUA and RUF addresses from default_dmarc_record to receive reports. Validations:
|
|
domain[hosted_mta_sts] optional |
Enable hosted MTA-STS - DNS records managed by our system (requires paid plan and mta_sts_report) Validations:
|
Returns the current status of hosted services for a domain, including: - Whether hosted DMARC and MTA-STS are enabled - CNAME records that need to be added to DNS - Current CNAME verification status
Use this endpoint to get the CNAME values after enabling hosted services, and to check the current propagation status.
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |
Checks the complete status of hosted DMARC setup including CNAME propagation and Route53 TXT record.
Response includes: - overall_status: Overall setup status - ready: All records configured and published - action_required: User needs to add/fix CNAME records - pending: System is still processing - cname: CNAME record status (user’s DNS) - verified: CNAME correctly configured - awaiting_setup: User hasn’t added CNAME yet - misconfigured: CNAME exists but has wrong value - txt_record: TXT record status (our Route53) - published: Record is live in Route53 - queued: Record creation in progress
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |
Checks the complete status of hosted MTA-STS setup including all CNAME records, Route53 TXT records, and policy file.
Response includes: - overall_status: Overall setup status - ready: All records configured, published, and policy file active - action_required: User needs to add/fix CNAME records - pending: System is still processing - records.policy_cname: Policy CNAME status (mta-sts.domain.com) - records.mta_sts_record: MTA-STS record status (_mta-sts.domain.com) - cname_status: CNAME verification status - txt_record_status: Route53 TXT record status - records.tls_rpt_record: TLS-RPT record status (_smtp._tls.domain.com) - cname_status: CNAME verification status - txt_record_status: Route53 TXT record status - records.policy_file: MTA-STS policy file status - active: Policy file accessible - pending: Policy file not yet created - unreachable: Unable to reach policy file
CNAME statuses: verified, awaiting_setup, misconfigured TXT record statuses: published, queued
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |
| Param name | Description |
|---|---|
|
record optional |
Which record to verify: policy, mta_sts, tls_rpt, or all (default: all) Validations:
|
Generates a DMARC record for your domain with all the options available in our UI. Our reporting addresses (RUA and RUF) are automatically included.
Standard DMARC Options: - p (policy): How to handle emails that fail DMARC (none, quarantine, reject) - sp (subdomain policy): Policy for subdomains (none, quarantine, reject) - pct (percentage): Percentage of emails to apply the policy to (0-100) - adkim (DKIM alignment): How strictly to check DKIM (r=relaxed, s=strict) - aspf (SPF alignment): How strictly to check SPF (r=relaxed, s=strict) - fo (forensic options): When to send forensic reports (0, 1, d, s - can combine with colon) - additional_rua_emails (array): Additional email addresses for aggregate reports - additional_ruf_emails (array): Additional email addresses for forensic reports
DMARCbis Options (newer standard): - t (test mode): Enable test mode - reports only, no policy enforcement (y, n) - psd (public suffix domain): Is this a public suffix domain? (y, n, u=unknown) - np (non-existent subdomain policy): Policy for non-existent subdomains (none, quarantine, reject)
Forensic Options (fo) explained: - 0: Send report if all authentication fails (default) - 1: Send report if any authentication fails - d: Send report if DKIM fails - s: Send report if SPF fails - Combine with colon, e.g., “1:d:s” for multiple options
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |
| Param name | Description |
|---|---|
|
p required |
Policy: none (monitor), quarantine (spam folder), reject (block) Validations:
|
|
sp optional |
Subdomain policy (optional) Validations:
|
|
pct optional |
Percentage of emails to apply policy (0-100) Validations:
|
|
adkim optional |
DKIM alignment: r=relaxed (default), s=strict Validations:
|
|
aspf optional |
SPF alignment: r=relaxed (default), s=strict Validations:
|
|
fo optional |
Forensic options: 0, 1, d, s (combine with colon, e.g., “1:d”) Validations:
|
|
additional_rua_emails optional |
Additional aggregate report email addresses Validations:
|
|
additional_ruf_emails optional |
Additional forensic report email addresses Validations:
|
|
t optional |
DMARCbis: Test mode (y=yes, n=no) Validations:
|
|
psd optional |
DMARCbis: Public suffix domain (y=yes, n=no, u=unknown) Validations:
|
|
np optional |
DMARCbis: Non-existent subdomain policy Validations:
|
|
publish optional |
Also publish this record to hosted DMARC (requires hosted_dmarc enabled) Validations:
|
| Code | Description |
|---|---|
| 401 | Unauthorized |
| 403 | Forbidden |
| 404 | Not Found |
| 500 | Server crashed for some reason |