SenddySenddy Docs

Subgraph

Senddy's indexed on-chain data for efficient querying.

Overview

Senddy uses an on-chain indexing service to index blockchain events. This provides efficient querying of commitments, nullifiers, deposits, and pool state without requiring direct blockchain node access.

What's indexed

Core data

  • Pool state — Global pool configuration, nullifier accumulator, leaf count, total deposits and withdrawals
  • Deposits — Individual deposit records with their lifecycle (pending, consumed)
  • Commitments — Note commitments with their leaf index in the Merkle tree
  • Nullifiers — Published nullifiers with accumulator state
  • Spend events — Spend operations including nullifiers consumed, commitments created, and proof hashes
  • Shield events — Shield operations linking deposits to new private commitments

Financial data

  • Withdrawals — Withdrawal events with recipient addresses and amounts
  • Fees — Relayer fee payment records
  • Asset statistics — Per-asset totals for deposits, withdrawals, and active balance
  • Daily aggregates — Volume and transaction counts by day

Strategy data

  • Strategy events — Yield strategy operations including deposits, withdrawals, and harvests

How it's used

The indexer serves two primary purposes:

Client sync

The sync engine uses the indexed data to efficiently scan for new commitments and nullifiers relevant to a user's keys. Instead of scanning every block, the client queries the indexer for new data since its last sync point.

Pool monitoring

The indexed data provides aggregate statistics about the pool's health, volume, and yield performance.

On this page