Zum Hauptinhalt springen

Kampagnen

Base path: /api/campaigns

GET /campaigns

Alle Kampagnen abrufen.

Auth: Admin

Query parameters: page, limit


POST /campaigns

Neue Kampagne erstellen.

Auth: Admin

FeldTypPflichtBeschreibung
namestringJaInterner Kampagnenname
subjectstringJaE-Mail-Betreff
blocksarrayJaE-Mail-Bausteine
segment_filtersobjectNeinZielgruppenfilterkriterien

GET /campaigns/:id

Einzelne Kampagne abrufen.


PUT /campaigns/:id

Kampagne aktualisieren.


DELETE /campaigns/:id

Kampagne löschen.


POST /campaigns/:id/send

Kampagne an alle passenden Empfänger senden.

Auth: Admin

Erstellt pro Empfänger einen E-Mail-Job in der job_queue. Der Worker rendert die blocks via MJML vor dem Versand.


Segmente

GET /campaigns/segments

Gespeicherte Zielgruppensegmente abrufen.

POST /campaigns/segments

Zielgruppensegment speichern.

FeldTypPflicht
namestringJa
filtersobjectJa

DELETE /campaigns/segments/:id

Segment löschen.


Vorlagen

GET /campaigns/templates

Gespeicherte E-Mail-Vorlagen abrufen.

POST /campaigns/templates

E-Mail-Vorlage speichern.

FeldTypPflicht
namestringJa
blocksarrayJa

DELETE /campaigns/templates/:id

Vorlage löschen.


POST /campaigns/render-mjml

MJML-E-Mail zu HTML für die Vorschau rendern.

Auth: Admin

Request body: { "mjml": "<mjml>...</mjml>" }

Response: { "html": "<html>...</html>" }


Segmentfilter-Felder

FeldTypBeschreibung
has_emailbooleanNur Kunden mit E-Mail-Adresse
has_phonebooleanNur Kunden mit Telefonnummer
labelsstring-ArrayKunden mit einem der angegebenen Labels
last_visit_days_agointegerKunden, die seit mehr als N Tagen nicht da waren
min_total_spentnumberMindestausgaben über POS
max_total_spentnumberHöchstausgaben über POS
birthday_monthsinteger-ArrayKunden mit Geburtstag in angegebenen Monaten (1=Jan, 12=Dez)
service_category_idintegerKunden, die Dienstleistungen dieser Kategorie gebucht haben
min_visitsintegerMindestanzahl abgeschlossener Buchungen
max_visitsintegerHöchstanzahl abgeschlossener Buchungen
genderstringFiltern nach Geschlecht des Kunden (z.B. male, female)