newsletter/ stellt Ihnen eine Schnittstelle zur Verfügung mit der Sie Newsletter-Abonnenten und Newsletter-Zielgruppen verwalten können. Darüber können Sie Zielgruppen erstellen, aktualisieren und löschen. Es ist ebenfalls möglich, eine Liste mit allen Newsletter-Abonnenten abzurufen und neue Abonnenten anzulegen.
Unterstützte Methoden
Angabe aller unterstützten Methoden.| Befehl/Info | Endpunkte | GET | POST | PUT | DELETE |
|---|---|---|---|---|---|
| Zielgruppen | newsletter/group | ||||
| Abonnenten | newsletter/subscriber |
Datenfelder für Zielgruppen und Abonnenten
Die Newsletter-Verwaltung unterscheidet zwei zentrale Entitäten: Zielgruppen und Abonnenten. Zielgruppen dienen der thematischen oder organisatorischen Einteilung von Abonnenten, etwa für gezielte Kampagnen oder regionale Segmente. Abonnenten sind einzelne Nutzer, die sich für einen Newsletter registriert haben und optional in mehreren Zielgruppen gleichzeitig geführt werden können. Die folgenden Tabellen beschreiben die jeweiligen Datenfelder:Datenfelder einer Zielgruppe
| Name | Typ | Verwendung |
|---|---|---|
| id | Integer | Eindeutiger Index der Zielgruppe |
| name | String | Name der Zielgruppe |
| deactivated | Boolean | Ist auf false gesetzt, wenn Abonnenten dieser Gruppe beitreten können. 1 = deaktiviert und 0 = aktiv. |
| createdAt | String | Erstellungszeitpunkt (ISO 8601, UTC) |
| updatedAt | String | Zeitpunkt der letzten Aktualisierung (ISO 8601-Format, UTC) |
Beispiel
Datenfelder eines Abonnenten
| Name | Typ | Verwendung |
|---|---|---|
| blacklisted | Boolean | Gibt an, ob die E-Mail-Adresse auf einer Blacklist steht |
| createdAt | String | Erstellungszeitpunkt (ISO 8601, UTC) |
| createdBy | Integer | ID des Nutzers, der den Eintrag erstellt hat |
| String | E-Mail-Adresse des Abonnenten | |
| fields | Objekt | JSON-Objekt mit zusätzlichen Registrierungsdaten wie Vorname, Nachname, Anrede |
| id | Integer | Eindeutiger Index des Abonnenten |
| isImport | Boolean | Gibt an, ob der Datensatz importiert wurde. |
| subshopId | String | ID des Subshops, über den die Anmeldung erfolgte |
| targetGroupIds | Array | Liste der Zielgruppen-IDs, denen der Abonnent zugeordnet ist |
Beispiel
Methoden für Zielgruppen
Die folgenden Methoden ermöglichen das Verwalten von Newsletter-Zielgruppen. Zielgruppen dienen der Segmentierung von Abonnenten innerhalb des Shopsystems. Über die API lassen sich bestehende Zielgruppen abrufen, bearbeiten, erstellen oder deaktivieren. Neue Abonnenten können nur aktiven Zielgruppen zugewiesen werden – eine Deaktivierung bedeutet, dass keine neuen Einträge mehr aufgenommen werden können.GET newsletter/group
Mit dieser Methode wird eine Liste aller im System vorhandenen Zielgruppen geliefert. Optional kann die Ergebnisliste durch Filter auf den Statusdeactivated oder das Erstellungsdatum eingeschränkt werden. Eine Sortierung nach diesen Feldern ist ebenfalls möglich.
Berechtigungen zum Lesen von Newsletter-Daten sind erforderlich.
Beispiel
Antwort
Filterfelder
deactivated, createdAt
Sortierfelder
createdAt, updatedAt, name, id, deactivated
Fehlercodes
| Fehler | Typ | Grund |
|---|---|---|
| 401 Unauthorized | Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Newslettern. | |
| 400 Bad Request | ”invalidValue” | |
| 400 Bad Request | ”invalidCharacters” | size ist keine Ganzzahl.Ein Filterwert ist ungültig. |
| 400 Bad Request | ”unknownDataField” | Ein Filter- oder Sortierfeld ist ungültig. |
| 400 Bad Request | ”unknownOperation” | Ein Filtertyp ist ungültig. |
| 400 Bad Request | ”syntaxError” | sort enthält mehr als einen oder keinen ”:”. |
GET newsletter/group/{id}
Diese Methode lädt die Details einer bestimmten Zielgruppe anhand ihrer ID. Zurückgegeben werden Informationen wie Name, Status, Erstellungs- und Aktualisierungsdatum. Berechtigungen zum Lesen von Newsletter-Daten sind erforderlich.Beispiel
Antwort
Fehlercodes
| Fehler | Typ | Grund |
|---|---|---|
| 401 Unauthorized | Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Newslettern. | |
| 400 Bad Request | id ist ungültig. | |
| 404 Not Found | Zielgruppe mit id={id} wurde nicht gefunden. |
POST newsletter/group
Eine neue Newsletter-Zielgruppe wird erstellt. Es muss ein Name angegeben werden, unbekannte Parameter führen zu einem Fehler. Nach erfolgreichem Erstellen wird der vollständige Eintrag mit Zeitstempeln und ID zurückgegeben. Erstellberechtigungen für Newsletter-Daten sind erforderlich.Beispiel
Request Body
Antwort
Fehlercodes
| Fehler | Typ | Grund |
|---|---|---|
| 401 Unauthorized | Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Erstellen von Newslettern. | |
| 400 Bad Request | Request body konnte nicht geladen werden. | |
| 400 Bad Request | ”invalidFormat” | name ist kein String. |
| 400 Bad Request | ”missing” | name wurde nicht übergeben. |
| 400 Bad Request | ”unknownDataField” | Es wird versucht, ein unbekanntes Feld zu übergeben. Nur name ist erlaubt. |
| 400 Bad Request | ”duplicateEntry” | Eine Zielgruppe mit diesem name existiert bereits. |
PUT newsletter/group/{id}
Diese Methode aktualisiert den Namen einer bestehenden Zielgruppe anhand ihrer ID. Unbekannte Parameter im Request-Body führen zu einem Fehler. Schreibberechtigungen für Newsletter-Daten sind erforderlich.Beispiel
Request Body
Antwort
Fehlercodes
| Fehler | Typ | Grund |
|---|---|---|
| 401 Unauthorized | Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Schreiben von Newslettern. | |
| 400 Bad Request | Request body konnte nicht geladen werden.id ist ungültig. | |
| 400 Bad Request | ”invalidFormat” | Der Parameter name ist kein String. |
| 400 Bad Request | ”missing” | name wurde nicht übergeben. |
| 400 Bad Request | ”unknownDataField” | Es wird versucht, ein unbekanntes Feld zu übergeben. Nur name ist erlaubt. |
| 404 Not Found | Zielgruppe mit id={id} wurde nicht gefunden. |
DELETE newsletter/group/{id}
Eine Zielgruppe wird deaktiviert. Ab dem Zeitpunkt der Deaktivierung können keine neuen Abonnenten mehr dieser Gruppe beitreten. Bereits zugewiesene Abonnenten bleiben jedoch erhalten. Löschberechtigungen für Newsletter-Daten sind erforderlich.Beispiel
Antwort
Die Zielgruppe wird erfolgreich deaktiviert.Fehlercodes
| Fehler | Typ | Grund |
|---|---|---|
| 401 Unauthorized | Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Löschen von Newslettern. | |
| 400 Bad Request | id ist ungültig. | |
| 404 Not Found | Die Zielgruppe mit id={id} wurde nicht gefunden. |
Methoden für Abonnenten
GET newsletter/subscriber
Diese Methode liefert eine paginierte Liste aller Newsletter-Abonnenten im System. Die Abonnentendaten umfassen unter anderem die verschlüsselte E-Mail-Adresse, das Anmeldedatum sowie die persönlichen Informationen im Feldfields. Über Filter- und Sortierparameter lassen sich die Ergebnisse gezielt einschränken.
Zum Zugriff sind entsprechende Leserechte für Newsletterdaten erforderlich.
Beispiel
Antwort
Filterfelder
targetGroupIds, createdAt
Sortierfelder
id, createdAt
Fehlercodes
| Fehler | Typ | Grund | ||
|---|---|---|---|---|
| 401 Unauthorized | Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Newslettern. | |||
| 400 Bad Request | ”invalidValue” | size ∉ [1;300] | pageToken ist keine Zahl oder kleiner als 0. | |
| 400 Bad Request | ”invalidCharacters” | size ist keine Ganzzahl. Ein Filterwert ist ungültig. | ||
| 400 Bad Request | ”unknownDataField” | Ein Filter- oder Sortierfeld ist ungültig. | ||
| 400 Bad Request | ”unknownOperation” | Ein Filtertyp ist ungültig. | ||
| 400 Bad Request | ”syntaxError” | sort enthält mehr als einen oder keinen ”:“. | ||
| 503 Service Unavailable | Interner Fehler beim Laden der Abonnentendaten. |
GET newsletter/subscriber/{id}
Diese Methode lädt die vollständigen Daten eines einzelnen Newsletter-Abonnenten anhand seiner ID. Zusätzlich enthält die Antwort eine Historie aller Änderungen am Datensatz im Abschnittchanges, sofern diese vorhanden sind.
Für die Nutzung dieser Methode sind entsprechende Leserechte für Newsletterdaten erforderlich.
Beispiel
Antwort
Fehlercodes
| Fehler | Typ | Grund |
|---|---|---|
| 401 Unauthorized | Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Lesen von Newslettern. | |
| 400 Bad Request | id ist ungültig. | |
| 404 Not Found | Abonnent mit id={id} wurde nicht gefunden. | |
| 503 Service Unavailable | Interner Fehler beim Laden des Abonnenten. |
POST newsletter/subscriber/
Ein neuer Newsletter-Abonnent wird erstellt. Standardmäßig muss der Abonnent die Anmeldung bestätigen (Double-Opt-In). Da eine Bestätigung erforderlich ist, erscheint der Abonnent erst nach erfolgtem Opt-In in der Abonnentenliste. Für die Nutzung dieser Methode sind entsprechende Erstellrechte für Newsletterdaten erforderlichBeispiel
Request Body
Antwort
Fehlercodes
| Fehler | Typ | Grund |
|---|---|---|
| 401 Unauthorized | Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Erstellen von Newslettern. | |
| 400 Bad Request | Request body konnte nicht geladen werden. | |
| 400 Bad Request | ”invalidFormat” | email ist kein String oder hat kein gültiges E-Mail-Format, fields ist kein Objekt, targetGroupIds ist kein Array von Zahlen oder eines der Newsletterfelder hat gemäß den im Shop konfigurierten Überprüfungen einen ungültigen Wert. |
| 400 Bad Request | ”missing” | email, fields oder targetGroupIds wurde nicht übergeben, targetGroupIds ist ein leeres Array, oder eines der im Shop konfigurierten verpflichtenden Newsletterfelder ist nicht gesetzt. |
| 400 Bad Request | ”invalidValue” | email ist ein leerer String. |
| 400 Bad Request | ”unknownDataField” | Es wird versucht, ein unbekanntes Feld zu übergeben. Erlaubt sind nur email, fields und targetGroupIds. |
| 503 Service Unavailable | Der Double-Opt-In-Dienst ist nicht erreichbar. |
PUT newsletter/subscriber/{id}
Diese Methode aktualisiert die Daten eines bestehenden Newsletter-Abonnenten anhand seiner ID. Dabei können ausschließlich die Felderemail, fields (z. B. Vorname, Nachname) und targetGroupIds (Zielgruppen-Zugehörigkeit) verändert werden. Unbekannte Parameter im Request Body führen zu einem Fehler.
Wenn die E-Mail-Adresse geändert wird, muss der Inhaber die Anmeldung erneut bestätigen. Solange es nicht geschehen ist, bleibt die Adresse unverändert.
Für die Nutzung dieser Methode sind entsprechende Schreibrechte für Newsletterdaten erforderlich.
Beispiel
Request Body
Antwort
Fehlercodes
| Fehler | Typ | Grund |
|---|---|---|
| 401 Unauthorized | Nicht autorisiert: Sie sind nicht angemeldet oder verfügen nicht über die erforderlichen Rechte zum Schreiben von Newslettern. | |
| 400 Bad Request | Request body konnte nicht geladen werden.id ist ungültig. | |
| 400 Bad Request | ”invalidFormat” | email ist kein String oder hat kein gültiges E-Mail-Format, fields ist kein Objekt, targetGroupIds ist kein Array von Zahlen oder eines der Newsletterfelder hat gemäß den im Shop konfigurierten Überprüfungen einen ungültigen Wert. |
| 400 Bad Request | ”missing” | targetGroupIds ist ein leeres Array, oder eines der im Shop konfigurierten verpflichtenden Newsletterfelder ist nicht gesetzt. |
| 400 Bad Request | ”invalidValue” | email ist ein leerer String. |
| 400 Bad Request | ”unknownDataField” | Es wird versucht, ein unbekanntes Feld zu übergeben. Erlaubt sind nur email, fields und targetGroupIds. |
| 404 Not found | Es existiert kein Abonnent mit id={id} | |
| 503 Service Unavailable | Interner Fehler beim Laden des Abonnenten. Der Double-Opt-In-Dienst ist nicht erreichbar (nur bei Änderung der E-Mail-Adresse). |
