AsyncAPI channel · KuCoin · KuCoin Public WebSocket API

/

Single multiplexed WebSocket connection. All KuCoin streaming traffic flows over one connection; topics are subscribed/unsubscribed via JSON control messages and inbound messages are routed by their `topic` and `subject` fields.

Provider: KuCoin AsyncAPI: v2.6.0 Spec: KuCoin Public WebSocket API Operations: 2 Messages: 24

Channel address

/

Operations

publish
clientToServer
Control and heartbeat messages sent by the client.
serverToClient
Server-pushed envelopes (welcome, ack, pong, market data, private data).

Messages

subscribe
Subscribe to a topic. Some topics support a comma-separated list of symbols (up to 100).
Content-Type:
unsubscribe
Unsubscribe from a topic.
Content-Type:
ping
Heartbeat. Must be sent every `pingInterval` ms returned by /api/v1/bullet-public.
Content-Type:
welcome
First message from server after the WebSocket handshake. The connection is only usable after this message is received.
Content-Type:
ack
Sent when the client requested `"response": true` on subscribe/unsubscribe.
Content-Type:
pong
Reply to a client ping.
Content-Type:
error
Server-side error envelope.
Content-Type:
symbolTicker
Topic: `/market/ticker:{symbol}` — pushed at most once every 100ms.
Content-Type:
allSymbolsTicker
Topic: `/market/ticker:all` — ticker updates for every symbol, subject is the symbol code.
Content-Type:
symbolSnapshot
Topic: `/market/snapshot:{symbol}` — pushed every 2s.
Content-Type:
marketSnapshot
Topic: `/market/snapshot:{market}` — pushed every 2s for every symbol in a market (e.g. `BTC`, `USDS`).
Content-Type:
level1
Topic: `/spotMarket/level1:{symbol}` — pushed at most once every 10ms when top-of-book changes.
Content-Type:
level2
Topic: `/market/level2:{symbol}` — real-time incremental updates. Subject `trade.l2update`.
Content-Type:
level2Depth5
Topic: `/spotMarket/level2Depth5:{symbol}` — pushed at most once every 100ms.
Content-Type:
level2Depth50
Topic: `/spotMarket/level2Depth50:{symbol}` — pushed at most once every 100ms.
Content-Type:
klines
Topic: `/market/candles:{symbol}_{type}` — real-time OHLCV updates. Type is one of 1min,3min,15min,30min,1hour,2hour,4hour,6hour,8hour,12hour,1day,1week.
Content-Type:
match
Topic: `/market/match:{symbol}` — real-time Level 3 trade matches. Subject `trade.l3match`.
Content-Type:
indexPrice
Topic: `/indicator/index:{symbol}` — pushed once per second.
Content-Type:
markPrice
Topic: `/indicator/markPrice:{symbol}` — pushed once per second.
Content-Type:
tradeOrders
Topic: `/spotMarket/tradeOrders` — real-time order lifecycle events. Requires private token.
Content-Type:
tradeOrdersV2
Topic: `/spotMarket/tradeOrdersV2` — real-time order lifecycle events with additional update events. Requires private token.
Content-Type:
accountBalance
Topic: `/account/balance` — real-time balance changes. Requires private token.
Content-Type:
crossMarginPosition
Topic: `/margin/position` — debt ratio and position status updates. Requires private token.
Content-Type:
isolatedMarginPosition
Topic: `/margin/isolatedPosition:{symbol}` — isolated margin position changes. Requires private token.
Content-Type:

About AsyncAPI

The AsyncAPI specification describes event-driven APIs the way OpenAPI describes request/response APIs. A channel is the named pipe — a webhook URL, a Kafka topic, a WebSocket route, an MQTT subject — that producers and consumers publish or subscribe to. Each channel carries one or more messages with structured payloads, and an operation declares whether a given party sends or receives on that channel.

Browse every event-driven channel on the APIs.io network or compare with the broader Naftiko capability, Agent Skill, and MCP server surfaces of the same providers.