# booklooker-client A Python client for the Booklooker REST API designed for middleware and connector-hub scenarios. ## Highlights - Generated API contract derived from [openapi.yaml](openapi.yaml) - Sync and async client entrypoints - Pydantic models for normalized responses - Token auto-refresh handling - Webhook helper toolbox for Push-API style events - FastAPI example receiver and enrichment workflow ## Installation ```bash pip install -e .[dev,webhooks] ``` ## Packaging and publishing Build a source distribution and wheel: ```bash python build_dist.py ``` Upload the artifacts to Forgejo PyPI after creating your local `.pypirc` from `.pypirc.example`: ```powershell .\upload_dist_to_forgejo_pypi.ps1 -Build ``` ## Quick start ```python from booklooker_client import BooklookerConfig, SyncBooklookerClient config = BooklookerConfig(api_key="YOUR_API_KEY") client = SyncBooklookerClient(config) token = client.authenticate() articles = client.get_article_list() print(token.token) print(articles.items) ``` ## Notes Booklooker wraps nearly all responses into a generic envelope with `status` and `returnValue`. This package normalizes those responses into typed Pydantic models so downstream middleware can work with stable structures.