Domains

The DNS records that let you send from your own domain.

You can only send from a domain you have proven you control. This is not our rule — it is how email works. Without it, anyone could send as you.

Requires the domains scope, or do it in your workspace under Domains, where no API key is needed.

Add a domain

curl https://api.hamanimail.com/v1/domains \
  -H "Authorization: Bearer hme_yourkeyid_yoursecret" \
  -H "Content-Type: application/json" \
  -d '{ "domain": "yourbusiness.com.au" }'

The response lists the DNS records to publish.

MethodPathPurpose
POST/v1/domainsregister a domain; returns the records to publish
GET/v1/domains/:domainthe domain's current verification status
POST/v1/domains/:domain/recheckread your DNS now and confirm
POST/v1/domains/:domain/resetstart the domain's verification again

What each record does

RecordTypeWhy it exists
DKIMthree CNAMEssigns every message cryptographically so the receiver can prove it really came from you and was not altered. This is the one that actually verifies your domain.
SPFTXTlists who is allowed to send for your domain.
DMARCTXTtells receivers what to do when a message fails the checks above, and where to send reports.
Bounce / MAIL FROMMX + TXT on a subdomaingives bounces somewhere to go that belongs to your domain, which aligns your mail and improves delivery.
MX on the domain itselfMXoptional, and only if you want us to receive your mail. See the warning below.

Set the DKIM records to DNS only if your provider offers a proxy toggle (Cloudflare's orange cloud). A proxied CNAME cannot be read as a DKIM record and verification will never complete.

Do not publish the MX unless you mean it

A domain's MX record decides where all of its incoming mail is delivered. Publishing ours replaces your current provider.

If your domain is on Google Workspace or Microsoft 365 today, leave the MX alone. Sending needs the DKIM, SPF, DMARC and bounce records only. Your inbound mail keeps working exactly as it does now.

Publish the MX only when you actually want Hamanimail to receive mail for that domain.

Verifying

Publish the records, then call recheck:

curl -X POST https://api.hamanimail.com/v1/domains/yourbusiness.com.au/recheck \
  -H "Authorization: Bearer hme_yourkeyid_yoursecret"

DNS changes are not instant. A record has a TTL — the time other servers are allowed to keep the old answer — so a change can take anywhere from a minute to a few hours to be visible everywhere. If recheck says the record is missing and you are certain you published it, wait for the TTL and check again.

When verification will not complete

What you seeUsual cause
DKIM records not foundpublished at the wrong name — check whether your provider appends the domain automatically, which turns abc._domainkey.yourbusiness.com.au into abc._domainkey.yourbusiness.com.au.yourbusiness.com.au
DKIM found but not validthe record is proxied. Set it to DNS only.
Nothing resolves at allthe domain's nameservers are not pointing at the DNS provider you are editing. Records added at a registrar you no longer delegate to have no effect.
Verified, then failed laterthe record was edited or removed. DKIM is checked continuously, not just once.

That last row matters: a domain that has verified can fail again if someone changes your DNS. We re-check rather than trusting a one-time pass.