A Stocks Business or Options Business plan streams Fair Market Value from its own WebSocket host, wss://business.massive.com/stocks or wss://business.massive.com/options, not from wss://socket.massive.com, the host the individual real-time plans use. And on the base plan, a refusal of real-time trades or quotes is not an agreements problem to fix in the dashboard: the plan does not include them, and an expansion is what adds them.
Applies to
- Plans: Stocks Business and Options Business, without an expansion. The Currencies Business plan card lists real-time data, quotes and crypto trades in the plan itself, so this article does not describe it.
- Endpoints or feeds: the FMV channel at wss://business.massive.com/stocks and wss://business.massive.com/options, the fmv field in the snapshots, and the trades and quotes endpoints and WebSocket channels.
- Asset classes: stocks and options.
What the base Business plan includes
The base Stocks Business and Options Business plans, with no expansion, include the following, according to the plan cards on the business pricing page and the plan tables in the Massive documentation:
| Data | On the base Stocks Business or Options Business plan |
|---|---|
| Fair Market Value (FMV) | Real-time, on the FMV WebSocket channel and in the fmv field of the snapshots |
| Minute aggregates on the WebSocket during the trading day | Real-time, based on FMV rather than on trades |
| Trades and quotes on the REST endpoints | End-of-day, with full history |
| Trades and quotes on the WebSocket | Not included |
The base Stocks Business plan card on the stocks page sums this up as "Real-time FMV + EOD SIP": Fair Market Value during the day, and end-of-day data from the securities information processors (SIPs), the consolidated tape of every US stock exchange.
Fair Market Value is Massive's own estimate of a security's price, calculated in real time with a proprietary algorithm that blends several exchange feeds. FMV is a single estimated price, not a trade or a bid and ask. For stocks, FMV updates once per second from 4:00 AM to 8:00 PM ET.
Adding real-time trades and quotes
Real-time trades and quotes on a Stocks Business or Options Business plan come from a feed expansion added to the base plan. The business pricing page lists the current expansions for each product:
- Full Market, for stocks and for options: real-time trades and quotes from every US exchange.
- Full Market Delayed, for stocks and for options: the same trades and quotes, 15 minutes delayed.
- Cboe EDGX, Nasdaq Basic and IEX Exchange, for stocks: real-time trades and quotes from that one exchange, which is that exchange's share of the market rather than the full market.
To add an expansion, start a chat at massive.com/contact, which is where Talk to sales under the expansions on the business pricing page leads, and name the expansion you want. An expansion needs exchange approval, and sales takes you through it.
How to stream Fair Market Value
- Connect to wss://business.massive.com/stocks for stocks, or wss://business.massive.com/options for options.
- Send your API key in an auth message and wait for auth_success.
- Subscribe to the FMV channel. For stocks, name a ticker, such as FMV.AAPL, or send FMV.* for all stock tickers. For options, name each contract by its options ticker, which starts with O:, up to 1,000 contracts per connection.
wscat -c wss://business.massive.com/stocks
Once connected, send:
{"action":"auth","params":"YOUR_API_KEY"}
Response
[{"ev":"status","status":"auth_success","message":"authenticated"}]
The auth_success reply means the key was accepted. Then subscribe:
{"action":"subscribe","params":"FMV.AAPL"}
Each FMV event carries the ticker in sym, the value in fmv and a timestamp in t. The stocks FMV documentation lists the fields, and the options FMV documentation covers options contracts.
Why this happens
The base Business plan works this way because Fair Market Value is a value Massive calculates itself, so the plan can deliver it in real time with no exchange approval. Real-time trades and quotes are the exchanges' own data, licensed by the exchanges, so they come with an expansion and the approval it needs. End-of-day and historical trades and quotes are part of the base plan.
If you see an error
[{"ev":"status","status":"error","message":"not authorized"}] in reply to a subscribe on wss://business.massive.com means the plan behind the key does not include that channel on the Business host. A key on an individual plan gets this reply when it subscribes to FMV, even on a real-time individual plan, because FMV is only on Business plans. Check your subscriptions page.
Related
- I paid for real-time Massive data, so why is it still delayed or refused?
- Which plan do I need to show Massive data in my own app?
- Why is my snapshot missing the last trade, last quote or other fields on my plan?
- What are the different Massive subscriptions I can use?
- How can I connect to a Massive WebSocket?

