The Upstox API is the free-data benchmark among Indian brokers: live WebSocket ticks with open interest, historical candles with serious lookback, clean instrument keys, all at no monthly cost. For anyone whose interest is analysis rather than execution, the upstox api is usually the first API they try — so this guide covers exactly that use: what the data surface provides, where its limits are for options analytics, and which layers of the standard stack you still have to build on top of it.

What the data surface provides

Everything flows from the developer documentation’s two data pillars. The market feed WebSocket streams protobuf-encoded ticks — LTP, OHLC, depth, and for derivatives open interest — across NSE, BSE and MCX. The historical candle API serves one-minute intraday data with generous lookback plus daily bars going back years, free, which quietly makes Upstox one of the cheapest legitimate candle archives in the country. Instruments resolve through published masters with unambiguous keys like NSE_FO|54321, so there’s no symbol-string guessing anywhere in the pipeline.

The famous constraint: limits are per account

Upstox is explicit that rate limits apply per account, not per app — roughly a 25-requests-per-second class shared across everything authenticated as you. For analytics this bites in one specific place: bulk candle pulls at market open, when your backfill job, your terminal and your notebook all reach for data simultaneously and throttle each other. Well-built pipelines pre-warm caches before 9:15 and pace their backfills; the limit is generous for steady-state work.

From ticks to analytics: the unbuilt layer

The upstox api hands you excellent ingredients and none of the cooking. The standard options-analytics stack still requires: assembling a coherent option chain from hundreds of independent tick streams; maintaining OI baselines so change-on-day means something; classifying buildups from joint price-OI moves; solving IV and computing Greeks strike by strike; and aggregating gamma exposure if dealer positioning is part of your read. Add the operational layer — daily token expiry at ~3:30 AM, protobuf schema compilation, reconnect handling through the opening burst — and “free data” acquires its true cost: your time, on a 250-day annual schedule.

Build or use: an honest division

Build on the API when your edge is computation nobody else runs — a custom signal, a research question, an execution engine. The upstox api is arguably the best free foundation in India for that. But if the goal is the standard market-reading layer — a live option chain with OI analysis, the Trending OI table, futures OI, screeners, PCR and max pain — that layer already exists as OIData — you connect with your own broker API key and the analytics run on market data streaming straight from your own account, with the assembly, baselines and reconnect logic already built. The pairing we see most: OIData for reading the market’s positioning, the API for acting on whatever you conclude.

A concrete example: the chain you’d have to assemble

Consider rebuilding just the option chain view from raw feed: subscribe every strike of every active expiry (hundreds of instruments), hold per-strike state as ticks land out of order, compute OI change against baselines, roll strikes as the index moves, handle expiry-day contract churn, and keep it all responsive while the 9:15 burst arrives. That’s the FIRST page of an analytics product — before screeners, Greeks or positioning. It’s genuinely fun engineering, once. Maintaining it every expiry cycle is the part nobody warns you about.

A practical starter pipeline

The build that holds up: compile the protobuf schema into your client first (not at 9:14); a warmup job that authenticates after 3:30 AM expiry and subscribes the chain before the open; per-strike state keyed by instrument key; OI baselines refreshed nightly from the previous close; candle backfills scheduled off-hours to respect the per-account budget — and remember that budget is shared, so the notebook you open at 9:20 is competing with your own collector. Log 429s as first-class events; they’re your capacity gauge, not noise.

One more comparison point

Against Angel One, the upstox api trades scriptable logins for cleaner data ergonomics: SmartAPI authenticates without a browser but makes you work harder per packet, while Upstox’s keys, masters and candle API are tidier but need a human (or fragile automation) at the morning login. Unattended collectors lean SmartAPI; interactive analytics lean Upstox — many serious setups simply run both and let each do what it’s best at.

Upstox API — data FAQ

Does the feed include open interest? Yes — derivative ticks carry OI, the raw field behind every OI analytic on this site, from basic OI reading to positioning models.

Is the historical data really free? Yes, as of August 2026 — intraday candles with deep lookback at no charge, subject to the per-account rate limits described above.

Does it cover MCX? Yes — NSE, BSE and MCX all stream, unlike several rivals that stop at the equity exchanges.

Do I need the upstox api to use OIData? You bring your own broker connection there too — the same key, but nothing to build: link your account and the analytics run on market data streaming straight from it.

Can I subscribe an entire option chain at once? Yes, within subscription limits per connection — hundreds of instrument keys on one socket is normal. The work is client-side: holding coherent per-strike state while the opening burst lands, which is precisely the engineering the ready-made layer spares you.

Is the protobuf hard? Not hard — just a build step. Compile their schema once into your language and the payloads become typed objects; skipping this and hand-parsing frames is the classic false shortcut that costs a weekend.

Does the master cover indices too? Yes — index spot keys (Nifty 50, Bank Nifty, Sensex) live in the same universe as their derivatives, so a chain view and its underlying quote come from one consistent identity scheme.

Verdict

The best free market-data API in India, with two honest costs: per-account limits you must engineer around, and the analytics layer it leaves entirely to you. Take it for what it is — a superb foundation — and take the ready-made layer where building it again would be rent paid in evenings.