Templates
List, inspect, and delete the email templates you’ve built in the dashboard. Use a template’s id to send it via POST /v1/emails.
Live keys only. Template endpoints require a bx_live_… key with the Templates scope. Preview keys (bx_preview_…) cannot access templates — use a starter template instead.
Templates are authored in the Brixus365 drag-and-drop editor. The API exposes read and delete — create and edit remain dashboard-only to preserve the visual editor’s layout integrity.
List templates
Returns your account’s saved templates, newest first. Only library templates are returned — internal copies created for campaigns or workflows are excluded.
Required scope: templates:read
Query parameters
| Parameter | Type | Description | |
|---|---|---|---|
skip | integer | Number of records to skip. Default 0. | |
limit | integer | Maximum records to return. Default 20, max 100. |
Response
{
"items": [
{
"id": "018f1a2b-3c4d-5e6f-7890-abcdef123456",
"name": "Monthly newsletter",
"subject": "What's new this month",
"category": "marketing",
"variables": ["first_name", "unsubscribe_url"],
"createdAt": "2026-04-01T10:00:00Z",
"updatedAt": "2026-04-15T14:23:00Z"
}
],
"total": 1,
"skip": 0,
"limit": 20
}
Example
curl https://app.brixus365.com/api/v1/templates \
-H "X-API-Key: bx_live_your_key_here"Errors
| Status | Code | Description |
|---|---|---|
| 403 | scope_required | Key lacks templates:read. Re-create the key and enable the Templates scope. |
Get a template
Returns metadata for a single template, plus a short HTML preview.
Required scope: templates:read
Path parameters
| Parameter | Type | Description | |
|---|---|---|---|
id | required | UUID | Template ID from GET /v1/templates. |
Response
{
"id": "018f1a2b-3c4d-5e6f-7890-abcdef123456",
"name": "Monthly newsletter",
"subject": "What's new this month",
"category": "marketing",
"variables": ["first_name", "unsubscribe_url"],
"previewHtml": "<!DOCTYPE html><html>...",
"createdAt": "2026-04-01T10:00:00Z",
"updatedAt": "2026-04-15T14:23:00Z"
}
previewHtml contains the first 500 characters of the rendered HTML — useful for thumbnail generation or sanity-checking the template before sending. Pass the full id to POST /v1/emails as templateId to send it.
Example
curl https://app.brixus365.com/api/v1/templates/018f1a2b-3c4d-5e6f-7890-abcdef123456 \
-H "X-API-Key: bx_live_your_key_here"Errors
| Status | Code | Description |
|---|---|---|
| 403 | scope_required | Key lacks templates:read. |
| 404 | template_not_found | No template with that ID exists on your account. |
Delete a template
Permanently deletes a template. Returns 204 No Content on success.
Required scope: templates:write
This cannot be undone. If you delete a template that’s referenced by an active campaign or a scheduled send, the API returns 409 template_in_use instead of deleting it. Cancel those first, then retry.
Path parameters
| Parameter | Type | Description | |
|---|---|---|---|
id | required | UUID | Template ID to delete. |
Example
curl -X DELETE https://app.brixus365.com/api/v1/templates/018f1a2b-3c4d-5e6f-7890-abcdef123456 \
-H "X-API-Key: bx_live_your_key_here"Errors
| Status | Code | Description |
|---|---|---|
| 403 | scope_required | Key lacks templates:write. |
| 404 | template_not_found | No template with that ID exists on your account. |
| 409 | template_in_use | Template is referenced by an active campaign or a scheduled send. Cancel those first, then retry. |