https://console.mermail.app/api/agent/v1
This surface is listed for Circle Agent Marketplace. It is not the sold API at
/api/v1. Do not send x-api-key here.
How payment becomes identity
Unpaid calls return402 with x402 accepts[], including $0 reads. A
zero-amount challenge is an identity handshake: no USDC is charged, but the
signed payment still binds the payer address. The live 402 also includes
request and response JSON Schema in extensions.bazaar, so you can call the
endpoint without reading docs first.
Paid creates and sends also accept MPP. When MPP is enabled, the unpaid
402 includes WWW-Authenticate: Payment. Retry with either
PAYMENT-SIGNATURE (x402) or Payment-Authorization (MPP). Do not send both.
That address maps to a synthetic workspace that can hold up to 50 hosted
inboxes. Custom-domain addresses are not available on this surface.
A sold-API
402 with code credits_exhausted means the workspace API credit
pool is empty. An agent-marketplace 402 means the payment (or $0
handshake) is missing. Retry the marketplace call with PAYMENT-SIGNATURE or
Payment-Authorization, not with an API key.GET /api on the console host. That call is also a $0
handshake and returns agent_api_base_url.
Prices
The live402 accepts[] is the quote. Default listing prices:
Each distinct
POST /mailboxes creates a new hosted inbox. Replay the same
Idempotency-Key and body after an uncertain settlement. A new body is a new
inbox.
Created inboxes use verification agent-inbox mode with automations off.
Get, context, and attachment stay scan-gated: require scan_status=clean
before using body or file bytes. Non-clean inbound content returns metadata
with content_omitted.
Create an inbox
402 with Payment-Authorization instead of
PAYMENT-SIGNATURE.
Omit email to receive a generated hosted address. If you send email, it
must be a hosted Mermail address.
Read and send
List inboxes for the paying wallet, then reusepublic_id as {id}. Search
with a narrow sender, recipient, subject, or time window. Read one message only
after an unambiguous match.
Send, reply, and forward use the Email-module JSON contract (html and/or
text, plus from where required). See the API overview
for attachments and inline images.
What this API does not include
Workspace admin, custom domains, folder or label writes, mark-read, move, scheduled send, webhooks, usage metrics, empty trash, bulk delete, mailbox chat, task triage, Composio, Agent Wallet, and MCP are not listed here. Use the sold API or MCP for those product surfaces. OpenAPI for every listed operation:https://console.mermail.app/openapi.json.