Canale Utente Privato

Visualizza come Markdown

Crea prima un listenKey :

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

Esempio di risposta:

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

listenKey è valido per 60 minuti di default. Si consiglia un rinnovo ogni 30 minuti.

Rinnova

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

Chiudi

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

Connettiti a WebSocket privata

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

Metodo di connessione JWT compatibile:

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

Dopo il successo dell’autenticazione, il server sottoscrive automaticamente la connessione al canale privato dell’utente corrente. Non è richiesta alcuna sottoscrizione manuale.

Conferma di autenticazione riuscita:

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

Eventi privati comuni

EventoDescrizione
ORDER_TRADE_UPDATECambiamenti nello stato dell’ordine, inclusi nuovo ordine, modifica, commercio e cancellazione
ACCOUNT_UPDATEVariazioni di saldo del conto e posizioni

Involucro di messaggi push privati:

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

REST query endpoint e WebSocket flussi privati usano schemi separati. I client dovrebbero analizzare ogni schema indipendentemente e non dovrebbero presumere che i nomi dei campi siano identici.

Differenze comuni

DominioREST campoWebSocket campo
Stato dell’ordinestatusorderStatus
Saldo congelatofrozenMarginfrozenBalance
Modalità marginemarginModemarginMode, restituito come stringa nelle posizioni e nei flussi

Recupero e riconciliazione

  • Rinnovare il listenKey prima della scadenza e crearne uno nuovo se il rinnovo fallisce.
  • Riconnettersi, riautenticare e trattare il nuovo socket come una nuova sessione evento.
  • Deduplicare gli eventi prima di modificare i saldi dei partner o i registri degli ordini.
  • Se eventi possono essere stati trascurati, interrogare ordini, posizioni, e stato del conto attraverso REST.
  • Segui la guida alla connessione e al battito cardiaco per la gestione dei ritenti e della connessione stagnante.