{"repo":"martinn/quickapiclient","free":true,"listed":false,"github":"https://github.com/martinn/quickapiclient","clone":"git clone https://github.com/martinn/quickapiclient.git","description":"Create fully typed declarative API clients quickly and easily.","language":"Python","stars":50,"topics":["api-client","python","http-client","attrs","pydantic-v2","rest-api","library","deserialization","serialization","dataclasses"],"license":"Apache-2.0","category":"api-integrations-sdks","readme_excerpt":"Quick Api Client A library for creating fully typed declarative API clients quickly and easily. - Github repository : - Documentation A basic example An API definition for a simple service could look like this: And you would use it like this: There's also support for attrs , pydantic and msgspec for more complex modeling, validation or serialization support. Scroll down here for examples using those. Features It's still early development but so far we have support for: - Write fully typed declarative API clients quickly and easily - [x] Fully typed request params / body - [x] Fully typed response body - [x] Serialization/deserialization support - [x] Basic error and serialization handling - [x] Fully typed HTTP status error codes handling - [ ] Nested/inner class definitions - [ ] Generate API boilerplate from OpenAPI specs - HTTP client libraries - [x] httpx - [x] requests - [ ] aiohttp - Authentication mechanisms - [x] Basic Auth - [x] Token / JWT - [x] Digest - [x] NetRC - [x] Any auth supported by httpx or httpx auth or requests , including custom schemes - Serialization/deserialization - [x] attrs - [x] dataclasses - [x] pydantic - [x] msgspec - API support - [x] REST - [ ] GraphQL - [ ] Others? - Response types supported - [x] JSON - [ ] XML - [ ] Others? Installation You can easily install this using pip or your favourite package manager: More examples A GET request with query params An example of a GET request with query parameters with overridable default values. Cli","default_branch":null,"files":null,"tree":[],"storefront":"/r/martinn","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/martinn/quickapiclient/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}