Wallet Tracker API
Comprehensive tracking and analysis service for wallet activities across multiple tokens.
Overview
The Wallet Tracker API provides detailed tracking and analysis of wallet activities across multiple tokens. It returns comprehensive information about trades, holdings, and wallet statistics for specified wallet addresses, allowing you to monitor wallet behavior patterns and track historical performance.
Endpoint
GET /api/wallet-trackerParameters
| Parameter | Type | Description |
|---|---|---|
| wallets | string | Comma-separated list of wallet addresses to track |
Headers
| Header | Description |
|---|---|
| x-api-key | Your API key for authentication |
Response Format
Basic Trade Information
chainId: The blockchain network IDblockTimestamp: Unix timestamp of the blockblockNumber: Block numbertransactionHash: Hash of the transactionlogIndex: Index of the log in the transactiontransactionIndex: Index of the transaction in the block
Token Information
tokenIn: Address of the input tokentokenOut: Address of the output tokenamountIn: Amount of input tokenamountOut: Amount of output tokenamountUSD: Transaction value in USD
Price Information
suspectedBaseTokenPrice: Price of the base token in quote tokensuspectedBaseTokenPriceUSD: Price of the base token in USDpoolAddress: Address of the liquidity pool
Wallet Statistics
currentlyHoldingAmount: Current token balanceholderSince: Timestamp when the wallet first held the tokentotalBoughtAmount: Total amount of tokens boughttotalBoughtUSD: Total USD value of buystotalSoldAmount: Total amount of tokens soldtotalSoldUSD: Total USD value of sellstags: Array of wallet tags
Usage Examples
1 Using Node.js with fetch:
import fetch from 'node-fetch';
const WALLETS = [
'WALLET_ADDRESS_1',
'WALLET_ADDRESS_2'
].join(',');
const API_KEY = 'YOUR_API_KEY';
fetch(`https://api.solapi.live/api/wallet-tracker?wallets=${WALLETS}`, {
headers: {
'x-api-key': API_KEY
}
})
.then(response => response.json())
.then(data => {
if (data.tradeHistory && data.tradeHistory.length > 0) {
console.log('\nTrades Summary:');
console.log('==============');
console.log(`Total Trades: ${data.tradeHistory.length}\n`);
// Group trades by wallet
const tradesByWallet = {};
data.tradeHistory.forEach(trade => {
const wallet = trade.makerData.address;
if (!tradesByWallet[wallet]) {
tradesByWallet[wallet] = [];
}
tradesByWallet[wallet].push(trade);
});
// Display trades for each wallet
Object.entries(tradesByWallet).forEach(([wallet, trades]) => {
console.log(`\nWallet: ${wallet}`);
console.log('='.repeat(50));
console.log(`Total Trades: ${trades.length}\n`);
trades.forEach((trade, index) => {
console.log(`Trade #${index + 1}:`);
console.log('----------------');
// Basic trade info
console.log('Transaction Info:');
console.log(`Hash: ${trade.transactionHash}`);
console.log(`Time: ${new Date(trade.timestamp * 1000).toISOString()}`);
console.log(`Block: ${trade.blockNumber}`);
// Token amounts and prices
console.log('\nTrade Details:');
console.log(`Token In: ${trade.tokenIn}`);
console.log(`Token Out: ${trade.tokenOut}`);
console.log(`Amount In: ${trade.amountIn}`);
console.log(`Amount Out: ${trade.amountOut}`);
console.log(`Amount USD: $${trade.amountUSD}`);
// Maker data
if (trade.makerData) {
console.log('\nWallet Stats:');
console.log(`Current Balance: ${trade.makerData.currentlyHoldingAmount}`);
console.log(`Holder Since: ${new Date(trade.makerData.holderSince * 1000).toISOString()}`);
console.log('\nTrading History:');
console.log(`Total Bought: ${trade.makerData.totalBoughtAmount} ($${trade.makerData.totalBoughtUSD})`);
console.log(`Total Sold: ${trade.makerData.totalSoldAmount} ($${trade.makerData.totalSoldUSD})`);
console.log(`Buy Transactions: ${trade.makerData.totalBuyTransactions}`);
console.log(`Sell Transactions: ${trade.makerData.totalSellTransactions}`);
if (trade.makerData.tags && trade.makerData.tags.length > 0) {
console.log(`Tags: ${trade.makerData.tags.join(', ')}`);
}
}
});
});
} else {
console.log('No trades found for these wallets.');
}
})
.catch(error => console.error('Error:', error));2 Using curl:
curl "https://api.solapi.live/api/wallet-tracker?wallets=WALLET_ADDRESS_1,WALLET_ADDRESS_2" \
-H "x-api-key: YOUR_API_KEY"Error Handling
| Status Code | Description |
|---|---|
| 400 | When no wallet addresses are provided |
| 500 | When there's an error fetching wallet tracker data |
Notes
- The API supports tracking multiple wallets simultaneously
- All timestamps are in Unix format
- Token amounts are provided in their native decimals
- USD values are calculated based on current market prices
- The API includes metadata about tokens when available
- Wallet tags help identify the nature and behavior of wallets