Crate iota_grpc_client

Crate iota_grpc_client 

Source
Expand description

gRPC client for IOTA node operations.

This crate provides a high-level client for interacting with IOTA nodes via gRPC. It wraps the low-level proto types and provides ergonomic APIs using SDK types from iota_sdk_types.

§Example

use iota_grpc_client::Client;
use iota_sdk_types::{Digest, ObjectId};

let client = Client::connect("http://localhost:9000").await?;

// Get a transaction with full details (None = use default field mask)
let digest: Digest = todo!();
let txs = client.get_transactions(&[digest], None).await?;
if let Some(tx) = txs.body().first() {
    println!("Transaction digest: {:?}", tx.transaction()?.digest()?);
}

// Get an object (None = use default field mask)
let object_id: ObjectId = "0x2".parse()?;
let objects = client.get_objects(&[(object_id, None)], None).await?;
if let Some(object) = objects.body().first() {
    println!("Object version: {:?}", object.object_reference()?.version());
}

Re-exports§

pub use api::CheckpointResponse;
pub use api::CheckpointStreamItem;
pub use api::Error;
pub use api::MetadataEnvelope;
pub use api::Page;
pub use api::Result;
pub use api::execution::simulate::SimulateTransactionInput;
pub use api::move_package::package_versions::ListPackageVersionsQuery;
pub use api::state::dynamic_fields::ListDynamicFieldsQuery;
pub use api::state::owned_objects::ListOwnedObjectsQuery;

Modules§

api
High-level API for gRPC client operations.

Structs§

Client
gRPC client factory for IOTA gRPC operations.
HeadersInterceptor
Interceptor used to add additional headers to a Request
RpcStatus
The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details.

Constants§

CHECKPOINT_CONTENTS_BCS
Read mask for CheckpointContents::contents().
CHECKPOINT_CONTENTS_DIGEST
Read mask for CheckpointContents::digest().
CHECKPOINT_RESPONSE_CHECKPOINT_DATA
Read mask for CheckpointResponse::checkpoint_data().
CHECKPOINT_RESPONSE_CONTENTS
Read mask for CheckpointResponse::contents().
CHECKPOINT_RESPONSE_EVENTS
Read mask for CheckpointResponse::events().
CHECKPOINT_RESPONSE_EXECUTED_TRANSACTIONS
Read mask for CheckpointResponse::executed_transactions().
CHECKPOINT_RESPONSE_SIGNATURE
Read mask for CheckpointResponse::signature().
CHECKPOINT_RESPONSE_SIGNED_SUMMARY
Read mask for CheckpointResponse::signed_summary().
CHECKPOINT_RESPONSE_SUMMARY
Read mask for CheckpointResponse::summary().
CHECKPOINT_SUMMARY_BCS
Read mask for CheckpointSummary::summary().
CHECKPOINT_SUMMARY_DIGEST
Read mask for CheckpointSummary::digest().
EVENT_BCS
Read mask for Event::event() (full BCS deserialization).
EVENT_BCS_CONTENTS
Read mask for Event::bcs_contents().
EVENT_JSON_CONTENTS
Read mask for Event::json_contents().
EVENT_MODULE
Read mask for Event::module_name().
EVENT_PACKAGE_ID
Read mask for Event::package_id().
EVENT_SENDER
Read mask for Event::sender().
EVENT_TYPE
Read mask for Event::type_name().
EXECUTED_TRANSACTION_CHECKPOINT
Read mask for ExecutedTransaction::checkpoint_sequence_number().
EXECUTED_TRANSACTION_EFFECTS
Read mask for ExecutedTransaction::effects().
EXECUTED_TRANSACTION_EVENTS
Read mask for ExecutedTransaction::events().
EXECUTED_TRANSACTION_INPUT_OBJECTS
Read mask for ExecutedTransaction::input_objects().
EXECUTED_TRANSACTION_OUTPUT_OBJECTS
Read mask for ExecutedTransaction::output_objects().
EXECUTED_TRANSACTION_SIGNATURES
Read mask for ExecutedTransaction::signatures().
EXECUTED_TRANSACTION_TIMESTAMP
Read mask for ExecutedTransaction::timestamp_ms().
EXECUTED_TRANSACTION_TRANSACTION
Read mask for ExecutedTransaction::transaction().
EXECUTE_TRANSACTIONS_READ_MASK
Default read mask for execute_transactions.
EXECUTION_ERROR_BCS_KIND
Read mask for ExecutionError::error_kind().
EXECUTION_ERROR_COMMAND_INDEX
Read mask for ExecutionError::error_command_index().
EXECUTION_ERROR_SOURCE
Read mask for ExecutionError::error_source().
GET_CHECKPOINT_READ_MASK
Default read mask for get_checkpoint / stream_checkpoints.
GET_EPOCH_READ_MASK
Default read mask for get_epoch.
GET_OBJECTS_READ_MASK
Default read mask for get_objects.
GET_SERVICE_INFO_READ_MASK
Default read mask for get_service_info.
GET_TRANSACTIONS_READ_MASK
Default read mask for get_transactions.
LIST_DYNAMIC_FIELDS_READ_MASK
Default read mask for list_dynamic_fields.
LIST_OWNED_OBJECTS_READ_MASK
Default read mask for list_owned_objects.
OBJECT_BCS
Read mask for Object::object() (BCS deserialization).
OBJECT_REFERENCE
Read mask for Object::object_reference().
SIMULATED_TRANSACTION_EXECUTED_TRANSACTION
Read mask for SimulatedTransaction::executed_transaction().
SIMULATED_TRANSACTION_EXECUTION_RESULT
Read mask for SimulatedTransaction::execution_result(), SimulatedTransaction::command_results(), and SimulatedTransaction::execution_error().
SIMULATED_TRANSACTION_SUGGESTED_GAS_PRICE
Read mask for SimulatedTransaction::gas_price_suggested().
SIMULATE_TRANSACTIONS_READ_MASK
Default read mask for simulate_transactions.
TRANSACTION_BCS
Read mask for Transaction::transaction() (BCS deserialization).
TRANSACTION_DIGEST
Read mask for Transaction::digest().
TRANSACTION_EFFECTS_BCS
Read mask for TransactionEffects::effects() (BCS deserialization).
TRANSACTION_EFFECTS_DIGEST
Read mask for TransactionEffects::digest().
TRANSACTION_EVENTS_BCS
Read mask for TransactionEvents::events() (BCS deserialization of all events).
TRANSACTION_EVENTS_DIGEST
Read mask for TransactionEvents::digest().

Traits§

ResponseExt
Extension trait used to facilitate retrieval of IOTA specific data from responses

Type Aliases§

InterceptedChannel