What: Add an endpoint that exports all of the user's data in a machine-readable format (JSON).
Why: GDPR requires data portability. Users must be able to export their data (profile, enrollments, quiz results, credentials, rewards).
Scope: Create endpoint that aggregates all user data: profile, enrollments, quiz submissions, credentials, reward claims. Return as downloadable JSON with metadata (export date, version).
Acceptance criteria:
- Returns complete user data as JSON
- Includes all data categories
- Downloadable as file attachment
- Export is logged in audit logs
Technical context: src/modules/users/user.service.ts — user queries. src/database/schema.ts — all relevant tables.
What: Add an endpoint that exports all of the user's data in a machine-readable format (JSON).
Why: GDPR requires data portability. Users must be able to export their data (profile, enrollments, quiz results, credentials, rewards).
Scope: Create endpoint that aggregates all user data: profile, enrollments, quiz submissions, credentials, reward claims. Return as downloadable JSON with metadata (export date, version).
Acceptance criteria:
Technical context:
src/modules/users/user.service.ts— user queries.src/database/schema.ts— all relevant tables.