Canal de Usuario Privado

Ver como Markdown

Crea primero un listenKey :

1POST /v1/private/user/listen-key

Ejemplo de respuesta:

1{
2 "code": 0,
3 "message": "success",
4 "data": {
5 "listenKey": "f57cb61ef604ce76be09e753a5dbdd8c",
6 "expireAt": 1777539918867
7 },
8 "requestId": "req-listen-key"
9}

listenKey es válida por 60 minutos por defecto. Se recomienda renovarlo cada 30 minutos.

Renovar

1PUT /v1/private/user/listen-key
2Content-Type: application/json
1{ "listenKey": "f57cb61ef604ce76be09e753a5dbdd8c" }

Cerrar

1DELETE /v1/private/user/listen-key
2Content-Type: application/json
1{ "listenKey": "f57cb61ef604ce76be09e753a5dbdd8c" }

Conéctate a WebSocket privada

wss://ws.6mm.com/ws?listenKey=YOUR_LISTEN_KEY

Método de conexión JWT compatible:

wss://ws.6mm.com/ws?token=YOUR_ACCESS_TOKEN

Después de que la autenticación tiene éxito, el servidor suscribe automáticamente la conexión al canal privado del usuario actual. No se requiere suscripción manual.

Reconocimiento exitoso de autenticación:

1{ "event": "auth", "success": true, "data": "1188041528" }

Eventos privados comunes

EventoDescripción
ORDER_TRADE_UPDATECambios en el estado de la orden, incluyendo nueva orden, enmienda, intercambio y cancelación
ACCOUNT_UPDATECambios en el saldo de la cuenta y la posición

Envolvente de mensajes push privados:

1{
2 "topic": "user.5794",
3 "ts": 1771047000000,
4 "data": {
5 "eventType": "ORDER_TRADE_UPDATE"
6 }
7}

REST consultar endpoints y WebSocket flujos privados usan esquemas separados. Los clientes deben analizar cada esquema de manera independiente y no deben asumir que los nombres de los campos son idénticos.

Diferencias comunes

DominioREST campoWebSocket campo
Estado de la ordenstatusorderStatus
Saldo congeladofrozenMarginfrozenBalance
Modo de margenmarginModemarginMode, regresado como una cuerda en posiciones y corrientes

Recuperación y reconciliación

  • Renovar el listenKey antes de que expire y crear uno nuevo si la renovación falla.
  • Reconectar, volver a autenticar y tratar el nuevo socket como una nueva sesión de eventos.
  • Deduplicar eventos antes de cambiar los saldos de socios o los registros de pedidos.
  • Si se han pasado por alto eventos, consulta órdenes, posiciones y estado de cuenta a través de REST.
  • Sigue la guía de conexión y latido para el manejo de reintentos y conexiones obsoletas.