---
title: "Inspect a kept file again with the current engine"
method: POST
path: "/api/v1/history/{id}/reinspect"
tags: ["Retention"]
---

# Inspect a kept file again with the current engine

`POST /api/v1/history/{id}/reinspect`

## Request

- Base URL: `https://tamperlens.com` (the document declares no server; this is the origin it was published from)
- URL: `https://tamperlens.com/api/v1/history/{id}/reinspect`
- Auth: none declared

Runs the file this account kept for that inspection through the current engine and returns a new report, exactly as `POST /api/v1/inspect` would for the same bytes (`?redact=payload` and `?changes=values` work the same). **Counts one document** against the monthly quota, and a spent month is `429 quota_exceeded`. Nothing new is kept: the response is the only copy of the new report. It carries `reinspection: {of, storedEngineVersion}` beside the report.

404 `inspection_not_found`, 404 `file_not_retained`, 410 `file_expired`, 503 `retention_bytes_unavailable`, 503 `busy` (too many kept files in flight, or the pool is full), 409 `no_live_key` (a dashboard session whose account has no live key to count the document against), 413 `file_too_large` (the file exceeds today's upload limit), and the timeout answer of /inspect.

## Path parameters

- `id` string, required

## Response `200`

Default Response

- object

## Other responses

- `400`: Default Response
- `401`: Default Response
- `403`: Default Response
- `404`: Default Response
- `409`: Default Response
- `410`: Default Response
- `413`: Default Response
- `415`: Default Response
- `422`: Default Response
- `429`: Default Response
- `500`: Default Response
- `503`: Default Response

---

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