Public MX receiving
Receive mail from any external provider through a production-shaped SMTP edge.
Feature reference
Receive, match, extract, inspect, simulate, and operate without stitching together a mailbox, a polling loop, a parser, and a billing guess.
Connect to hosted InboxSpec with REST examples for JavaScript, Python, Java and more. SDK and CLI require access to our private release. Connect your agent with hosted MCP and a project key. Choose a connection method.
Receive
Exercise the same routing and transport behavior that production depends on.
Receive mail from any external provider through a production-shaped SMTP edge.
Authenticate from staging, accept any recipient, and guarantee that nothing is delivered externally.
Map run IDs to stable addresses for parallel CI without passing mailbox state between workers.
Start immediately with an InboxSpec-owned domain for smoke tests and evaluation.
Use a receiving domain your own product accepts through REST, SDK or CLI.
Preserve exact bytes and return short-lived download URLs when the caller asks for them.
Find and extract
Matching and extraction collapse multiple network calls and local parsing into one typed result.
Hold one server-side call until the right message arrives. Waiting is free and exempt from rate limits.
Match subject, sender, recipients, body text, headers, presence of codes, and classified link types.
Normalize and confidence-rank verification codes across text and HTML content.
Return verify, sign-in, reset-password, unsubscribe, and other links as distinct kinds.
Return compact body projections by default, with an explicit pointer to full content.
A timed-out result reports non-matching arrivals and a repair hint instead of throwing an ambiguous error.
Integrate
Pick the transport that fits the worker. Do not trade away semantics to get it.
Every tool executes against the core domain model, with descriptions written for autonomous callers.
OpenAPI 3.1 generated from the schemas that validate live requests, including typed error variants.
A typed client for inbox, message, domain, webhook, retention, audit, and usage workflows.
Stable exit codes separate no match, bad input, authentication, quota, and service failure.
Locally verifiable HMAC signatures, retries, and an inspectable delivery log.
Short-lived inbox-scoped tokens push arrivals directly to the console through Server-Sent Events.
Simulate
Fixed addresses produce known SMTP outcomes without configuring a special inbox first.
Exercise a permanent 550 rejection and verify the application stops retrying.
Return a temporary mailbox-full response and verify retry behavior.
Reject the first attempt temporarily, then accept a later delivery.
Hold acceptance for a documented interval so timeout logic can be measured.
Return the correct SMTP size failure before the application treats the send as complete.
Exercise downstream complaint handling with a stable, documented simulator address.
Operate
Operational surfaces explain current state without becoming another source of hidden state.
Postgres remains the billing system of record, with every accepted message represented once.
Read project audit events through REST or the SDK. The console does not list audit events.
See message quota, request rate, concurrent waits, and retention before a run depends on them.
Messages expire after their retention period. Set inbox retention and clean up test messages through the API.
Attach authentication verdicts, spam score, and scanning state to the message they describe.
The service status page reports recent email-delivery checks. Missing or stale checks are shown as unknown.
Protect
Human identity, project access, and message access remain separate principals.
API keys and capture credentials are stored as SHA-256 hashes and displayed only once.
Give CI only the routes it needs, and revoke the exact credential that stopped being trustworthy.
Ownership checks sit at every parameterized boundary, with not found and not yours deliberately identical.
Reject unsafe webhook destinations at registration, before a delivery attempt can touch the network.
Read sanitized HTML through the API. The console shows delivery details and codes; it does not preview email HTML.
Per-project ceilings cap the damage from leaked relay credentials or abusive receiving domains.