Clement docs
Clement is API-first: every action a customer can take in the dashboard is available over HTTP, with the same auth and the same handlers. These docs cover everything you need to send your first email, run a campaign, and integrate Clement into your own product or agent.
Quickstart
Sign up, create a key, send your first email — in five minutes.
API reference
Every endpoint, generated from the OpenAPI 3.1 spec.
Send your first email
Single-recipient and multi-inbox fan-out from POST /v1/sends.
Webhooks
Signed event delivery, retries, and the deliveries log.
Errors
The error envelope, every code, and how to recover.
Webhook events
Every event type, what triggers it, and the payload shape.
The shape of the API
- REST + JSON. No GraphQL, no RPC.
- Bearer auth.
Authorization: Bearer cl_live_… - Predictable IDs. Type-prefixed ULIDs —
inb_…,cmp_…,snd_…— readable to humans and agents. - Idempotent.
Idempotency-Keyrequired on side-effect-bearing POSTs. - Cursor-paginated. Never offset.
- Signed webhooks. HMAC-SHA256 over timestamp + body, Stripe-style.
- Agent-friendly. Stable error codes with
doc_urls,?dry_run,?confirm, OpenAPI-generated MCP server.
SDKs & tools
- TypeScript SDK —
@clement/sdk, hand-written wrapper around fetch. Quickstart. - OpenAPI 3.1 spec — api.clement.so/openapi.json.
- MCP server —
mcp.clement.so, ships with Phase A8. - llms.txt — concise and verbose agent-friendly dumps.