What cron handles
Cron jobs run recurring maintenance, monitoring, and processing tasks such as:- Session cleanup
- GDPR retention cleanup
- API health cleanup
- Commit archive purge
- Notification queue retention and database optimization
- Video queue processing
- Reminder and breach checks
- File integrity checks
Execution model
PropOps Web supports two execution paths:| Path | How it works | Typical use |
|---|---|---|
| n8n scheduler | n8n Schedule Trigger calls the cron webhook with an approved script name | Primary production scheduling |
| Direct CLI | Script executed from CLI by system scheduler | Local ops, fallback, one-off runs |
Cron webhook security
Cron scripts exposed through the webhook endpoint are protected by:X-Webhook-Tokenvalidation- Script allowlist validation (
scriptmust match an approved filename) - Path traversal protection (
basename()filtering)
Data deletion and audit logging
Cleanup and purge scripts that remove data write an audit entry touser_activity_log with system context.
Typical logged fields include:
- script name
- execution type (
cron) - records/files deleted
- retention cutoff details
- schedule context
Key retention controls
| Setting | Default | Purpose |
|---|---|---|
GDPR_ACTIVITY_LOG_RETENTION_MONTHS | 84 | Retention window for activity logs and system email logs |
GDPR_REPORT_FILE_RETENTION_HOURS | 24 | Retention window for GDPR/SAR generated report files |
Related documentation
- Admin controls: /features/admin
- Integrations and n8n setup: /configuration/integrations
- Cron webhook API behavior: /api/webhooks#cron-webhook
- Practical setup guide: /guides/cron-job-management