Node ReferenceData
Helius
On-chain asset data, transactions, balances, and DAS API via Helius.
Helius provides deep Solana on-chain data through the Digital Asset Standard (DAS) API and enhanced RPC methods. The Helius node covers asset lookups, token accounts, transaction parsing, and priority fee estimation.
Prerequisites
- Helius API key (helius.dev)
- Add as a credential in Credentials
Operations
| Operation | Description | Key inputs |
|---|---|---|
| getAsset | Get asset details by ID | mintAddress |
| getAssetsByOwner | Get all assets owned by a wallet | address |
| getAssetsByGroup | Get assets by group (e.g., collection) | groupKey, groupValue |
| searchAssets | Search assets with filters | address, tokenType |
| getTokenAccounts | Get token accounts for a wallet | address |
| getTokenLargestAccounts | Get top-20 holders of a mint, aggregated by owner wallet (with raw token-account rows alongside). Subject to Helius's 5M-account cap - works for memecoins, not USDC/wSOL. | mintAddress |
| getBalance | Get SOL balance | address |
| getAccountInfo | Get raw account data | address |
| getSignaturesForAddress | Get transaction signatures | address |
| getBlock | Get block data by slot | slot |
| getTokenAccountBalance | Get token account balance | address |
| getFungibleTokens | Get fungible token holdings | address |
| getAssetBatch | Get multiple assets at once | mintAddress (comma-separated) |
| getAssetProof | Get Merkle proof for compressed NFT | mintAddress |
| getTransactionHistory | Get parsed transaction history | address |
| parseTransactions | Parse raw transaction signatures | transactionSignatures |
| getPriorityFeeEstimate | Get priority fee estimate | accountKeys |
Configuration
| Field | Type | Required | Description |
|---|---|---|---|
| mintAddress | string | Varies | Asset mint address, comma-separated list, or JSON array for batch lookups |
| address | string | Varies | Wallet or account address |
| groupKey | string | For getAssetsByGroup | Group key (e.g., collection) |
| groupValue | string | For getAssetsByGroup | Group value (collection address) |
| slot | number | For getBlock | Solana slot number |
| transactionSignatures | string | For parseTransactions | Comma-separated signatures or JSON array |
| accountKeys | string | No | Optional comma-separated account keys for priority fee estimates |
| tokenType | string | No | Search filter: all, fungible, nonFungible, regularNft, or compressedNft |
| limit | number | No | Results limit for list operations |
Output
Most operations return the standard envelope:
{
"success": true,
"operation": "getAsset",
"data": { /* raw Helius response */ }
}Operations that echo the input identifier add it at the top level (address, mintAddress, slot). Reference fields downstream with the response name (default heliusResponse), for example {heliusResponse.data.id} or {heliusResponse.data.value} for getBalance.
getTokenLargestAccounts is the one exception - it returns aggregated holders and the raw tokenAccounts rows alongside, not under .data:
{
"success": true,
"operation": "getTokenLargestAccounts",
"mint": "DezX...",
"holders": [{ "owner": "Wallet1...", "amount": "1000000" }],
"tokenAccounts": [{ "address": "Account1...", "amount": "1000000" }]
}Common use cases
- Track NFT collection holdings across wallets
- Parse and analyze historical transactions
- Estimate priority fees for time-sensitive workflows
