Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork136
Openapi-core is a Python library that adds client-side and server-side support for the OpenAPI v3.0 and OpenAPI v3.1 specification.
License
python-openapi/openapi-core
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Openapi-core is a Python library that adds client-side and server-side supportfor theOpenAPI Specification v3.
- Validation of requests and responses
- Schemacasting andunmarshalling
- Media type and parametersdeserialization
- Security providers (API keys, Cookie, Basic and Bearer HTTP authentications)
- Customdeserializers andformats
- Integration with libraries and frameworks
Check documentation to see more details about the features. All documentation is in the "docs" directory and online atopenapi-core.readthedocs.io
Recommended way (via pip):
$ pip install openapi-core
Alternatively you can download the code and install from the repository:
$ pip install -e git+https://github.com/p1c2u/openapi-core.git#egg=openapi_core
Firstly create your specification:
fromopenapi_coreimportcreate_specspec=create_spec(spec_dict)
Now you can use it to validate requests
fromopenapi_core.validation.request.validatorsimportRequestValidatorvalidator=RequestValidator(spec)result=validator.validate(request)# raise errors if request invalidresult.raise_for_errors()# get list of errorserrors=result.errors
and unmarshal request data from validation result
# get parameters object with path, query, cookies and headers parametersvalidated_params=result.parameters# or specific parametersvalidated_path_params=result.parameters.path# get bodyvalidated_body=result.body# get security datavalidated_security=result.security
Request object should be instance of OpenAPIRequest class (SeeIntegrations).
You can also validate responses
fromopenapi_core.validation.response.validatorsimportResponseValidatorvalidator=ResponseValidator(spec)result=validator.validate(request,response)# raise errors if response invalidresult.raise_for_errors()# get list of errorserrors=result.errors
and unmarshal response data from validation result
# get headersvalidated_headers=result.headers# get datavalidated_data=result.data
Response object should be instance of OpenAPIResponse class (SeeIntegrations).
- bottle-openapi-3
- OpenAPI 3.0 Support for the Bottle Web Framework
- openapi-spec-validator
- Python library that validates OpenAPI Specs against the OpenAPI 2.0 (aka Swagger) and OpenAPI 3.0 specification
- openapi-schema-validator
- Python library that validates schema against the OpenAPI Schema Specification v3.0.
- pyramid_openapi3
- Pyramid addon for OpenAPI3 validation of requests and responses.
- tornado-openapi3
- Tornado OpenAPI 3 request and response validation library.
About
Openapi-core is a Python library that adds client-side and server-side support for the OpenAPI v3.0 and OpenAPI v3.1 specification.
Topics
Resources
License
Security policy
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.