get_multiple_pools_data
Retrieve comprehensive data for multiple DeFi liquidity pools by contract addresses to analyze trading opportunities across different networks and DEXs.
Instructions
Get data for multiple pools by their contract addresses
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| network | Yes | Network ID (e.g., 'eth', 'bsc', 'polygon_pos') | |
| addresses | Yes | Pool contract addresses, comma-separated for multiple pools | |
| include | No | Attributes to include: 'base_token', 'quote_token', 'dex' (comma-separated) | |
| include_volume_breakdown | No | Include volume breakdown (optional, default: false) |
Implementation Reference
- Core helper function that makes the HTTP request to CoinGecko API to retrieve data for multiple pools by addresses.
async getMultiplePoolsData(network, addresses, options = {}) { try { const queryParams = new URLSearchParams(); if (options.include) queryParams.append('include', options.include); if (options.include_volume_breakdown) queryParams.append('include_volume_breakdown', options.include_volume_breakdown); const url = `${this.baseUrl}/networks/${network}/pools/multi/${addresses}${queryParams.toString() ? '?' + queryParams.toString() : ''}`; const response = await fetch(url, { headers: { 'x-cg-demo-api-key': this.apiKey } }); if (!response.ok) { throw new Error(`HTTP ${response.status}: ${response.statusText}`); } return await response.json(); } catch (error) { throw new Error(`Failed to get multiple pools data: ${error.message}`); } }