Rather than requesting data a little at a time, WebSockets allow you to connect to a "stream" of data. Your application "listens" to a particular channel and each time the data updates, the latest data is pushed to you. This makes a lot of sense for stock prices: If the stock price didn't change no data is sent but if the stock price changes, the data is sent immediately. 

When connecting to a WebSocket, there is no "API call limit." Each stock that you stream the price for counts as a connection and as long as you keep the connection open in your code, you can stream the stock price forever without limit.

WebSocket plans do limit the number of concurrent connections that can be open at the same time. If you stream the price for 10 stocks, that is 10 "concurrent" connections. 

You can change which stocks you are connected to. If you are listening to the stock price for MSFT, AAPL, and IBM, you could switch IBM out for T.

The NASDAQ Basic data feed is a WebSocket API as well. It has plans that allow from 50 to 3,500 concurrent connections, depending on the plan you choose. Here, "Ticker Limit" means the same thing as "Concurrent Connections."

For all of the WebSocket connections, you can stream the real time price for each ticker without limit. You can find SDKs for Web APIs and WebSocket APIs here.


Did this answer your question?