EN
FR
← overview
User portal — GDPR articles 15-22
Layer 4 · employee-facing · access + rectification + erasure + portability + objection
Employee accesses via browser · self-service · data local to the customer cluster · no external middleware
EMPLOYEE
[email protected]
browser · private session
no cloud account
1. SIGN UP
POST /v1/user/signup
admin email-domain whitelist
rate limit per IP
password hashed (OWASP)
2. VERIFY EMAIL
GET /v1/user/verify?token=…
SMTP via admin config
verified_at := now()
→ account active
3. LOG IN
POST /v1/user/login
session cookie
password verify
→ /v1/user/ui
USER PORTAL — /v1/user/ui
lightweight reactive SPA
CONVERSATIONS
LLM chat history
cross-turn context preserved
encrypted in storage
MEMORIES
auto-extracted facts
proprietary long-term layout
vector search
GDPR ZONE
export · rectif · erasure
change password
self-service
GDPR RIGHTS — auto-exposed in the user portal
ART. 15
· Right of access
GET /v1/user/me
GET /v1/user/memories/list
GET /v1/user/conversations
GET /v1/user/audit
→ see all my data
ART. 16
· Rectification
PUT /v1/user/profile
POST /v1/user/password/change
DELETE /v1/user/memories/{id}
(delete a single fact)
→ correct what is inaccurate
ART. 17
· Right to be forgotten
POST /v1/user/rgpd/delete-account
cascade: conversations + memories
audit trail anonymized (uid hash)
client_ip := NULL
→ erase me completely
ART. 20
Portability
GET /v1/user/rgpd/export-all
ZIP: profile + conversations
+ decrypted memories
→ standard JSON format
🔒 TECHNICAL GUARANTEES
Password hashing (OWASP parameters)
Hashed tokens for signup/reset/session · configurable TTL
Encrypted user memories in storage
GDPR audit append-only (insert only)
Email verify required before login
Silent anti-enumeration
All employee data stays inside the customer cluster
No transfer to external services · no third-party cloud · no analytics
Sign-up / email verify (orange)
Authenticated login (blue)
GDPR zone (articles 15-22, violet)
Art. 15
RIGHT OF ACCESS
• GET /v1/user/me — profile + verified_at
• GET /v1/user/conversations — chat history
• GET /v1/user/memories/list — auto-extracted facts
• GET /v1/user/audit — every GDPR action ever taken
• Transparent pagination · no hidden access
Art. 17
RIGHT TO BE FORGOTTEN
• POST /v1/user/rgpd/delete-account
• Cascade DELETE: conversations + memories + sessions
• Employee row: anonymized (uid hash)
• client_ip := NULL in audit
• Irreversible operation, confirmation required
Art. 20
PORTABILITY
• GET /v1/user/rgpd/export-all
• Standard JSON/ZIP format
• Includes: profile + conversations + decrypted memories
• Migrable to another system
• On-demand generation, no persistent staging