OpenAPI Type
OpenAPI specification represented as a Python type. Use it to parse specifications written in JSON and YAML formats.
pip install openapi-type
from openapi_type import OpenAPI, parse_spec, serialize_spec
spec: OpenAPI = parse_spec({
"your OpenAPI Spec as Python dictionary": "will be parsed into a proper Python type"
})
assert parse_spec(serialize_spec(spec)) == spec
$ curl -s https://petstore3.swagger.io/api/v3/openapi.json | openapi-type check
Successfully parsed.
Codegen
If you are looking for a complete client code generator, consider openapi-client-generator that uses this library under the hood.
Cloning this repo
The proper way to clone this repo is:
git clone --recurse-submodules <repo-url> <local-project-root>
cd <local-project-root>
# for showing submodule status with `git status`
git config status.submodulesummary 1
# for logging submodule diff with `git diff`
git config diff.submodule log
Documentation
Documentation is hosted on ReadTheDocs: https://openapi-type.readthedocs.io/en/develop/
Test framework
The project uses Nix for bootstrapping its dev environment.
You can run existing test suite with
nix-shell --run "make test"
Changelog
See CHANGELOG.
Metadata
Release files for openapi-type 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| openapi-type-0.2.0.tar.gz | 10.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| openapi_type-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.5 kB
Release files / openapi-type-0.2.0.tar.gz
| Download URL | openapi-type-0.2.0.tar.gz |
|---|---|
| Size | 10.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bcda4076f5671bb35a8d5fd72a29a6ff99bce44261ed4a3b00c321fcee86c51d
|
|
BLAKE2b-256 checksum How to use checksums |
3cb0abbce2febcdbccc86231b5f06b6129c8e5032ca5d6d90b08fcc1194e6bb5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|
Release files / openapi_type-0.2.0-py3-none-any.whl
| Download URL | openapi_type-0.2.0-py3-none-any.whl |
|---|---|
| Size | 9.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a20ac9b9741e8b4376c7c1d11c91df91788387c4986c9438965535736107bb38
|
|
BLAKE2b-256 checksum How to use checksums |
47315b2ec37d0bc16f437e1be8facc2cfd1edcda6bebb003663a96dc182ccaa4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|