Skip to main content

janzeer-sdk (Python)

Official Python SDK for the Janzeer blockchain — a stake-free, permissionless Layer-1 with instant finality. Wallet keys and signing, transaction builders, a REST client, JSON-RPC over HTTP and WebSocket subscriptions, blocking and asyncio. Non-custodial by construction: keys never leave your process, the node only verifies.

license python

pip install janzeer-sdk            # add [ws] for WebSocket subscriptions: pip install "janzeer-sdk[ws]"

Releases are published to PyPI from this repository's GitHub releases (trusted publishing, no stored token). To install the development head instead:

pip install "janzeer-sdk[ws] @ git+https://github.com/janzeerorg/janzeer-sdk-python"

60-second quickstart

from janzeer import Account, JanzeerClient, JanzeerRpc, TxBuilder, format_jnz, wait_for_finality

client = JanzeerClient("https://onion.janzeer.org")        # REST  (/api/v1)
rpc    = JanzeerRpc("https://onion.janzeer.org")           # JSON-RPC (/rpc)
me     = Account.from_mnemonic("abandon abandon … about")  # 12/24-word BIP39 phrase

print(me.checksum_address, format_jnz(client.balance(me.address)))

tx = me.sign_tx(TxBuilder.transfer(
    sender=me.address, to="0x598b1301acef3baba6ce25e38dd17b723f7b98b1",
    amount="1.25", data="hello", nonce=client.nonce(me.address),
))
client.submit(tx)                                          # HTTP 201, or a typed error
final = wait_for_finality(rpc, tx.hash)                    # one or two 15-second slots
print("final in block", final["blockHeight"])

That is the whole integration: derive → nonce → build → sign → submit → wait. A committed block is final (2f+1 BFT commit), so there is no confirmation count.

The same with asyncio: AsyncJanzeerClient, AsyncJanzeerRpc, JanzeerRpcWs and await_finality have the same methods and return awaitables.

What is in the box

Area Entry points Guide
Keys & addresses mnemonic, Account, to_checksum_address, is_valid_address wallet-and-keys
Transactions TxBuilder.transfer / register_validator / exit_validator / token.* → UnsignedTx → SignedTx sending-transactions
Amounts to_scaled, from_scaled, format_jnz, parse_jnz, add_amounts… sending-transactions
REST JanzeerClient / AsyncJanzeerClient: balances, nonces, transactions, blocks, validators, tokens reading-chain-data
JSON-RPC JanzeerRpc / AsyncJanzeerRpc (HTTP, batches) and JanzeerRpcWs (WebSocket + newBlocks / addressActivity) json-rpc-and-subscriptions
Flows wait_for_finality, send_and_wait, next_nonce (and await_finality, asend_and_wait) json-rpc-and-subscriptions
Errors TxRejectedError, NonceMismatchError, RateLimitedError, RpcError… errors
Vault encrypt_vault / decrypt_vault (PBKDF2 + AES-GCM, compatible with the other SDKs) vault

Money is never a float

Amounts are decimal strings ("1.25"), int (whole coins) or decimal.Decimal. A float is refused with a TypeError everywhere — in the builders, in the amount helpers and in request bodies — because 0.1 is not representable in binary and a payment must not depend on how a float prints. Responses are parsed losslessly: numbers with a fraction arrive as Decimal, client.balance() returns a decimal string.

Results are plain JSON

Network calls return the node's JSON as dict / list values with the field names the node uses (blockHeight, senderAddress, …), documented in the API reference. Keys, transactions and errors are typed classes; the package ships py.typed.

Requirements

  • Python 3.10 – 3.13 on Linux, macOS or Windows.
  • coincurve (libsecp256k1), pycryptodome (keccak-256, AES-GCM), httpx; websockets for subscriptions. Wheels exist for all three systems: no compiler is needed.

Compatibility

SDK Node REST envelope version Wire protocol Vectors
0.1.x 0.1.3 1.1.0 3.4.0 v2

SPEC_VERSION exports these values; the e2e test checks them against the node on the first call.

Examples

Runnable scripts in examples/: a transfer to finality, an address-activity subscription, the token life cycle, a validator registration, and a vault round trip. They read the JANZEER_* environment variables described in CONTRIBUTING.

Conformance

This SDK reproduces, byte for byte, the public test vectors every Janzeer SDK is tested against (key derivation, addresses, every transaction preimage, hash and signature, the vault fixture) and passes the shared 14-step end-to-end flow: https://github.com/janzeerorg/janzeer-sdk-conformance. See docs/conformance.md.

Other SDKs

TypeScript · Dart / Flutter · Kotlin / JVM / Android · Go

Licence

Apache License 2.0 — see LICENSE. Security reports: see SECURITY.

Metadata

Release files for janzeer-sdk 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for janzeer-sdk 0.1.0
File Size Uploaded Provenance Actions
janzeer_sdk-0.1.0.tar.gz 58.9 kB With provenance Details for janzeer_sdk-0.1.0.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for janzeer-sdk 0.1.0
File Interpreter ABI Platform Actions
janzeer_sdk-0.1.0-py3-none-any.whl Python 3 none any Details for janzeer_sdk-0.1.0-py3-none-any.whl

Total release size: 104.0 kB

Release files / janzeer_sdk-0.1.0.tar.gz

Download URL janzeer_sdk-0.1.0.tar.gz
Size 58.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f4483a18c168c3992c61a60ebe85f42b68864f620fc9e97ecde21d34de399297
BLAKE2b-256 checksum
How to use checksums
0af45966c9036f33b3a9581304e730e13cdb15a3bbd0d82ac9027c14b441992f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Release files / janzeer_sdk-0.1.0-py3-none-any.whl

Download URL janzeer_sdk-0.1.0-py3-none-any.whl
Size 45.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3b7b75a1cee5b9a528260f7bc5ef605048554a73bb77740af41ac4acda651def
BLAKE2b-256 checksum
How to use checksums
aad90f600f01241167c3a3b0ca7cc0f8cc284aaa71a982f9a6eb1820baa2018c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

Security for janzeer-sdk 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for janzeer_sdk-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 28, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page