Email API
18 endpoints. All requests need an Authorization header — see Authentication. API keys additionally need the matching scope.
| Method | Path | Description |
|---|---|---|
GET |
/api/email-templates |
List Templates Query: category, is_active. |
POST |
/api/email-templates |
Create Template Accepts a JSON body. |
GET |
/api/email-templates/{template_id} |
Get Template |
PATCH |
/api/email-templates/{template_id} |
Update Template Accepts a JSON body. |
DELETE |
/api/email-templates/{template_id} |
Delete Template |
POST |
/api/email-templates/{template_id}/clone |
Clone Template |
POST |
/api/email-templates/{template_id}/preview |
Preview Template Accepts a JSON body. |
GET |
/api/email-tracking/click/{message_id} |
Click Redirect Query: url. |
GET |
/api/email-tracking/events |
List Tracking Events Query: message_id, event_type, contact_id, lead_id, limit, offset. |
GET |
/api/email-tracking/pixel/{message_id} |
Tracking Pixel |
GET |
/api/emails |
List Emails Query: account_id, thread_id, limit. |
GET |
/api/emails/{email_id} |
Get Email |
GET |
/api/emails/{email_id}/thread |
Get Email Thread |
GET |
/api/tenant/inbox/ |
List Inbox Query: item_type, is_read, is_starred, search, limit, offset. |
GET |
/api/tenant/inbox/contacts/{contact_id} |
Contact Inbox Query: item_type, is_read, limit, offset. |
GET |
/api/tenant/inbox/counts |
Inbox Counts |
POST |
/api/tenant/inbox/{item_id}/read |
Mark As Read |
POST |
/api/tenant/inbox/{item_id}/star |
Toggle Star |
Try it
The full request/response schema for every endpoint is in the OpenAPI spec served by your own workspace.