
Validating API Schemas
FreeEnsure your API specifications meet industry standards.
Free · Opens the source repo
What Validating API Schemas does
Validating API Schemas is a skill designed for developers and teams who need to ensure their API specifications adhere to established standards such as OpenAPI, JSON Schema, and GraphQL. This skill employs various linting rules and structural validation techniques to identify issues within API schemas, including incomplete documentation, inconsistent naming conventions, and potential breaking changes. By integrating this skill into your workflow, you can catch errors before they impact consumers, thereby improving the quality and reliability of your API offerings.
The skill requires specific prerequisites, including OpenAPI specification files or GraphQL SDL schema files, and a schema linting tool such as Spectral or graphql-schema-linter. It operates by first locating all relevant API specification files within your project, then performing structural validation to ensure compliance with the specified standards. The skill also applies linting rules to enforce best practices, such as requiring descriptions for all operations and ensuring that all response status codes are documented.
One of the key features of this skill is its ability to detect breaking changes by comparing the current schema with previous versions. This is crucial for teams practicing version control, as it helps maintain backward compatibility and informs users of any significant changes. Additionally, the skill generates comprehensive validation reports that provide insights into the schema's completeness and consistency, helping teams address issues proactively.
This skill is particularly beneficial for teams working in environments where APIs are frequently updated or where multiple developers contribute to API design. By automating schema validation and integrating it into CI pipelines, you can ensure that every change is vetted for compliance and quality, reducing the risk of errors in production environments.
When to use it
Use this skill when developing or maintaining APIs to ensure compliance with OpenAPI, JSON Schema, or GraphQL standards, especially in collaborative environments.
When not to use it
This skill may not be necessary for small projects or APIs that are not intended for external use, where schema validation is less critical.
What you can build with it
Pre-commit Schema Linting
Set up a Git pre-commit hook to run Spectral against modified OpenAPI files, preventing commits that introduce undocumented endpoints or inconsistencies.
CI Integration for Breaking Changes
Implement a CI gate that uses oasdiff to compare API specs on pull requests, failing builds if breaking changes are detected without a version bump.
Schema Completeness Audit
Run a validation audit to generate a matrix showing the documentation status of each endpoint, highlighting gaps and coverage percentages.
How to install Validating API Schemas
View source1. Install with the skills CLI
npx skills add jeremylongshore/claude-code-plugins-plus-skills/validating-api-schemas --agent claude-code2. Or install it manually
Download the skill folder and drop it into ~/.claude/skills/ for all projects, or .claude/skills/ to scope it to one repo. Restart Claude Code so it picks up the new skill.
Anthropic's agentic coding CLI, and the reference implementation of Agent Skills. Drop a skill folder into ~/.claude/skills and Claude Code loads it automatically whenever a task matches the skill's description. Claude Code docs
Inside SKILL.md
Written by jeremylongshoreValidating API Schemas
Overview
Validate API specifications against OpenAPI 3.0/3.1, JSON Schema Draft 2020-12, and GraphQL SDL standards using linting rules, structural analysis, and best-practice enforcement. Detect incomplete schemas, undocumented endpoints, inconsistent naming conventions, and breaking changes before they reach consumers.
Prerequisites
- OpenAPI specification files (YAML or JSON) or GraphQL SDL schema files
- Schema linting tool: Spectral (OpenAPI),
graphql-schema-linter(GraphQL), orajv-cli(JSON Schema) - Version control for schema files to enable diff-based breaking change detection
- CI pipeline for automated schema validation on every pull request
oasdifforopenapi-difffor breaking change detection between versions
Instructions
- Locate all API specification files using Glob, identifying OpenAPI specs, JSON Schema definitions, and GraphQL SDL files across the project.
- Run structural validation to verify the specification conforms to the declared standard (OpenAPI 3.0, 3.1, or JSON Schema Draft 2020-12) and is syntactically valid.
- Apply Spectral linting rules to enforce naming conventions (camelCase properties, kebab-case paths), required descriptions on all operations, and example values for request/response schemas.
- Verify schema completeness: every endpoint has documented request schemas, all response status codes have schemas (including 400, 401, 404, 500), and all
$refreferences resolve. - Check for security scheme coverage: every endpoint either declares a security requirement or is explicitly marked as public with rationale.
- Detect breaking changes by comparing the current schema against the previous released version: removed endpoints, removed required fields, type changes, and narrowed enum values.
- Validate consistency across endpoints: pagination parameters use the same naming (
page/limitvsoffset/count), error response envelopes follow a single standard, and date formats are consistent. - Generate a validation report with severity levels (error, warning, info) and specific file:line references for each finding.
See ${CLAUDE_SKILL_DIR}/references/implementation.md for the full implementation guide.
Output
${CLAUDE_SKILL_DIR}/reports/schema-validation.json- Machine-readable validation findings with severity${CLAUDE_SKILL_DIR}/reports/schema-validation.md- Human-readable report with fix recommendations${CLAUDE_SKILL_DIR}/reports/breaking-changes.md- Breaking change analysis between schema versions${CLAUDE_SKILL_DIR}/.spectral.yaml- Custom Spectral linting rule configuration${CLAUDE_SKILL_DIR}/scripts/validate-schema.sh- CI-ready schema validation script${CLAUDE_SKILL_DIR}/reports/schema-coverage.md- Endpoint documentation completeness matrix
Error Handling
| Error | Cause | Solution |
|---|---|---|
| Unresolved $ref | Schema references a component that does not exist or has a typo | List all $ref targets and verify each resolves; check for circular references |
| Missing response schema | Endpoint returns undocumented status codes | Add schemas for all observed response codes; use default response as fallback |
| Inconsistent naming | Mix of camelCase and snake_case property names across endpoints | Define naming convention in Spectral ruleset; apply auto-fix where possible |
| Breaking change detected | Required field added to existing request schema | Make new field optional with default value; or create new API version for breaking changes |
| Schema too permissive | Use of additionalProperties: true or missing type constraints | Set additionalProperties: false by default; require explicit type and format on all properties |
Refer to ${CLAUDE_SKILL_DIR}/references/errors.md for comprehensive error patterns.
Examples
Pre-commit schema lint: Git pre-commit hook runs Spectral against all modified OpenAPI files, blocking commits that introduce undocumented endpoints, missing descriptions, or inconsistent naming.
Breaking change CI gate: On pull requests modifying API specs, oasdiff compares against the main branch version, failing the build if backward-incompatible changes are detected without a version bump.
Schema completeness audit: Generate a matrix showing every endpoint vs. documentation status (description, request schema, response schemas for 200/400/401/404/500, examples), highlighting gaps with coverage percentage.
See ${CLAUDE_SKILL_DIR}/references/examples.md for additional examples.
Resources
- Spectral OpenAPI linter: https://stoplight.io/open-source/spectral
- OpenAPI Specification: https://spec.openapis.org/oas/v3.1.0
- JSON Schema specification: https://json-schema.org/
- oasdiff breaking change detection: https://github.com/Tufin/oasdiff
Frequently asked questions about Validating API Schemas
Similar skills
WinMD API Search
Easily find and explore Windows desktop APIs.
WebMCPify
Transform any web app into an agent-ready platform.
Phoenix Tracing
Instrument LLM applications with OpenInference tracing.
Foundry Hosted Agent CopilotKit
Guidance for developing agentic web apps on Azure.
Power Automate Foundation
Connect AI agents to Power Automate seamlessly.
Power Automate Flow Builder
Efficiently build and deploy Power Automate flows programmatically.
