ICICI Direct Data API: Holdings and Orders
ICICI Direct-Stocks F&O MF IPO is the Android iDirect Super client of ICICI Securities Limited, the NSE/BSE/MCX brokerage of the ICICI group (CIN L67120MH1995PLC086241). Retail investors and active traders open a 3-in-1 trading-plus-demat account through the in-app flow (PAN, Aadhaar, Digilocker, NSDL e-sign), then watch NSE/BSE scrips from a custom watchlist, place regular, basket, Flash Trade and Cloud Order tickets, track cash-equity holdings and F&O positions, run stock SIPs, Smart SIP and Freedom SIP, browse mutual funds, NFOs, live IPOs and OFS, add or withdraw rupees, and pledge holdings as Share-as-Margin. Easy Options, MultiPie, one-click portfolios, global invest, NPS, REITs/InvITs, SGBs, FDs, insurance and connected apps (Breeze, smallcase, Streak) sit around that order pad. The app is India-only — a SEBI-regulated full-service broker competing with Groww, Zerodha Kite, Angel One, Upstox and Kotak Neo for the same cash-equity and derivatives crowd.
Watchlist rows identify Nifty 50 with stockCode 26000 and exchange N, alongside ltp, changePercent and volume; quote records add open, high, low, close, bidPrice and askPrice. Demat holdings pair quantity and averagePrice with pledged collateralQty, invested value and current value. F&O position records add expiryDate, netQty, product and unrealisedMtm, while the order and trade book distinguishes orderId from exchangeOrderId and records filledQty, pendingQty and orderStatus for CNC, MIS and NRML tickets.
RMS funds separate cashBalance, availableMargin, utilizedMargin and withdrawableAmount. Share-as-Margin records complement those balances with freeQty, pledgedQty, haircutPercent, collateralValue and ddpiEnabled. SIP entries link folioNumber and schemeName to sipAmount, units, status and nextSipDate; IPO issue records supply minPrice, maxPrice, lotSize, openDate, closeDate and upiMandateSupported. A net-worth snapshot groups equity, F&O mark-to-market, mutual funds, ETFs, NPS and cash under netWorth and asOf.
Family-office and PMS reconciliation tools can compare holdings and RMS balances with custodian files; execution desks can match order and exchange identifiers against their own fills. Wealth-management tools can monitor SIP schedules and IPO issue windows, while derivatives dashboards can track pledged collateral alongside available margin. openData Studio turns these holdings, order, investment-schedule and collateral records into callable open data for those integrations.
Screenshots
API surface
Request/response examples are illustrative, reconstructed from the app's interface — not a live capture.
Verify login OTP and PIN
POST
/v1/session/otp-verifyopenbankingCompletes the iDirect login (password + OTP + trading PIN) and returns clientCode, sessionToken, allowed exchanges and CNC/MIS/NRML products for the trading day.
Auth: None. Login id, password, SMS OTP and trading PIN mint the session token attached on later calls.
- loginId
- otp
- tradingPin
- deviceId
- appVersion
- clientCode
- displayName
- sessionToken
- tokenExpiry
- exchanges
- products
- dematAccount
- pinRegistered
POST /v1/session/otp-verify HTTP/1.1 Content-Type: application/json { "loginId": "ICICI1234", "password": "********", "otp": "482913", "tradingPin": "2580", "deviceId": "android-a1b2c3", "appVersion": "1.3.138" }{ "status": "OK", "data": { "clientCode": "12345678", "loginId": "ICICI1234", "displayName": "PRIYA SHARMA", "sessionToken": "eyJhbGciOiJIUzI1NiJ9...", "tokenExpiry": "2026-10-26T15:30:00+05:30", "exchanges": ["NSE", "BSE", "NFO", "MCX", "CDS"], "products": ["CNC", "MIS", "NRML"], "dematAccount": "IN301549-12345678", "pinRegistered": true } }Funds and RMS limits
GET
/v1/funds/statementopenbankingReads the Statement of Funds / margin-details card: cash versus collateral, SPAN and exposure used, rupees withdrawable, and Share-as-Margin value.
Auth: Session token from OTP + PIN verify.
- clientCode
- cashBalance
- collateralValue
- availableMargin
- utilizedMargin
- spanMargin
- exposureMargin
- withdrawableAmount
- adhocMargin
- shareAsMarginValue
- ledgerBalance
GET /v1/funds/statement HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "clientCode": "12345678", "cashBalance": 125000.0, "collateralValue": 48000.5, "availableMargin": 152410.25, "utilizedMargin": 24600.5, "spanMargin": 18400.0, "exposureMargin": 6200.5, "withdrawableAmount": 118500.0, "adhocMargin": 0.0, "shareAsMarginValue": 32000.0, "ledgerBalance": 125000.0 } }Demat holdings
GET
/v1/portfolio/holdingsopenfinanceLists cash-equity demat lots on the holdings tab: stockCode, quantity versus pledged collateralQty, averagePrice, LTP and invested versus current value.
Auth: Session token from OTP + PIN verify.
- stockCode
- stockName
- exchange
- isin
- quantity
- availableQty
- collateralQty
- averagePrice
- ltp
- investedValue
- currentValue
- unrealisedPnl
- totalInvestedValue
- totalCurrentValue
GET /v1/portfolio/holdings?segment=EQ HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "holdings": [ { "stockCode": 2885, "stockName": "RELIANCE", "exchange": "N", "isin": "INE002A01018", "quantity": 50, "availableQty": 40, "collateralQty": 10, "averagePrice": 2460.25, "ltp": 2512.4, "investedValue": 123012.5, "currentValue": 125620.0, "unrealisedPnl": 2607.5 } ], "totalInvestedValue": 123012.5, "totalCurrentValue": 125620.0 } }F&O open positions
GET
/v1/portfolio/positionsopenfinanceLists open F&O positions (futures and options) with netQty, averagePrice, MTM and product (MIS/NRML), including convert-to-delivery eligibility for stock futures.
Auth: Session token from OTP + PIN verify.
- stockCode
- stockName
- exchange
- instrumentType
- expiryDate
- strikePrice
- optionType
- buyQty
- sellQty
- netQty
- averagePrice
- ltp
- unrealisedMtm
- product
- convertToDeliveryEligible
GET /v1/portfolio/positions?segment=FO HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "positions": [ { "stockCode": 26009, "stockName": "Nifty Bank", "exchange": "N", "instrumentType": "FUTIDX", "expiryDate": "2026-10-29", "strikePrice": 0, "optionType": "", "buyQty": 15, "sellQty": 0, "netQty": 15, "averagePrice": 51240.5, "ltp": 51410.0, "unrealisedMtm": 2542.5, "product": "NRML", "convertToDeliveryEligible": false } ] } }Order and trade book
GET
/v1/ordersopenfinancePages today's order book and trade book: orderId versus exchangeOrderId, fill versus pending qty, LIMIT/MARKET type and COMPLETE/OPEN/CANCELLED status.
Auth: Session token from OTP + PIN verify.
- orderId
- exchangeOrderId
- stockCode
- stockName
- exchange
- product
- orderType
- transactionType
- quantity
- filledQty
- pendingQty
- price
- averagePrice
- orderStatus
- orderTime
GET /v1/orders?book=order&status=ALL HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "orders": [ { "orderId": "240102000123456", "exchangeOrderId": "1100000000123456", "stockCode": 2885, "stockName": "RELIANCE", "exchange": "N", "product": "CNC", "orderType": "LIMIT", "transactionType": "BUY", "quantity": 10, "filledQty": 10, "pendingQty": 0, "price": 2510.0, "averagePrice": 2508.35, "orderStatus": "COMPLETE", "orderTime": "2026-10-26T09:21:14+05:30" } ] } }Place equity or F&O order
POST
/v1/ordersopenfinancePlaces a regular, Flash Trade, Cloud Order or basket ticket and returns orderId, exchangeOrderId and the RMS margin blocked.
Auth: Session token from OTP + PIN verify.
- stockCode
- exchange
- transactionType
- product
- orderType
- quantity
- price
- disclosedQty
- validity
- source
- orderId
- exchangeOrderId
- orderStatus
- requiredMargin
POST /v1/orders HTTP/1.1 Authorization: Bearer <sessionToken> Content-Type: application/json { "stockCode": 2885, "exchange": "N", "transactionType": "BUY", "product": "CNC", "orderType": "LIMIT", "quantity": 10, "price": 2510.0, "disclosedQty": 0, "validity": "DAY", "source": "FLASH_TRADE" }{ "status": "OK", "data": { "orderId": "240102000123456", "exchangeOrderId": "1100000000123456", "orderStatus": "OPEN", "message": "Order placed", "requiredMargin": 25100.0 } }Watchlist scrips
GET
/v1/watchlists/{watchlistId}opendataReturns a named watchlist of scrips keyed by stockCode (Nifty 50 = 26000, Nifty Bank = 26009 on exchange N) with last price, change and volume.
Auth: Session token from OTP + PIN verify.
- watchlistId
- watchlistName
- scrips
- stockName
- exchange
- stockCode
- ltp
- changePercent
- volume
GET /v1/watchlists/default HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "watchlistId": "default", "watchlistName": "My Watchlist", "scrips": [ { "stockName": "Nifty 50", "exchange": "N", "stockCode": 26000, "ltp": 24810.35, "changePercent": 0.42, "volume": 184320110 }, { "stockName": "Nifty Bank", "exchange": "N", "stockCode": 26009, "ltp": 51240.1, "changePercent": -0.18, "volume": 98211045 } ] } }Quote by stock code
GET
/v1/quotes/{stockCode}opendataReads the Get Quote sheet for a scrip: OHLC, LTP, bid/ask and 52-week range keyed by stockCode.
Auth: Session token from OTP + PIN verify.
- stockCode
- stockName
- exchange
- ltp
- open
- high
- low
- close
- volume
- bidPrice
- askPrice
- yearHigh
- yearLow
GET /v1/quotes/2885?exchange=N HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "stockCode": 2885, "stockName": "RELIANCE", "exchange": "N", "ltp": 2512.4, "open": 2498.0, "high": 2524.7, "low": 2491.15, "close": 2501.8, "volume": 6845210, "bidPrice": 2512.2, "askPrice": 2512.45, "yearHigh": 2856.0, "yearLow": 2191.4 } }Mutual-fund SIP book
GET
/v1/mf/sip-bookopenfinanceLists active, paused and cancelled mutual-fund SIPs (including Smart SIP / Freedom SIP) with folioNumber, sipAmount, units, NAV and next debit date.
Auth: Session token from OTP + PIN verify.
- sipId
- folioNumber
- schemeName
- schemeCode
- sipAmount
- sipDate
- frequency
- units
- nav
- currentValue
- status
- nextSipDate
GET /v1/mf/sip-book HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "sips": [ { "sipId": "SIP900112", "folioNumber": "1234567890", "schemeName": "ICICI Prudential Bluechip Fund - Direct Growth", "schemeCode": "INF109K01Y64", "sipAmount": 5000.0, "sipDate": 5, "frequency": "MONTHLY", "units": 142.335, "nav": 98.12, "currentValue": 13965.9, "status": "ACTIVE", "nextSipDate": "2026-11-05" } ] } }Open IPO issues
GET
/v1/ipo/issuesopenfinanceLists live mainboard and SME IPOs (and OFS) with the price band, lot size, open/close dates and whether a UPI mandate bid is accepted.
Auth: Session token from OTP + PIN verify.
- issueId
- issueName
- symbol
- minPrice
- maxPrice
- lotSize
- issueSizeCr
- openDate
- closeDate
- category
- upiMandateSupported
GET /v1/ipo/issues?status=OPEN HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "issues": [ { "issueId": "IPO20261001", "issueName": "Example Industries Ltd", "symbol": "EXIND", "minPrice": 220.0, "maxPrice": 232.0, "lotSize": 60, "issueSizeCr": 2400.0, "openDate": "2026-10-21", "closeDate": "2026-10-23", "category": "MAINBOARD", "upiMandateSupported": true } ] } }Share-as-Margin pledge eligibility
GET
/v1/margin/pledge-eligibilityopenfinanceReturns which holdings can be pledged as Share-as-Margin: free versus pledged qty, haircut, collateral value and whether DDPI is already enabled.
Auth: Session token from OTP + PIN verify.
- stockCode
- stockName
- isin
- freeQty
- pledgedQty
- haircutPercent
- collateralValue
- eligibleToPledge
- totalCollateralValue
- ddpiEnabled
GET /v1/margin/pledge-eligibility HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "scrips": [ { "stockCode": 2885, "stockName": "RELIANCE", "isin": "INE002A01018", "freeQty": 40, "pledgedQty": 10, "haircutPercent": 12.5, "collateralValue": 21983.5, "eligibleToPledge": true } ], "totalCollateralValue": 32000.0, "ddpiEnabled": true } }Net-worth snapshot
GET
/v1/portfolio/networthopenfinanceRolls equity, F&O MTM, mutual funds, ETFs, NPS and cash into a single My Networth figure for the portfolio home.
Auth: Session token from OTP + PIN verify.
- netWorth
- equityValue
- fnoMtm
- mfValue
- etfValue
- npsValue
- cashBalance
- asOf
GET /v1/portfolio/networth HTTP/1.1 Authorization: Bearer <sessionToken>{ "status": "OK", "data": { "netWorth": 1854320.75, "equityValue": 125620.0, "fnoMtm": 2542.5, "mfValue": 412330.1, "etfValue": 22110.0, "npsValue": 88000.0, "cashBalance": 125000.0, "asOf": "2026-10-26T15:30:00+05:30" } }
Data categories
- session tokens
- RMS funds and margin
- demat holdings
- F&O positions
- order and trade book
- watchlists
- scrip quotes
- mutual-fund SIP book
- IPO issues
- Share-as-Margin pledge
- net worth
Where teams use this data
Nightly holdings and RMS reconcile
A family-office or PMS desk pulls demat lots (stockCode, quantity, averagePrice, collateralQty) plus cashBalance / availableMargin and matches them to the custodian file before the next cash session.
OMS fill vs iDirect order book
An execution desk compares its own fills to orderId / exchangeOrderId / filledQty / orderStatus on the iDirect order and trade book so CNC versus MIS tickets do not drift overnight.
SIP and IPO mandate monitor
A wealth OS watches folioNumber / nextSipDate / sipAmount on the SIP book and open IPO lotSize / maxPrice bands so UPI mandates and NFO windows are not missed.
Pledge headroom for F&O
A derivatives overlay reads pledgedQty, haircutPercent and availableMargin before rolling Bank Nifty / Nifty futures so Share-as-Margin collateral is topped up ahead of SPAN.
Frequently asked questions
What ICICI Direct data is covered, and does it require login?
The documented account data includes funds (cashBalance, availableMargin, withdrawableAmount), demat holdings (stockCode, quantity), F&O positions (netQty, unrealisedMtm), and the order and trade book (orderId, filledQty, orderStatus). It also covers watchlists, quotes, SIP schedules, IPO issues, pledge eligibility and net worth. The authentication notes describe login ID, password, SMS OTP and trading PIN, followed by a session token for later calls.
How do stockCode and exchange identify securities?
The watchlist examples use stockCode 26000 for Nifty 50 and 26009 for Nifty Bank, both with exchange N. Holdings, quote and order records also carry stockCode and exchange, so integrations can match security references across those records.
What mutual-fund SIP and IPO details are available?
The SIP book includes folioNumber, schemeName, sipAmount, units, status and nextSipDate for mutual-fund plans, including Smart SIP and Freedom SIP. IPO issue records include minPrice, maxPrice, lotSize, openDate, closeDate and upiMandateSupported for the listed mainboard, SME and OFS offerings. These IPO fields describe issues, not a client's submitted bids or allotments.
How can Share-as-Margin data support collateral checks?
Pledge eligibility records list isin, freeQty, pledgedQty, haircutPercent, collateralValue and eligibleToPledge, together with ddpiEnabled. Integrations can compare these with availableMargin and utilizedMargin in the funds data to monitor pledged collateral and margin headroom.
Apps similar to ICICI Direct-Stocks F&O MF IPO
- Groww — Groww is an Indian online investment platform (Groww Invest Tech Pvt. Ltd., SEBI INZ000301838) for a paperless demat account plus NSE/BSE stocks, ETFs, IPOs, F&O and direct mutual funds.
- Zerodha Kite — Zerodha Broking Limited (SEBI INZ000031633) is an Indian discount broker whose Kite platform covers stocks, IPOs, F&O, ETFs and bonds, with Coin for direct mutual funds.
- Angel One: Stocks, Mutual Fund — Angel One is an Indian brokerage app and web platform for stocks, mutual-fund SIPs, IPOs, derivatives, commodities and US stocks.
- Upstox Stocks IPO Mutual Funds — Upstox is an Indian online brokerage that opens demat and trading accounts for stocks, mutual funds, IPOs, futures and options, commodities and currencies.
- Kotak Neo: Stock Trading App — Kotak Neo is Kotak Securities Limited’s retail investing platform in India for stocks, futures and options, mutual funds, IPOs, ETFs and commodities, including individual and NRI demat accounts.
- 5paisa: Demat, Stocks & IPO — 5paisa is a SEBI-registered Indian discount broker whose app opens a demat account for stocks, IPOs, ETFs, mutual funds, derivatives and commodities.
- INDmoney: US Stocks, F&O, IPO — INDmoney is an Indian trading and investing app for Indian and US stocks, F&O, IPOs, mutual funds, ETFs and commodities on one platform.
Topics
- ICICI Direct API
- iDirect Super holdings
- ICICI Securities stockCode
- ICICI Direct order book
- ICICI Direct SIP book
- Share-as-Margin pledge
- ICICI Direct IPO issues
- availableMargin funds
Need this app's data API integrated?
We deliver scoped integrations for any named app — from USD 500 with source-code handoff, or hosted access billed per call. Tell us the data you need.
- NDA + SOW on every engagement
- Delivery in 3–7 days
- Payment only after acceptance
- Work scoped to authorized use