The Subsquid ecosystem is built around Subsquid Network - a decentralized query engine and a horizontally-scalable data lake for batch queries. Currently, Subsquid Network serves raw historical on-chain data from EVM- and non-EVM networks using a custom REST-like API. In the future, it will additionally support general-purpose SQL queries and an ever-growing collection of structured data sets derived from on- and off- chain data.
Subsquid Network API currently provides:
- raw event logs
- transaction data (with receipts)
- execution traces (for selected networks)
- state diffs (for selected networks)
Currently there are two deployments of Subsquid Network:
- Production-ready private cluster running on Subsquid infrastructure (formerly known as Subsquid Archives). Access to the cluster is free and public.
- A decentralized permissionless network, currently a testnet.
User-facing API between these two is identical. Use it directly whenever you need historical blockchain data older than about 6-24 hours in either (1) high volume or (2) filtered form.
Example use cases for the Subsquid Network direct API
- boost the performance of existing pipelines by replacing per-block RPC requests with batch-requests to Subsquid Network
- non-Typescript indexers, mobile SDKs
- high-performance data pipelines for raw historical data
- a high-performance data source for tools like ApeWorkX, Cryo
- ad-hoc queries over historical on-chain data, such as
- "all transactions from a given address in a range of blocks"
- "all events with a given topic in a range of blocks"
For real-time use cases such as app-specific APIs use Squid SDK: it'll use Subsquid Network to sync quickly, then seamlessly switch to real-time data. If you already have a subgraph indexer, you also have an option to run it against the network.
Squid SDK is a powerful Typescript toolkit for building indexers on top of Subsquid Network, featuring
- High-level libraries for extracting and filtering the Subsquid Network data in what can be though of as Extract-Transform-Load (ETL) pipelines
- Ergonomic tools for decoding and normalizing raw data and efficiently accessing network state
- Pluggable data sinks to save data into Postgres, files (local or s3) or BigQuery
- Expressive GraphQL server with a schema-based config
- Seamless handling of unfinalized blocks and chain reorganizations for real-time data ingestion
- rapid data extraction and decoding for local analytics
The SDK is a go-to choice for production solutions and prototypes of
- custom APIs based on data from sets of smart contracts, and
- low-cost, highly performant in-house data pipelines
that can work in real time setting (<1s chain latency). Take a look at the list of concrete, real-world applications for which Squid SDK was a good fit.
A Platform-as-a-Service for deploying Squid SDK indexers, featuring
- provisioning of Postgres and other compute resources for indexers
- zero downtime migrations between indexer versions
- provisioning of high-performance RPC endpoints for real-time applications
- intuitive deployment management through a Web application or CLI
- Google Cloud-level SLA
- Subsquid Network
- Subsquid Cloud