// documentation
learn how to use tx-indexer
installation
npm
Loading...bun
Loading...yarn
Loading...pnpm
Loading...quick start
Loading...API reference
createIndexer(options)
Creates a new indexer instance.
Options:
rpcUrl: string- Solana RPC endpointwsUrl?: string- Optional WebSocket URLclient?: SolanaClient- Pre-configured client
getBalance(walletAddress, tokenMints?)
Fetches wallet balance including SOL and specified tokens.
getTransactions(walletAddress, options?)
Fetches and classifies transactions for a wallet.
Options:
limit?: number- Number of transactions (default: 10)filterSpam?: boolean- Filter spam (default: true)enrichNftMetadata?: boolean- Fetch NFT metadata (default: true)
getTransaction(signature, options?)
Fetches and classifies a single transaction by signature. Returns null if not found.
getRawTransaction(signature)
Fetches raw transaction data without classification.
transaction types
transferWallet-to-wallet transfers
swapToken exchanges (any DEX)
nft_mintNFT minting
nft_transferNFT transfers between wallets
stake_depositSOL staking deposits
stake_withdrawSOL staking withdrawals
bridge_inReceiving from bridge
bridge_outSending to bridge
airdropToken distributions
fee_onlyOnly network fees
solana_paySolana Pay payments
privacy_cashPrivacy-preserving transactions
examples
get wallet transaction history
Loading...check if transaction is a swap
Loading...frontend perspective handling
Loading...RPC compatibility
Core features (transactions, balances, classification) work with any Solana RPC.
NFT metadata enrichment requires a DAS-compatible RPC (Helius, Triton, etc.). If using a standard RPC, disable it:
Loading...bundle size
| Import | Size (minified + brotli) |
|---|---|
| Full SDK | 11.34 KB |
| createIndexer only | 11.34 KB |
| classifyTransaction | 6.39 KB |
| fetchTransaction | 7.39 KB |
| transactionToLegs | 7.3 KB |
need more help? check out the repository
view on github →