Dashboard

Templates

Auth Required

Create Template

POSThttps://api.inboxjot.com/v1/templates

Creates a template. Send the email as html, or start from a ready-made design with starter_id. With neither, the template starts empty. Needs a Full key. A key limited to one domain answers 403. Send an optional Idempotency-Key header to retry safely. See Idempotency.

Send it with Send Email by passing its id as template.id.

POST/v1/templates
curl -X POST https://api.inboxjot.com/v1/templates \
  -H "Authorization: Bearer $INBOXJOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Welcome",
    "from": "Acme <hello@acme.dev>",
    "subject": "Welcome to Acme, {{first_name}}",
    "html": "<h1>Welcome, {{first_name}}</h1><p>Here is how to get started.</p>"
  }'
{
  "id": "tpl_06d2mfk8r5cx3nd8vt1qa",
  "name": "Welcome",
  "from": "Acme <hello@acme.dev>",
  "reply_to": null,
  "subject": "Welcome to Acme, {{first_name}}",
  "preheader": "Here is how to get started",
  "html": "<!DOCTYPE html><html>…</html>",
  "text": "Hi Suhasinee, welcome to Acme…",
  "published_version_id": "ver_06d2mfk8r5cx3nd8vt1qb",
  "has_unpublished_changes": false,
  "created_at": "2026-10-21T09:00:00.000Z",
  "updated_at": "2026-10-21T09:00:00.000Z"
}

Created the template.

Body Parameters

namestringrequired

The template name, 1 to 200 characters.

fromstring | null

The default from address, up to 320 characters.

reply_tostring | null

The default reply-to address. Send null to clear it.

subjectstring | null

The subject, up to 998 characters, without line breaks.

preheaderstring | null

The preview text, up to 500 characters, without line breaks.

htmlstring | null

The email as HTML. Inboxjot turns it into editor content, so the template stays editable in the dashboard.

contentobject | null

The editor document, as the dashboard saves it. Most callers send html instead. When you send both, html wins.

starter_idstring | null

A ready-made design: welcome, verify-email, password-reset, receipt, newsletter, product-launch, event-invite or re-engagement. Ignored when you send html.

Response

idstring

The template id.

namestring

The template name.

fromstring

The default from address.

reply_tostring | null

The default reply-to address.

subjectstring

The subject.

preheaderstring

The preview text.

htmlstring

The rendered HTML.

textstring

The plain text version.

published_version_idstring | null

The version that sends use. null until the first publish, and sends fail until then.

has_unpublished_changesboolean

Whether the draft differs from the version that sends use.

created_atstring

When it was created.

updated_atstring

When it last changed.

Responses

POST/v1/templates
curl -X POST https://api.inboxjot.com/v1/templates \
  -H "Authorization: Bearer $INBOXJOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Welcome",
    "from": "Acme <hello@acme.dev>",
    "subject": "Welcome to Acme, {{first_name}}",
    "html": "<h1>Welcome, {{first_name}}</h1><p>Here is how to get started.</p>"
  }'
{
  "id": "tpl_06d2mfk8r5cx3nd8vt1qa",
  "name": "Welcome",
  "from": "Acme <hello@acme.dev>",
  "reply_to": null,
  "subject": "Welcome to Acme, {{first_name}}",
  "preheader": "Here is how to get started",
  "html": "<!DOCTYPE html><html>…</html>",
  "text": "Hi Suhasinee, welcome to Acme…",
  "published_version_id": "ver_06d2mfk8r5cx3nd8vt1qb",
  "has_unpublished_changes": false,
  "created_at": "2026-10-21T09:00:00.000Z",
  "updated_at": "2026-10-21T09:00:00.000Z"
}

Created the template.