---
title: "Validate a skill"
method: GET
path: "/api/v1/skills/{slug}/validate"
tags: ["Skills"]
---

# Validate a skill

`GET /api/v1/skills/{slug}/validate`

## Request

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

Runs the validation pipeline (schema, content, structure, and security checks) against a skill's latest version and returns the report. Public for visible skills; `UNLISTED` skills can only be validated by their author.

## 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: ValidationReport for the skill's latest version.
  - `slug` string, required
  - `qualityScore` number, required
  - `publishable` boolean, required
  - `checks` object, required
    - `schema` Check[] (unresolved $ref)
    - `content` Check[] (unresolved $ref)
    - `structure` Check[] (unresolved $ref)
    - `security` Check[] (unresolved $ref)
  - `summary` object, required
    - `errors` integer
    - `warnings` integer
    - `passed` integer
    - `total` integer

---

[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)
