OpenAPI Linter Online — Style Rules for Specs

Lint OpenAPI 3.x style rules (Spectral-style subset) — path operations only, 100% in-browser.

Loading…
Lint OpenAPI documentation
Apply a Spectral-style style subset to path operations.

Developer notes

• Custom Spectral-style subset — not full Spectral OAS. • Operations under paths only (not webhooks/callbacks in v1). • Rules: not-openapi, operation-operationId, operation-tags, info-contact, info-description, paths-kebab-case, operation-success-response, operation-description. • Live debounced lint; Monaco JSON/YAML input. • Status: passed / passed with warnings / failed. • Max input 512 KiB. • Results panel shows rule counts, issue paths, and spec stats.

Use cases

• Enforce operationId, tags, and 2xx responses on path operations. • Spot missing info.contact / description before publishing. • Prefer kebab-case path segments (or vN).

Examples

Warnings for missing operationId

Before

{ "openapi": "3.1.0", "info": { "title": "Pets", "version": "1.0.0" }, "paths": { "/pets": { "get": { "operationId": "listPets", "tags": ["pets"], "summary": "List pets", "responses": { "200": { "description": "OK" } } } } } }

After

operation-operationId (warning) if operationId missing

default-only responses fail

Before

{"openapi":"3.1.0","info":{"title":"t","version":"1","description":"d","contact":{"email":"[email protected]"}},"paths":{"/x":{"get":{"operationId":"x","tags":["t"],"summary":"s","responses":{"default":{"description":"e"}}}}}}

After

operation-success-response (error) → failed

Lint OpenAPI FAQ

Common questions

Is this full Spectral?

No. v1 ships a fixed Spectral-style subset listed in the developer notes — not a custom ruleset runner.

Which operations are linted?

Only path operations (get/put/post/delete/options/head/patch/trace). webhooks and callbacks are out of scope in v1.

What do passed / passed with warnings / failed mean?

failed = any error-level issue; passed with warnings = warnings only; passed = no issues. We never show a plain green “valid” when warnings exist.

Does lint run schema validate?

No. Lint requires openapi 3.x + info, then style rules. Use Validate OpenAPI for full schema conformance.

API & schemas

OpenAPI tools to format, validate, and lint your specs.

Explore other tool categories

Minify

Shrink code and assets for production — minify JavaScript, CSS, HTML, JSON and XML before gzip or CDN deploy.

Beautify

Make code readable with consistent indentation — beautify JavaScript, CSS, TypeScript, SCSS, LESS, Markdown, GraphQL, SQL, YAML and more in your browser.

Unminify

Expand minified or compressed code — unminify JavaScript, CSS, TypeScript, SCSS, LESS, SQL, YAML and other formats when debugging or reviewing.

Conversion

Transform data between JSON, YAML, XML and CSV locally — no server uploads.

CSS preprocessors

Compile SCSS or LESS to standard CSS in the browser — pair with beautify or minify for a full stylesheet workflow.

JSON Tools

Validate, format, diff and explore JSON payloads — complementary to minifiers and converters.

SVG Tools

Preview, optimize with SVGO, export Data URI, resize, beautify, convert to JSX and validate SVG — all in your browser.

DevOps & Infra

Terraform HCL format/validate/minify, Dockerfile format & lint, Docker Compose and .env validation.

CI/CD

GitHub Actions and GitLab CI — format YAML and check workflow/job structure in your browser.

Logs & observability

Line-oriented JSON/NDJSON and Nginx/Apache access logs — format, filter, validate, and CSV/TSV.

Kubernetes

Multi-doc manifests, structural validate, Ingress/Deployment starters, and Helm values formatting.

Networking / IP

CIDR, subnets, and IPv4/IPv6 helpers — in your browser.

Security & tokens

JWKS, X.509 certificates, and secrets scan — browser-local.

Encoding

Encode or decode Base64, URL components and HTML entities — client-side only.

Developer utilities

Timestamps, UUID, ULID, Nanoid, cron, passwords, regex, slugify, number bases, case, text diff, and chmod — all client-side.

Text & Markdown

Count words, build Markdown TOCs, and clean line lists — all in your browser.

AI & LLM

Token counting, pricing estimates, and context-window fit — 100% browser-local.

Serialization

Serialize and deserialize PHP data structures beside JSON workflows.