Create temporary mailboxes with a single HTTP call. Get a unique API key per mailbox. No accounts, no setup, no complexity.
$ curl -X POST https://tempy.email/api/v1/mailbox
{
"email": "quick.pixel.f3k9@tempy.email",
"webUrl": "https://tempy.email/?mailbox=quick.pixel.f3k9",
"expiresAt": "2026-02-12T14:30:00Z",
"secondsRemaining": 600
}
$ curl https://tempy.email/api/v1/mailbox/quick.pixel.f3k9@tempy.email/messagesEverything you need to handle disposable email in your testing and automation workflows.
Create disposable addresses with a single POST request. 10-minute lifetime, auto-cleanup, zero config. Each mailbox gets a web viewer URL too.
Forward incoming emails to your server in real-time as JSON or XML. No polling loops — get notified the instant mail arrives.
We deliberately don't offer outbound sending. Zero spam potential — this API is purpose-built for catching inbound mail, not sending it.
Base URL: https://tempy.email/api/v1
Creating mailboxes works without auth (throttled) or with an X-Api-Key for higher limits. All other endpoints are fully public.
✨ Developer-friendly: Content-Type defaults to application/json — no need to specify it!
/api/v1/mailbox
Auth optionalCreate a new disposable mailbox. Optionally pick a domain or configure a webhook URL.
X-Api-Key — free, throttled to 1 req/sec per IP.
With X-Api-Key — uses 1 credit, higher rate limits.
{ "domain": "tempy.email", "webhookUrl": "https://...", "webhookFormat": "json" }/api/v1/mailbox/{address}Check mailbox status and remaining lifetime.
/api/v1/mailbox/{address}/messagesRetrieve all emails for this mailbox.
/api/v1/mailbox/{address}Immediately deactivate a mailbox.
Pass webhookUrl and
webhookFormat when creating a mailbox.
We'll POST each incoming email to your endpoint immediately. Targets must resolve to public IPs (SSRF-protected).
{ "id": "msg_abc123", "from": "noreply@example.com",
"to": "quick.pixel.f3k9@tempy.email",
"subject": "Verify your account",
"body_text": "Your code is 123456",
"received_at": "2026-02-12T14:25:30Z",
"direction": "inbound" }Create a real disposable mailbox — right here, right now. It expires in 10 minutes.
Creates a real disposable mailbox on our servers.
Copy-paste examples for your language of choice.
# 1. Create a disposable mailbox
RESPONSE=$(curl -s -X POST https://tempy.email/api/v1/mailbox)
EMAIL=$(echo $RESPONSE | jq -r '.email')
echo "Mailbox: $EMAIL"
# 2. Poll for incoming emails
curl -s https://tempy.email/api/v1/mailbox/$EMAIL/messages | jq
# 3. Check mailbox status
curl -s https://tempy.email/api/v1/mailbox/$EMAIL | jq
# 4. Create a mailbox with webhook
curl -s -X POST https://tempy.email/api/v1/mailbox \
-H "Content-Type: application/json" \
-d '{"webhookUrl": "https://your-server.com/hook", "webhookFormat": "json"}'
# 5. Cleanup when done
curl -s -X DELETE https://tempy.email/api/v1/mailbox/$EMAIL| Rule | Limit |
|---|---|
| Mailbox lifetime | 10 minutes |
| Create mailbox | 30 / minute per IP |
| Poll / status requests | 120 / minute per IP |
| Delete mailbox | 30 / minute per IP |
| Outbound sending | Not available |
| Webhook targets | Public IPs only (SSRF protected) |