🚨 Breaking Change: This change goes live on September 15, 2025 at 11PM UTC. Please upgrade your implementation as soon as possible to avoid service disruption.
Overview
- The price_changemessage schema in the Market Channel WebSocket has been updated to improve websocket performance and reliability.
- Messages now come in the form of objects as opposed to lists of fields.
What’s Changed
Before (Legacy Schema):Key Differences
| Aspect | Legacy Schema | New Schema | 
|---|---|---|
| Root level asset_id | Present | Removed | 
| Changes array | changes | price_changes | 
| Asset ID location | Root level | Inside each price change object | 
| Hash location | Root level | Inside each price change object | 
| Best bid/ask | Not included | Included in each change | 
| Side values | ”SELL”, “BUY" | "SELL”, “BUY” (unchanged) | 
Handle New Fields
The new schema provides additional market data:- best_bid: Current best bid price for the asset
- best_ask: Current best ask price for the asset
- hash: Now provided per price change rather than per message
Benefits of the New Schema
- Enhanced market data: Best bid/ask prices are now included
- Granular change tracking: Hash values are provided per change rather than per message
- Clearer structure: The reorganized schema makes the relationship between market, assets, and changes more explicit
Timeline
- Go-live: September 15, 2025 at 11PM UTC
- Legacy support: None, these changes are not backwards compatible
Testing Your Migration
- Update your parsing logic following the examples above
- Verify handling of new fields like best_bidandbest_ask
- Check error handling for the new structure
Support
If you encounter issues during migration or have questions about the new schema, please reach out toFleming on the #dev channel of our Discord.