By default, emails your agents and lifecycle messages send come from
support@subcontext.com. With a sending domain, they come from an address
on your own domain instead, signed so that inboxes trust them.
Subcontext sends email through Amazon SES (Simple Email Service). You add a domain in the dashboard, publish the records it gives you at your DNS provider, and Subcontext checks for them until the domain is verified.
Before you start#
- Your plan. Sending domains is a plan feature. If Sending domains isn't in your dashboard's settings, it isn't on your plan.
- Who. An owner or manager adds the domain. Whoever runs your DNS publishes the records.
- Choose the domain carefully. Emails can only come from an address on
exactly the domain you verify. If you verify
example.com, you can send fromsupport@example.combut not fromsupport@mail.example.com, and the other way round. Verify the domain your From address will use, which is usually your main domain rather than amail.subdomain. The dashboard warns you if you add one. - Check the bounce subdomain is free. Subcontext uses a subdomain of your
domain for bounces,
mail.unless you choose another (see the records). Ifmail.example.comalready exists as a CNAME (for webmail, say), the new records can't sit beside it. Choose another subdomain, such asbounce, under Bounce subdomain when you add the domain.
Adding the domain#
In the dashboard, open Sending domains, enter the domain (for example
example.com) and press Add. To use a bounce subdomain other than
mail., open Bounce subdomain first and enter it. If the page says your
email sending workspace is still being set up, check back shortly. This is a
one-off step for your organisation.
You can add a domain again after removing it.
The domain's page then shows a DNS setup table with a Host, Type and Value for each record. Copy them from there, because the values are unique to your domain.
The records#
There are six. For the domain example.com they look like this (the three
DKIM tokens, shown here as TOKEN1 to TOKEN3, are long random strings that
are different for every domain):
| Host | Type | Value | What it does |
|---|---|---|---|
TOKEN1._domainkey.example.com |
CNAME | TOKEN1.dkim.amazonses.com |
DKIM: lets inboxes check each email was signed for your domain. |
TOKEN2._domainkey.example.com |
CNAME | TOKEN2.dkim.amazonses.com |
DKIM, second key. |
TOKEN3._domainkey.example.com |
CNAME | TOKEN3.dkim.amazonses.com |
DKIM, third key. |
mail.example.com |
MX | 10 feedback-smtp.eu-west-1.amazonses.com |
The "mail from" (return path) address: where bounces go. |
mail.example.com |
TXT | v=spf1 include:amazonses.com ~all |
SPF for that return path. Allows Amazon SES to send for it. |
_dmarc.example.com |
TXT | v=DMARC1; p=none; rua=mailto:dmarc@example.com |
DMARC. Recommended but optional. See below. |
All six go on the domain you added. If you chose another bounce subdomain,
such as bounce, the MX and TXT records are on bounce.example.com instead
of mail.example.com. If you added a subdomain such as notify.example.com,
the hosts are ..._domainkey.notify.example.com, mail.notify.example.com
and _dmarc.notify.example.com.
You can change the bounce subdomain on the domain's page until the domain is verified. The page then shows the new MX and TXT records to publish.
What these change, and what they don't#
- Your existing email keeps working. None of these records touch your domain's own MX or SPF records. The MX and SPF go on the bounce subdomain, which only handles bounces from Subcontext's emails.
- DMARC is optional. It isn't checked for verification. If your
domain already has a DMARC record, keep it and don't add a second one.
A domain can have only one. Emails from Subcontext pass DMARC through
DKIM, so a stricter existing policy (
p=quarantineorp=reject) is fine once the domain is verified. If you do add the suggested one, change therua=address to a mailbox someone reads, or removerua=altogether.
Verification#
Subcontext checks your domain with Amazon SES automatically every 30 minutes. It counts as verified only when all of these pass: the three DKIM records, and the bounce subdomain's MX and SPF records. Most domains verify within a few hours of the records being published.
The domain shows one of these:
| Status | Meaning |
|---|---|
| Setting up | The domain is being registered with Amazon SES. |
| Waiting for DNS | Subcontext is checking for the records. The page says which ones haven't been found yet. |
| Verified | Amazon SES has confirmed the records. |
| Failed | The records weren't found within 72 hours, or setting the domain up failed. The page shows why. |
- Check verification status on the domain's page runs a check straight away. Refresh the page after a moment to see the result.
- A failed domain can recover. Amazon SES stops looking 72 hours after checking starts. Fix the records, then press Check verification status. Checking starts again for another 72 hours.
- Owners and managers can be told when a domain is verified or fails, with the Domain status changes notification.
Once it's verified#
- Choose the From address. Nothing is sent from your domain until you
choose its From address on the domain's page, for example
hello@example.com. You can choose it before the domain is verified, and change it at any time. Until then, emails keep coming fromsupport@subcontext.com. Use a real mailbox, or one that forwards somewhere. Replies to an agent's emails normally go back to the agent (its emails carry the agent's own address as the Reply-To), but some people write to the From address directly. - A product can have its own address. Set Sending email address in Settings, under Channels, to any address on a verified domain.
- An agent's email channel sends from its Forwarding address when that address is on a verified domain (see Receive email into an agent).
- Anything not on a verified domain falls back. An address on a domain
that isn't verified (or stops being verified) isn't used. Emails go
from
support@subcontext.cominstead, so they don't land in spam.
To stop sending from a domain, press Remove next to it in Sending domains. That also removes it from Amazon SES, so you can add it again later. You can then delete the DNS records.
Common DNS mistakes#
- The domain added twice. Many DNS providers add your domain to the end
of every host name. If yours does, enter
TOKEN1._domainkey(notTOKEN1._domainkey.example.com),mailand_dmarc. To check, look up the record afterwards (see below). If it showsexample.com.example.com, the domain was added twice. - The MX priority in the wrong place. The MX value is
10(the priority) followed by the mail server. If your provider has a separate priority box, put10there andfeedback-smtp.eu-west-1.amazonses.comin the value. - Proxied CNAMEs. On Cloudflare, set the three DKIM records to DNS only (grey cloud). A proxied record hides the CNAME and DKIM fails.
- Quotes around TXT values. Some providers add them for you, some want you to type them. Either way, the published value must be exactly the text in the table.
- A trailing dot. Some providers show
dkim.amazonses.com.with a final dot. The dot doesn't change the name.
Checking your records#
These commands show the records as published (replace the names with yours):
dig +short CNAME TOKEN1._domainkey.example.com
dig +short MX mail.example.com
dig +short TXT mail.example.com
dig +short TXT _dmarc.example.com
On Windows, use nslookup -type=CNAME TOKEN1._domainkey.example.com and so
on. A record that shows nothing hasn't been published yet, or is under the
wrong name.