Skip to content
Alchemy Logo

Sui gRPC overview

Sui gRPC is a high-performance API for interacting with the Sui blockchain using Protocol Buffers and gRPC. It provides typed, efficient access to objects, transactions, balances, Move packages, and more.

Sui gRPC offers advantages over the JSON-RPC API:

  • Strongly typed: Protocol Buffers provide strict typing and schema validation
  • Efficient serialization: Binary encoding reduces payload size compared to JSON
  • Streaming support: Subscribe to real-time checkpoint updates with server-streaming RPCs
  • Field masking: Request only the fields you need with read_mask to reduce response size
  • Batch operations: Fetch multiple objects or transactions in a single request

Query objects, transactions, checkpoints, and epochs through the LedgerService.

gRPC methodJSON-RPC equivalent
GetObjectsui_getObject
BatchGetObjectssui_multiGetObjects
GetTransactionsui_getTransactionBlock
BatchGetTransactionssui_multiGetTransactionBlocks
GetCheckpointsui_getCheckpoint
GetEpochNo equivalent
GetServiceInfosui_getChainIdentifier

Execute and simulate transactions through the TransactionExecutionService.

gRPC methodJSON-RPC equivalent
ExecuteTransactionsui_executeTransactionBlock
SimulateTransactionsui_dryRunTransactionBlock, sui_devInspectTransactionBlock

Query coin balances, dynamic fields, and owned objects through the StateService.

gRPC methodJSON-RPC equivalent
GetBalancesuix_getBalance
ListBalancessuix_getAllBalances, suix_getCoins, suix_getAllCoins
GetCoinInfosuix_getCoinMetadata, suix_getTotalSupply
ListDynamicFieldssuix_getDynamicFields
ListOwnedObjectssuix_getOwnedObjects

Inspect Move packages, functions, and data types through the MovePackageService.

gRPC methodJSON-RPC equivalent
GetPackagesui_getNormalizedMoveModulesByPackage
GetFunctionsui_getNormalizedMoveFunction, sui_getMoveFunctionArgTypes
GetDatatypesui_getNormalizedMoveStruct
ListPackageVersionsNo equivalent

Resolve SuiNS names through the NameService.

gRPC methodJSON-RPC equivalent
LookupNamesuix_resolveNameServiceAddress
ReverseLookupNamesuix_resolveNameServiceNames

Stream real-time checkpoint data through the SubscriptionService.

gRPC methodJSON-RPC equivalent
SubscribeCheckpointsNo equivalent

Verify user signatures through the SignatureVerificationService.

gRPC methodJSON-RPC equivalent
VerifySignatureNo equivalent

Check out the quickstart guide to make your first gRPC call.

Was this page helpful?