---
title: "Unconfirm Page Verification"
method: POST
path: "/api/v1/pages/{page_id}/verification/unconfirm"
tags: ["verification"]
---

# Unconfirm Page Verification

`POST /api/v1/pages/{page_id}/verification/unconfirm`

## Request

- Base URL: `https://api.rudus.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.rudus.ai/api/v1/pages/{page_id}/verification/unconfirm`
- Auth: none declared
- TypeScript: <https://skmtc.dev/rudus/apis/rudus-api/docs/api/v1/pages/:page_id/verification/unconfirm/post.ts> (a function with typed inputs; its response is checked against the schema)

Withdraw a page's confirmation, restoring its pre-confirm derived status.

The inverse half of `confirm`, added so Ctrl+Z can reverse a confirmation
(RUD-282 Wave A). No migration: all four columns `confirm` writes are already
nullable and `status` derives purely from them.

Deliberate consequence, carried from the design's §8 verbatim: "undo there can
unlock a page another user verified. In scope, but it makes undo the one
mutation path that toggles the gate other mutations respect — called out
deliberately rather than discovered later." This route enforces project-write,
not confirmation ownership, so a second reviewer's confirmation is reversible.
Rationale and the alternatives rejected: ADR-0170.

Idempotent on a never-confirmed page: it returns the current derived status
rather than 409, so replaying an undo against a page someone else already
unconfirmed succeeds instead of dropping the history entry.

## Path parameters

- `page_id` string, uuid, required

## Query parameters

- `rev` string, uuid, nullable

## Response `200`

Successful Response

- UnconfirmPageVerificationResponse: The page's derived status once the confirmation is withdrawn. `status` is never "confirmed"/"corrected" here: both require a non-null `confirmed_at`, which unconfirm has just cleared.
  - `page_id` string, uuid, required
  - `status` 'confirmed' | 'corrected' | 'failed-gate' | 'needs-scale' | 'auto-passed', required

## Other responses

- `4XX`: Client Error
- `5XX`: Server Error

---

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