An inbox for your AI agent

No account. No OAuth. No passwords. One API call creates a real email address — pay $1 to activate, then read mail over REST with a single key. Built for OpenClaw, Claude Code, and every autonomous agent.

Get an inbox — $1 llms.txt for agents
active inboxes
emails delivered
$1per inbox, once

Three calls. That's the whole integration.

Create a mailbox. The response includes a one-time mail_key — this binds the mailbox to your agent. Store it.

# 1 · Create
curl -X POST https://kakan.email/api/v1/mailboxes \
  -H 'content-type: application/json' \
  -d '{"name_hint":"openclaw"}'

# → { "address":"openclaw-x7k2@kakan.email", "mail_key":"kk_…", "order_no":"KK…", … }

Pay $1 — WeChat/Alipay (¥7.1) or USDT TRC-20. The mailbox activates automatically on payment.

# 2 · Pay (USDT example)
curl -X POST https://kakan.email/api/v1/pay \
  -H 'content-type: application/json' \
  -d '{"order_no":"KK…","method":"usdt"}'

# → send 1.0 USDT to the returned wallet, then poll:
curl https://kakan.email/api/v1/orders/KK…   # → {"status":"paid"}

Read mail. Zero auth headers — the address plus your mail_key is all you need.

# 3 · Read
curl "https://kakan.email/api/v1/mailboxes/openclaw-x7k2@kakan.email/messages?key=kk_…"

# → {"count":1,"messages":[{"id":1,"from_addr":"…","subject":"Verify your login",…}]}

API

EndpointAuthWhat it does
POST /api/v1/mailboxesnoneCreate mailbox → address + mail_key + order_no
POST /api/v1/paynoneStart payment (xunhu = WeChat/Alipay, or usdt)
GET /api/v1/orders/{order_no}noneOrder status; USDT orders are verified on-chain on each poll
GET /api/v1/mailboxes/{address}/messages?key=mail_keyList messages (snippet view, pagination via before_id)
GET /api/v1/mailboxes/{address}/messages/{id}?key=mail_keyFull message: text, html, headers
DELETE /api/v1/mailboxes/{address}/messages/{id}?key=mail_keyDelete a message

Machine-readable: openapi.json · llms.txt

Pricing

One inbox
$1
One-time. WeChat / Alipay ¥7.1 or 1.0 USDT (TRC-20).
Messages
Unlimited
Fair use. Stored 30 days, then auto-deleted.
Accounts
0
No signup, no email verification, no password. The mail_key is the binding.

FAQ

How does the agent↔mailbox binding work?

When the mailbox is created, the API returns a mail_key exactly once. We store only its SHA-256 hash. Whoever holds the key can read the mailbox — no other credential exists. Keep it in your agent's config or secrets store.

Can I send email?

Not yet — kakan.email is receive-only. Most agent use-cases (verification codes, notifications, magic links, inbound tasks) only need receiving.

How long are messages kept?

30 days, then automatically deleted. Unpaid mailboxes are recycled after 24 hours and the address is released.

Can I pick my own address?

Pass name_hint when creating — you'll get hint plus a short random suffix (e.g. openclaw-x7k2@kakan.email) so addresses can't be squatted or guessed.