Get started

Versioning

The API has no version number yet.

We add fields and routes without notice, so ignore fields you don't know. Breaking changes, such as removing a field or route or changing what it means, are announced on these pages before they ship.

Changes

September 2026. Breaking changes made before 1.0:

  • Get a message returns the text in bodyUntrusted, between BEGIN and END UNTRUSTED EMAIL CONTENT lines, and no longer has body. It also adds vip: true for VIP senders. This is the same shape as the MCP get_message tool.
  • Every error is { error, error_description } with a snake_case code in error. Errors that used to put a sentence in error, such as no such inbox, now use codes such as inbox_not_found. See Errors.
  • Get the account returns a fixed set of fields. Billing ids and other internal fields are gone.
  • Triage heartbeat and end return 404 for an unknown inbox, and a held lease is 409 lease_busy. List triage activity leaves paused inboxes out.
  • /api and /mcp have request limits. See Limits.

Added: vip on List messages rows, and POST /oauth/revoke.