Sync APIs
Use sync endpoints to poll for changes with state tokens returned by earlier responses, or open an event stream when a client needs live updates.Event stream
GET /mailbox/events streams mailbox events as Server-Sent Events. Use it for
agents, CLIs, MCP servers, and SDKs that need to react when inbound mail arrives.
Use webhooks instead when a backend service should
receive signed event POSTs without keeping a live connection open.
id as the Last-Event-ID
header or the last_event_id query parameter. If the stream sends
sync_required, call GET /mailbox/changes before reopening the stream.
Optional query parameters:
Message query changes
GET /mailbox/messages/query-changes tracks how a filtered message list has
changed since a prior query_state. Omit since_query_state to get the
current query state for a filter without a change list.
Folder changes
GET /mailbox/folders/changes tracks folder object changes. Omit
since_state to get the current folder state without a change list.
Folder query changes
GET /mailbox/folders/query-changes tracks folder-list ordering changes. Omit
since_query_state to get the current folder query state.
Typed mailbox changes
GET /mailbox/changes keeps the legacy message-only response when types is
omitted. Pass a comma-separated types list to receive a typed state map.
types values are messages, folders, threads, submissions,
identities, and quotas.