Skip to main content
API reference sections

Schema

PurgeRunResponse

POST /v1/runs/{run}/purge: the trash was emptied, and this run is gone.

Everything this device holds about it: the ledger's rows, its authority record, and its working folder when Koru made that folder. A run scoped to a project ran inside the person's own repository, and that directory was theirs before the run and is theirs after - folder says which of those happened, because a trash that quietly did less than it offered teaches somebody that it did more.

The Run document is not purged here: it is a document of the workspace's manifest, and the caller removes it once this has answered. Ordered that way deliberately - a folder the filesystem refuses is run_folder_not_removed with nothing changed, so the run stays in the trash and can be deleted again.

Type object

Shape

FieldTypeDescription
runrequiredRunId
documentrequiredDocumentId

DocumentId - a client-minted v4 UUID, hyphenated and lowercase. Immutable, and never derived from a name or a path.

folderrequiredFolderOutcome

What emptying the trash did to a run's working folder.

The trash says what it did, because an operation that quietly does less than it offered teaches a person that it did more. Three answers, and the middle one is the important one: a run scoped to a project ran inside a folder that was the person's before it started and is theirs after, so the run is forgotten and the directory is left exactly alone.

A folder the filesystem refused to remove is not here: that refuses the whole deletion, so the run stays in the trash and can be deleted again.

artifacts_retiredrequiredinteger (uint32, >= 0)

How many result families were retired because the person asked for them to go with the run. Zero when they asked to keep them, and for a run that produced nothing.

Example
{
  "run": "00000000-0000-4000-8000-000000000000",
  "document": "00000000-0000-4000-8000-000000000000",
  "folder": "removed",
  "artifacts_retired": 0
}

The contract has no example values, so example bodies are generated from each schema: every field is shown with a placeholder of its type.

Used by

Generated from contract version 1. Last updated .

Privacy choices

Choose which optional tools Koru may use on this site. Your choice is saved in a cookie in this browser for 12 months. Privacy policy

Privacy choices

Keep you signed in, protect forms and remember your language and this choice.

Always on

PostHog and Google Analytics 4 measure page views and actions such as downloads, using cookies or local storage.

PostHog records how pages are used, with form inputs masked and private pages excluded. Needs Analytics.

Ahrefs Web Analytics measures visits and where they come from, and Google Ads measures whether our ads led to a visit or download.