---
title: "Get revocation list"
method: GET
path: "/api/v1/proofs/revoked"
tags: ["Proofs"]
---

# Get revocation list

`GET /api/v1/proofs/revoked`

## Request

- Base URL: `https://api.proof.holdings`
- URL: `https://api.proof.holdings/api/v1/proofs/revoked`
- Auth: none declared

Get signed list of revoked proofs for offline verification. When `has_more` is true the list was truncated — re-baseline and prefer the Token Status List (`status_list_uri`), which never truncates and also covers suspension.

## Response `200`

Revocation list

- RevocationList: Signed list of revoked proofs
  - `revoked` RevokedProof[], required
    - `proof_id` string, nullable, required: The `sub` claim carried by the proof token — match it against `payload.sub` when verifying offline. NULL when that `sub` is shared with a proof that is still live (a legacy `sub` names a class of proofs, not one): match such an entry on `public_proof_id` instead.
    - `public_proof_id` string, nullable, required: Stable public handle of the same proof (`ph_ctl_…`), or null for a proof issued before the proof registry existed.
    - `proof_type` 'verification' | 'verification_request' | 'confirmation' | 'authorization' | 'user_asset', required: Collection the revoked proof was issued from
    - `revoked_at` string, date-time, nullable, required
    - `reason` 'user_request' | 'fraud' | 'key_compromise' | 'asset_transferred' | 'other', required: Reason for revoking a proof
  - `issued_at` string, date-time, required: When this list was generated
  - `count` number, required: Number of entries in `revoked`
  - `has_more` boolean, required: True when a source hit its cap and the list may be incomplete — re-baseline and prefer the Token Status List, which never truncates
  - `status_list_uri` string, required: The Token Status List endpoint — the scalable status channel that also covers SUSPENDED and can retract entries (an unsuspended bit flips back; a CRL entry cached by a `?since` poller cannot be unpublished)
  - `signature` string, nullable, required: Signature over the payload for offline verification, in the algorithm of the key `kid` names (null when unsigned)
  - `kid` string, nullable, required: Key id of the signing key, for JWKS lookup

---

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