Skip to main content

Generator of python HTTP-clients from OpenApi specification.

Project description

pythogen
Generator of python HTTP-clients from OpenApi specification based on httpx and pydantic

tests coverage pypi python


Documentation: https://artsmolin.github.io/pythogen

Source Code: https://github.com/artsmolin/pythogen

Examples: sync and async clients for Petstore OpenAPI


Installation

You can install the library

pip install pythogen

or use Docker

docker pull artsmolin/pythogen

Generation

  • path/to/input — path to the directory with openapi.yaml;
  • path/to/output — the path to the directory where the generated client will be saved;

Generate a client using the installed library

pythogen path/to/input/openapi.yaml path/to/output/client.py

or via Docker

docker run \
-v ./path/to/input:/opt/path/to/input \
-v ./path/to/output:/opt/path/to/output \
artsmolin/pythogen \
path/to/input/openapi.yaml \
path/to/output/client.py

Usage

from petstore.client_async import Client
from petstore.client_async import Pet
from petstore.client_async import EmptyBody
from petstore.client_async import FindPetsByStatusQueryParams

client = Client(base_url="http://your.base.url")
pets: list[Pet] | EmptyBody = await client.findPetsByStatus(
  query_params=FindPetsByStatusQueryParams(status="available"),
)

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

pythogen-0.2.41.tar.gz (22.6 kB view details)

Uploaded Source

Built Distribution

pythogen-0.2.41-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

Details for the file pythogen-0.2.41.tar.gz.

File metadata

  • Download URL: pythogen-0.2.41.tar.gz
  • Upload date:
  • Size: 22.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.14 Linux/6.5.0-1024-azure

File hashes

Hashes for pythogen-0.2.41.tar.gz
Algorithm Hash digest
SHA256 9188ad642c5435a977679db6014e54d2a8f63cb04371c7039ac9811d1801dcb3
MD5 4f3d7090d68cb342090470403eaefa40
BLAKE2b-256 61d9af8a72af6bdc6633a9cd6f28583b74a6dab0474d6f0dfef53aaed42c1a95

See more details on using hashes here.

File details

Details for the file pythogen-0.2.41-py3-none-any.whl.

File metadata

  • Download URL: pythogen-0.2.41-py3-none-any.whl
  • Upload date:
  • Size: 31.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.10.14 Linux/6.5.0-1024-azure

File hashes

Hashes for pythogen-0.2.41-py3-none-any.whl
Algorithm Hash digest
SHA256 0b58b6bfe93898207c6a75c25a1bb88c8f880cd4691d9c2b8c01659f28e5661c
MD5 dd679b8c3fe31bf00ffbf7bf863d98bd
BLAKE2b-256 997413f07c6fbc6fea47802a8a725a37f216884cc8cd40c960bc41d71c24ae87

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page