POST/api/public/contact
Javni obrazec za stike na Zentor spletni strani. Ustvari zahtevo v notranjem sistemu za potencialne stranke.
`POST /api/public/contact` obdeluje javni kontaktni obrazec spletnega mesta Zentor in shrani zahtevo v notranjem sistemu za potencialne stranke. Končna točka ne zahteva overitve nadzorne plošče in ni idempotentna. Vsak uspešen prenos lahko ustvari novo potencialno stranko. Zato naj uporabniški vmesnik po prvem kliku onemogoči gumb Pošlji in ne sproži samodejnih ponovitev. Potrditvena obvezna polja so `name`, `email` in `message`. Ime mora biti dolgo med 2 in 120 znaki, e-poštni naslov mora imeti veljavno obliko, sporočilo pa mora izpolnjevati pravila strežniškega preverjanja. Dodatna polja se lahko pošljejo le, če so predvidena v dejanskem shemi. Neznane vrednosti ne bi smeli uporabljati za nadzorovanje notranjih lastnosti potencialne stranke. Pravilno obrazec preveri obvezna polja že v brskalniku, se pa ne zanaša izključno na to preverjanje. Strežnik ostaja ključen. Pri napaki preverjanja naj vmesnik označi prizadeto polje in ohrani vnesene vsebine. Splošno sporočilo o uspehu se mora pojaviti šele po pozitivnem odgovoru strežnika. Kontaktno obrazec ni varna pot za gesla, API ključe, tokenje vtičnikov, podatke o plačilih ali celotne datoteke strank. Uporabniki naj navedejo namen uporabe, prizadeto izdelek in dosegljivo poslovno e-poštno naslov. Pri tehničnih težavah pomagajo ime najemnika, časovnica, prizadeta funkcija in ponovljivi koraki, brez nepotrebnega prenosa osebnih podatkov. Realističen potek: obiskalec izpolni ime, e-poštni naslov in sporočilo, po potrebi potrdi opozorila o zasebnosti strani in pošlje obrazec. Strežnik preveri podatke, ustvari potencialno stranko in vrne odgovor o uspehu. Pri neveljavnem e-poštnem naslovu ali prekratkem imenu se ne ustvari popolna potencialna stranka. Končna točka ne ustvari najemnika, ne zabeleži paketa in ne nadomesti strukturirane konfiguracije izdelka ali svetovanja. Za zaščito pred spamom in avtomatiziranimi serijskimi zahtevami naj klic spremlja napake strežnika in ne začne takojšnjih neskončnih zank. Uspešen odgovor naj prazni vnosna polja šele, ko strežnik potrdi sprejem. Če odgovora ni, lahko uporabnik shrani vsebino in kasneje ponovno pošlje na nadzorovan način. Za notranjo razvrstitev naj sporočilo vsebuje dejanski razlog brez marketinških fraz ali zaupnih prilog. Jasen naslov in natančen opis težave zmanjšata povpraševanja. API sama po sebi pa ne dodeli zagotovljene prioritete in ne potrdi fiksne roka za obdelavo.
Avtentikacija in zaščita
Avtentikacija ni potrebna
Idempotentno: Ne
Parametri
name(body, string, obvezno)— 2–120 znakovemail(body, string, obvezno)— Veljaven e-poštni naslovmessage(body, string, obvezno)— 10–3000 znakovcompany(body, string)phone(body, string)topic(body, string)consentGiven(body, boolean, obvezno)— Mora biti true (privolitev v varstvo podatkov)Primer zahteve
{"name":"Max Mustermann","email":"max@example.com","message":"Vaše sporočilo (najmanj 10 znakov).","consentGiven":true}Primer odgovora
{"ok":true,"message":"Vaše povpraševanje je bilo poslano."}Kode napak
400 VALIDATION_ERROR — Manjka obvezno polje ali je neveljavno, ali manjka privolitev v varstvo podatkov (polje details s posameznimi sporočili o napakah).Dokaz testa v živo
Uspeh (200) in negativni primer (400, manjkajoča polja, vključno z manjkajočo privolitvijo) sta preverjena v živo.