{ }jsonkit
Format
Validate
Convert
Query
Generate

OpenAPI and Swagger validator

Check OpenAPI 3.x or Swagger 2.0 structure and local references.
446 B · paste or drop a file
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
✓ complete446 B → 306 B0.0 ms

About OpenAPI Validator

The OpenAPI validator checks the core structure of an API description in JSON or YAML. Paste an openapi.json exported from a framework or gateway, or the YAML you edit by hand. It recognizes OpenAPI 3.0, 3.1 and Swagger 2.0. It checks the required info and paths objects and the HTTP operations, and that each operation declares at least one response.

The report summarizes paths and operations and lists errors and warnings with their document paths. It also includes an operation inventory for review. Local $ref values are resolved as JSON Pointers. Unresolved pointers are errors. External references are warnings, because this browser-only checker does not fetch them.

This is a fast structural check. It does not replace a full spec validator or API contract tests. It does not implement every semantic rule in the OpenAPI standards, download external documents or call your endpoints. Run a full validator in CI when publishing depends on complete conformance.

How it works

Parse either JSON or YAML

The input is tried as JSON first, then as YAML. OpenAPI uses the same data model in both formats, so a generated openapi.json and a hand-written openapi.yaml get the same checks. Parsing runs in your browser, so private server URLs, schema names and examples are not sent to a validation service.

Check the document and operation structure

The validator checks the version field, the info title and version, the paths object, leading slashes on route templates, operation objects and response maps. Duplicate operationId values are errors.

Resolve internal component references

Local references starting with #/ are decoded with JSON Pointer escaping and followed within the same document. Turn the reference check off when you only want an operation overview.

Separate errors from review warnings

Missing required structures and broken local references mark the report invalid. Optional operationId checks and unfetched external references show as warnings. That way you can tell a structural failure from a review item.

Validate OpenAPI 3 JSON before it ships

A JSON OpenAPI file usually comes from code, such as a framework annotation, a gateway export or a generator. Its mistakes tend to be structural, not typos. Examples: a route without a leading slash, an operation with no responses, a copied operationId, or a $ref that still points at a renamed component. The validator reports each of these with the path and HTTP method, so you can find the fault in a large generated file.

Frequently asked questions

How do I validate an OpenAPI 3 JSON file?

Paste the contents of your openapi.json into the input. The validator parses it as JSON and checks that the openapi field is a 3.0.x or 3.1.x version. It then checks info, paths, operations, responses, operationId uniqueness and local $ref targets. Each error and warning shows where the problem is.

Which API description versions can I check?

OpenAPI 3.0, OpenAPI 3.1 and Swagger 2.0. Other declared versions get a warning and still go through the generic structural checks.

Is an OpenAPI JSON validator different from a YAML one?

No. OpenAPI defines one data model that can be written as JSON or YAML, and the same rules apply to both. This validator accepts either format, so you do not need to convert YAML to JSON first.

Does this fully validate the OpenAPI specification?

No. It checks the required top-level data, operations, responses, operationId uniqueness and local references. Use a full standards validator in CI for every rule.

Are external $ref documents downloaded?

No. External references are listed as warnings and not fetched. Processing stays local and the page makes no unexpected network requests.

Does the validator send requests to my API?

No. It only reads the description document. It does not contact servers, run operations or check that live responses match the schemas.

Sources & last verified

We checked this tool's behavior and the claims on this page against the specifications below on . The tool runs in your browser, so the output you see is exactly what the engine produced.

Found a wrong result or an outdated claim? Report an error and we will check it again.