---
title: "Verify a scan attestation (free, anonymous)."
method: POST
path: "/v1/verify"
---

# Verify a scan attestation (free, anonymous).

`POST /v1/verify`

## Request

- Base URL: `https://lazaretto.dev`
- URL: `https://lazaretto.dev/v1/verify`
- Auth: none declared

Body {attestation:"<compact JWS>"}. Returns {valid, claims}, plus `contradicted` when a `clear`/`flagged` verdict's content hash is now a known-bad match (a stale verdict). Offline verification against /.well-known/jwks.json is preferred; this adds the contradiction check.

## Response `200`

Verification result (valid true/false; never a signature-based error status).

## Other responses

- `400`: No attestation in the body.
- `429`: Rate limited.

---

[API](https://skmtc.dev/lazaretto/apis/lazaretto-skill-tool-verification-api.md) · [All operations](https://skmtc.dev/lazaretto/apis/lazaretto-skill-tool-verification-api/llms.txt) · [OpenAPI document](https://skmtc.dev/lazaretto/apis/lazaretto-skill-tool-verification-api/revisions/2bd4e34d0067?raw)
