Glossary

Organization. The account. Plans, limits and billing apply to the whole organization. People sign in to it in the dashboard; code uses API keys.

Pod. A group inside an organization that holds inboxes, keys, webhooks, domains and lists. Every organization has a default pod. Use one pod per customer when you build a multi-tenant product. Plan limits are not per pod. See pods.

Inbox. An email address you can send from and receive at, with a display name, optional metadata and a status of active or paused. See inboxes.

Message. One email, inbound or outbound. Its message_id is the internal id (msg_...); rfc_message_id is the standard Message-ID header.

Thread. Messages grouped as one conversation, by the In-Reply-To and References headers, falling back to the normalised subject for inbound mail. See threads.

Label. A plain string on a message, such as received, unread, sent, bounced or one you invent. A thread shows the union of its messages' labels. See labels.

Draft. An unsent message, optionally scheduled with send_at. See drafts.

Extracted text. extracted_text and extracted_html hold the new part of a reply with the quoted earlier messages removed. The full body stays in text and html.

Attachment. A file on a message, sent as base64 content or fetched from a url, and downloaded through a short-lived link. See attachments.

Allow list and block list. Entries (addresses or domains) that decide who an inbox may send to, receive from or reply to, at organization, pod or inbox scope. See lists.

Suppression. An address that hard-bounced or complained. Sends to it fail with 422 recipient_suppressed until you remove it. See lists.

Webhook. A URL that receives signed HTTP POST deliveries of events, with retries. Delivery is one attempt to reach it. See webhooks.

Event. Something that happened, such as message.received or message.bounced. Events go to webhooks, to WebSocket subscribers and into the events log.

WebSocket. A live connection at /v0/websocket that pushes events while it is open. There is no replay. See WebSockets.

API key. A secret starting am_ sent as Authorization: Bearer. It can be limited to a pod or an inbox and to named permissions. Only a hash is stored, so the secret is shown once. See authentication.

Permission. A name such as message_send that a key must hold for a route. Keys without a permission list have full access within their scope.

Idempotency key. A value you send in the Idempotency-Key header on send, reply, forward and draft send so a retry does not send twice. Stored for 48 hours.

Custom domain. A domain you own, added so the API can generate its MX, SPF, DKIM and DMARC records and check them. Sending from and receiving on it is not connected yet. See domains.

SPF, DKIM, DMARC. DNS records that let receiving servers check that mail really came from a domain. See domains and deliverability.

Bounce and complaint. A bounce is a refusal by the recipient's server; a complaint is the recipient marking the mail as spam. Both suppress the address.

Open tracking. An optional one-pixel image that reports when a message is first opened. A weak signal. See open tracking.

Agent sign-up. POST /v0/agent/sign-up, which lets software create an organization, an inbox and a key by itself. Sending stays locked until a human verifies a 6-digit code.

MCP. The Model Context Protocol, a standard way for an AI assistant to call tools. This service offers mail tools over MCP, hosted at /mcp or as a local server. See MCP.

Early access. The state of the service today: one server, no uptime commitment, illustrative prices. See status and early access.