---
title: "Verify a skill content digest"
method: POST
path: "/api/v1/skills/{slug}/verify"
tags: ["Signing & Provenance"]
---

# Verify a skill content digest

`POST /api/v1/skills/{slug}/verify`

## Request

- Base URL: `https://api.skills-hub.ai`
- URL: `https://api.skills-hub.ai/api/v1/skills/{slug}/verify`
- Auth: one of:
  - HTTP bearer
  - API key in header `Authorization`

Compares a caller-supplied SHA-256 digest against the latest signed version's canonical content digest and returns whether it matches, along with the signer identity. Public but strictly rate-limited (10 req/min/IP). Returns a mismatch reason (`not_found`, `unsigned`, or `digest_mismatch`) when it does not verify.

## Path parameters

- `slug` string, required

## Response `200`

Successful response. The returned fields are described in this endpoint's summary/description; typed per-field response schemas are being added incrementally.

- object
  - `ok` boolean, required
  - `signerIdentity` string, nullable, required
  - `mismatchReason` 'digest_mismatch' | 'unsigned' | 'not_found' | 'null', nullable, required

---

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