@scalar/openapi-validator
v0.1.3
Published
Validate OpenAPI documents against the OpenAPI Specification
Readme
Scalar OpenAPI Validator
Validate OpenAPI documents against the OpenAPI Specification. Supports OpenAPI 3.2, 3.1, 3.0 and Swagger 2.0.
This package does the schema validation part of @scalar/openapi-parser on its own. Use it when all you need is validation and you do not want the rest of the parser.
Scalar is an open-source API platform for teams who want beautiful developer interfaces without vendor lock-in.
- API References — Interactive API documentation from OpenAPI and AsyncAPI specs.
- Developer Docs — Write in Markdown/MDX, generate API references, sync with two-way Git.
- SDK Generator — Type-safe SDKs and CLIs in TypeScript, Python, Go, PHP, Java, and Ruby.
- API Client — Open-source, offline-first Postman alternative built on OpenAPI.
20M+ monthly npm installs · 15,500+ GitHub stars · MIT licensed · scalar.com
Installation
npm add @scalar/openapi-validatorUsage
Pass a JSON string, a YAML string, or an object:
import { validate } from '@scalar/openapi-validator'
const result = validate({
openapi: '3.1.0',
info: {
title: 'Hello World',
version: '1.0.0',
},
paths: {},
})
console.log(result.valid)
if (!result.valid) {
console.log(result.errors)
}References
This validator does not resolve references. It validates a single, self-contained document. If your document references other files or URLs, bundle or dereference it first (for example with @scalar/json-magic or @scalar/openapi-parser) and then validate the result.
Throw on error
import { validate } from '@scalar/openapi-validator'
try {
validate(document, { throwOnError: true })
} catch (error) {
// Handle the first validation error
}Community
We are API nerds. You too? Let's chat on Discord: https://discord.gg/scalar
License
The source code in this repository is licensed under MIT.
