Skip to main content
https://github.com/avanov/openapi-type/workflows/CI/badge.svg?branch=develop https://coveralls.io/repos/github/avanov/openapi-type/badge.svg?branch=develop Requirements Status Documentation Status Latest PyPI Release

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)

Source distribution for openapi-type 0.2.0
File Size Uploaded
openapi-type-0.2.0.tar.gz 10.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for openapi-type 0.2.0
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

2 release files

0.0.21

2 release files

0.0.20

2 release files

0.0.18

2 release files

0.0.17

2 release files

0.0.16

2 release files

0.0.15

2 release files

0.0.14

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.4

2 release files

0.0.3

2 release files

0.0.2

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page