Skip to main content

Module full_client

Module full_client 

Source
Expand description

A signing client that can create audit-trail transaction builders.

§Audit Trails Client

The full client extends AuditTrailClientReadOnly with signing support and write transaction builders.

§Transaction Flow

Write APIs return a TransactionBuilder that you can configure before signing and submitting:

let created = client
    .create_trail()
    .with_initial_record_parts(Data::text("Initial record"), None, None)
    .finish()?
    .with_gas_budget(1_000_000)
    .build_and_execute(client)
    .await?;

let trail_id = created.output.trail_id;

client
    .trail(trail_id)
    .records()
    .add(Data::text("Follow-up record"), None, None)
    .build_and_execute(client)
    .await?;

§Example Workflow

let created = client
    .create_trail()
    .with_initial_record_parts(Data::text("Initial record"), None, None)
    .with_record_tags(["finance"])
    .finish()?
    .build_and_execute(client)
    .await?;

let trail_id = created.output.trail_id;

client
    .trail(trail_id)
    .access()
    .for_role("TaggedWriter")
    .create(PermissionSet::record_admin_permissions(), Some(RoleTags::new(["finance"])))
    .build_and_execute(client)
    .await?;

client
    .trail(trail_id)
    .records()
    .add(Data::text("Budget approved"), None, Some("finance".to_string()))
    .build_and_execute(client)
    .await?;

Structs§

AuditTrailClient
A client for creating and managing audit trails on the IOTA blockchain.
FromIotaClientError
The error that results from a failed attempt at creating an AuditTrailClient from a given [IotaClient].
NoSigner
A marker type indicating the absence of a signer.

Enums§

FromIotaClientErrorKind
Categories of failure for FromIotaClientError.