InboxDome API
Test email flows in CI: create a disposable inbox, trigger your signup or password-reset, wait for the message, extract the verification code, assert. One HTTP call each.
Get an API keyOpenAPI specUsage dashboard
1. Get a key (free)
Free plan: 30 requests/min, 50 inboxes/day, 1 webhook. Your key is shown once — store it safely. Guides: Playwright ·Cypress · Node ·Python · PHP ·MCP (AI agents) · GitHub Actions ·WordPress
2. Create an inbox
curl -X POST https://inboxdome.com/v1/inboxes \
-H "Authorization: Bearer idk_live_..." \
-H "Content-Type: application/json" \
-d '{"domain":"smart","ttlSeconds":3600}'
# → {"inbox":{"id":"inb_...","emailAddress":"h4x8s2kq@mail.inboxdome.com",...}}3. Wait for the OTP
# Blocks up to 30s until a verification code arrives
curl "https://inboxdome.com/v1/inboxes/inb_.../wait?for=otp&timeoutSeconds=30" \
-H "Authorization: Bearer idk_live_..."
# → {"message":{...},"otp":{"value":"482913","confidence":0.95}}4. Read messages & attachments
GET /v1/inboxes/{id}/messages # newest first, cursor pagination
GET /v1/inboxes/{id}/messages/{messageId} # text, sanitized HTML, OTP, links
GET /v1/inboxes/{id}/messages/{mid}/attachments/{attId} # binary download
DELETE /v1/inboxes/{id} # immediate purge5. Signed webhooks
POST /v1/webhooks {"url":"https://ci.example.com/hook"} # secret returned once
# Every message.received POST carries:
# X-InboxDome-Event: message.received
# X-InboxDome-Signature: hex(HMAC-SHA256(secret, body))
# Failed deliveries retry automatically (5 attempts). Delivery log: GET /v1/webhooks/deliveries6. Email assertions
# Wait for the email AND verify it in one call
curl -X POST https://inboxdome.com/v1/inboxes/inb_.../assert \
-H "Authorization: Bearer idk_live_..." \
-H "Content-Type: application/json" \
-d '{"timeoutSeconds":45,"assertions":[
{"type":"otpPresent"},
{"type":"containsText","text":"Welcome"},
{"type":"linkResponds","urlContains":"verify"},
{"type":"auth","check":"dkim"}]}'
# → {"passed":true,"arrived":true,"arrivalSeconds":2.1,"results":[...]}
# Save a named set once (POST /v1/scenarios), then POST /v1/scenarios/{id}/run per test.7. Testing platform
- MCP server — point any AI coding agent at
https://inboxdome.com/mcpand it can create inboxes and read OTPs while testing your app. Setup → - GitHub Action — create/wait/assert steps for CI signup tests.Guide →
- WordPress plugin — one-click wp_mail/WooCommerce deliverability test with SPF/DKIM/DMARC results. Guide →
- Team keys & environments —
POST /v1/keysmints named keys scoped tolive/testenvironments, withadmin/memberroles. - Bring your own domain —
POST /v1/domains, add the TXT record, verify, and receive test mail on your own domain.
Plans
| Plan | Requests/min | Inboxes/day | Webhooks |
|---|---|---|---|
| Free | 30 | 50 | 1 |
| Pro | 120 | 500 | 5 |
| Scale | 300 | 5,000 | 20 |
Paid plans launch via RapidAPI shortly (direct billing later). Until then, need higher limits? Contact us. See API Terms.