What this tool does
Paste, upload, or load an example OpenAPI (3.x) or Swagger (2.0) document and get back a list of structural problems — not just JSON/YAML syntax errors, but violations of the OpenAPI spec itself and common real-world mistakes that a plain JSON/YAML validator would never catch.
What gets checked
- Required top-level fields. A version field (
openapiorswagger), aninfoobject withtitleandversion, and apathsobject. - Broken
$refreferences. Every reference in the document is checked against what actually exists — a typo'd schema name is one of the most common real mistakes in hand-written specs, and it's invisible until something tries to resolve it. - Duplicate
operationIdvalues. These must be unique across the entire document; code generators and client SDKs built from the spec break silently when they aren't. - Responses missing a
description. The one field the spec actually requires on every response object. - Path parameters. Every
{placeholder}in a path template needs a matchingin: pathparameter declared — and every declared path parameter must setrequired: true, since path segments can't be optional. - Parameter shape. Every parameter needs a
nameand a validinlocation.
What this isn't
This is a curated set of the mistakes that show up most often in real specs, not a full JSON Schema meta-validation against the official OpenAPI specification schema. It won't catch every possible spec violation, but the checks above cover the ones that actually break tooling — code generators, mock servers, and API gateways — in practice.
FAQ
How is this different from the OpenAPI Viewer?
The OpenAPI Viewer is for reading a spec you already trust — browsing endpoints, parameters, and schemas. This tool is for finding out whether the spec is actually correct before you rely on it, generate code from it, or hand it to someone else.
Is my spec uploaded anywhere?
No — validation happens entirely in your browser. Nothing is sent to a server.