Zum Inhalt springen
Doku

Vorlagenversionen erstellen, eine pro Alias veröffentlichen und beim Senden verwenden.

Basis-URLhttps://api.emailit.com/v2AuthentifizierungFehlerRate Limits

Vorlage erstellen

Erstellt eine Vorlagenversion. Versionen mit demselben alias gehören zur selben Vorlage, und pro Alias ist jeweils nur eine Version veröffentlicht. Wenn Sie eine E-Mail senden und template auf einen Alias setzen, verwendet Emailit die veröffentlichte Version. Erfordert einen API-Schlüssel mit dem Scope full.

POST/templates

Anfrage-Body

namestringErforderlich

Name der Vorlage, der in der Weboberfläche angezeigt wird. Bis zu 191 Zeichen.

aliasstringErforderlich

Kennung, die die Versionen einer Vorlage zusammenfasst. Bis zu 191 Zeichen; nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche (^[a-z0-9_-]+$).

Verwendet noch keine Vorlage diesen Alias, wird die neue Version sofort veröffentlicht. Existiert der Alias bereits, wird die neue Version unveröffentlicht erstellt (published_at ist null) und Sie veröffentlichen sie mit Vorlage veröffentlichen.

fromstring

Standardabsender, zum Beispiel Acme <hello@acme.com>. Bis zu 191 Zeichen.

subjectstring

Standard-Betreffzeile. Bis zu 191 Zeichen. Kann Variablen der Template-Sprache Temple enthalten, etwa {{ first_name }}.

reply_tostring | string[]

Reply-To-Adresse oder ein Array von Adressen. Jeder Wert muss eine gültige E-Mail-Adresse sein.

htmlstring

HTML-Inhalt.

textstring

Nur-Text-Inhalt.

sourcestring

Quelldokument des Editors, zum Beispiel das Dragit-JSON einer im Drag-and-drop-Editor erstellten Vorlage. Wird unverändert gespeichert. Bei editor: "mjml" das MJML: Emailit validiert es, speichert es als MJML-Dokument und kompiliert daraus html.

editorstring

Editor, zu dem die Vorlage gehört: html (Standardwert), text, dragit oder tiptap. mjml ist in der Alpha und steht nur dem Emailit-Team offen; andere Anfragen erhalten 403 mit error: "mjml_alpha". Siehe MJML-Editoren und API.

Rückgabe

Gibt 201 Created mit der Vorlage in data und einer Bestätigung in message zurück. Die Vorlage enthält html, text und source. Emailit sendet außerdem das Webhook-Event template.created.

MJML-Vorlagen geben außerdem ein Objekt mjml mit den Versionen des Dokuments zurück. Ungültiges MJML gibt 422 mit errors.source und diagnostics zurück; siehe Validierung.

Besteht ein Feld die Validierung nicht, lautet die Antwort 400 mit message: "Validation failed" und einem Objekt errors, dessen Schlüssel die Felder sind, zum Beispiel bei einem Alias mit Großbuchstaben oder einer ungültigen Adresse in reply_to. Ein fehlendes name oder alias oder ein nicht erlaubter Wert für editor gibt stattdessen den Standard-Validierungsfehler 400 mit einem Array details zurück. Siehe Fehler.

POST/templates
Terminal
curl https://api.emailit.com/v2/templates \
  -H "Authorization: Bearer your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Welcome email",
    "alias": "welcome-email",
    "subject": "Welcome to Acme, {{ first_name }}",
    "html": "<h1>Welcome, {{ first_name }}</h1>"
  }'
JSON
{
  "data": {
    "id": "tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a",
    "name": "Welcome email",
    "alias": "welcome-email",
    "from": null,
    "subject": "Welcome to Acme, {{ first_name }}",
    "reply_to": null,
    "html": "<h1>Welcome, {{ first_name }}</h1>",
    "text": null,
    "source": null,
    "editor": "html",
    "published_at": "2026-09-30T10:30:00.482119Z",
    "preview_url": null,
    "created_at": "2026-09-30T10:30:00.482119Z",
    "updated_at": "2026-09-30T10:30:00.482119Z"
  },
  "message": "Template was successfully created."
}

Vorlage abrufen

Gibt eine Vorlagenversion einschließlich ihres Inhalts zurück und listet die anderen Versionen desselben Alias in versions auf. Vorlagen werden nur per ID gesucht, nicht per Alias. Erfordert einen API-Schlüssel mit dem Scope full.

GET/templates/:id

Pfadparameter

idstringErforderlich

ID der Vorlage, zum Beispiel tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a.

Rückgabe

Gibt 200 OK mit der Vorlage in data zurück. Neben den Feldern der Vorlage enthält die Antwort ein Array versions mit id, name, published_at, created_at und updated_at jeder anderen Version mit demselben Alias, die neueste zuerst. Die veröffentlichte Version ist die, deren published_at nicht null ist.

Gibt 404 mit message: "Template not found" zurück, wenn die ID in Ihrem Workspace nicht existiert.

GET/templates/{id}
Terminal
curl https://api.emailit.com/v2/templates/tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a \
  -H "Authorization: Bearer your_api_key"
JSON
{
  "data": {
    "id": "tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a",
    "name": "Welcome email",
    "alias": "welcome-email",
    "from": "Acme <hello@acme.com>",
    "subject": "Welcome to Acme, {{ first_name }}",
    "reply_to": ["support@acme.com"],
    "html": "<h1>Welcome, {{ first_name }}</h1>",
    "text": "Welcome, {{ first_name }}",
    "source": null,
    "editor": "html",
    "published_at": "2026-09-30T10:30:00.482119Z",
    "preview_url": null,
    "created_at": "2026-09-28T08:12:45.103882Z",
    "updated_at": "2026-09-30T10:30:00.482119Z",
    "versions": [
      {
        "id": "tem_2xKyB4qLm7RtV9sNd3HwEa6uC1f",
        "name": "Welcome email (October)",
        "published_at": null,
        "created_at": "2026-09-30T14:02:11.550731Z",
        "updated_at": "2026-09-30T14:02:11.550731Z"
      }
    ]
  }
}

Vorlage aktualisieren

Aktualisiert eine Vorlagenversion. Senden Sie nur die Felder, die Sie ändern möchten. Die Version behält ihren Veröffentlichungsstatus: Eine veröffentlichte Version bleibt veröffentlicht, ein Entwurf bleibt ein Entwurf. Erfordert einen API-Schlüssel mit dem Scope full.

POST/templates/:id

Pfadparameter

idstringErforderlich

ID der Vorlage, zum Beispiel tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a.

Anfrage-Body

namestring

Name der Vorlage. Bis zu 191 Zeichen.

aliasstring

Neuer Alias. Bis zu 191 Zeichen; nur Kleinbuchstaben, Ziffern, Unterstriche und Bindestriche. Der Alias darf nicht bereits von einer anderen Vorlage verwendet werden.

fromstring

Standardabsender, zum Beispiel Acme <hello@acme.com>. Bis zu 191 Zeichen. Senden Sie einen leeren String, um den Wert zu löschen.

subjectstring

Standard-Betreffzeile. Bis zu 191 Zeichen. Senden Sie einen leeren String, um den Wert zu löschen.

reply_tostring | string[]

Reply-To-Adresse oder Array von Adressen. Senden Sie einen leeren String, um den Wert zu löschen.

htmlstring

HTML-Inhalt.

textstring

Nur-Text-Inhalt.

sourcestring

Quelldokument des Editors, zum Beispiel Dragit-JSON. Bei einer MJML-Vorlage das vollständige MJML: Emailit validiert es und kompiliert html neu, und ein übergebenes html wird ignoriert.

editorstring

html, text, dragit oder tiptap. mjml ist in der Alpha und steht nur dem Emailit-Team offen; wer den Inhalt einer MJML-Vorlage ohne MJML-Zugriff ändert, erhält 403 mit error: "mjml_alpha". Umbenennen oder Veröffentlichen funktioniert für alle. Siehe MJML-Editoren und API.

Rückgabe

Gibt 200 OK mit der aktualisierten Vorlage in data und einer Bestätigung in message zurück. Emailit sendet außerdem das Webhook-Event template.updated.

Gibt 400 mit message: "Validation failed" und einem Objekt errors zurück, wenn ein Wert ungültig ist, zum Beispiel "Alias already exists". Werte mit mehr als 191 Zeichen oder ein unbekannter editor geben den Standard-Validierungsfehler 400 zurück. Gibt 404 zurück, wenn die Vorlage nicht existiert.

Damit diese Version für den Versand verwendet wird, rufen Sie Vorlage veröffentlichen auf.

POST/templates/{id}
Terminal
curl -X POST https://api.emailit.com/v2/templates/tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a \
  -H "Authorization: Bearer your_api_key" \
  -H "Content-Type: application/json" \
  -d '{"subject": "Welcome aboard, {{ first_name }}"}'
JSON
{
  "data": {
    "id": "tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a",
    "name": "Welcome email",
    "alias": "welcome-email",
    "from": "Acme <hello@acme.com>",
    "subject": "Welcome aboard, {{ first_name }}",
    "reply_to": ["support@acme.com"],
    "html": "<h1>Welcome, {{ first_name }}</h1>",
    "text": "Welcome, {{ first_name }}",
    "source": null,
    "editor": "html",
    "published_at": "2026-09-30T10:30:00.482119Z",
    "preview_url": null,
    "created_at": "2026-09-28T08:12:45.103882Z",
    "updated_at": "2026-10-01T09:15:27.640000Z"
  },
  "message": "Template was successfully updated."
}

Vorlagen auflisten

Gibt die veröffentlichte Version jeder Vorlage zurück, die neuesten zuerst. Unveröffentlichte Versionen werden nicht aufgelistet; um alle Versionen eines Alias zu sehen, rufen Sie eine Vorlage ab. Erfordert einen API-Schlüssel mit dem Scope full.

GET/templates

Query-Parameter

pageinteger

Seitennummer, beginnend bei 1. Standardwert: 1.

per_pageinteger

Vorlagen pro Seite, von 1 bis 100. Standardwert: 25.

include_contentboolean

Setzen Sie den Wert auf true, um html, text und source für jede Vorlage einzuschließen. Standardmäßig weggelassen, damit die Antworten klein bleiben.

filter[name]string

Teilübereinstimmung mit Name oder Alias der Vorlage, ohne Beachtung der Groß-/Kleinschreibung.

filter[alias]string

Exakter Alias.

filter[editor]string

Editor: html, text, dragit, tiptap oder mjml (Alpha).

matchstring

all (Standardwert) verlangt, dass jeder Filter key.condition zutrifft. Bei or genügt einer davon. Siehe Filtern und Sortieren.

sortstring

Sortierschlüssel: name, alias, created_at (Standardwert), updated_at oder published_at.

orderstring

Sortierrichtung: asc oder desc (Standardwert).

Filter

Listenfilter sind Query-Parameter der Form key.condition=value auf einer einzigen Ebene. match, order, direction und die Bedingungen pro Typ finden Sie unter Filtern und Sortieren.

Filterschlüssel

SchlüsselTypBedingungenHinweise
namestringexact, not_exact, contains, not_contains, starts_with, ends_with, empty, not_empty
aliasstringexact, not_exact, contains, not_contains, starts_with, ends_with, empty, not_empty
editorstringexact, not_exact, contains, not_contains, starts_with, ends_with, empty, not_empty
subjectstringexact, not_exact, contains, not_contains, starts_with, ends_with, empty, not_empty
created_atdateexact, before, after, empty, not_empty

Sortierschlüssel

Dieser Endpunkt sortiert mit sort, gesetzt auf einen dieser Schlüssel, und order, gesetzt auf asc oder desc (order=<key> gibt hier 400 zurück): name, alias, editor, subject, created_at

Bei diesem Endpunkt akzeptiert order nur asc oder desc. Übergeben Sie den Sortierschlüssel in sort, zum Beispiel sort=name&order=asc.

Rückgabe

Gibt 200 OK mit den Vorlagen in data und den Paginierungsfeldern total_records, per_page, current_page und total_pages zurück. Jede Vorlage enthält total_versions, die Anzahl der Versionen mit demselben Alias.

GET/templates
Terminal
curl https://api.emailit.com/v2/templates \
  -H "Authorization: Bearer your_api_key"
JSON
{
  "data": [
    {
      "id": "tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a",
      "name": "Welcome email",
      "alias": "welcome-email",
      "from": "Acme <hello@acme.com>",
      "subject": "Welcome to Acme, {{ first_name }}",
      "reply_to": ["support@acme.com"],
      "editor": "html",
      "published_at": "2026-09-30T10:30:00.482119Z",
      "preview_url": null,
      "total_versions": 3,
      "created_at": "2026-09-28T08:12:45.103882Z",
      "updated_at": "2026-09-30T10:30:00.482119Z"
    }
  ],
  "total_records": 1,
  "per_page": 25,
  "current_page": 1,
  "total_pages": 1
}

Vorlage veröffentlichen

Veröffentlicht eine Vorlagenversion und zieht in derselben Transaktion die Veröffentlichung aller anderen Versionen mit demselben Alias zurück. So bringen Sie einen neuen Entwurf live oder kehren zu einer früheren Version zurück. Erfordert einen API-Schlüssel mit dem Scope full.

POST/templates/:id/publish

Pfadparameter

idstringErforderlich

ID der zu veröffentlichenden Version, zum Beispiel tem_2xKyB4qLm7RtV9sNd3HwEa6uC1f.

Anfrage-Body

Kein Body. Wenn Sie eine bereits veröffentlichte Version erneut veröffentlichen, wird published_at neu gesetzt.

Rückgabe

Gibt 200 OK mit der veröffentlichten Vorlage in data und einer Bestätigung in message zurück. Gibt 404 zurück, wenn die Vorlage nicht existiert.

Emailit sendet das Webhook-Event template.updated für die veröffentlichte Version und je eines für jede Version, deren Veröffentlichung zurückgezogen wurde.

POST/templates/{id}/publish
Terminal
curl -X POST https://api.emailit.com/v2/templates/tem_2xKyB4qLm7RtV9sNd3HwEa6uC1f/publish \
  -H "Authorization: Bearer your_api_key"
JSON
{
  "data": {
    "id": "tem_2xKyB4qLm7RtV9sNd3HwEa6uC1f",
    "name": "Welcome email (October)",
    "alias": "welcome-email",
    "from": "Acme <hello@acme.com>",
    "subject": "Welcome to Acme, {{ first_name }}",
    "reply_to": ["support@acme.com"],
    "html": "<h1>Welcome, {{ first_name }}</h1><p>Here is your October guide.</p>",
    "text": "Welcome, {{ first_name }}. Here is your October guide.",
    "source": null,
    "editor": "html",
    "published_at": "2026-10-01T09:20:04.118502Z",
    "preview_url": null,
    "created_at": "2026-09-30T14:02:11.550731Z",
    "updated_at": "2026-10-01T09:20:04.118000Z"
  },
  "message": "Template was successfully published."
}

Vorlage löschen

Löscht eine Vorlagenversion endgültig. Andere Versionen desselben Alias bleiben erhalten. Erfordert einen API-Schlüssel mit dem Scope full.

DELETE/templates/:id

Pfadparameter

idstringErforderlich

ID der Vorlage, zum Beispiel tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a.

Rückgabe

Gibt 200 OK mit data: null und einer Bestätigung in message zurück. Emailit sendet das Webhook-Event template.deleted mit der gelöschten Version. Gibt 404 zurück, wenn die Vorlage nicht existiert.

Wenn Sie die veröffentlichte Version löschen, ist für diesen Alias keine Version veröffentlicht, bis Sie eine andere veröffentlichen, und das Senden mit diesem Alias schlägt fehl. Das Löschen eines Entwurfs wirkt sich nicht auf die veröffentlichte Version aus. Das Löschen lässt sich nicht rückgängig machen.

DELETE/templates/{id}
Terminal
curl -X DELETE https://api.emailit.com/v2/templates/tem_2xKx7M2c9wQe3kHhJ8sVtY1pZ0a \
  -H "Authorization: Bearer your_api_key"
JSON
{
  "data": null,
  "message": "Template was successfully deleted."
}

War diese Seite hilfreich?

Danke für Ihr Feedback.

Danke, wir lesen jede Nachricht.