Skip to main content

Accessing Data

Data access on Sui is the process of reading onchain state, including transactions, checkpoints, objects, and events. Sui provides multiple interfaces for accessing this data, each optimized for different use cases.

Choosing a data access method

MethodBest forLatencyHistorical depth
GraphQL RPCFlexible queries, app backends, explorersLowCurrent state and recent history
gRPCHigh-throughput streaming, real-time pipelinesLowestCurrent state and recent history
Custom indexingApplication-specific data models, analyticsVariesFull history (you control retention)
Archival StoreHistorical lookups after full node pruningHigherComplete history from genesis

For most applications, start with GraphQL RPC. If you need real-time streaming or higher throughput, use gRPC. If you need a custom data model or application-specific indexes, build a custom indexing pipeline. For historical data beyond what full nodes retain, use the Archival Store.

You can also subscribe to onchain activity through events, which Move modules emit during transaction execution. Authenticated events provide cryptographic proof of event origin for cross-system verification.

For a list of hosted RPC providers, see RPC Providers.