# Privacy

vid2md does not archive source videos.

The processor downloads each video URL to transient container disk, extracts frames and audio under the job working directory, writes Markdown and metadata, then removes the working directory. For file uploads, vid2md writes the uploaded bytes to R2 under a tokenized handoff URL and deletes that upload object after the job finishes. A scheduled cleanup removes stale upload handoff objects after `UPLOAD_RETENTION_HOURS`.

vid2md stores:

- account email
- API key hash
- job status
- original video URL
- Markdown result
- metadata JSON
- billing and credit ledger rows

vid2md clears the source `video_url` from job records after success or failure. Non-archive accounts can download results during `RESULT_RETENTION_HOURS`, 24 hours in production config. The $10 monthly archive subscription keeps Markdown results available in the account archive while active. It does not store source videos.

The processor moderates extracted keyframes before Markdown generation. Jobs fail with `content_policy_violation` when the moderation layer flags disallowed sexual content, child exploitation, graphic sexual violence, illegal drug manufacturing, weapon construction instructions, active violent crime, or other illegal material.
