Skip to content
aeon/feed

KuCoin price feed

Popular global spot venue. Streamed via the level1 channel. Every KuCoin quote appears in ticker:<SYMBOL> messages with "ex":"kucoin".

Only KuCoin quotes
const ws = new WebSocket("wss://aeonfeed.com/ws?subscribe=ticker:BTCUSDT,ticker:ETHUSDT");
ws.onmessage = (e) => {
  const msg = JSON.parse(e.data);
  if (msg.type !== "ticker" && msg.type !== "snapshot") return;
  const quotes = (msg.data ?? []).filter((q) => q.ex === "kucoin");
  for (const q of quotes) console.log(msg.s, q.b, q.a);
};

KuCoin native format → Aeon format

What KuCoin actually sends for BTC/USDT, captured from its public WebSocket, and the normalised quote you receive from Aeon Feed. Depth arrays are trimmed for readability. The WebSocket URL and token come from POST /api/v1/bullet-public first.

Endpoint
wss://ws-api-spot.kucoin.com/?token=<from bullet-public>
1 · Subscribe request sent to KuCoin
{
  "id": 1,
  "type": "subscribe",
  "topic": "/spotMarket/level1:BTC-USDT",
  "response": true
}
2 · Native message from KuCoin
{
  "topic": "/spotMarket/level1:BTC-USDT",
  "type": "message",
  "subject": "level1",
  "data": {
    "asks": [
      "73560.9",
      "0.75078845"
    ],
    "bids": [
      "73560.8",
      "0.53169102"
    ],
    "timestamp": 1794472002739
  }
}
KuCoin fieldAeon field
topic …:BTC-USDTsymbol (BTCUSDT)
data.bids = [price, size]b, bq
data.asks = [price, size]a, aq
data.timestampet (exchange event time)
3 · What you receive from Aeon Feed (ticker:BTCUSDT)
{
  "type": "ticker",
  "ts": 1794472002860,
  "channel": "ticker:BTCUSDT",
  "s": "BTCUSDT",
  "data": [
    {
      "ex": "kucoin",
      "b": 73560.8,
      "a": 73560.9,
      "bq": 0.53169102,
      "aq": 0.75078845,
      "t": 1794472002859,
      "et": 1794472002739
    }
  ]
}

Pairs on KuCoin

Checking which pairs are listed…

Aeon Feed is free, with no ads and no paid tier. Donations keep it that way.

  • Keeping the project alive: servers and bandwidth for a free, public real-time feed.
  • Maintenance: keeping up with exchange API changes, fixing bugs, adding pairs and exchanges.
  • New features: cross-exchange arbitrage signals are next on the roadmap.
Tron (TRC-20)
Tether (USDT)
TXFraDKB…ZCAmpi

Send USDT only on the network you selected. TRC-20 has the lowest fees.