https://streaming-oms.verolabs.co.
The terminal connects once, then creates one ref-counted subscription per channel.
Connection endpoints
| Transport | Endpoint |
|---|---|
| WebSocket | wss://streaming-oms.verolabs.co/connection/websocket |
| HTTP stream | https://streaming-oms.verolabs.co/connection/http_stream |
| SSE fallback | https://streaming-oms.verolabs.co/connection/sse |
Subscribe request
After connecting, subscribe to each required channel. Conceptually, each subscription identifies a channel:Message payload
Each channel update contains the message payload. The payload may be a JSON value or a JSON-encoded string. Parse strings before applying the channel schema.Market channels
| Channel | Payload |
|---|---|
mkt:vnIndex:{indexCode} | Index update. Examples: VN30, VNINDEX, HNX30. |
mkt:productInfo:{symbol}-{board} | ProductInfo quote payload. Default board is G1. |
mkt:productStat:{symbol}-{board} | Product trading statistics. |
mkt:depth:{symbol}-{board} | Depth order book payload. |
mkt:tradeLog:{symbol}-{board} | TradeLog print payload. |
mkt:ProductTrend:{symbol}-{board} | TrendMaster buy/sell pressure payload. |
mkt:OhlcvDTO:{symbol}:{resolution} | OhlcvBar payload. Resolution is seconds. |
Trading channels
| Channel | Payload |
|---|---|
order:OrderExecutionReport:{accountId} | OrderExecutionReport order state change. |
order:Account:{accountId} | AccountCashReport or AccountHoldingReport. |
order: channel per account they can access. Account lists and snapshots are loaded through the authenticated REST API before stream subscriptions are opened.

