Skip to main content

Data subject requests

The GDPR Article 17 workflow for erasing a person's data across chats, documents, workflow runs, and prompts. Admins and Owners read this when a user files a request or when an SLA deadline is closing in.

3 min read

Data subject requests is the workflow Tale ships for honouring GDPR Article 17 (right to erasure) and the equivalent CCPA right under California law. Each request becomes a receipt: it names the subject, the reason code, the SLA deadline, and the cascade of rows the system erased across threads, documents, workflow executions, and personal prompt templates. Admins and Owners read this page when a subject files a request, when a deadline is closing in, or when an audit asks for the receipt of a past erasure.

A worked filing

To file a request, open Settings > Governance > Data subject requests and click File request. Pick the subject, choose a reason code (consent withdrawn, no longer necessary, unlawful processing, legal obligation, objection, child subject, or contract termination), and add a free-text narrative. The request enters a cooling-off window before the cascade runs — any Admin can cancel during the window. After the window elapses, the cascade erases the subject's threads, documents, workflow executions, RAG embeddings, and personal prompts, and the receipt records counts for each category.

Status lifecycle

NameDefaultDescription
Pendinginitial stateThe request is filed and waiting for the cooling-off window or the second admin approval.
Awaiting approvaldual-controlA second Admin must approve before the cascade runs.
Runningmid-cascadeThe cascade is in flight; partial counters update as each category completes.
CompletedterminalEvery category erased without error.
PartialterminalSome rows were skipped — usually a legal hold blocked them.
FailedterminalThe cascade hit an error; the receipt names the failed category.
BlockedterminalAn active legal hold blocks every cascade step.
CancelledterminalAn Admin cancelled before the cooling-off window elapsed.

SLA tracking

Every request carries a service-level deadline — by default, 30 days from filing. The Requests list shows days-left or an overdue badge per row. Article 12(3) of GDPR permits a single extension for complex cases; the Extend deadline action records the extension on the receipt with the requesting admin's name and a narrative.

A subject's data is not erased while it is on legal hold. Rows under hold show as Skipped by hold in the receipt's per-category counters; releasing the hold and retrying the request finishes the erasure. The Blocked status fires when a hold covers every category from the start — the cascade does not run, and the receipt reflects the block.

The cascade categories

The receipt breaks the erased rows down by category — threads, documents, workflow executions, prompt templates, RAG documents removed from the vector store. Read the drawer to see counts and the audit timeline; the audit log on the same Governance area carries the full event chain (gdpr_erasure_requested, gdpr_erasure_executed, gdpr_erasure_extended, gdpr_erasure_cancelled).

Where this fits

Data subject requests is the compliance face of retention — the audited, dual-controlled path that erases a specific subject on demand instead of the timed sweep retention runs across everyone. The companion page is legal hold — it covers how to pause retention and DSAR cascades for litigation before they run.

© 2026 Tale by Ruler GmbH — ISO 27001 & SOC 2 certified.

Tale is MIT licensed — free to use, modify, and distribute.