AI agent or LLM? Read /llms.txt for a structured overview instead.
Open source ยท Self-hosted ยท Receive-first

A secondary inbox built for developers.

Receive email through an API for tests, automations, and AI agents. Read messages, retrieve email OTPs, and route matching mail to webhooks. Use the hosted app or self-host on your own infrastructure.

No credit card required.

Multiple ways to access
API ยท SDK ยท MCP
Last code, one call
/otp
Auto categories
10+
Open source license
AGPL v3

What you get

The inbox layer, done once and done right

Stop rebuilding the same receive โ†’ parse โ†’ store โ†’ automate plumbing on top of a forwarder. Programmable Inbox is a real, persistent secondary inbox you address in code.

  • Addresses in seconds

    Create receiving addresses via API or UI on an approved domain. Use separate inboxes for tests, environments, or signups within your plan limits. Custom domains and self-hosting require mail infrastructure setup.

  • Email codes extracted

    Retrieve extracted email OTPs through the /otp endpoint. For sign-in and verification URLs, read the message body and parse the link your application expects; test extraction against your own templates.

  • Categorized automatically

    Inbound mail is classified out of the box across 10+ categories โ€” OTP, promotional, time-sensitive, updates, notifications, and more โ€” so you can filter and route on meaning, not brittle keyword matches.

  • Automate on arrival

    Set rules that run on every message: when the subject or body matches, contains a code, or lands in a category โ€” forward it to an address or fire a webhook. No server to stand up.

  • API-first, always

    List, search, and read received messages over the documented REST API. Use /otp to retrieve a recent extracted email code; retry within a deadline if delivery is still pending.

  • Own your data

    Open source under AGPL v3 and self-hostable. Choose where you store messages and manage your own infrastructure. Review your deployment and external integrations to control where email data is sent.

REST API

Every message, one API call away

Read received messages through the documented REST API and retrieve email codes with /otp. Links can be parsed from message text. These snippets and sample responses illustrate the API shape; adapt them to your SDK version, approved domain, unique test addresses, and scoped key. They are not executed integration tests.

import { Configuration, EmailInboxesApi } from '@programmableinbox/sdk'

const config = new Configuration({ accessToken: process.env.PI_API_KEY })
const api = new EmailInboxesApi(config)

const inbox = await api.createEmailInbox({
  createEmailInboxRequest: {
    email: '[email protected]',
    name: 'CI signup',
  },
})

console.log(inbox.data)
// {
//   id: 'inbox-1',
//   organizationId: 'org-1',
//   email: '[email protected]',
//   name: 'CI signup',
//   createdAt: '2026-07-13T12:00:00Z',
//   updatedAt: '2026-07-13T12:00:00Z'
// }

Compare programmable email inboxes

Choose the inbox that fits your workflow. Here is how Programmable Inbox compares with testing and agent-email alternatives.

Seven capabilities compared across Programmable Inbox, MailSlurp, Mailosaur, and AgentMail, based on official documentation.
CapabilityProgrammable InboxMailSlurpMailosaurAgentMail
Inbound email API
Yes
Yes
Yes
Yes
Email code extraction
Yes
Yes
Yes
No
Extracted email links
Yes
Yes
Yes
No
Official SDKs
YesTS, Python, Go, C#
Yes10 languages
Yes7 languages
YesTS, Python
Official MCP access
Yes
Yes
No
Yes
Incoming-email automation
Yes
Yes
YesPaid plans
NoWebhooks only
Deployment
Hosted or self-hosted
Hosted
Hosted
Hosted or AWS BYOC

Based on official documentation reviewed , not live-account tests.

Open source forever

Your infra, your rules

We will always maintain a fully open source, self-hosted version of Programmable Inbox for the community. No lock-in. No paywalled features. No surprises.

Self-hosted

Deploy on your own infrastructure โ€” Postgres, Next.js, and an inbound email pipe is all you need. Your OTPs, receipts, and PII never leave your box. Full source on GitHub under an AGPL v3 license โ€” fork it, extend it, own it.

  • AGPL v3 licensed, forever
  • No feature gating
  • Bring your own domain
  • Community support on GitHub
Star on GitHub
Now live

Managed SaaS

Skip the ops. We'll handle uptime, backups, and scaling while you focus on your product. Every feature from the open source version, plus managed deliverability and priority support.

  • Zero-ops deployment
  • Managed uptime & backups
  • Priority support
  • Generous free tier, paid plan starts at $5/month
Try the hosted app

Community first. The self-hosted version will always be free, feature-complete, and actively maintained. That's a promise, not a pricing tier.

Spin up your secondary inbox

Create a programmable address, grab your first OTP, and wire up a rule in minutes. Self-host for free, or sign up for managed cloud โ€” either way, you own your data.

No credit card required ยท AGPL v3 license ยท Community supported