Skip to main content

Delete Dataset

DELETE 

/datasets/:dataset_id

Permanently delete a dataset, every version, and their stored files.

Irreversible, and distinct from deprecation (PATCH /datasets/{id}), which remains the safe retirement path. The dataset subtree is removed in one transaction, then the versions' objects and the dataset's Iceberg table are purged. Any trace_enrichment runs the platform auto-created for this dataset's versions are removed with it too -- their dependent rows and their own result artifact in object storage -- rather than left behind as still-readable, dataset-derived data with nothing left in the DB pointing at them.

Refused with 409 while a run references any version, or while another dataset was derived from this one. Storage is purged only after the transaction commits: the database is the source of truth, so a storage outage leaves orphaned objects (logged for cleanup) rather than a half-deleted subtree.

Two callers deleting the same dataset can both pass the existence check below before either commits. The cascade's row count settles it: the loser removes nothing and gets the same 404 it would have got had it arrived late.

Request​

Responses​

Successful Response