Python SDK for the SmartBlocks Network -- attestation, BitBlock streaming, GEC compute, SnapChore integrity, governance, and more.
Project description
SmartBlocks Network Python SDK
Canonical Python client for the SBN infrastructure. Covers the full network surface — gateway, SnapChore, console, and control plane.
Install
pip install sbn-sdk
# or from source
cd sdk/python && pip install -e .
Quick start
from sbn import SbnClient
client = SbnClient(base_url="https://api.smartblocks.network")
client.authenticate_api_key("sbn_live_abc123")
# SnapChore — capture, verify, seal
block = client.snapchore.capture({"event": "signup", "user": "u-42"})
client.snapchore.verify(block["snapchore_hash"], {"event": "signup", "user": "u-42"})
client.snapchore.seal(block["snapchore_hash"], {"event": "signup", "user": "u-42"})
# Gateway — slots, receipts, attestations
slot = client.gateway.create_slot(worker_id="w-1", task_type="classify")
receipt = client.gateway.fetch_receipt(slot.receipt_id)
# Console — API keys, usage, billing
keys = client.console.list_api_keys("proj-123")
usage = client.console.get_usage("proj-123")
# Control plane — rate plans, tenants, validators
plans = client.control_plane.list_rate_plans()
client.control_plane.create_tenant(
name="Acme Corp",
contact_email="ops@acme.co",
aggregator_endpoint="https://agg.acme.co",
rate_plan_id=plans[0].id,
)
Auth methods
# API key (most common for external devs)
client.authenticate_api_key("sbn_live_...")
# Bearer token (console sessions, service-to-service)
client.authenticate_bearer("eyJ...")
# Ed25519 signing key (auto-refreshing JWTs for agents)
from sbn import SigningKey
key = SigningKey.from_pem("/path/to/key.pem", issuer="my-svc", audience="sbn")
client.authenticate_signing_key(key, scopes=["attest.write", "snapchore.seal"])
Sub-clients
| Property | Domain | Key operations |
|---|---|---|
client.gateway |
Slots & receipts | create_slot, close_slot, fetch_receipt, request_attestation |
client.snapchore |
Hash capture | capture, verify, seal, create_chain, append_to_chain |
client.console |
Developer console | list_api_keys, create_api_key, get_usage, get_billing_status |
client.control_plane |
Multi-tenancy | list_rate_plans, create_tenant, register_validator |
Legacy compatibility
The original sbn_gateway.py single-file SDK is preserved for backward
compatibility. New integrations should use from sbn import SbnClient.
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 sbn_sdk-0.9.2.tar.gz.
File metadata
- Download URL: sbn_sdk-0.9.2.tar.gz
- Upload date:
- Size: 74.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5c75741d3db99fe844ae7c924030ef814592af9570f61a3176ec0bed45263f69
|
|
| MD5 |
bc4d6d74adf08cb73786511e3435ae74
|
|
| BLAKE2b-256 |
d6f21a8bce5935d51a20530775afc28df9f72090f58fa0430ac6f4865b3a1a17
|
File details
Details for the file sbn_sdk-0.9.2-py3-none-any.whl.
File metadata
- Download URL: sbn_sdk-0.9.2-py3-none-any.whl
- Upload date:
- Size: 100.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cd5777f76337dc578991ea7d2e3a62737ce9fe978e2ff9ac9f827152a828b541
|
|
| MD5 |
6c1611de9bbf14ad2ddd71a4e9494e00
|
|
| BLAKE2b-256 |
04dbac3e3dc093b3a34881fe2253dc2eef897580f633899e8fe8e5f598a2c242
|