Accountmaker Docs
Types

Email Template

Reusable email template with variable placeholders for personalized content.

email template personalization variables

Email Template

An Email Template defines reusable email content with variable placeholders ({{variable}}) for dynamic personalization.

Schema

interface EmailTemplate {
  id: string; // "emt_..." - Unique identifier
  account_id: string; // Owning account
  name: string; // Template name
  event_type: string; // Business event (e.g., "user_welcome")
  editor: "grapesjs_mjml"; // Template editor
  editor_state: string; // Serialized editor state
  mjml: string; // MJML source
  subject_template: string; // Subject with variables
  body_text_template: string; // Plain text with variables
  body_html_template: string; // HTML with variables
  archived_at: string | null; // Archived timestamp
}

Properties

PropertyTypeDescription
idstringKSUID with emt_ prefix
account_idstringAccount that owns template
namestringHuman-readable name
event_typestringEvent trigger name
editorstringEditor type
editor_statestringSerialized editor state
mjmlstringMJML source
subject_templatestringSubject line template
body_text_templatestringPlain text body template
body_html_templatestringHTML body template
archived_atstring?Archived timestamp

Variable Syntax

Use {{variable_name}} for substitution:

Subject: Welcome, {{name}}!

Dear {{name}},

Your account {{account_name}} is ready.

Best regards,
The {{company}} Team

Usage

Send with template:

{
  "template_id": "emt_...",
  "to": [{ "email": "user@example.com" }],
  "variables": {
    "name": "Jane",
    "account_name": "Acme Corp",
    "company": "Example Inc"
  }
}

Example

{
  "id": "emt_2kHfPZcN9xW4mE8RtY7vB",
  "account_id": "acc_1jGePYbM8wV3lD7QsX6uA",
  "name": "welcome",
  "event_type": "user_welcome",
  "editor": "grapesjs_mjml",
  "editor_state": "{}",
  "mjml": "<mjml><mj-body></mj-body></mjml>",
  "subject_template": "Welcome to {{company}}, {{name}}!",
  "body_text_template": "Hi {{name}},\n\nWelcome to {{company}}...",
  "body_html_template": "<h1>Welcome, {{name}}!</h1>...",
  "archived_at": null
}