Endpoints
Every route below is under api.<DOMAIN> and requires X-API-Key, except where noted.
Sending
| Method | Path | Notes |
|---|---|---|
POST | /v1/send | Send one message over one or more channels |
GET | /v1/messages | Delivery history |
GET | /v1/messages/{id} | One message |
GET | /v1/emails/{id} | The rendered email |
Contacts
| Method | Path | Notes |
|---|---|---|
POST GET | /v1/contacts | Create / list |
GET PATCH DELETE | /v1/contacts/{id} | One contact |
POST DELETE | /v1/contacts/{id}/unsubscribe | Suppress / lift |
GET DELETE | /v1/unsubscribes[/{id}] | The suppression list |
POST GET | /v1/contact-imports | Bulk CSV import |
GET | /v1/contact-imports/{id} | Import status |
POST GET PATCH DELETE | /v1/contact-properties[/{id}] | Property definitions |
POST GET PATCH DELETE | /v1/contact-tags[/{id}] | Tags |
Segments
| Method | Path | Notes |
|---|---|---|
POST GET | /v1/segments | Create / list |
GET PATCH DELETE | /v1/segments/{id} | One segment |
GET | /v1/segments/{id}/contacts | Live membership |
Broadcasts
| Method | Path | Notes |
|---|---|---|
POST GET | /v1/broadcasts | Create / list |
GET PATCH DELETE | /v1/broadcasts/{id} | Edit and delete are draft-only |
POST | /v1/broadcasts/{id}/send | Queue the fan-out |
Templates
| Method | Path | Notes |
|---|---|---|
POST GET | /v1/templates | Create / list |
GET PATCH DELETE | /v1/templates/{id} | One template |
POST | /v1/templates/{id}/move | Move between folders |
POST GET PATCH DELETE | /v1/template-folders[/{id}] | Folders |
Forms
| Method | Path | Notes |
|---|---|---|
POST GET | /v1/forms | Create / list |
GET PATCH DELETE | /v1/forms/{id} | One form |
GET | /v1/forms/{id}/submissions | Submissions — paged (page, per_page) |
POST | /v1/forms/{id}/submissions | Public. No API key — rate-limited instead. Form encodings only; 303 to the form's redirect_url when the caller accepts text/html |
See the Forms guide for the embed markup, the _gotcha spam trap and the thank-you redirect.
Automations
| Method | Path | Notes |
|---|---|---|
POST GET | /v1/automations | Create / list |
GET PATCH DELETE | /v1/automations/{id} | One automation |
GET | /v1/automations/{id}/runs | Per-node run detail |
GET | /v1/automations/{id}/metrics | Per-automation counts |
GET | /v1/automations/metrics | Across all automations |
Channels, domains, webhooks
| Method | Path | Notes |
|---|---|---|
POST GET DELETE | /v1/channels[/{id}] | Discord / Telegram credentials (stored encrypted) |
POST | /v1/channels/{id}/messages | Push to a channel |
POST GET DELETE | /v1/domains[/{id}] | Sender domains |
POST | /v1/domains/{id}/verify | Check DNS and mark verified |
POST GET DELETE | /v1/webhooks[/{id}] | Signed event callbacks |
Account
| Method | Path | Notes |
|---|---|---|
GET | /v1/usage | Plan, limits and current usage |
GET | /health | Public. Service health |