Free · No signup · No API key · Or bring your own domain
Temporary email addresses, and an API to read them.
Pick any name, use it to sign up, verify or test — then read what arrived, in the browser or over HTTP. Everything is deleted after 5 days. Or point your own domain at us with a single MX record — every address on it works, off a name nobody else is using.
Pick your address
- No account, ever
- Attachments up to 5 MB
- Free REST API
- Auto-deleted after 5 days
Free REST API
curl -sG https://grabmail.io/api/v1/mailbox \
--data-urlencode "address=you@grabmail.io"
No key, no account, no rate card — that is the whole request. API reference · OpenAPI · MCP for AI agents
How it works
Three steps, about ten seconds
There is nothing to install, nothing to configure and nothing to remember.
-
01
Grab an address
One click. No account, no password, nothing to confirm. The address is live the moment it appears.
-
02
Use it anywhere
Paste it into any signup or verification form. Mail lands in your inbox within seconds of being sent.
-
03
Read it, forget it
Open the message, take the code or the link, and walk away. Everything is deleted after 5 days.
For developers
An API you can read in a minute
Three endpoints, JSON in and JSON out. No key and no account on public domains — built for the CI job that has to read a signup email.
Everything waiting at an address, newest first. This is the call your test suite polls.
$ curl -G https://grabmail.io/api/v1/mailbox \
--data-urlencode "address=k7fq2m@grabmail.io"
Response
{
"address": "k7fq2m@grabmail.io",
"count": 1,
"next": null,
"messages": [
{
"id": "01JR8W2K4Q",
"from": "no-reply@example.com",
"subject": "Your verification code",
"date": "2026-08-04T18:31:07Z",
"seen": false,
"attachments": 0,
"expires_at": "2026-08-09T18:31:07Z"
}
]
}
Headers, the plain-text part, the HTML part and any attachments.
$ curl -G https://grabmail.io/api/v1/message/01JR8W2K4Q \
--data-urlencode "mailbox=k7fq2m@grabmail.io"
Response
{
"id": "01JR8W2K4Q",
"from": "no-reply@example.com",
"to": "k7fq2m@grabmail.io",
"subject": "Your verification code",
"date": "2026-08-04T18:31:07Z",
"text": "Your code is 481920. It expires in 10 minutes.",
"html": null,
"attachments": []
}
Removes it at once, rather than waiting for the retention window to expire.
$ curl -X DELETE -G https://grabmail.io/api/v1/message/01JR8W2K4Q \
--data-urlencode "mailbox=k7fq2m@grabmail.io"
Response
{
"deleted": true,
"id": "01JR8W2K4Q"
}
Rate limit one request per second, per address. Be reasonable and you will never meet it.
Custom domains
Use your own domain, keep it private
One DNS record, and every address on your domain becomes a private mailbox here — nothing to create in advance, and your domain is never listed on this site.
-
Add this MX record at your DNS provider
TypeMXName@Priority10Value — the part you pastesmtp.grabmail.ioDelete any other MX record on the domain while you are there — mail can only be delivered to one place, and a leftover record sends part of it somewhere else.
-
Send it something
We look the record up as the message arrives; if it points here, the domain is connected on the spot and that first message is kept — not bounced while something is activated. Nothing to fill in, no key to keep.
-
Open any address
Go to
/inbox/anything@yourdomain.com. Every address on the domain works at once, and the same API covers them all — with no key, which also means anyone who knows the address can read it.
Public domain compared with your own
| Property | Public domain @grabmail.io, @mixozia.com, @linqmail.com, @plimbox.com, @mavobox.com, @plupmail.com, @zonkbox.com, @wazbox.com | Your own domain yourdomain.com |
|---|---|---|
| Who can read the inbox | Anyone who knows or guesses the address | Anyone who knows it — but only you know your addresses |
| Listed on this site | Yes | Never |
| Addresses | Unlimited, created on the fly | Unlimited, created on the fly |
| API | No key needed | Same API, no key either |
| Retention | 5 days | 5 days |
What you get
Everything you need, nothing you don't
-
No signup
Instant
An address exists the moment you ask for one.
-
3 endpoints
Free REST API
JSON in, JSON out. No key on public domains.
-
1 DNS record
Your own domain
Every address on it works, from the first message.
-
5 MB
Attachments
Per message, downloadable from the inbox or the API.
-
Zero scripts
No tracking
No analytics, no profiling, nothing sold.
-
5 days
Retention
A hard limit, not a setting. Read or not, it goes.
Guides
Longer answers, when the short one is not enough
- What is temp mail? Temporary email addresses, explained The definition, the mechanics (one MX record and a mailbox that exists the moment mail arrives), temp mail against disposable, burner and alias addresses, what it is good for, the four places it is the wrong tool, and how long an address lasts. Beginner 12 min read
- Sign up for anything without giving your real address What a disposable address is, how to open one, the alias trick that keeps the service you signed up to from reading the rest of your mail, and the cases where a throwaway address is the wrong tool. Beginner 9 min read
- Test an email verification flow end to end The full sign-up loop against a real mailbox: unique address per run, polling with a wall-clock deadline, extracting the code or the confirmation link, and working Playwright and pytest helpers. Intermediate 22 min read
GrabMail compared with… Temp Mail (temp-mail.org) 10 Minute Mail Guerrilla Mail Mailinator YOPmail mail.tm All 16 comparisons
FAQ
Questions people actually ask
Is it really free?
Yes. The public addresses, the API and connecting your own domain are free — no account, no card, no usage tier — and that does not change. There is one paid option, and it exists for a single reason: the public domains are on disposable-mail blocklists, so some signup forms refuse them. A paid plan opens a separate pool of domains that are not. Everything above stays free whether you take it or not.
Why did a signup form reject my address?
Because the domain is a known disposable one. The public domains here are listed on the public disposable-mail blocklists, and a large share of signup forms check those lists. Changing the part before the @ does not help — it is the domain being refused. Two ways around it: point your own domain at us, which is free and unlimited, or take a paid plan for API access to a pool of domains that are not on those lists.
Do I need an account?
No. Grab an address and use it. There is nothing to sign up for, which also means there is nothing about you to leak.
Can anyone else read my inbox?
Yes — anyone who knows or guesses the address can open it, on a public domain and on your own domain alike. There is no account here, so there is nothing an inbox could be locked to. The difference a domain of your own makes is that its addresses are on a name nobody else is using, rather than on one printed on every page of this site. Never use either for anything you would mind a stranger reading.
How long do messages last?
Every message is deleted 5 days after it arrives. You can also delete one yourself at any time, from the inbox or through the API.
Can I send email from a grabmail address?
No. grabmail receives only. There is no outbound sending, by design — it is what keeps the service from becoming a spam tool.
Can I use my own domain?
Yes. Add one MX record pointing at smtp.grabmail.io and every address on that domain starts working. Your domain is never listed publicly.
Are attachments supported?
Yes, up to 5 MB per message. Larger messages are refused by the mail server, so the sender is told immediately rather than left guessing.
Grab an address and get on with it
No account, no card, no cookie banner. It takes one click.