Getting started
chobitmail is a one-time email receiving API for E2E tests. Issue a disposable address per test and receive OTPs and confirmation links as JSON.
This page walks you through signup to your first successful receive.
1. Account and API key
- Sign in with GitHub (no credit card required)
- Create an API key in the dashboard
- Copy the key shown (
cbm_live_...format) right away
API keys are scoped to a team. Quotas (concurrent active inboxes, daily creates, daily receives) are also team-scoped.
Storing the key in an environment variable is convenient. Treat it as a secret and handle it carefully.
export CHOBITMAIL_API_KEY=cbm_live_...
2. Create a one-time address
curl -s -X POST https://chobitmail.com/api/inboxes \
-H "Authorization: Bearer $CHOBITMAIL_API_KEY"
Example response:
{
"id": "v56m2aq5ly17piq3",
"address": "v56m2aq5ly17piq3@chobitmail.com",
"createdAt": "2026-07-17T07:30:00.000Z",
"expiresAt": "2026-07-17T07:40:00.000Z"
}
address: email address to enter in the app under testid: inbox ID for later API callsexpiresAt: after this time, the address and messages are deleted automatically
3. Send email from your app
Send email to the one-time address created via /api/inboxes.
4. Wait for delivery
Use the /api/inboxes/<inbox id>/messages/wait API to wait until a message arrives.
curl -s "https://chobitmail.com/api/inboxes/v56m2aq5ly17piq3/messages/wait" \
-H "Authorization: Bearer $CHOBITMAIL_API_KEY"
Example response:
{
"message": {
"id": "k2x9m4p7q1w8e5r3",
"from": "noreply@myapp.example",
"subject": "[MyApp] Your verification code",
"text": "Your verification code is 482913.",
"html": "<p>Your verification code is <b>482913</b>.</p>",
"links": ["https://myapp.example/verify?token=abc123"],
"codes": ["482913"],
"attachments": [],
"receivedAt": "2026-07-17T07:30:00.000Z"
}
}
For OTP input tests, use message.codes[0]. For link confirmation, use message.links[0].
5. Delete the one-time address
On the free tier, concurrent inboxes are limited. Deleting after a test frees the slot immediately.
curl -s -X DELETE https://chobitmail.com/api/inboxes/v56m2aq5ly17piq3 \
-H "Authorization: Bearer $CHOBITMAIL_API_KEY"
Inboxes are also deleted when the TTL expires. The official Playwright fixture DELETEs automatically per test.
Next steps
| Goal | Docs |
|---|---|
| Endpoints overview, errors, Message shape | API guide (Japanese) |
| Interactive OpenAPI UI | /api/docs |
| A few lines of Playwright tests | Playwright (Japanese) |
| Raise free-tier limits | Sender domain verification (Japanese) |