SAHI DOCS

API reference

Scrip master

The daily instrument file every request maps its symbols through.

Master reference for every tradable and quotable instrument. Download the CSV at start of day and pass its id column as instrument_id for every market-data call (/v1/marketdata/ltp, /v1/marketdata/quotes, /v1/marketdata/candles, WSS /v1/stream/marketdata) and as the instrument_id returned in positions.

Columns#

The header row is, verbatim:

id,isin,symbol,company_name,series,underlying_symbol,exchange,segment,token,instrument_type,option_type,expiry_date,strike_price,lot_size,tick_size,freeze_quantity,price_precision,price_multiplier

Read columns by header name, not position.

Column Type Notes
id int Primary key — pass as instrument_id in all Market Data API calls; matches the instrument_id returned in positions. Stable across trading days for the same instrument.
isin string 12-character ISIN. Empty for derivatives and indices.
symbol string The symbol POST /v1/orders takes and the order book returns: the exchange trading symbol, with the -EQ series suffix dropped on NSE cash (RELIANCE, 3IINFOLTD-BE, NIFTY27OCT26C25000). Empty for indices, which are not tradable.
company_name string Display name. Empty for NSE, BSE and NCOM derivatives.
series string Cash-equity series (EQ, BE, A, B, and so on). Empty for derivatives and indices.
underlying_symbol string Underlying symbol for derivatives; empty otherwise.
exchange string Listing exchange: NSE, BSE, MCX or NCOM. Derivatives carry the listing exchange here, so an NSE option has exchange=NSE; use segment for orders.
segment string The exchange_segment Order APIs take with symbol: NSE, NFO, BSE or BFO. Commodity rows carry MCX or NCOM.
token int Exchange-assigned numeric token. Not accepted by these APIs — always reference an instrument by id.
instrument_type string STK, ETF, IDX, FUTSTK, FUTIDX, OPTSTK, OPTIDX on NSE and BSE; FUTBAS, FUTBLN, FUTENR, OPTFUT, UNDCOM on MCX and NCOM. See Field mappings for the proto InstrumentType used on the tick stream.
option_type string CE (call) or PE (put). Empty for non-options.
expiry_date string DD-MM-YYYY for derivatives; empty otherwise.
strike_price decimal Strike price in rupees (decimal). 0.00 for non-options, except NSE futures, which carry -0.01.
lot_size int Tradable lot size; order quantity must be a multiple of it. Usually 1 for cash equities, but some carry larger lots, such as 25000 for privately placed InvITs; 0 for indices.
tick_size decimal Minimum price increment in rupees (decimal).
freeze_quantity int Per-order regulatory quantity ceiling, in units; 0 if not applicable.
price_precision int Decimal places in a quoted price: 2 for every tradable instrument, 0 for indices.
price_multiplier decimal Contract value = price × quantity × price_multiplier. 1 for NSE and BSE instruments; commodity contracts carry their own (100 for MCX GOLD, 0.1 for GOLDM), fractional for some. 0 for indices.

Field mappings#

Marketdata WS InstrumentType is derived from CSV instrument_type + option_type for NSE and BSE rows:

CSV instrument_type CSV option_type proto InstrumentType
STK — STOCK
ETF — ETF
IDX — INDEX
FUTSTK — STOCK_FUT
FUTIDX — INDEX_FUT
OPTSTK CE STOCK_OPT_CE
OPTSTK PE STOCK_OPT_PE
OPTIDX CE INDEX_OPT_CE
OPTIDX PE INDEX_OPT_PE

Sample records#

id,isin,symbol,company_name,series,underlying_symbol,exchange,segment,token,instrument_type,option_type,expiry_date,strike_price,lot_size,tick_size,freeze_quantity,price_precision,price_multiplier
10854,,,Nifty 50,,,NSE,NSE,26000,IDX,,,0.00,0,0.00,0,0,0
12027,INE002A01018,RELIANCE,Reliance Industries,EQ,,NSE,NSE,2885,STK,,,0.00,1,0.10,0,2,1
10914,INE748C01038,3IINFOLTD-BE,3i Infotech,BE,,NSE,NSE,6240,STK,,,0.00,1,0.01,0,2,1
725069,INE002A01018,RELIANCE,Reliance Industries,A,,BSE,BSE,500325,STK,,,0.00,1,0.05,0,2,1
1914891,,NIFTY27OCT26C25000,,,NIFTY,NSE,NFO,51440,OPTIDX,CE,27-10-2026,25000.00,65,0.05,3510,2,1
1914890,,NIFTY27OCT26P25000,,,NIFTY,NSE,NFO,51441,OPTIDX,PE,27-10-2026,25000.00,65,0.05,3510,2,1
1963491,,RELIANCE23NOV26F,,,RELIANCE,NSE,NFO,61697,FUTSTK,,23-11-2026,-0.01,500,0.10,20000,2,1
2027645,,ALUMINI29JAN27,ALUMINI,,ALUMINI,MCX,MCX,587169,FUTBAS,,29-01-2027,0.00,1,0.05,150,2,1000