Templates
Templates are reusable message designs for email, push, Telegram, and on-site channels.
List Templates
GET /api/workspaces/{workspaceId}/templates
Returns all templates ordered by last updated.
Auth: Session required
Response:
[
{
"id": "tpl_abc123",
"name": "Welcome Email",
"channel": "EMAIL",
"subject": "Welcome to {{workspaceName}}!",
"body": "<h1>Hello {{firstName}}</h1>...",
"design": { ... },
"createdAt": "2026-01-15T10:00:00.000Z",
"updatedAt": "2026-01-20T14:00:00.000Z"
}
]Create Template
POST /api/workspaces/{workspaceId}/templates
Auth: Session required
Request Body:
{
"name": "Welcome Email",
"channel": "EMAIL",
"subject": "Welcome to {{workspaceName}}!",
"body": "<h1>Hello {{firstName}}</h1><p>Thanks for joining!</p>",
"design": {
"editor": "plate",
"blocks": [...]
}
}| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Template name |
channel | string | Yes | Target channel |
subject | string | No | Email subject line |
body | any | Yes | Template content (HTML or structured) |
design | object | No | Rich editor design data (Plate AI) |
Personalization Tokens
Templates support Handlebars-style personalization tokens:
| Token | Description |
|---|---|
{{firstName}} | Contact’s first name |
{{lastName}} | Contact’s last name |
{{email}} | Contact’s email |
{{attributes.fieldName}} | Custom attribute value |
{{workspaceName}} | Workspace name |
{{unsubscribeUrl}} | Auto-generated unsubscribe link |
{{preferencesUrl}} | Preference center link |
Last updated on