API and processing
Authenticate mailbox calls, enforce scopes and quotas, parse inbound events, serve search and thread operations, and dispatch webhooks.
Deploy the mails0 API to your Cloudflare account when the hosted sandbox is no longer the right boundary for production work.
mails0 can be self-hosted with Cloudflare Workers for the API and processing, D1 for mailbox and message metadata, R2 for raw messages and attachments, and Email Routing for inbound delivery. You configure your own domain, secrets, outbound sender provider, quotas, retention, monitoring, and abuse controls.
Separate compute, metadata, and raw message storage
Authenticate mailbox calls, enforce scopes and quotas, parse inbound events, serve search and thread operations, and dispatch webhooks.
Store identities, token state, message indexes, labels, thread references, delivery state, and bounded operational records.
Route mail from your domain into the Worker and preserve raw content or attachments outside general application telemetry.
The deployment uses Cloudflare primitives for distinct responsibilities so operators can inspect, scale, and retain each data class deliberately.
Authenticate mailbox calls, enforce scopes and quotas, parse inbound events, serve search and thread operations, and dispatch webhooks.
Store identities, token state, message indexes, labels, thread references, delivery state, and bounded operational records.
Route mail from your domain into the Worker and preserve raw content or attachments outside general application telemetry.
Provision D1 and R2, configure the Worker bindings, and apply the current schema and migrations.
Store authentication, hashing, webhook, and outbound provider secrets with the platform rather than in source files.
Configure Email Routing and DNS for the inbound subdomain, then verify the outbound domain with the selected sender provider.
Create a mailbox, send one message from an external service, confirm storage and retrieval, then exercise webhook or code extraction if required.
Choose retention, send and claim quotas, alerting, abuse review, and credential rotation before onboarding production workflows.
Source access does not remove operational work. The team becomes responsible for DNS, domain reputation, outbound provider configuration, Cloudflare limits, migrations, observability, incident response, and user support.
That trade is valuable when mailbox data must remain in an owned account, an agent needs a company domain, or the team must inspect and change the infrastructure. It is unnecessary when a managed vendor already satisfies the workflow and ownership is not a requirement.
| Decision point | Hosted sandbox | Self-hosted |
|---|---|---|
| First workflow proof | Fast temporary mailbox with abuse controls. | More setup than a first experiment needs. |
| Domain identity | Uses the hosted product domain. | Uses a domain or subdomain you control. |
| Data and retention | Operated under the hosted service boundary. | Defined in your Cloudflare resources and policies. |
| Outbound delivery | Subject to hosted capability and limits. | Configured with your verified sender provider. |
| Operations | Maintained by the hosted service. | Owned by your team, including incidents and upgrades. |
Product behavior is verified against the mails0 source and documentation. External comparisons link to official vendor documentation checked on 2026-08-15.
Small workloads can fit within Cloudflare free-tier allowances, but actual cost depends on traffic, storage, email volume, sender provider, and current Cloudflare pricing. Verify current limits before production planning.
No. Email Routing handles inbound routing. Configure an outbound sender provider and verify the sending domain for outbound delivery.
Yes, and a dedicated subdomain is usually safer because it avoids changing MX behavior for an existing human email system.
The team owns deployment, secrets, migrations, DNS, sender configuration, data retention, monitoring, abuse response, backups, and upgrades.
Start with a receive-only temporary mailbox. Move to a permanent identity or self-hosted deployment only after the workflow reaches a real email value event.