Burner addresses, on a real domain, via API.
A clean address per signup, with TTL, search, and forwarding. Built on a domain that is not on the standard disposable-email blocklists — because it is a real one.
- Real MX, real DKIM
- CLI + SDK + API
- TTL or persistent
The problem with the existing options
Sometimes you need a fresh email address for a legitimate reason: testing your own signup flow under load, validating a free-tier limit on a service you build on, or running a migration where you need to re-register a hundred test accounts. Your real inbox is the wrong tool — it pollutes search, it is hard to script against, and you do not want a year's worth of receipts in your work account.
The browser-based disposable-inbox sites are the obvious next stop, and they fail for the same two reasons every time: they have no API (you cannot script them), and their domains are on every major blocklist (you cannot register with them on most real services). Some also rotate domains so quickly that the address you got five minutes ago is gone.
catchotp gives you the same convenience — fresh address, TTL, no setup — on a domain with proper MX records, DKIM signing, and a real abuse-handling story. Plus an API and a CLI so you can build the automation you actually wanted.
A note on responsible use. catchotp is built for developers testing their own products. We do not condone using burner addresses to violate the terms of services you do not own. Please use this responsibly.
What you get
CLI quickstart
catchotp inbox create
and you have an address. Watch it from the terminal; the JSON arrives the moment a
message does.
SDK + REST
Same primitives in Node, Python, and curl. Build the burner workflow into whatever script or service you already maintain.
TTL or persistent
Ephemeral inboxes self-destruct on a TTL. Persistent inboxes (Pro and above) stay until you delete them. Pick per-inbox.
Disposable-inbox sites vs catchotp
| Concern | Disposable inbox sites | catchotp |
|---|---|---|
| API access | No | REST + SDKs + CLI + MCP |
| Blocklist status | Often blocked | Not on the standard lists |
| Persistence | ~10 min, no control | Per-inbox TTL or persistent |
| OTP extraction | Eyeball only | Auto-parsed |
| Forwarding | No | Per-inbox rules |
From CLI to script
Start in the terminal; promote to a script when you want to automate. Same identifiers, same waiter semantics.
# Install the CLI once
npm install -g @catchotp/cli
catchotp login # paste your API key
# Create a burner address
catchotp inbox create --ttl 30m
# → inbox_01HK... · abc123@inbox.catchotp.com (expires in 30m)
# Watch it for incoming mail
catchotp inbox watch inbox_01HK...
# → resolves the moment any message arrives, prints the parsed JSON
# Or pull the latest OTP without opening anything
catchotp otp get inbox_01HK...
# → 482109 Burner email FAQ
Is this a "disposable email" service for evading signup gates?
Does inbox.catchotp.com show up on disposable-email blocklists?
How long does an inbox live?
Can I forward messages to my real email?
What about privacy — do you read message bodies?
Related use cases
AI agent email
Give your agent a real, scoped, disposable inbox via MCP.
QA automation
Persistent burners for regression suites, ephemeral for feature branches.
Read the SDK reference or jump straight to pricing.
Get a burner address in 60 seconds.
Free tier includes 5 inboxes and 1,000 messages a month. No credit card required.