Expand description
The Canton Network Rust SDK — one-stop entry point.
This crate is a thin facade over the canton-* family: it contains no
logic of its own, only re-exports, so cargo add canton brings in the
whole SDK as one coherent, version-locked set. Each member crate can also
be used directly (cargo add canton-ledger) when only a subset is needed.
| Module | Crate | What it is |
|---|---|---|
ledger | canton-ledger | The async Ledger API v2 client (gRPC + JSON + WebSocket) |
auth | canton-auth | JWT/OIDC authentication (client-credentials, caching, refresh) |
admin | canton-admin | Party management, user self-inspect, topology read |
The shared foundation (canton-core: Config, Error, TLS, retry)
is re-exported at the crate root — the same types canton-ledger itself
re-exports, so both entry points name identical items.
§Feature flags
Features are forwarded to the crates that implement them:
ws— WebSocket streaming for the JSON transport (canton-ledger/ws).otel— OTLP export + W3C trace-context propagation (canton-ledger/otel).
§Quickstart
use canton::ledger::{CantonClient, Config};
let client = CantonClient::connect_lazy(Config::new("http://localhost:3901"))?;
println!("ledger api version: {}", client.version().await?);This SDK is a community project funded by Canton dev-fund proposal #407; it is not an official Digital Asset product.
Re-exports§
pub use canton_admin as admin;pub use canton_auth as auth;pub use canton_ledger as ledger;
Structs§
- Config
- Configuration for an SDK gRPC client (shared by
canton-ledgerandcanton-admin). - Error
Info - Structured
google.rpc.ErrorInfodetails from a gRPC status: the machine- readablereason, itsdomain, and errormetadata.#[non_exhaustive]. - Retry
Config - Retry policy for unary calls.
- TlsConfig
- TLS settings for the gRPC channel.
Enums§
- Auth
- How the client authenticates each request.
- Error
- The single error type for the whole Canton Rust SDK.
Traits§
- Token
Source - A source of bearer tokens for request authentication.
Type Aliases§
- Result
- SDK-wide result alias. Re-exported by the facade as
canton::Result.