Data Retention & Deletion
VivaEdu implements data minimization through automatic deletion. This page details retention schedules, deletion procedures, and configuration options for instructors, administrators, and compliance officers.
Summary
- Media files (audio/video) deleted 90 days after assignment due date
- All records purged 180 days after assignment due date
- Retention periods are configurable by administrators
- All deletion operations are audit logged
- Automatic cleanup runs daily at 03:00 UTC
Default Retention Periods
The following retention periods apply by default. Administrators can adjust these values via the admin console.
| Data Type | Retention Period | After Assignment Due Date |
|---|---|---|
| Student audio recordings | 90 days | Deleted from S3 |
| Student video recordings | 90 days | Deleted from S3 |
| Instructor video prompts | 90 days | Deleted from S3 |
| Instructor video feedback | 90 days | Deleted from S3 |
| Transcripts | 180 days | Deleted from database |
| Session data | 180 days | Deleted from database |
| Assignment records | 180 days | Deleted from database |
| Audit logs | 365 days (default) | Deleted by worker |
| Inactive classes | 180 days | Archived (if enabled) |
Note: Audit log retention is configurable from 30 to 3,650 days (10 years). Institutions with Data Processing Agreements requiring longer retention should configure accordingly.
What Gets Deleted at 90 Days
The 90-day deletion removes media files while preserving transcripts and academic records:
- Response audio files: .webm and .mp3 recordings from student responses
- Response video files: Video recordings (if video mode was enabled)
- Derived video files: Safari compatibility versions (
derived-video/) - Captioned video derivatives: Videos with burned-in captions (
derived-video-captions/)
When media is deleted, the audioDeletedAt and videoDeletedAt timestamps are set on the response record. Transcripts, grades, and session metadata are retained at this stage.
What Gets Deleted at 180 Days
The 180-day purge removes all remaining assignment data:
- Essays: Uploaded files and database records
- Viva sessions: All student session records
- Questions: Per-session question instances
- Responses: Any remaining response records
- Teacher responses: Grades, feedback, and rubric scores
- Question pools: Assignment question pool items and images
- Context cards: PDF and image files students viewed during the viva
- Assignment record: The assignment configuration itself
What Is Retained
- Grade records: May be retained per institutional policy (separate from VivaEdu)
- Audit logs: Retained per configured retention period (default 365 days)
Retention Configuration
Administrators can configure retention settings via the Admin Console under Governance → Retention.
Configurable Settings
| Setting | Default | Range | Description |
|---|---|---|---|
| Media Delete Days | 90 | 1 - 3,650 | Days after due date to delete audio/video |
| Purge Days | 180 | 2 - 3,650 | Days after due date to delete all records |
| Audit Log Retention Days | 365 | 30 - 3,650 | Days to retain audit logs |
| Auto Archive Inactive Classes | Off | On / Off | Archive classes with no activity |
Configuration Constraints
- Purge days must exceed media delete days: The full purge cannot occur before media deletion
- Audit log retention minimum: 30 days (cannot be set lower for compliance purposes)
Deletes student audio/video after this many days past assignment due date.
Deletes assignment records, essays, sessions, and responses after this many days past the due date.
Minimum 30 days. Cleanup is performed by the retention worker.
Automatic Deletion Schedule
VivaEdu runs a retention worker that automatically processes deletions on a scheduled basis.
| Schedule | Daily at 03:00 UTC |
| Cron Expression | 0 3 * * * |
| Job Name | retention-sweeper |
| Queue | retention |
Worker Actions
- Find assignments with due date + 90 days passed → delete media files
- Find assignments with due date + 180 days passed → purge all data
- Archive inactive classes (if auto-archive is enabled)
- Delete audit logs older than the retention window
Manual Deletion Options
Teacher-Initiated Deletion
| Action | What Gets Deleted | Audit Log Action |
|---|---|---|
| Delete Assignment | All data for that assignment | RETENTION_PURGE_ASSIGNMENT |
| Archive Class | All assignments in the class | RETENTION_PURGE_CLASS |
Both actions require confirmation before execution and are logged to the audit system.
Admin-Initiated Cleanup
Administrators can trigger immediate cleanup via the "Run cleanup now" button in the Admin Console. This processes all pending deletions immediately rather than waiting for the next scheduled run.
Student-Initiated Deletion
- Students can request account deletion via Settings → Delete Account
- Request is sent to jex@vivaedu.co.uk
- Processed within 30 days
- Logged as
GDPR_ACCOUNT_DELETION_REQUESTED
Class Archiving
When auto-archive is enabled by an administrator:
- Classes with no assignment activity for 180 days are identified
- All assignments within archived classes are purged
- Class record is marked inactive
- This feature is disabled by default and must be explicitly enabled
Demo Data Retention
Demo environments have special retention rules to ensure temporary data is cleaned up promptly:
| Demo Data Expiration | 2 hours after creation |
| Cleanup Frequency | Every 15 minutes |
| Scope | All data with matching demoTenantId |
Demo cleanup includes: users, classes, assignments, sessions, questions, responses, and all media files.
Audit Logging of Deletions
All deletion operations are recorded in the audit log:
| Action | Log Entry | Metadata |
|---|---|---|
| Media deletion | RETENTION_DELETE_AUDIO | Response count |
| Assignment purge | RETENTION_PURGE_ASSIGNMENT | Assignment ID |
| Class purge | RETENTION_PURGE_CLASS | Purged assignment count |
| Audit log cleanup | RETENTION_AUDIT_LOGS_CLEANUP | Deleted count, cutoff date |
Data Deletion Verification
To verify that data has been deleted:
- Audit logs: Check for deletion action entries with timestamps and metadata
- S3 objects: Objects are permanently removed from storage
- Database records: Records are permanently deleted (not soft-deleted)
- Response timestamps:
audioDeletedAtandvideoDeletedAtfields confirm media deletion
Important Notes
Deletion is Permanent
- Deleted data cannot be recovered
- Export data before deletion if records are needed for long-term retention
- Grade records may be retained per institutional policy (separate from VivaEdu)
- Audit logs are retained for compliance purposes per the configured retention period
Institutional Policy: Your institution may have specific retention requirements beyond VivaEdu defaults. Contact your institution's data protection officer for guidance on appropriate retention periods and any export requirements before data is automatically deleted.
Retention Timeline
Related Topics
- GDPR ComplianceData subject rights and legal bases
- Consent ManagementRecording consent and withdrawal
- Audit LoggingWhat is logged and how to access logs
- Admin Console: GovernanceOperational how-to for retention settings
Questions
For questions about data retention or to discuss custom retention requirements for your institution, contact jex@vivaedu.co.uk.
Comments
Leave a comment, question, or feedback. Comments are public — please don’t include personal data.