lomavuokraus/docs/plantuml/auth-register-login.puml
2025-11-24 17:31:21 +02:00

19 lines
613 B
Text

@startuml
title User registration, verification, login, approval
actor User
participant "Next API" as API
database Postgres as DB
participant SMTP as Mail
actor Admin
User -> API: POST /api/auth/register\n(email, password, name)
API -> DB: create User (status=PENDING)\ncreate VerificationToken
API -> Mail: send verification email
User -> API: POST /api/auth/verify (token)
API -> DB: set emailVerifiedAt
Admin -> API: POST /api/admin/users/approve
API -> DB: set status=ACTIVE, approvedAt
User -> API: POST /api/auth/login
API -> DB: validate password + status
API --> User: session_token cookie (JWT)
@enduml