Eviworx
Docs

Email Signatures API

Die Email-Signatures API verwaltet mehrsprachige E-Mail-Signaturen, die an ausgehende Ticket-E-Mails angehängt werden. Signaturen werden pro Mailbox zugeordnet oder fallen auf eine Default-Signatur zurück, unterstützen Inline-Bilder (CID-embedded) und Variablen-Platzhalter.

✍️
Funktionen
✓ Mehrsprachig (translations je Sprache)
✓ Höchstens eine Default-Signatur
✓ Pro Mailbox überschreibbar
✓ 5 Variablen (z. B. {{agentName}})
✓ Inline-Bilder für Logos (CID)
✓ HTML-Bereinigung beim Speichern
✓ Aktivieren und Deaktivieren
✓ Löschen per Soft-Delete
✓ Sofort wirksam (nächste ausgehende E-Mail)
✓ Test-E-Mail an die eigene Adresse

🔐 Auth: Nur für angemeldete Benutzer (Cookie-Session); API-Keys werden abgelehnt. Rechte über emailSignatures.*. Siehe RBAC →.

Endpunkte

Method Endpoint Beschreibung Permission
GET/api/email-signaturesListe — { data, pagination } (Pagination, Suche)view
GET/api/email-signatures/:idEinzelne Signaturview
GET/api/email-signatures/:id/previewGerenderte Vorschau (Query language?)view
POST/api/email-signaturesErstellen (201)create
PUT/api/email-signatures/:idAktualisierenedit
DELETE/api/email-signatures/:idSoft-Delete → 204delete
POST/api/email-signatures/:id/set-defaultAls Default setzen (die bisherige Default-Signatur wird zurückgesetzt) → Signatur-ObjektsetDefault
POST/api/email-signatures/:id/activateAktivieren → Signatur-Objektedit
POST/api/email-signatures/:id/deactivateDeaktivieren → Signatur-Objektedit
POST/api/email-signatures/:id/test-emailTest-E-Mail an eigene Adresse (Body language?) → { queued, recipient }edit

Listen-Query: page (Default 1), limit (Default 25, max 100), search, isActive (true/false). Die Mailbox-Zuordnung selbst erfolgt über die Mailbox-Konfiguration (separates Recht emailSignatures.assignToMailbox).

  • Unbekannte Felder im Body werden mit 400 abgelehnt. Die language-Parameter von Vorschau und Test-E-Mail akzeptieren nur die fünf Systemsprachen; die Sprach-Keys in translations bleiben bewusst frei (2–5 Zeichen), damit Bestandsdaten mit weiteren Sprachen erhalten bleiben.
  • Die Test-E-Mail verlangt einen aktiven E-Mail-Kanal — ist der Versand global deaktiviert oder in Wartung, antwortet die Route 400 EMAIL_SYSTEM_DISABLED, statt eine Mail in eine stillstehende Queue zu legen. Der Versand selbst läuft asynchron; { queued: true } heißt „angenommen", nicht „zugestellt".

Signatur erstellen

POST /api/email-signatures
{
  "name": "Support-Team",
  "isDefault": false,
  "isActive": true,
  "translations": {
    "de": {
      "html": "<p>Mit freundlichen Grüßen<br>{{agentName}} — {{companyName}}</p>",
      "plainText": "Mit freundlichen Grüßen\n{{agentName}} — {{companyName}}"
    },
    "en": {
      "html": "<p>Best regards<br>{{agentName}} — {{companyName}}</p>",
      "plainText": "Best regards\n{{agentName}} — {{companyName}}"
    }
  }
}

translations ist ein Record (mind. eine Sprache, Key 2–5 Zeichen), je Eintrag html + plainText (beide Pflicht). name 1–100 Zeichen. Beim Setzen von isDefault=true werden andere Defaults automatisch zurückgesetzt. Das HTML wird beim Speichern sanitisiert.

Platzhalter (fünf, in html und plainText): {{agentName}}, {{agentEmail}}, {{agentPhone}}, {{companyName}} und {{appUrl}}. Bei einer Ticket-Antwort stehen {{agentName}} und {{agentEmail}} für Name und E-Mail-Adresse des antwortenden Agents; in System-Benachrichtigungen steht {{agentName}} für den Anwendungsnamen, {{agentEmail}} bleibt dort leer. {{companyName}} kommt aus den allgemeinen Einstellungen, {{appUrl}} ist die Adresse der Anwendung. Die Vorschau füllt alle fünf mit Beispieldaten. Unbekannte Platzhalter bleiben als Text stehen; Zeilen, die durch einen leeren Wert leer werden, entfallen.

Auflösung beim E-Mail-Versand

Beim Versand einer Ticket-Antwort wird die passende Signatur ermittelt: zuerst die der Mailbox zugeordnete, sonst die Default-Signatur. Eingebettete Bilder werden als CID-Anhänge mit der E-Mail verschickt, sodass sie ohne Nachladen angezeigt werden.

Permissions (emailSignatures)

Permission Beschreibung
emailSignatures.viewListe/Details/Preview
emailSignatures.createNeue Signatur erstellen
emailSignatures.editBearbeiten, aktivieren/deaktivieren, Test-E-Mail
emailSignatures.deleteLöschen (Soft-Delete)
emailSignatures.setDefaultDefault-Signatur festlegen
emailSignatures.assignToMailboxSignatur einer Mailbox zuordnen (Mailbox-Konfiguration)
Verwandte Seiten
Integrations →

E-Mail-Versand, Mailboxen, CID-Inline-Bilder

Notifications →

Benachrichtigungs-Templates (separat von Signaturen)