subscribe/unsubscribe
Đăng ký/hủy đăng ký nhận thông báo order/portfolio trên cùng kết nối — bắt buộc để nhận trạng
thái lệnh thật sau khi order.place/order.amend/order.cancel đã phản hồi PD (xem mục
"Đặt/sửa/hủy lệnh: xác nhận nhanh, kết quả đến sau" ở đầu tài liệu). Message này không cần chữ ký
và không mang id.
API này chỉ hỗ trợ channel TRADING, gồm 2 loại topic:
order.{accountNo}— thông báo khớp lệnh, khớp một phần.portfolio.{accountNo}— thông báo thay đổi tài sản/danh mục, chỉ áp dụng cho tài khoản phái sinh (đuôi 8).
Cấu trúc dữ liệu thông báo giống với channel TRADING của FastConnect WebSocket API (dữ liệu thị
trường) — xem chi tiết field tại
Sub/Unsub Trading Data.
Lưu ý: mỗi topic phải chỉ định accountNo cụ thể — không hỗ trợ wildcard *, và tài
khoản đó phải thuộc quyền sở hữu của API Key đang dùng (không thể đăng ký nhận dữ liệu của tài
khoản khách hàng khác).
Subscribe sample:
{ "method": "SUBSCRIBE", "channel": "TRADING", "topics": ["order.0901351", "portfolio.1231996"] }
Ack:
{ "method": "SUBSCRIBE", "channel": "TRADING", "status": "ok", "message": "Subscribed to 2 topic(s)" }
Nếu status: "error", message mô tả lý do (topic sai cú pháp, thiếu quyền, hoặc tài khoản
không thuộc quyền sở hữu).
Ví dụ thông báo (order.{accountNo}):
{ "channel": "TRADING", "topic": "order.0901351", "data": { "eventType": "orderEvent", "clientRequestId": "req-0001", "orderId": "ORD123456", "orderStatus": "FF", "...": "..." } }
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Message client gửi để subscribe/unsubscribe hoặc ping/pong kiểm tra kết nối. Không có trường `id`.
Hành động của request. Không phân biệt hoa thường.
Kênh dữ liệu cần đăng ký. Chỉ `TRADING` được hỗ trợ cho SUBSCRIBE/UNSUBSCRIBE (bỏ qua với PING_PONG/PING_ONLY).
Danh sách topic cần đăng ký/hủy đăng ký, cú pháp `{type}.{accountNo}` với `type` ∈ `order, portfolio`. Wildcard `*` cho accountNo **không được hỗ trợ** (khác với FastConnect WebSocket API) — mỗi topic phải chỉ định chính xác một `accountNo` thuộc quyền sở hữu của API Key. Rỗng khi UNSUBSCRIBE nghĩa là hủy toàn bộ topic đang subscribe.
Response Body
application/json
Sample Request
wscat -c wss://api.ssi.com.vn/ws/v3/trading -x '{
"method": "SUBSCRIBE",
"channel": "TRADING",
"topics": [
"order.0901351",
"portfolio.1231996"
]
}'Sample Response
{
"method": "SUBSCRIBE",
"channel": "TRADING",
"status": "ok",
"message": "Subscribed to 2 topic(s)"
}