---
title: "Poll the status of a hard-delete cascade purge job (v2)"
method: GET
path: "/v2/apps/purge-jobs/{jobId}"
tags: ["Apps"]
---

# Poll the status of a hard-delete cascade purge job (v2)

`GET /v2/apps/purge-jobs/{jobId}`

## Request

- Base URL: `https://api.chat.ethora.com`
- URL: `https://api.chat.ethora.com/v2/apps/purge-jobs/{jobId}`
- Auth: HTTP bearer

Returns the Bull job state for a purge initiated via
`DELETE /v2/apps/{appId}?mode=hard`. Possible states: `waiting`,
`active`, `completed`, `failed`. On `completed`, `result.summary`
contains per-collection deletion counts (users, chats, messages,
files, MinIO objects, etc.) for audit. On `failed`, `error` holds
the worker's failure reason.

Jobs are retained for 24h after completion/failure.

Supports `User JWT` and `B2B Server JWT`.

## Path parameters

- `jobId` string, required

## Response `200`

job status

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `404`: job not found (expired or never existed)
- `422`: Unprocessable Entity
- `500`: Internal Server Error

---

[API](https://skmtc.dev/ethora/apis/platform-api.md) · [All operations](https://skmtc.dev/ethora/apis/platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ethora/apis/platform-api/revisions/01b6e64378ee?raw)
