Python: .nota Files
NotaFileClient creates, signs, parses, validates, and serializes .nota files from Python. Everything on this page is purely off-chain and requires no RPC connection, only a private key for signing. The client is reachable as ntm.nota.
Builder pattern
.nota files are produced through a fluent builder chain. Each method returns a NotaBuilder so you can chain until you call serialize(), build(), or sign():
create(...)
Creates a new builder. Accepts the same fields as the TypeScript SDK but in snake_case:
sign(private_key)
Signs the builder payload with a private key in hex form. Produces a 65-byte ECDSA signature over the canonical JSON digest:
validate()
Runs schema and structural validation. Raises on schema mismatch, missing required fields, or (post-signing) a failing signature check:
parse(content)
Parses a serialized .nota JSON string back into a typed dict, verifying the signature if one is present:
serialize() / serialize(nota)
Produces canonical, deterministic JSON output. Same content, same bytes, every time:
proof_hash for on-chain registration, to store in IPFS, or to ship over the wire.
End-to-end example
Related pages
- .nota File Format
- Registry client for turning a
.notainto an on-chain record - Your First .nota File

