Spectral

Stoplight's flexible JSON/YAML linter for creating automated style guides, with baked-in support for OpenAPI v3.1, v3.0, v2.0, Arazzo v1.0, and AsyncAPI v2.x. Spectral is the de facto reference linter for API style guides — every other tool in this index either extends its rule grammar or competes with it directly.

API entry from apis.yml

apis.yml Raw ↑
aid: linting:spectral
name: Spectral
description: Stoplight's flexible JSON/YAML linter for creating automated style guides, with baked-in
  support for OpenAPI v3.1, v3.0, v2.0, Arazzo v1.0, and AsyncAPI v2.x. Spectral is the de facto reference
  linter for API style guides — every other tool in this index either extends its rule grammar or competes
  with it directly.
humanURL: https://stoplight.io/open-source/spectral
baseURL: https://github.com/stoplightio/spectral
tags:
- API Linting
- API Style Guide
- AsyncAPI
- JSONPath
- OpenAPI
- Stoplight
properties:
- type: Documentation
  url: https://docs.stoplight.io/docs/spectral
- type: GettingStarted
  url: https://docs.stoplight.io/docs/spectral/674b27b261c3c-overview
- type: GitHubRepository
  url: https://github.com/stoplightio/spectral
- type: NPMPackage
  url: https://www.npmjs.com/package/@stoplight/spectral-cli
- type: VSCodeExtension
  url: https://marketplace.visualstudio.com/items?itemName=stoplight.spectral
- type: ChangeLog
  url: https://github.com/stoplightio/spectral/blob/main/CHANGELOG.md
- type: License
  url: https://github.com/stoplightio/spectral/blob/main/LICENSE
  x-license: Apache-2.0
- type: RulesetReference
  url: https://docs.stoplight.io/docs/spectral/e5b9616d6d50c-rulesets
- type: BuiltInFunctions
  url: https://docs.stoplight.io/docs/spectral/cb95cf0d26b83-core-functions
- type: APIEvangelistRepository
  url: https://github.com/api-evangelist/spectral
x-rules-format: spectral-yaml
x-rules-engine: javascript
x-integration-points:
- cli
- ci
- vscode
- sdk-node
x-supported-formats:
- openapi-2.0
- openapi-3.0
- openapi-3.1
- asyncapi-2.x
- arazzo-1.0
- generic-json-yaml