Metadata-Version: 2.4
Name: caracalai-admin
Version: 0.2.0rc1
Summary: Caracal admin client for Python: control-plane invocation, admin API access, and idempotent provisioning reconcilers
License-Expression: Apache-2.0
License-File: LICENSE
Requires-Python: >=3.12
Requires-Dist: caracalai-core
Requires-Dist: httpx>=0.28.0
Requires-Dist: idna>=3.15
Description-Content-Type: text/markdown

# caracalai-admin

Caracal admin client for Python: a `ControlClient` that mints a scoped, single-use token per governed control invoke, an `AdminClient` over the Caracal admin API, and idempotent `ensure_*` reconcilers that converge applications, providers, resources, policy sets, and grants to a desired state.

```python
from caracalai_admin import AdminClient, ensure_grants, ResourceGrant

client = AdminClient(api_url="http://localhost:9090", admin_token="...")
ensure_grants(
    client,
    "zone-id",
    grants=[
        ResourceGrant(
            application_id="app-anton",
            resource_identifier="resource://pipernet",
            scopes=["data:read"],
        )
    ],
)
```

Part of [Caracal](https://github.com/Garudex-Labs/caracal). Apache-2.0.
