合约 V3 websock API
基本描述
- 所有标准WebSocket库都可以读取WebSockets。 数据分布在公共和私有频道,API客户端可以订阅这些频道。
- 通过WebSockets发送和接收的所有消息都以JSON格式进行编码。
- 只有支持的JSON标签会被处理,其他内容将被忽略,并返回基础错误提示。
- WebSockets服务器响应时长为30秒,收到一条消息或ping会进行处理。如果没有检测到任何活动,服务器自动结束客户端会话且没有提示。
- Private API:
wss://ws.poloniex.com/ws/v3/private
- Public API:
wss://ws.poloniex.com/ws/v3/public
限制
- WebSocket访问分为两个端点,私有端点只能访问私有频道,不可访问公共频道。 公共端点只能访问公共频道,不可访问私有频道。 端点限制仅适用于订阅请求;其他请求如ping和取消订阅不受限制。
- 单个IP在公共和私有频道上的同时连接数上限为2000个。
- 一旦建立连接,每个连接限制每秒500个请求。
消息
消息 | 描述 |
---|---|
ping (request) | 客户端可以向服务器发送ping消息来保持连接 |
pong (response) | 服务器对ping消息做出响应 |
subscribe (request) | 订阅单个或多个交易频道 |
unsubscribe (request) | 取消订阅所有或指定交易的频道 |
unsubscribe_all (request) | 移除用户当前的所有订阅 |
list_subscriptions (request) | 列出当前的所有订阅 |
心跳
注:只有客户端可发出ping命令。 服务器不会发出ping命令。
命令 |
---|
{"event": "ping"} |
{"event": "pong"} |
为了兼容一些传统的交易程序,我们同时也支持客户端发送的纯文本的ping
消息,不区分大小写。
订阅
订阅
订阅请求和初始响应
请求:
# Subscribe to channel for symbol(s)
{
"event": "subscribe",
"channel": ["<channel>"],
"symbols": ["<symbol1>", "<symbol2>", "<symbol3>"]
}
or
# Subscribe to all symbols for a given channel
{
"event": "subscribe",
"channel": ["<channel>"],
"symbols": ["all"]
}
响应:
# OK
{
"event": "subscribe",
"channel": <channel>
}
# Failure
{
"event": "error",
"message": "Error Message"
}
订阅报错
- 订阅失败(通用)
- 已订阅
- 请求错误(通用)