For senders who can't afford a bad day in the inbox
Switch without a rewrite, send alongside vetted senders only, and see every message from send to click.
01Send
Switch in minutes, not sprints
Install an SDK in your language, swap the client, and send your first message. Eight official SDKs, plus SMTP for anything already wired for it.
HTTP or SMTP, same events either way
Batch sends and safe retries over the API, or SMTP for the tools that already speak it. One API key works for both.
- Batch sends
- Up to 100 messages in one
POST /v1/email/batch. - Idempotency keys
- Send an
Idempotency-Keyheader and a retry never sends twice. - SMTP over TLS
- Ports
587,2587, or25, with STARTTLS required before you sign in.
Keep your templates. Write the next one in Markdown.
Your HTML templates work as they are. For the next one, write a few lines of Markdown, or describe it in a sentence, and get an email tested in the inboxes your recipients use.
- Draft and publish
- Edits wait in a draft. Sends always use the published version.
- Variables
- Per-send and per-recipient values in the subject, body, and headers.
- Open source
- Rendered by emailmd, with more than 1,000 stars on GitHub.
Acme
Welcome aboard
Welcome aboard
Thanks for joining, Jamie.
- Set up your domain
- Send your first email
Rendered and checked across the clients your recipients actually use.
Or describe it, and let AI write it
The template editor's AI assistant drafts a complete template from a sentence, layout and copy included, and revises it when you ask.
Write a shipping confirmation for an Acme order: confirm it shipped, show the delivery date, and add a button to track the package.
Generate templateEight languages, one install
Each SDK is idiomatic to its language. Prefer no SDK at all? The API is plain HTTP and JSON, so curl works just as well.
- Open source
- The source for every SDK is on GitHub, a click from the code beside it.
- Docs for your AI tools
- Every docs page is published as Markdown, with
llms.txtandllms-full.txtindexes.
02Deliver
Reach the inbox. Stay there.
Where your mail lands starts with the network it leaves from. Ours carries vetted senders only, and we guard the reputation your mail builds.
Your network decides where you land. Ours is vetted.
Mailbox providers check the IP your mail leaves from before they read a word of it. Ours carry mail for vetted senders only, so your first send goes out on a reputation good senders built.
- Vetted neighbors
- On a shared plan, the senders beside you on each IP are vetted too. A stranger's bad list isn't your problem.
- Our own IP ranges
- Registered to us, not borrowed from a cloud provider, so they carry no one else's history.
- Dedicated when you need it
- Your own IPs, or a range you bring, when your volume calls for it. Our deliverability experts warm them up.
Protect your reputation. Keep your streams apart.
A bounce or a complaint stops mail to that address before it costs you more. An unsubscribe stops only the mail it was for, so receipts and sign-in codes still get through.
- Managed warm-up
- Our deliverability experts ramp your sending at the pace mailbox providers trust, so a move looks steady, not sudden.
- One suppression list
- For every domain on your team. Bounces and complaints block all mail to an address; an unsubscribe blocks only its topic.
- Feedback loops
- Complaint reports from Microsoft and Yahoo suppress the address and reach you as an
email.complainedevent. - Dedicated pools
- Split dedicated addresses into named pools and pick one per message with
ip_pool, so marketing never slows or taints transactional mail.
The next three sends to Alex
- April newslettertopic newsletteremail.suppresseddropped, not billed
- Your receipttopic receiptsemail.deliveredaccepted by the mailbox
- Your sign-in codeno topicemail.deliveredaccepted by the mailbox
A bounce or a complaint would have stopped all three.
Three CNAMEs, then never touch DNS again
We generate your DKIM keys and run your SPF, DKIM, and MX records ourselves. Keys rotate without a ticket to whoever runs your DNS.
- One click on Cloudflare
- Approve once and the records are created in your zone. Every other provider takes the same three CNAMEs by hand.
- Tracking on your brand
- Open and click links on a subdomain like
track.example.com, for one more CNAME. A tracking problem never blocks a send. - One-click unsubscribe
- Signed
List-UnsubscribeandList-Unsubscribe-Postheaders per recipient, as Gmail and Yahoo require for bulk mail.
In your DNS
- CNAME anypostverification→ dq7mx2kf.c.anypost.email
- CNAME s1._domainkey.anypostdkim→ s1._domainkey.dq7mx2kf.c.anypost.email
- CNAME s2._domainkey.anypostdkim→ s2._domainkey.dq7mx2kf.c.anypost.email
- CNAME tracktracking→ track.anypost.email
Kept by Anypost, behind your CNAMEs
- SPF
- names the servers your mail leaves from
- DKIM
- keys rotated with no DNS change
- MX
- where bounces come back
03See
Never wonder where a message went
Nine events follow each message, from accepted to delivered to clicked. Watch them in the dashboard, query them from the API, or get them pushed to your endpoint the moment they happen.
Measure campaigns at the click, not the send
Label a send once with tags, a topic, a campaign, or a template. Every event for that message carries the labels, opens and clicks included, so you can filter by any of them.
- One event model
- The same nine types, from
email.senttoemail.clicked, in the dashboard, the API, and your webhooks. - Opens you can trust
- Prefetchers and link scanners never become events, and opens from mailbox image proxies are labeled.
- Bounces that explain
permanent,transient, orexpired, with the receiving server's response, so a server that was down never counts against your list.
The labels were set once, on the send. The click carries all four.
Durable webhooks, signed every time
A failed delivery is retried for up to 12 hours. If your endpoint keeps failing, we pause and probe instead of piling on, so a bad deploy on your side loses nothing.
- Signed
- HMAC-SHA256 over the timestamp and the raw body, in
Anypost-Signature. Every SDK verifies it in one call. - Retried with backoff
- From 30 seconds up to an hour between attempts, with a stable
batch_idto de-duplicate on. - A circuit breaker
- After a run of failures, deliveries pause while we probe your endpoint slowly. Events wait in the queue until it recovers.
- Rotation without gaps
- For 24 hours after you rotate, every delivery is signed with both secrets, so you redeploy at your own pace.
Your endpoint goes down at 14:00
- 14:00:02503retry in 30s
- 14:00:33timeoutretry in 1m
- 14:00:51circuit_disabledpaused after five failures in a row; events queued; probe in 5m
- 14:05:51503next probe in 10m
- 14:15:51204delivered, queue resumes
The same batch_id on every attempt, so a retry you already stored is easy to skip.
04Trust
Secure by default. Human when it counts.
Your recipients' data is encrypted everywhere it lives and kept only as long as your policy requires. Your account opens only to the people and keys you choose. And when you write, an email expert writes back.
Nothing kept longer than your policy allows
Every email you send is personal data, so we treat it that way: encrypted in transit and at rest, and kept as long as your policy requires. Not a day longer.
- Encrypted in transit
- TLS on the API, STARTTLS required for SMTP submission, and TLS to each mailbox provider whenever it offers it, required where it publishes MTA-STS.
- Encrypted at rest
- Every disk that holds your data, and every backup.
- Retention on your terms
- Tell us the window your policy sets, and your event history is kept for exactly that.
- The paperwork
- A DPA with the Standard Contractual Clauses, a published subprocessor list with 14 days' notice of changes, and notice of a security incident within 72 hours.
- Event historyAs long as your policy requiresExported as it happens through webhooks and the Events API
- Queued mailUntil deliveredUp to 7 days for mail that keeps failing, then dropped
- SuppressionsWhile they must be honoredSo an address that bounced or complained stays stopped
- BackupsAbout 30 daysEncrypted before they leave our servers
- Suspected abuse30 daysMessages our abuse checks flag, held for review, then deleted
All of it encrypted at rest.
Every key scoped. Every change logged.
Give each person the role their job needs and each server a key that can only do its job. Every sign-in and every change to your setup lands in your audit log.
- Invite your team
- Invite teammates by email as owners, admins, or members, with 5 to 20 seats by plan and more for larger programs. A member works on templates but can't change domains, keys, or webhooks.
- Scoped API keys
send_onlyorfull, limited to the sending domains and source IPs you list. Anything else gets a403.- Two-factor sign-in
- An authenticator app on any account, with recovery codes.
- An audit log
- Sign-ins, failed sign-ins, two-factor changes, and every change to keys, domains, webhooks, members, and billing, with who, when, and from where.
- Staff access
- Our staff reach accounts only through an access gateway and an admin role, and everything they do is logged.
- permission
- send_only
- domains
- example.com
- source IPs
- 203.0.113.0/24
Audit log, today
- 14:02API key created · Production server[email protected]
- 13:58Two-factor confirmed[email protected]
- 13:41Sign-in failed · 198.51.100.7[email protected]
- 11:20Webhook secret rotated[email protected]
- 10:05Member role changed · member to admin[email protected]
Email experts, on every plan
The team behind Anypost has spent more than 20 years in email security and deliverability. That team manages your sending and answers your email, whatever plan you're on.
- Managed deliverability
- Your reputation and your sending managed by our team, and a word from us when something looks off, before it becomes a problem.
- Support that knows email
- Write to support and the people who answer are the ones who run deliverability, at every tier.
- A named manager
- Dedicated plans add a deliverability manager assigned to your program.
- Your reputation managed by our team
- A word from us when sending looks off
- Support from the people who run deliverability
- A named deliverability manager
The same people answer whichever plan you're on.