Skip to main content

Rust: API Reference

Complete method surface for the notareum Rust crate (published on crates.io). All async methods require a Tokio runtime; all write methods require a signer in the client configuration.

Factory

Each sub-client is a public field on the Notareum struct: ntm.nota, ntm.registry, ntm.verification, ntm.staking, ntm.governance, ntm.fee.

NotaFileClient (ntm.nota)

RegistryClient (ntm.registry)

VerificationClient (ntm.verification)

StakingClient (ntm.staking)

GovernanceClient (ntm.governance)

U256 here refers to ethers::types::U256.

FeeClient (ntm.fee)

Enums

The ValidatorTier variants map to protocol tiers BASIC, PROFESSIONAL, ENTERPRISE, INSTITUTIONAL (see Staking and Tiers).

Off-chain primitives module: notareum::core

The merged core module exposes the lower-level building blocks used by the high-level clients:
  • notareum::core::crypto (keccak256, EIP-191 personal-sign signer/verifier)
  • notareum::core::nota (NotaFile types, builder, parser, validator)
  • notareum::core::registry (resource id derivation, resource types)
  • notareum::core::staking (tier types)
  • notareum::core::verification (quorum math, types)
  • notareum::core::constants (schema version, resource type constants)
  • notareum::core::error::CoreError
These primitives are byte-compatible with the TS and Python SDKs and can be used standalone (e.g. in WASM contexts) without instantiating a Notareum client.

Errors

All fallible calls return Result<T, SdkError>. SdkError is a thiserror enum covering provider errors, revert decoding, missing signer, schema failures, and local validation issues. See Error Codes.