Skip to main content
https://img.shields.io/pypi/v/openapi-spec-validator.svg https://travis-ci.org/p1c2u/openapi-spec-validator.svg?branch=master https://img.shields.io/codecov/c/github/p1c2u/openapi-spec-validator/master.svg?style=flat https://img.shields.io/pypi/pyversions/openapi-spec-validator.svg https://img.shields.io/pypi/format/openapi-spec-validator.svg https://img.shields.io/pypi/status/openapi-spec-validator.svg

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

Alternatively you can download the code and install from the repository:

$ pip install -e git+https://github.com/p1c2u/openapi-spec-validator.git#egg=openapi_spec_validator

Usage

Command Line Interface

Straight forward way:

$ openapi-spec-validator openapi.yaml

pipes way:

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

docker way:

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

or more pythonic way:

$ python -m openapi_spec_validator openapi.yaml

Examples

Validate spec:

from openapi_spec_validator import validate_spec
from openapi_spec_validator.readers import read_from_filename

spec_dict, spec_url = read_from_filename('openapi.yaml')

# If no exception is raised by validate_spec(), the spec is valid.
validate_spec(spec_dict)

validate_spec({})

Traceback (most recent call last):
    ...
OpenAPIValidationError: 'openapi' is a required property

Add spec_url to validate spec with relative files:

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

# If no exception is raised by validate_spec_url(), the spec is valid.
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)

License

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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openapi-spec-validator-0.2.10.tar.gz (24.1 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

openapi_spec_validator-0.2.10-py3-none-any.whl (28.5 kB view details)

Uploaded Python 3

openapi_spec_validator-0.2.10-py2-none-any.whl (28.5 kB view details)

Uploaded Python 2

File details

Details for the file openapi-spec-validator-0.2.10.tar.gz.

File metadata

  • Download URL: openapi-spec-validator-0.2.10.tar.gz
  • Upload date:
  • Size: 24.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.6.13

File hashes

Hashes for openapi-spec-validator-0.2.10.tar.gz
Algorithm Hash digest
SHA256 5dc0918ae5a125f2689e70477910db6a3d3eef60613ed6166adc55e91a85e09c
MD5 0a9360f4a0ccff7a71561a05140a057d
BLAKE2b-256 2259bc523bd2c9e80a70306da0cc0e9322700fd1cd6f7884be980ed179713e34

See more details on using hashes here.

File details

Details for the file openapi_spec_validator-0.2.10-py3-none-any.whl.

File metadata

  • Download URL: openapi_spec_validator-0.2.10-py3-none-any.whl
  • Upload date:
  • Size: 28.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/3.6.13

File hashes

Hashes for openapi_spec_validator-0.2.10-py3-none-any.whl
Algorithm Hash digest
SHA256 518189ef0d925ef5cb5da55970dbde8c3f08b2de7ecefd5d5a2e44e282e226cf
MD5 57608ea07aa8f6e1a9bf9410088e18fc
BLAKE2b-256 219074808eec7bd6fedb4e621fd4144cdbbc7ad87c8aaaf262e5d0cde4268eed

See more details on using hashes here.

File details

Details for the file openapi_spec_validator-0.2.10-py2-none-any.whl.

File metadata

  • Download URL: openapi_spec_validator-0.2.10-py2-none-any.whl
  • Upload date:
  • Size: 28.5 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.57.0 CPython/2.7.18

File hashes

Hashes for openapi_spec_validator-0.2.10-py2-none-any.whl
Algorithm Hash digest
SHA256 11b1825933f4fa442be42f16b05ed5987f62639c7181c0ad827b16d33c9dea30
MD5 0f9d3b7ca742bf0d29889ddaec14b5cd
BLAKE2b-256 8cd903fc99eff92ecc57f504f3d803a139108607e01ca47460d689d41ffb1a86

See more details on using hashes here.

Release history Release notifications | RSS feed

0.9.0

2 files

0.8.5

2 files

0.8.4

2 files

0.8.3

2 files

0.8.2

2 files

0.8.1

2 files

0.8.0

2 files

0.7.2

2 files

0.7.1

2 files

0.7.0

2 files

0.6.0

2 files

0.5.7

2 files

0.5.6

2 files

0.5.5

2 files

0.5.4

2 files

0.5.3

2 files

0.5.2

2 files

0.5.1

2 files

0.5.0

2 files

0.4.0

2 files

0.3.3

2 files

0.3.2

2 files

0.3.1

3 files

0.3.0

3 files

This release

0.2.10 This release

3 files

0.2.9

3 files

0.2.8

3 files

0.2.7

3 files

0.2.6

3 files

0.2.5

3 files

0.2.4

3 files

0.2.3

3 files

0.2.2

3 files

0.2.1

3 files

0.2.0

2 files

0.1.2

2 files

0.1.1

2 files

0.1.0

1 file

0.0.3

1 file

0.0.2

1 file

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page