Notideus
Getting Started

Templates

Send through stored templates with {{variables}}.

Overview

Templates are created and managed in the Notideus dashboard — the visual editor, per-template settings, and previews all live there. The API never creates or edits templates; it only references them by template_id when sending.

Sending with a template

Pass template_id together with a variables map instead of an html body:

curl -X POST https://api.notideus.io/v1/emails \
  -H "Authorization: Bearer $NT_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "Acme <noreply@acme.com>",
    "to": ["jane@example.com"],
    "subject": "Your order is ready",
    "template_id": "0a1b2c3d-4e5f-6789-abcd-ef0123456789",
    "variables": {"name": "Jane", "order_id": "1234"}
  }'

Every send needs a body: exactly one of html or template_id is required. If both are present, the template wins — the html field is ignored.

Variables

Templates contain {{variable}} slots (letters, digits, and underscores). When a send carries variables, each slot is replaced by the matching value:

  • Values are HTML-escaped before insertion (&, <, >, and ").
  • Unknown variables render as the empty string — a template slot with no matching value simply disappears.
Escaping protects values placed through variables, but the API stores and sends your HTML as-is. If you build the html field yourself, escape user input before putting it in the request.

Looking up template IDs

There is no public template endpoint. Copy the template_id from the dashboard's templates list — it is shown next to each template's name.
Copyright © 2026