Skip to main content

Install

pip install parmana
python/pyproject.toml names the package parmana, requires Python 3.10+, and depends only on requests>=2.32.0.

Create a client

Unlike the TypeScript SDK, there’s no separate Configuration/Transport object to assemble — ParmanaClient builds its own HttpTransport internally:
from parmana import ParmanaClient

client = ParmanaClient(
    endpoint="http://localhost:3000",
    timeout=30,   # seconds, default is ParmanaClient.DEFAULT_TIMEOUT = 30
    debug=False,  # when True, prints request/response to stdout
)
ParmanaClient.__init__ (python/parmana/client.py) accepts exactly endpoint, timeout, and debug as keyword-only arguments — there’s no credentials/auth configuration surface here at all, and no retry policy, unlike the TypeScript SDK’s Configuration.credentials / Configuration.retryPolicy (which, per TypeScript SDK → Installation, don’t do anything either in this snapshot). The Python client is simpler because it has less unused surface, not because it does more.

Sub-APIs

The constructor composes seven sub-APIs, all sharing one HttpTransport:
self.execution = ExecutionApi(self._transport)
self.verification = VerificationApi(self._transport)
self.replay = ReplayApi(self._transport)
self.receipt = ReceiptApi(self._transport)
self.transactions = TransactionApi(self._transport)
self.trust_records = TrustRecordApi(self._transport)
self.policy = PolicyApi(self._transport)
See APIs & Models for each one, and for where this diverges from the TypeScript SDK’s equivalent sub-API set.

Debug logging

client = ParmanaClient(endpoint="http://localhost:3000", debug=True)
With debug=True, HttpTransport.send (python/parmana/transport/http_transport.py) prints the method, URL, and body before each request, and the decoded payload after each response — there’s no structured logger, just print().

ParmanaClient

The client class this configures.

APIs & Models

Every sub-API and model, and TypeScript parity notes.

TypeScript SDK

The other official SDK.

Authentication

Why there’s no credentials configuration here yet.