Delete for good every run whose six months have passed
POST
/v1/admin/purge
const url = 'https://beta-api.plune.ai/v1/admin/purge';const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://beta-api.plune.ai/v1/admin/purge \ --header 'Authorization: Bearer <token>'The second half of the run delete: DELETE /v1/runs/{id} hides a run and keeps it, this removes what has aged out. Irreversible — nothing brings these rows back, which is why they wait six months first. Restricted to the owner of the deployment; everyone else gets 404. Called by a schedule, not by a person: 0 everywhere is the normal answer.
Authorizations
Section titled “Authorizations ”Responses
Section titled “ Responses ”What the sweep removed
Media type application/json
object
ranAt
required
string format: date-time
runs
required
integer
reviewItems
required
integer
results
required
integer
Example generated
{ "ranAt": "2026-04-15T12:00:00Z", "runs": 1, "reviewItems": 1, "results": 1}No / invalid token or session
The caller does not own the application
Media type application/json
object
error
required
string
Example generated
{ "error": "example"}Rate-limited: either the per-route throttle or a tenant quota. Retry-After carries the seconds until the window rolls over.
Media type application/json
object
error
required
string
Example generated
{ "error": "example"}Headers
Section titled “Headers ” Retry-After
integer
Seconds until the window rolls over