A validator for OpenAPI v2 specifications and JSON schema draft 4.
- 2025-12-19 : new community chat on discord
- a new discord community channel is available to be notified of changes and support users
- our venerable Slack channel remains open, and will be eventually discontinued on 2026-03-31
You may join the discord community by clicking the invite link on the discord badge (also above).
API is stable.
go get github.com/go-openapi/validateThis package provides helpers to validate Swagger 2.0. specification (aka OpenAPI 2.0).
- A validator for Swagger specifications
- A validator for JSON schemas draft4
- Helper functions to validate individual values (used by code generated by go-swagger).
- Required, RequiredNumber, RequiredString
- ReadOnly
- UniqueItems, MaxItems, MinItems
- Enum, EnumCase
- Pattern, MinLength, MaxLength
- Minimum, Maximum, MultipleOf
- FormatOf
- Does this library support OpenAPI 3?
No. This package currently only supports OpenAPI 2.0 (aka Swagger 2.0). There is no plan to make it evolve toward supporting OpenAPI 3.x. This discussion thread relates the full story.
An early attempt to support Swagger 3 may be found at: https://github.com/go-openapi/spec3
See https://github.com/go-openapi/validate/releases
https://github.com/OAI/OpenAPI-Specification/blob/master/versions/2.0.md
This library ships under the SPDX-License-Identifier: Apache-2.0.
See the license NOTICE, which recalls the licensing terms of all the pieces of software on top of which it has been built.
Maintainers can cut a new release by either:
- running this workflow
- or pushing a semver tag
- signed tags are preferred
- The tag message is prepended to release notes