POST/api/public/access-request/email/start-verification

Sender en 6-sifret bekreftelseskode som er gyldig i 10 minutter til den angitte e-postadressen – første steg før en tilgangssøknad.

`POST /api/public/access-request/email/start-verification` starter e-postverifiseringen for en offentlig tilgangssøknad. Forespørselen krever ingen innlogging og inneholder adressen som skal kontrolleres, i body-feltet `email`. Ved vellykket behandling sender systemet en sekssifret bekreftelseskode som er gyldig i ti minutter. Svaret inneholder `ok`, en `verification_id`, `expires_in_minutes` og `resend_cooldown_seconds`. `verification_id` må brukes sammen med den samme e-postadressen og den mottatte koden i den påfølgende verify-ruten. Den er ikke et innloggingstoken og skal ikke lagres som varig brukeridentifikator eller logges offentlig. Endepunktet er ikke idempotent. Flere vellykkede kall kan opprette flere verifiseringsprosesser eller nye koder. Derfor gjelder en streng IP-basert grense på ti forespørsler innenfor 15 minutter. I tillegg viser svaret til en sperre for ny utsending på 60 sekunder. Brukergrensesnittet skal ikke utløse ny utsending i dette tidsrommet og skal vise gjenværende ventetid på en forståelig måte. Hvis grensen overskrides, svarer ruten med `429 RATE_LIMIT_EXCEEDED`. Hvis koden ikke kan sendes på grunn av en leveringsfeil, er `502 MAIL_NOT_SENT` dokumentert. Disse tilfellene skal håndteres hver for seg: En rate limit løses ved å vente, mens en e-postfeil krever en adresse som kan nås, og en fungerende levering. Hemmeligheter eller interne e-postserverdata hører ikke hjemme i feilmeldingen. Suksesstilfellet ble verifisert live med en ekte `verification_id`. Den tilhørende meldingen ble mottatt via en egen fake-SMTP-server, og den sekssifrede koden ble lest fra det faktiske e-postinnholdet. I tillegg ble negativtilfellet 429 observert etter gjentatte kall. Nettopp dette beviset kan nevnes; det betyr ennå ikke at en tilgangssøknad eller en betaling er fullført.

Autentisering og sikring

Ingen autentisering påkrevd

strictLimiter: 10 forespørsler / 15 minutter, IP-bundet.

Hastighetsbegrensning: 10 Anfragen pro 15 Minuten (IP-basiert)

Idempotent: Nei

Parametere

email(body, string, påkrevd)— E-postadresse som skal bekreftes

Eksempel på forespørsel

{"email":"max@example.com"}

Eksempel på svar

{"ok":true,"verification_id":"<UUID>","expires_in_minutes":10,"resend_cooldown_seconds":60}

Feilkoder

429 RATE_LIMIT_EXCEEDED — For mange forespørsler til dette sensitive endepunktet.
502 MAIL_NOT_SENT — Bekreftelseskode kunne ikke sendes (e-postleveringsfeil).

Live-testbevis

Suksess (200, ekte verification_id) verifisert live; tilhørende e-post mottatt via egen fake-SMTP-server, 6-sifret kode hentet fra innholdet i den ekte e-posten. Negativtilfelle 429 observert etter gjentatte kall.

← Offentlige skjema