Using the Archival Service
The Archival Service provides access to historical Sui network data through the same LedgerService gRPC API available on full nodes. Use it as a fallback when your full node has pruned the data you need, or as a dedicated source for historical queries.
For core concepts, see the Archival Store and Service concepts page.
JSON-RPC is deprecated. Migrate to either gRPC or GraphQL RPC by July 2026.
Refer to the list of RPC or data providers that have enabled gRPC on their full nodes or offer GraphQL RPC. Contact a provider directly to request access. If your RPC or data provider doesnβt yet support these data access methods, ask them to enable support or contact the Sui Foundation team on Discord, Telegram, or Slack for help.
Public endpointsβ
The Sui Foundation operates an Archival Service as a public good:
- Testnet:
archive.testnet.sui.io - Mainnet:
archive.mainnet.sui.io
These endpoints have strict rate limits.
Querying the serviceβ
The Archival Service exposes the same LedgerService gRPC API as a Sui full node. Query it using any gRPC client by pointing at an Archival Service endpoint instead of a full node.
See Using gRPC for detailed examples with grpcurl, Buf CLI, TypeScript, Go, and Python.
For example, to fetch a historical transaction using grpcurl:
grpcurl -d '{
"digest": "BASE58_TX_DIGEST"
}' archive.testnet.sui.io:443 sui.rpc.v2.LedgerService/GetTransaction
Using the Archival Service as a fallbackβ
Apps can query the Archival Service when a full node returns retention-related errors. This provides a graceful fallback without requiring the full node to store historical data:
- Send your query to the full node.
- If the full node returns
NOT_FOUNDfor data that should exist, retry against the Archival Service endpoint.
Running your own instanceβ
For production use or to avoid rate limits, you can run the full archival stack yourself. See the Archival Stack Setup operator guide for instructions on setting up Bigtable, the indexer, and the gRPC service.