client and validator for OpenAPI3 3.0, OpenAPI 3.1, Swagger 2.0
Project description
aiopenapi3
A Python OpenAPI 3 Specification client and validator for Python 3.
This project is a fork of Dorthu/openapi3.
Features
- implements …
- Swagger 2.0
- OpenAPI 3.0.3
- OpenAPI 3.1.0
- description document parsing via pydantic
- recursive schemas (A.a -> A)
- request body model creation via pydantic
- pydantic compatible "format"-type coercion (e.g. datetime.interval)
- additionalProperties (limited to string-to-any dictionaries without properties)
- response body & header parsing via pydantic
- blocking and nonblocking (asyncio) interface via httpx
- SOCKS5 via httpx_socks
- tests with pytest & fastapi
- providing access to methods and arguments via the sad smiley ._. interface
- Plugin Interface/api to modify description documents/requests/responses to adapt to non compliant services
- YAML type coercion hints for not well formatted description documents
- Description Document dependency downloads (using the WebLoader)
- logging
export AIOPENAPI3_LOGGING_HANDLERS=debug
to get /tmp/aiopenapi3-debug.log
- logging
Documentation
Running Tests
This project includes a test suite, run via pytest
. To run the test suite,
ensure that you've installed the dependencies and then run pytest
in the root
of this project.
PYTHONPATH=. pytest --cov=./ --cov-report=xml .
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
aiopenapi3-0.7.0a1.tar.gz
(66.6 kB
view hashes)
Built Distribution
Close
Hashes for aiopenapi3-0.7.0a1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a83fc04cf315ff7b6e541f7e5c03e0ffdd64ac28d22fb3bc67430689671e6202 |
|
MD5 | 8bdea6dc4a1226d1866c371eba8dfb15 |
|
BLAKE2b-256 | 4bbced4d4c421421775aa319dcb9db1da4494359cc6a74fe77d9b0734b9adf60 |