POST/api/public/contact
Öffentliches Kontaktformular der Zentor-Website. Legt eine Anfrage im internen Lead-System an.
`POST /api/public/contact` verarbeitet das öffentliche Kontaktformular der Zentor-Website und legt die Anfrage im internen Lead-System ab. Der Endpunkt benötigt keine Dashboard-Authentifizierung und ist nicht idempotent. Jede erfolgreiche Übermittlung kann einen neuen Lead erzeugen. Das Frontend sollte den Senden-Button deshalb nach dem ersten Klick deaktivieren und keine automatischen Wiederholungen auslösen. Zu den bestätigten Pflichtfeldern gehören `name`, `email` und `message`. Der Name muss zwischen 2 und 120 Zeichen lang sein, die E-Mail-Adresse muss ein gültiges Format besitzen, und die Nachricht muss die serverseitigen Validierungsregeln erfüllen. Weitere Felder dürfen nur gesendet werden, wenn sie im tatsächlichen Schema vorgesehen sind. Unbekannte Werte sollten nicht verwendet werden, um interne Eigenschaften des Leads zu steuern. Ein korrektes Formular prüft die Pflichtfelder bereits im Browser, verlässt sich aber nicht ausschließlich auf diese Prüfung. Der Server bleibt maßgeblich. Bei einem Validierungsfehler sollte die Oberfläche das betroffene Feld markieren und die eingegebenen Inhalte erhalten. Eine generische Erfolgsmeldung darf erst nach einer positiven Serverantwort erscheinen. Das Kontaktformular ist kein sicherer Kanal für Passwörter, API-Schlüssel, Widget-Tokens, Zahlungsdaten oder vollständige Kundendatensätze. Nutzer sollten den Anwendungsfall, das betroffene Produkt und eine erreichbare geschäftliche E-Mail-Adresse angeben. Bei einem technischen Problem helfen Tenant-Name, Zeitpunkt, betroffene Funktion und reproduzierbare Schritte, ohne unnötige personenbezogene Inhalte zu übertragen. Ein realistischer Ablauf: Der Besucher füllt Name, E-Mail und Nachricht aus, bestätigt gegebenenfalls die Datenschutzhinweise der Seite und sendet das Formular. Der Server validiert die Daten, legt den Lead an und liefert eine Erfolgsantwort. Bei ungültiger E-Mail oder zu kurzem Namen wird kein vollständiger Lead erzeugt. Der Endpunkt erstellt keinen Tenant, bucht kein Paket und ersetzt nicht die strukturierte Produktkonfiguration oder den Beratungsprozess. Zum Schutz vor Spam und automatisierten Serienanfragen sollte der Client die serverseitigen Fehler respektieren und keine sofortigen Endlosschleifen starten. Eine erfolgreiche Antwort sollte die Eingabefelder erst dann leeren, wenn der Server die Annahme bestätigt hat. Bleibt die Antwort aus, kann der Nutzer den Inhalt sichern und später kontrolliert erneut senden. Für die interne Zuordnung sollte die Nachricht den tatsächlichen Anlass enthalten, ohne Marketingfloskeln oder vertrauliche Anhänge. Ein klarer Betreff und eine präzise Problembeschreibung reduzieren Rückfragen. Die API selbst vergibt jedoch keine garantierte Priorität und bestätigt keine feste Bearbeitungsfrist.
Auth & Absicherung
Keine Authentifizierung erforderlich
Idempotent: Nein
Parameter
name(body, string, erforderlich)— 2–120 Zeichenemail(body, string, erforderlich)— Gültige E-Mail-Adressemessage(body, string, erforderlich)— 10–3000 Zeichencompany(body, string)phone(body, string)topic(body, string)consentGiven(body, boolean, erforderlich)— Muss true sein (Datenschutzeinwilligung)Beispiel-Request
{"name":"Max Mustermann","email":"max@example.com","message":"Ihre Nachricht (mind. 10 Zeichen).","consentGiven":true}Beispiel-Response
{"ok":true,"message":"Ihre Anfrage wurde übermittelt."}Fehlercodes
400 VALIDATION_ERROR — Pflichtfeld fehlt/ungültig, oder Datenschutzeinwilligung fehlt (Details-Array mit einzelnen Fehlermeldungen).Live-Test-Nachweis
Erfolg (200) und Negativfall (400, fehlende Felder inkl. fehlender Einwilligung) live verifiziert.