Email is one of the oldest protocols on the internet, yet receiving and processing it programmatically in 2025 is still surprisingly painful. You either bolt on a third-party service with a sprawling dashboard, or you spend weeks configuring Postfix and writing your own MX record handling.
We built Programmable Inbox because we kept running into this exact problem. Every time we needed to receive email in an application — whether for a support inbox, a contact form, or an AI assistant that handles inbound messages — we ended up stitching together a half-dozen services.
What is Programmable Inbox?
Programmable Inbox is an email infrastructure layer that lets you provision inboxes, receive messages, thread conversations, and send replies entirely via a REST API and webhooks.
# Create an inbox
curl -X POST https://api.programmableinbox.dev/inboxes \
-H "Authorization: Bearer $API_KEY" \
-d '{"name": "support", "domain": "acme.com"}'Every inbox gets a real email address. Messages sent to that address arrive at your webhook endpoint within seconds, fully parsed: headers, body, attachments, threading metadata — all in JSON.
Why not just use X?
We get asked this a lot. Here's the short version:
- SendGrid / Postmark are great at sending email. Receiving is bolted on and limited.
- Loops / Customer.io are marketing tools. They're not designed for application-level inbox handling.
- Inbound parsing services like Mailgun parse and forward, but don't give you threading, multi-tenancy, or an API to query history.
Programmable Inbox is the missing piece: a dedicated inbox primitive for applications.
Open source first
Everything we build ships as MIT-licensed open source. You can self-host the entire stack on your own infrastructure — a single Docker Compose file is all you need. The SaaS version (coming soon) is just a managed version of the same codebase.
We believe infrastructure this foundational should belong to the community, not be locked behind a vendor.
Get started
The fastest way to try it is to clone the repo and run the dev stack locally:
git clone https://github.com/programmable-inbox/inbox
cd inbox
docker compose upFull documentation is on its way. In the meantime, join our GitHub Discussions to ask questions or share what you're building.