WS 撤单
WS 撤单
通过私有 WebSocket 连接撤销订单。单次最多 50 笔。
前置条件
在发送交易请求前,必须先获取有效的 listenKey 并建立私有 WebSocket 连接。
请求格式
{"action":"batch-cancel-orders","param":{"id":"1004","args":[{...},{...}]}}
| 字段 | 必填 | 类型 | 描述 |
|---|---|---|---|
| action | 是 | string | 固定为 "batch-cancel-orders" |
| param | 是 | object | 批量撤单参数 |
| param.id | 是 | string | 客户端请求 ID |
| param.args | 是 | array | 撤单参数数组,1~50 个对象 |
args[N] 对象字段
| 字段名 | 必填 | 类型 | 描述 |
|---|---|---|---|
| ordId | 是 | string | 订单 ID |
请求示例
{
"action": "batch-cancel-orders",
"param": {
"id": "1004",
"args": [
{"ordId": "1000587865918838"},
{"ordId": "1000587865914949"}
]
}
}
响应格式
{"id":"1004","action":"batch-cancel-orders","code":"0","msg":"","data":[{"ordId":"1000587865918838","sCode":"0","sMsg":""},{"ordId":"","sCode":"50012","sMsg":"cancel failed: OrderNotFound"}]}
响应参数
| 字段名 | 类型 | 描述 |
|---|---|---|
| id | string | 对应请求 ID |
| action | string | 固定为 "batch-cancel-orders" |
| code | string | 处理结果码,"0" 表示已处理 |
| msg | string | 处理结果说明 |
| data | array | 每笔结果,顺序与 args 一致 |
| data[].ordId | string | 订单 ID,失败时为空 |
| data[].sCode | string | 单笔结果码,"0" 表示成功 |
| data[].sMsg | string | 单笔结果说明 |
处理规则
| 场景 | 错误码 | 错误信息 |
|---|---|---|
| 全部撤单成功 | 0 | |
param 非合法 JSON | 50018 | Invalid request json |
args 为空或超过 50 个 | 50005 | args length must be between 1 and 50 |
| 单笔:字段解析失败 | 50003 | Invalid arg(单笔 sCode) |
| 单笔:缺少 ordId | 50003 | ordId is required(单笔 sCode) |
| 单笔:撤单失败 | 50012 | cancel failed(单笔 sCode) |