/openapi-spec-validator

OpenAPI Spec validator

Primary LanguagePythonApache License 2.0Apache-2.0

OpenAPI Spec validator

Package Version Build Status Code Coverage PyPI Version PyPI Format PyPI Status

About

OpenAPI Spec Validator is a Python library that validates OpenAPI Specs against the OpenAPI 2.0 (aka Swagger) and OpenAPI 3.0.0 specification. The validator aims to check for full compliance with the Specification.

Installation

$ pip install openapi-spec-validator

Usage

Command Line Interface

Straight forward way:

$ openapi-spec-validator some.yaml

pipes way:

$ cat some.yaml | openapi-spec-validator -

docker way:

$ docker run -v path/to/some.yaml:/some.yaml --rm p1c2u/openapi-spec-validator /some.yaml

or more pythonic way:

$ python -m openapi_spec_validator some.yaml

Examples

Validate spec:

from openapi_spec_validator import validate_spec

validate_spec(spec_dict)

Add spec_url to validate spec with relative files:

from openapi_spec_validator import validate_spec

validate_spec(spec_dict, spec_url='file:///path/to/spec/openapi.yaml')

You can also validate spec from url:

from openapi_spec_validator import validate_spec_url

validate_spec_url('http://example.com/openapi.json')

If you want to iterate through validation errors:

from openapi_spec_validator import openapi_v3_spec_validator

errors_iterator = openapi_v3_spec_validator.iter_errors(spec)

Related projects

  • openapi-core is a Python library that adds client-side and server-side support for the OpenAPI.

License

Copyright (c) 2017, Artur Maciag, All rights reserved. Apache v2