This documentation covers the WebSocket/PubSub solution designed specifically for Real-Time Data Solution clients.
Before getting started, ensure you have the following:
Our Real-Time Data Solution offers two data delivery methods to fit your infrastructure needs:
If you choose pub/sub delivery, please note these requirements:
Direct real-time communication with immediate data delivery
Better scalability and reliability for high-volume data processing across multiple consumers
Real-Time Data Package's WebSocket responses use optimized field names to reduce bandwidth and improve performance.
This section covers the three main data types you'll receive: quotes, series data, and tick data.
Real-time market quotes provide current pricing and volume information.
The table below shows how standard field names are abbreviated:
| Standard Field | New Format | Description |
|---|---|---|
| code | c | Symbol identifier |
| status | ss | Session Status |
| volume | v | Trading volume |
| ask | a | Ask price |
| bid | b | Bid price |
| ask_size | as | Size of ask orders |
| bid_size | bs | Size of bid orders |
Example Quote Response:
{
"c": "NASDAQ:AAPL",
"ss": "OPEN",
"v": 533779.0,
"a": 243.09,
"b": 243.08,
"as": 520.0,
"bs": 430.0
}Series data provides OHLCV (Open, High, Low, Close, Volume) bar information for different time intervals.
The main response structure uses these abbreviated field names:
| Standard Field | New Format | Description |
|---|---|---|
| code | c | Symbol identifier |
| bar_end | be | Bar end timestamp |
| last_update | lu | Last update timestamp |
| bar_type | bt | Bar interval type |
| series | s | Array of OHCLV data |
Each bar within the series array contains these OHLCV fields:
| Standard Field | New Format | Description |
|---|---|---|
| time | t | Bar timestamp |
| open | o | Opening price |
| high | h | Highest price |
| low | l | Lowest price |
| close | c | Closing price |
| volume | v | Trading volume |
Example Series Response:
{
"c": "NASDAQ:AAPL",
"be": 1733432399.0,
"lu": 1733432399820,
"bt": "1m",
"s": [
{
"t": 1733432340.0,
"o": 242.89,
"h": 243.09,
"l": 242.82,
"c": 243.08,
"v": 533779.0
}
]
}Tick data represents individual trades and uses the same envelope structure as series data.
The outer structure contains these fields:
| Standard Field | New Format | Description |
|---|---|---|
| code | c | Symbol identifier |
| bar_type | bt | Bar interval type |
| bar_end | be | Bar end timestamp |
| last_update | lu | Last update timestamp |
| series | s | Array of tick entries |
Each tick entry within the series array contains:
| Standard Field | New Format | Description |
|---|---|---|
| timestamp | t | Trade timestamp |
| close | c | Trade price |
| volume | v | Trade volume (shares/contracts) |
| side | s | Trade direction (`buy` or `sell`) |
Tick data shares the same envelope structure as series data (`c`, `bt`, `be`, `lu`, `s`).
Direction: The `s` field inside each tick entry indicates whether the trade was a `buy` or `sell`.
Volume: The `v` field may be absent when volume data is unavailable.
Example Tick Data Response:
{
"c": "NASDAQ:AAPL",
"bt": "1T",
"be": 1749462520.0,
"lu": 1749462520177,
"s": [
{
"t": 1749462520.177003,
"c": 242.89,
"v": 200.0,
"s": "buy"
}
]
}