Skip to main content

Pydantic OpenAPI Generator

PyPI Status Python Version License

Tests Codecov

pre-commit Black


Documentation: here


Migration from auth-broker

As of pydantic-openapi-generator version 2.2.8, this package has moved out of the auth-broker organisation, been renamed, and had its import namespace updated.

Item Previous Current
GitHub repository auth-broker/openapi-python-generator mattcoulter7/pydantic-openapi-generator
PyPI package ab-openapi-python-generator pydantic-openapi-generator
CLI command ab-openapi-python-generator pydantic-openapi-generator
Import namespace ab_openapi_python_generator pydantic_openapi_generator

The old PyPI package is retained as an archived historical package. New work should use pydantic-openapi-generator and pydantic_openapi_generator.

Features

  • Ease of use. Provide input, output and the library, and the generator will do the rest.
  • Type safety and type hinting. Pydantic OpenAPI Generator makes heavy use of pydantic models to provide type-safe data structures.
  • Support for multiple rest frameworks. Pydantic OpenAPI Generator currently supports the following:
  • Async and sync code generation support, depending on the framework. It will automatically create both for frameworks that support both.
  • Easily extendable using Jinja2 templates. The code is designed to be easily extendable and should support even more languages and frameworks in the future.
  • Fully tested. Every generated code is automatically tested against the OpenAPI spec and we have 100% coverage.
  • Usage as CLI or as library.

Requirements

  • Python 3.12+

Installation

You can install Pydantic OpenAPI Generator via pip from PyPI:

$ pip install pydantic-openapi-generator

Usage

Please see the Quick start page for details.

Roadmap

  • Support for all commonly used http libraries in the python ecosystem (requests, urllib, ...)
  • Support for multiple languages
  • Support for multiple authentication schemes
  • Support custom themes

Contributing

Contributions are very welcome. To learn more, see the Contributor Guide.

License

Distributed under the terms of the MIT license, Openapi Python Generator is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Credits

Special thanks to the peeps from openapi-schema-pydantic, which already did a lot of the legwork by providing a pydantic schema for the OpenAPI 3.0.0+ specification.

This project was generated from @cjolowicz's Hypermodern Python Cookiecutter template.

Metadata

Release files for pydantic-openapi-generator 2.5.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 pydantic-openapi-generator 2.5.0
File Size Uploaded
pydantic_openapi_generator-2.5.0.tar.gz 33.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for pydantic-openapi-generator 2.5.0
File Interpreter ABI Platform
pydantic_openapi_generator-2.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 80.9 kB

Release files / pydantic_openapi_generator-2.5.0.tar.gz

Download URL pydantic_openapi_generator-2.5.0.tar.gz
Size 33.3 kB
Tags Source
SHA-256 checksum
How to use checksums
90bafe138dea0169e82890eb48b603e708b164f27fc24d82bc64ce977fac8170
BLAKE2b-256 checksum
How to use checksums
e64700ddc288441acf771c8f127ae41a8aded984d84572e9cdc9daa822beece8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.4 {"installer":{"name":"uv","version":"0.12.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / pydantic_openapi_generator-2.5.0-py3-none-any.whl

Download URL pydantic_openapi_generator-2.5.0-py3-none-any.whl
Size 47.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
69b117df4d267f0753a809a2f1cd52a824135316c1c193ecc31c10bc8588593d
BLAKE2b-256 checksum
How to use checksums
b64d3281ca39d3db287aa58a58f339c540ce18349fea0bcc79f9b86f3d78d7d9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.4 {"installer":{"name":"uv","version":"0.12.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

2.11.0

2 release files

2.10.2

2 release files

2.10.1

2 release files

2.10.0

2 release files

2.9.0

2 release files

2.8.0

2 release files

2.7.0

2 release files

2.6.0

2 release files

2.5.1

2 release files

This release

2.5.0 This release

2 release files

2.4.0

2 release files

2.3.0

2 release files

2.2.8

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