← receivemail.dev

Developers

Everything you need to integrate receivemail.dev: no account for the free tier, a paid key in one checkout, and a machine-readable contract.

1. Get started (no key)

curl -X POST https://receivemail.dev/mailboxes
# {"address":"a1b2c3d4e5f6@receivemail.dev","expiresAt":"…","secret":"…"}

curl "https://receivemail.dev/mailboxes/a1b2c3d4e5f6@receivemail.dev/wait?timeout=25" \
  -H "Authorization: Bearer <secret>"

2. Get an API key (optional, self-serve)

Pick a plan on the pricing page and pay with Stripe. Your rmk_… key is shown on screen right after checkout, with a ready-to-run example; no email round trip. Pro ($7/mo) gives 24h mailboxes, 120 creates/min per key and an extracted otp field; Pro + Webhooks ($19/mo) also pushes each email to your HTTPS URL. To cancel or replace a lost key, email flovoice53@gmail.com with your Stripe receipt.

3. Authentication

CallHeader
POST /mailboxesNone on the free tier, or Authorization: Bearer rmk_… with a paid key
Reading a mailboxAuthorization: Bearer <secret>, the secret returned when that mailbox was created

Webhook deliveries carry X-Receivemail-Signature: hex HMAC-SHA256 of the raw body, keyed with your API key.

4. Endpoints

EndpointWhat it does
POST /mailboxesCreate an address. Body {"ttlMinutes": n, "webhookUrl": "https://…"}, both optional.
GET /mailboxes/{address}Mailbox metadata.
GET /mailboxes/{address}/messagesLast 50 messages, newest first.
GET /mailboxes/{address}/waitLong-poll up to 25 s for a message newer than since.

Full contract with schemas and error codes: openapi.json (OpenAPI 3.1). Agent-facing files: llms.txt, ai-catalog.json, index.md. In a WebMCP-aware browser the homepage also exposes create_mailbox, wait_for_email and list_messages as tools.

MCP server

Remote MCP server at https://receivemail.dev/mcp (Streamable HTTP, no auth needed) with the tools create_mailbox, wait_for_email and list_messages. Add it to Claude Code with:

claude mcp add --transport http receivemail https://receivemail.dev/mcp

Or in any client's JSON config:

{ "mcpServers": { "receivemail": { "url": "https://receivemail.dev/mcp" } } }

Send Authorization: Bearer rmk_… on the connection to use a paid key. Server card: /.well-known/mcp/server-card.json.

5. SDKs and integrations

PackageUse
playwright-receivemailPlaywright helpers: create an inbox, wait for the email
cypress-receivemailCypress commands: create an inbox, wait for the email
n8n-nodes-receivemailn8n community node

Recipes: FAQ, testing verification emails in CI, otp field and webhooks.

6. Limits and errors

Free20 creates/min per IP, 5,000/day shared, mailboxes up to 60 min
Paid120 creates/min per key, mailboxes up to 24 h
AllPlain-text bodies only, last 50 messages, mail kept about 24 h

Errors are JSON {"error": "…"}: 400 bad input, 401 wrong secret or inactive key, 402 webhooks need the Pro + Webhooks plan, 404 not found, 429 rate limited (retry shortly).

Support

flovoice53@gmail.com. Source: GitHub.