POST/api/public/contact

Veřejný kontaktní formulář webu Zentor. Vytváří poptávku v interním systému leadů.

`POST /api/public/contact` zpracovává veřejný kontaktní formulář webu Zentor a ukládá požadavek do interního systému leadů. Endpoint nevyžaduje autentizaci přes dashboard a není idempotentní. Každé úspěšné odeslání může vytvořit nový lead. Frontend by proto měl po prvním kliknutí deaktivovat tlačítko odeslání a nevyvolávat automatická opakování. Mezi potvrzená povinná pole patří `name`, `email` a `message`. Jméno musí mít délku 2 až 120 znaků, e-mailová adresa musí mít platný formát a zpráva musí splňovat pravidla validace na straně serveru. Další pole lze odesílat pouze v případě, že jsou součástí skutečného schématu. Neznámé hodnoty by neměly být používány k řízení interních vlastností leadu. Správný formulář kontroluje povinná pole již v prohlížeči, ale nespoléhá se výhradně na tuto kontrolu. Rozhodující zůstává server. Při chybě validace by mělo rozhraní označit příslušné pole a zachovat zadaný obsah. Obecná zpráva o úspěchu se může zobrazit až po kladné odpovědi serveru. Kontaktní formulář není bezpečným kanálem pro hesla, API klíče, widget tokeny, platební údaje nebo kompletní záznamy o zákaznících. Uživatelé by měli uvést případ použití, dotčený produkt a dosažitelnou obchodní e-mailovou adresu. Při technickém problému pomohou název tenanta, čas, dotčená funkce a reprodukovatelné kroky, aniž by se přenášel zbytečný osobní obsah. Realistický průběh: Návštěvník vyplní jméno, e-mail a zprávu, případně potvrdí informace o ochraně osobních údajů na stránce a odešle formulář. Server ověří data, vytvoří lead a vrátí odpověď o úspěchu. Při neplatném e-mailu nebo příliš krátkém jménu se nevytvoří kompletní lead. Endpoint nevytváří tenanta, neobjednává balíček a nenahrazuje strukturovanou konfiguraci produktu ani poradenský proces. Pro ochranu před spamem a automatizovanými sériovými požadavky by měl klient respektovat chyby na straně serveru a nespouštět okamžité nekonečné smyčky. Úspěšná odpověď by měla vyprázdnit vstupní pole teprve poté, co server potvrdí přijetí. Pokud odpověď nepřijde, může si uživatel obsah uložit a později jej kontrolovaně znovu odeslat. Pro interní přiřazení by zpráva měla obsahovat skutečný důvod, bez marketingových frází nebo důvěrných příloh. Jasný předmět a přesný popis problému snižují počet dotazů. Samotné API však nepřiděluje zaručenou prioritu a nepotvrzuje pevnou lhůtu pro zpracování.

Auth & Absicherung

Keine Authentifizierung erforderlich

Idempotent: Nein

Parameter

name(body, string, erforderlich)2–120 znaků
email(body, string, erforderlich)Platná e-mailová adresa
message(body, string, erforderlich)10–3000 znaků
company(body, string)
phone(body, string)
topic(body, string)
consentGiven(body, boolean, erforderlich)Musí být true (souhlas s ochranou údajů)

Beispiel-Request

{"name":"Max Mustermann","email":"max@example.com","message":"Vaše zpráva (min. 10 znaků).","consentGiven":true}

Beispiel-Response

{"ok":true,"message":"Vaše žádost byla odeslána."}

Fehlercodes

400 VALIDATION_ERRORPovinné pole chybí/neplatné, nebo chybí souhlas s ochranou osobních údajů (pole podrobností s jednotlivými chybovými hláškami).

Live-Test-Nachweis

Úspěch (200) a negativní případ (400, chybějící pole včetně chybějícího souhlasu) ověřeno naživo.

Veřejné formuláře