Skip to content

Listing announcement WebSockets and market-data WebSockets

A listing announcement WebSocket tells your application that an exchange has published a notice. A market-data WebSocket reports prices, trades or order-book changes. A listing bot can use both: the announcement identifies the event, while market data describes the markets where the bot could act.

New Listings Feed supplies the announcement side through an ultra-low-latency crypto listing WebSocket API. It delivers raw notices and parsed events across 24 exchange feeds, including Binance, Coinbase, Upbit, Bithumb and Robinhood.

Choose the event your application needs

WebSocket describes how a message arrives. The subscription determines what the message means. Before comparing endpoints, decide whether your application needs an announcement, an existing market's prices, or updates about its own orders.

Scroll horizontally to compare all columns.

Different streams answer different questions
StreamTypical messageWhat it answers
Listing announcementsNotice title, source link and publication contextWhat did the exchange announce?
Parsed listing eventsExchange, event type, ticker and available asset contextWhich event should my handler process?
Market dataTicker, trades, candles or order bookWhat is happening in a trading market?
Account and order dataOrder status, fills or balance updatesWhat happened to my account or order?

A listing announcement does not establish trading availability

An exchange can announce a new market before trading opens. A ticker update describes an available market; it does not replace the earlier announcement or its schedule. Keep the notice trigger separate from the checks your execution system uses to determine whether an order can be placed.

The event type matters too. An Upbit KRW addition differs from a USDT addition for the same asset. A Robinhood asset-catalog addition differs from a tradable spot listing. Binance Alpha Featured and Alpha Live are separate New Listings Feed classifications. A symbol alone cannot identify which of these happened.

Choose raw announcements or parsed listing events

New Listings Feed provides a common WebSocket API across 24 exchange feeds. /v2/fast sends raw announcement titles and source links before parsing. /v2/full adds the exchange, event classification and asset array; paid keys add available onchain data and project matches.

Use /v2/fast when your bot runs its own parser. Use /v2/full when you want New Listings Feed's classification and extracted tickers. Both streams carry the original source URL so your application can retain a reference to the notice.

A handler for several venues can read parser.exchange, parser.classification.event and parser.assets from the same event structure. Exchange-specific fields still matter: Upbit quote markets are optional, and an inferred contract stays under suggested_match rather than becoming a confirmed contract.

One subscription for Upbit and Bithumb listings

Connect to /v2/full?exchange=upbit,bithumb&data_type=announcement&market_type=spot to receive spot notices from both exchanges. Route on parser.exchange, then read parser.classification.event to select listings or delistings.

For Upbit KRW listings, require parser.classification.markets to include krw. The recorded BFC event passes that check; REZ is USDT-only. Bithumb spot events use the same classification fields, but their documented output does not carry the Upbit-specific quote-market array.

Keep the market-type selection specific to your use case. Robinhood uses spot for spot listings and assets for asset-catalog additions. Binance separates spot, futures and Alpha events. The filters reference lists the exact values for each exchange.

Follow one listing through your application

Use a recorded event to test the decisions between receipt and your trading system. The Upbit BFC example is a KRW listing; the REZ example is USDT. They should not take the same path in a KRW-only handler.

  1. Select the exchange and event

    On New Listings Feed Full, filter the connection by exchange and market_type, then check parser.classification.event. A spot filter can carry both listings and delistings.

  2. Identify every asset and relevant market

    Read the asset array rather than assuming one ticker per notice. For Upbit KRW listings, check that parser.classification.markets includes krw. Keep confirmed contracts separate from suggested matches.

  3. Check the market used by your execution system

    Use that venue's market-data and trading interfaces for current prices, liquidity and order availability. New Listings Feed provides the event data; your application owns the decision and execution.

Compare the same event and the same readiness to act

A raw notice and a parsed event leave different work for your bot. Record the time each message arrives, then the time your handler has extracted the fields it needs. This makes the cost of your own parsing visible when you compare raw and parsed streams.

When comparing captures, match the original announcement and its event meaning. A spot listing, an asset discovery and a notice update are different events even if they mention the same ticker. Include the receiver location, subscription plan, observation window, missing events and disconnects with the results.

New Listings Feed events carry microsecond-precision detection and publication timestamps. Precision does not establish clock accuracy or delivery speed. Measure from your own server and use the timestamp reference for the interval boundaries.

FREE offers parsed-event integration testing with a 3-second configured delay. STARTER and PRO include both New Listings Feed streams; PRO has zero configured plan delay. A FREE capture therefore cannot establish PRO arrival performance.

Keep reading

Get a free key