Subscriptions (WebSockets) require a Growth or Enterprise plan. Learn more.
Pricing for aggregate charts will no longer only use the top pair. Weighted average pricing will be used across a token’s top pairs, based on liquidity/recency, while filtering out lower quality pairs from contributing.
Example Response
Usage Guidelines
- Subscribe using
tokenIdin the formattokenAddress:networkIdto stream aggregate bar data for a token - Unlike
onBarsUpdated(which tracks a single pair), this subscription aggregates pricing across a token’s top liquidity pairs using weighted averages aggregatescontains OHLCV bar data across multiple resolutions simultaneously (e.g.,r1for 1-minute,r5for 5-minute,r60for 1-hour)- Each resolution provides both
usd(USD-denominated) andtoken(native token-denominated) bars viaCurrencyBarData - Granular trade metrics like
buyers,sellers,buyVolume,sellVolume, andliquidityare available per bar - The default
statsTypeisFILTERED, which excludes bot and sandwich attack transactions - Use the
volumestring field for precise volume data — thevinteger field may benullfor aggregate token bars
Troubleshooting Tips
How does this differ from onBarsUpdated?
How does this differ from onBarsUpdated?
onBarsUpdated streams bar data for a single trading pair. onTokenBarsUpdated aggregates pricing across a token’s top liquidity pairs using weighted averages based on liquidity and recency, filtering out lower-quality pairs. Use onTokenBarsUpdated for a holistic view of a token’s price, and onBarsUpdated when you need data for a specific pair.What resolutions are available?
What resolutions are available?
Resolutions range from 1-second (
r1S) up to 1-week (r7D): r1S, r5S, r15S, r30S, r1 (1 min), r5, r15, r30, r60, r240 (4h), r720 (12h), r1D, r7D. You only need to request the resolutions you need in your query.Why is the v field null?
Why is the v field null?
The
v integer field may be null for aggregate token bars. Use the volume string field instead, which provides precise volume data as a string to avoid floating-point precision issues.What does statsType: Filtered vs Unfiltered mean?
What does statsType: Filtered vs Unfiltered mean?
Filtered excludes suspected bot and sandwich attack transactions for cleaner price data. Unfiltered includes all transactions. Most charting use cases should use Filtered for more accurate price representation.