OpenAPI Spec Validator — Swagger Compliance Checker

Validate OpenAPI 2.0 (Swagger) and OpenAPI 3.0/3.1 specification files for compliance, missing required fields, unresolved $ref paths, and schema errors. Paste JSON or YAML or upload a file — errors and warnings are listed by path with severity levels and actionable fix suggestions. All validation runs entirely in your browser.

API ToolsAPI & Backend
Loading tool...

How to Use OpenAPI Spec Validator — Swagger Compliance Checker

How to Use the OpenAPI Spec Validator

Step 1: Paste or Upload Your Spec

Paste your OpenAPI or Swagger specification directly into the textarea, or click Upload to load a .json, .yaml, or .yml file from your computer. Both JSON and YAML formats are fully supported.

Step 2: Load an Example (optional)

Click one of the example buttons to load a pre-built spec:

  • Minimal 3.0 — the smallest valid OpenAPI 3.0 spec
  • Petstore 3.0 — a complete API with schemas, parameters, and request bodies
  • Swagger 2.0 — a Swagger 2.0 spec with definitions and path parameters
  • With Errors — an intentionally broken spec showing common mistakes

Step 3: Click Validate Spec

Click Validate Spec to run validation. Results appear immediately in the right panel.

Step 4: Review the Status and Stats

The status card shows whether the spec is valid (green) or invalid (red). The stats grid shows the detected version (Swagger 2.0, OpenAPI 3.0, or 3.1), the number of paths, operations, and schemas defined, plus the total error and warning counts.

Step 5: Fix Issues

The Issues panel lists each error and warning with:

  • Path — the JSON path inside the document where the issue was found (e.g., #/paths/users/get/responses)
  • Message — a plain-English description of the problem
  • Fix suggestion — a specific action you can take to resolve it

Errors (red) indicate spec non-compliance. Warnings (amber) are best-practice recommendations that do not prevent the spec from being technically valid.

What the Validator Checks

  • Version fieldopenapi (3.x) or swagger (2.x) must be present at the root
  • info objecttitle and version are required; description is recommended
  • paths object — must be present; each path must start with /
  • Operations — each must have a responses object with at least one entry
  • Parameters — must include name and in with valid values; path parameters must match the URL template
  • $ref resolution — all internal $ref values must point to paths that exist in the document
  • Security — if root security is set, the corresponding scheme definitions must exist
  • Best practicesoperationId, summary/description, requestBody for POST/PUT/PATCH, and 2xx responses

Limitations

This is a structural validator based on the OpenAPI specification rules. It does not execute a full JSON Schema validation of property values, does not check external $ref URLs, and does not validate discriminator or oneOf/anyOf semantics. For full compliance testing, use the validator as a first pass and follow up with an official OpenAPI library in your build pipeline.

Frequently Asked Questions

Most Viewed Tools

🔐

TOTP Code Generator — 2FA Testing Tool

3,202 views

Generate time-based one-time passwords from a TOTP secret key. Enter your base32 secret, choose a period and digit length, and get the current and next codes with a live countdown timer. Useful for testing and debugging 2FA integrations.

Use Tool →
{ }

JSON to Zod — Schema Generator

3,156 views

Generate Zod validation schema code from a JSON sample object. Infers z.string(), z.number(), z.boolean(), z.array(), z.object(), and z.null() types automatically. Handles nested objects, arrays of objects with optional field detection, and outputs copy-ready TypeScript with import and z.infer type alias.

Use Tool →
{}

JSONL Formatter — Line-by-Line Validator

3,100 views

Format, validate, and inspect JSON Lines (JSONL) and NDJSON files. Validates each line individually, reports parse errors by line number, outputs compact JSONL or a pretty-print preview, and lets you download the cleaned file.

Use Tool →
🔐

TLS Cipher Suite Checker — Strength Analyzer

2,792 views

Check TLS protocol version compatibility and cipher suite strength ratings against current best practices. Supports IANA and OpenSSL cipher names — rates each suite as Strong, Weak, or Deprecated and explains why.

Use Tool →
🔑

Password Entropy Calculator — Crack Time Estimator

2,746 views

Calculate the information-theoretic bit entropy of any password or API key. Detects character set pools automatically, shows the total number of possible combinations, and estimates crack time across five attack scenarios from rate-limited web logins to GPU cracking clusters.

Use Tool →
🔍

Secret Scanner — API Key & Credential Detector

2,710 views

Scan pasted text, code, or config files for accidentally exposed API keys, tokens, passwords, and private keys. Detects 50+ secret types across AWS, GitHub, Stripe, OpenAI, and more — all client-side, nothing leaves your browser.

Use Tool →
📺

Screen Size Converter — Diagonal Dimension Tool

2,645 views

Calculate screen width and height from diagonal size and aspect ratio. Convert between inches and centimeters for displays, TVs, and monitors with instant dimension calculations.

Use Tool →

TOML Config Validator — Syntax Error Finder

2,446 views

Validate TOML configuration file syntax and report errors with line numbers. Paste any TOML content — Cargo.toml, pyproject.toml, config.toml — and instantly see a green checkmark with key counts and structure stats, or a precise error message pointing to the exact line. Includes a collapsible JSON structure preview to confirm what was parsed.

Use Tool →

Related API & Backend Tools

📝

REST Endpoint Documenter — Markdown Doc Generator

Document a REST endpoint quickly by entering the URL, method, headers, and sample request/response. Generates formatted Markdown documentation and an example cURL command instantly.

Use Tool →
🔑

JWT Token Validator — Signature Verifier

Decode and validate JWT tokens instantly in your browser. Inspect header and payload claims, check expiry, and verify HMAC signatures (HS256/HS384/HS512). Free and private.

Use Tool →
🔐

OAuth PKCE Generator — Create Secure Code Verifiers and Challenges

Generate RFC 7636 PKCE code verifier and challenge pairs for OAuth 2.0 authorization code flow. Choose verifier length, get the SHA-256 code challenge, and see exactly where each value goes in the auth URL and token exchange request.

Use Tool →
🔍

API Error Decoder — Fix Suggestion Tool

Decode HTTP status codes and OAuth 2.0 error strings with plain-English descriptions, common causes, and actionable fix suggestions. Covers every HTTP 1xx–5xx status code and all standard OAuth 2.0 error responses. Results appear instantly as you type.

Use Tool →
🗄️

API Mock Data Generator — Realistic JSON Builder

Generate structured, realistic mock data for API endpoint testing. Define fields with names and types — UUID, name, email, integer, enum, date, and more — set how many rows you need, and export as a JSON array, NDJSON, or CSV. All generation runs entirely in your browser with no data sent to any server.

Use Tool →
🔁

OpenAPI Mock Generator — Turn API Specs into Live Mock Servers

Paste an OpenAPI 3.x or Swagger 2.0 spec, select any endpoint, and instantly get a realistic mock request body and response matching the defined schemas. Also generates a ready-to-run cURL command.

Use Tool →
🔀

CORS Header Generator — Cross-Origin Config Tool

Build CORS configuration headers interactively for web servers and APIs. Set allowed origins, methods, request headers, credentials, and preflight cache duration — then copy the generated Access-Control headers or ready-to-paste code snippets for nginx, Express.js, Flask, and .NET.

Use Tool →
🪝

Webhook Validator — Payload & Signature Checker

Validate and inspect webhook payloads in your browser. Auto-detects GitHub, Stripe, Slack, and Shopify webhooks, extracts event details, and optionally verifies HMAC signatures. Free and private.

Use Tool →

Share Your Feedback

Help us improve this tool by sharing your experience

We will only use this to follow up on your feedback