Indexer Architecture Overview

The OpenScan.AI indexing architecture includes the following indexers and fetchers.

Primary Indexers

Both indexers utilize synchronous and asynchronous operations.

  • Realtime: Imports new block data from the head of the chain.
  • Catchup: Imports data down the chain (starting from the head and moving backwards towards the genesis block).

Secondary fetchers

Regular

  • Internal transactions
  • Pending transactions
  • Dropped/Replaced transactions
  • Contract bytecodes
  • Block rewards
  • Token catalog
  • Token/coin balances
  • NFT instances
  • Uncles

On Demand

  • Coin/token balances update
  • Contract bytecodes fetch/re-check
  • Contract source codes lookup
  • NFT instance metadata re-fetch
  • Token total supply

Off-chain integrations

  • Coin / token price, market cap, and TVL sources: CoinMarketCap, CoinGecko, Cryptorank, DefiLlama
  • Smart contract verification: ETH bytecode DB, Sourcify
  • Data enrichment: public tags, AI interpreters, contract security scanners
  • Chain initialization data import: pre-mined coins, precompiled smart contracts

Chain-specific fetchers

There are more than a dozen chain-specific data fetchers to account for chain differences (Arbitrum, Optimism, Polygon zkEVM, zkSync, XDC, and others).

Temporary fetchers

Used once to resolve possible data inconsistencies.