Typed Python client for Tigrbl REST and JSON-RPC APIs with sync and async calls, nested resource helpers, and optional Pydantic validation.
Project description
tigrbl_client
Typed Python client for Tigrbl REST and JSON-RPC APIs with sync and async calls, nested resource helpers, and optional Pydantic validation.
What is tigrbl_client?
Typed Python client for Tigrbl REST and JSON-RPC APIs with sync and async calls, nested resource helpers, and optional Pydantic validation.
Why use tigrbl_client?
Use it when a Python service or test suite needs a typed client for Tigrbl REST and JSON-RPC APIs.
When should I install tigrbl_client?
Install it in consumers, integration tests, SDK adapters, and automation that calls an already-running Tigrbl service.
Who is tigrbl_client for?
Client authors, API consumers, QA engineers, and service integration teams.
Where does tigrbl_client fit?
tigrbl_client lives at pkgs/core/tigrbl_client and serves calling Tigrbl services from Python clients and tests.
How does tigrbl_client work?
It wraps HTTP calls with sync and async helpers, optional API-key headers, REST CRUD helpers, JSON-RPC calls, and nested-resource helpers.
Certification Status
- Package status: governed package in the
tigrbl/tigrblworkspace. - Governance source: SSOT registry.
- Release evidence: publish workflow validates package builds, tests, GitHub release assets, and PyPI publication for managed packages.
- Local certification guard:
pkgs/core/tigrbl_tests/tests/unit/test_package_badges_and_notices.pyverifies every package README keeps the Discord badge, Apache 2.0 badge, explicit Python-version badge,LICENSE, andNOTICE. - Scope note: this README documents the package boundary. Runtime feature support remains governed by
.ssot/entities and the conformance docs linked below.
Install
uv add tigrbl_client
pip install tigrbl_client
Surface Coverage
| Surface | Value |
|---|---|
| PyPI package | tigrbl_client |
| Repository path | pkgs/core/tigrbl_client |
| Python import root | tigrbl_client |
| Console scripts | none declared |
| Entry points | none declared |
| Optional extras | none declared |
| Legal files | LICENSE, NOTICE |
| Supported Python | `3.10 |
What It Owns
tigrbl_client owns the client package boundary. It should be installed when you need this package's focused responsibility without assuming every other Tigrbl workspace package is present.
Implementation orientation:
tigrbl_client: _crud, _nested_crud, _rpc
Public API and Import Surface
- Import roots:
tigrbl_client. - Public symbols:
NestedCRUDMixin,TigrblClient,_Schema. - Workspace dependencies: none declared.
- External runtime dependencies:
fastapi>=0.100.0,pydantic>=2.0.0.
Usage Examples
Verify the installed package
python -m pip show tigrbl_client
python - <<'PY'
from importlib.metadata import version
print(version("tigrbl_client"))
PY
Call REST endpoints
from tigrbl_client import TigrblClient
with TigrblClient("https://api.example.com") as client:
item = client.get("/items/1")
created = client.post("/items", data={"name": "example"})
Call JSON-RPC endpoints
from tigrbl_client import TigrblClient
client = TigrblClient("https://api.example.com/rpc")
result = client.call("items.get", params={"id": 1})
Use async helpers
from tigrbl_client import TigrblClient
async with TigrblClient("https://api.example.com") as client:
item = await client.aget("/items/1")
How To Choose This Package
Choose tigrbl_client when the quick-answer table matches your use case. Choose tigrbl instead when you want the full public facade. Choose a lower-level package such as tigrbl-core, tigrbl-base, or tigrbl-runtime when you are building framework extensions or testing a specific internal boundary.
Related Packages
Documentation Links
- Workspace docs
- Package catalog
- Package layout
- Current target
- Current state
- SSOT registry
- Release workflow
Support
- Community: Discord.
- Issues: GitHub Issues.
- Repository: pkgs/core/tigrbl_client.
Package-local Boundary
This README is the package-local distribution entry point for tigrbl_client. It answers install, usage, API, ownership, and certification-orientation questions for this package. Broader architectural decisions, release status, and cross-package proof chains remain in the repository-level docs and SSOT registry.
License
Licensed under the Apache License, Version 2.0. See LICENSE, NOTICE, and the official Apache 2.0 license text.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file tigrbl_client-0.4.4.tar.gz.
File metadata
- Download URL: tigrbl_client-0.4.4.tar.gz
- Upload date:
- Size: 18.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f7526a5797992e01a9ec9100f41188427d981742fe48fa7f67a331e1c2f4d854
|
|
| MD5 |
b98574efcaadcc764a73cafef73dbd6c
|
|
| BLAKE2b-256 |
a1bdbc3594ae99d42041df8b7daed10321fd01c825bbf6349bcfdd65d10d5687
|
File details
Details for the file tigrbl_client-0.4.4-py3-none-any.whl.
File metadata
- Download URL: tigrbl_client-0.4.4-py3-none-any.whl
- Upload date:
- Size: 18.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
48184a23c82339c6a6bd24e4e0ec17850d6125d154ed465ded709060c72e8103
|
|
| MD5 |
bb9197be3d622cee4a8b95ea86d0e800
|
|
| BLAKE2b-256 |
c5280ac52fb7bcffab3711e90485c111643cd9ea1409f1d42e6670df3cbd6b23
|