Skip to main content

Http client base pydantic, with requests or aiohttp

Project description

pydantic-client

Http client base pydantic, with requests or aiohttp

How to use

from pydantic import BaseModel

from pydantic_client import delete, get, post, put, RequestsClient


class Book(BaseModel):
    name: str
    age: int


class R(RequestsClient):

    @get("/books/{book_id}?query={query}")
    def get_book(self, book_id: int, query: str) -> Book:
        ...

    @post("/books", form_body=True)
    def create_book_form(self, book: Book) -> Book:
        """ will post the form with book"""
        ...

    @put("/books/{book_id}")
    def change_book(self, book_id: int, book: Book) -> Book:
        """will put the json body"""
        ...

    @delete("/books/{book_id}")
    def change_book(self, book_id: int) -> Book:
        ...


my_client = R("http://localhost/v1")
get_book: Book = my_client.get_book(1)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydantic_client-0.1.8.tar.gz (7.9 kB view details)

Uploaded Source

Built Distribution

pydantic_client-0.1.8-py3-none-any.whl (10.8 kB view details)

Uploaded Python 3

File details

Details for the file pydantic_client-0.1.8.tar.gz.

File metadata

  • Download URL: pydantic_client-0.1.8.tar.gz
  • Upload date:
  • Size: 7.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.0 CPython/3.10.9 Darwin/19.5.0

File hashes

Hashes for pydantic_client-0.1.8.tar.gz
Algorithm Hash digest
SHA256 b19ac43f56d11f2e8526ee0ce484c6b63cd9beda1bc3b8d2245a88e35e62f1ba
MD5 0ea6f1f55e1c6da79eb4cf42ba4fedc8
BLAKE2b-256 57384847ce3b48a9d0a9651f9d4deff16605634b48db219f22158e2480edca85

See more details on using hashes here.

Provenance

File details

Details for the file pydantic_client-0.1.8-py3-none-any.whl.

File metadata

  • Download URL: pydantic_client-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 10.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.0 CPython/3.10.9 Darwin/19.5.0

File hashes

Hashes for pydantic_client-0.1.8-py3-none-any.whl
Algorithm Hash digest
SHA256 b5aa10cfe09771f892c6b587b79f3fdfb45af2909823fe3fc964f2ab69ca7834
MD5 cc5e4781fe0653b875db552697965014
BLAKE2b-256 4f9f0547fab39c499eb80dbb0e440cf609ab280d77920aee284aa565b5eaaf83

See more details on using hashes here.

Provenance

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