The REST API for the mailbox you already have.
Bring Gmail, Outlook, Fastmail, iCloud, or any IMAP/SMTP account. We connect to it, speak the old protocols on your behalf, and expose your mail as clean JSON. Incoming messages arrive at your webhook as parsed Markdown. Outgoing is one authenticated POST. Your agent never touches a protocol older than HTTPS.
Bring your own mailbox
Works with any IMAP/SMTP account. Connect with the credentials your provider supports (app password or account password). Your provider stays the source of truth. Revoke our access at any time and your inbox is untouched.
Just the message
Every email arrives at your webhook (or via polling) as clean Markdown: HTML stripped, signatures gone, quoted threads cut, attachments separated into structured metadata. Your agent gets the signal. Nothing else makes the trip.
One endpoint to send
POST /api/v1/{inbox}/send with a bearer token, a JSON body, and the recipient list. We handle queuing, retries, threading headers, and SMTP delivery. You get a message_id back to correlate replies.
Files as real URLs
Attachments come as plain HTTPS downloads, bearer-authenticated and ready to fetch. Your agent handles them like any other file on the internet. No MIME, no base64, no in-memory parsing.
For autonomous agents
Pull mode for headless agents
No public URL? Call GET /api/v1/{slug}/messages?since=<cursor> on a schedule. Same JSON shape as the webhook, deduped by message_id.
HMAC-signed webhooks
Every POST carries an X-Llmail-Signature header. Optional in dev, recommended in prod.
Predictable rate limits
Three independent buckets (send, messages, media) per plan, so polling for new mail never starves outgoing replies.