Skip to content

v0.0.1

Choose a tag to compare

@nessshon nessshon released this 02 Jul 22:56
· 45 commits to main since this release

Release Notes – Version 0.0.1

We are pleased to announce the initial release of apiq, an elegant and fully asynchronous Python framework for building API clients with minimal boilerplate.

Key Features and Capabilities

  • Core Architecture

    • APIClient base class for creating clients with built-in async HTTP requests, rate limiting, and retries.
    • APINamespace for logical grouping of related endpoints.
  • Endpoint Decorators

    • @endpoint decorator supporting GET, POST, PUT, PATCH, DELETE methods.
    • Automatic path generation based on method names if path is not specified.
    • Flexible query parameter mapping from positional and keyword arguments.
    • Supports request bodies as Pydantic models or plain dictionaries.
    • Response parsing into Pydantic models or raw dictionaries if no model is specified.
  • Integrated Features

    • Rate limiting configuration via rps parameter.
    • Automatic retries on HTTP 429 responses with configurable max_retries.
    • Debug logging for full request and response inspection.

Example Use Cases

  • Define structured API clients with clear OOP design.
  • Use Pydantic models for strict request and response validation.
  • Build robust integrations with external APIs quickly and cleanly.

Full Changelog: https://github.com/nessshon/apiq/commits/v0.0.1