anymail developer documentation
The anymail REST API reads and writes the data of one workspace: prospects, campaigns, companies, replies, offers, suppressions, webhook subscriptions and mailboxes. Every response is JSON. An MCP server exposes the same operations to LLM clients.
Base URL#
https://app.anymail.watch/api/v1
The version is the /api/v1/ path prefix. There is no other versioning mechanism. The API has no CORS headers, so call it from a server or a script.
What you can do#
| Resource | Reads | Writes |
|---|---|---|
| Prospects | List, get | Create, update |
| Campaigns | List, get, list enrolments | Enrol prospects, pause, resume |
| Companies | List, get with account temperature | None |
| Replies | List classified replies | Correct a classification |
| Offers | List, get with visits and reading time | None |
| Suppressions | List | Create, delete |
| Webhook subscriptions | List | Subscribe, unsubscribe |
| Mailboxes | List | None |
The API has 23 endpoints. The MCP server offers one tool for each of them.
Conventions#
- Authentication. Send a workspace API token as
Authorization: Bearer sgn_…. See Authentication. - Isolation. A token sees only its own workspace. A resource from another workspace returns
404. - Rate limit. 60 requests per minute per token. See Rate limits.
- Lists. Every list returns
{"data": [...], "next_cursor": "..."}. See Pagination. - Errors. Every error returns JSON with an
errormessage. See Errors. - Timestamps. ISO 8601 with a time zone, for example
2026-09-03T10:00:00.123456+00:00. - Unknown input. Unknown query parameters and unknown body fields are ignored. A known parameter with an invalid value returns
400.
Where to start#
- Follow the Quick start to generate a token and make a first call.
- Read Idempotency keys before you write from a script that retries.
- Subscribe to events with Webhooks, or connect an LLM client to the MCP server.
The changelog lists every change to the API.