1. Introduction

The Holdings API provides a detailed summary of the securities (stocks, ETFs, etc.) held in your account, including current market value, average price, quantity, and sellable quantity. Use this API to display or manage the current equity portfolio.

2. API Endpoint

GET <Base URL>/portfolio/v1/holdings

Replace <Base URL> with the relevant Kotak environment base URL provided in response from /tradeApiValidate api.

3. Headers

Name Type Description
accept string Should always be application/json
Sid string session sid generated on login
Auth string session token generated on login
neo-fin-key string static value: neotradeapi
Content-Type string Always application/x-www-form-urlencoded

4. Request

Example Request:

# Portfolio Holdings (new response shape)
curl -X GET "<baseUrl>/portfolio/v1/holdings" \\
  -H "Auth: <session_token>" \\
  -H "Sid: <session_sid>" \\
  -H "neo-fin-key: neotradeapi"

No request body or parameters required.

5. Response

Example Success Response

{
    "data": [
        {
            "instrumentType": "Equity",
            "sector": "Others",
            "instrumentToken": 18974,
            "commonScripCode": "NIPPON_ETF_NIFTYIT",
            "instrumentName": "Nippon India ETF Nifty IT",
            "quantity": 45,
            "averagePrice": 38.7162,
            "holdingCost": 1742.2293,
            "closingPrice": 39.36,
            "mktValue": 1771.2,
            "scripId": "",
            "isAlternateScrip": "",
            "unrealisedGainLoss": 28.9707,
            "sqGainLoss": -5.6,
            "delGainLoss": -7.074,
            "subTotal": 0,
            "prevDayLtp": 0,
            "subType": "ETF",
            "instrumentStatus": "ACTV",
            "marketLot": 1,
            "expiryDate": "",
            "optType": "",
            "strikePrice": "0.00",
            "symbol": "ITBEES",
            "displaySymbol": "ITBEES",
            "exchangeSegment": "nse_cm",
            "series": "EQ",
            "exchangeIdentifier": "19084",
            "sellableQuantity": 45,
            "securityType": "ETF",
            "securitySubType": "ETF",
            "logoUrl": "<https://www.kotaksecurities.com/stockit/stock_logos/74813.png>",
            "cmotCode": "74813"
        },
    ]
}

200 Response Fields

Field Type Description
instrumentType string The type of instrument (e.g., Equity, Debt, ETF, Derivative).
sector string Industry/sector classification of the company/security.
instrumentToken integer Unique token ID for the instrument (used in trading/order APIs).
commonScripCode string Common identifier for the instrument across systems.
instrumentName string Full name of the instrument/security.
quantity integer Total number of units/shares held.
averagePrice float Average acquisition price per share/unit.
holdingCost float Total cost of acquisition for this holding.
closingPrice float Previous closing price from the exchange.
mktValue float Current market value of the holding (closingPrice × quantity).
scripId string Internal scrip identifier (may be blank for some securities).
isAlternateScrip string Flag indicating if this is an alternate scrip (blank if not applicable).
unrealisedGainLoss float Unrealized profit/loss on the holding based on current market value.
sqGainLoss float Square-off gain/loss (intraday MTM component, if applicable).
delGainLoss float Delivery gain/loss (applicable for deliveries).
subTotal float Additional subtotal field (value = 0 if unused).
prevDayLtp float Previous day’s Last Traded Price (LTP).
subType string Subtype of instrument (e.g., ETF, EQUITY).
instrumentStatus string Status of the instrument (e.g., ACTV = Active).
marketLot integer Market lot size (minimum tradable unit).
expiryDate string Expiry date (applicable for derivatives, else blank).
optType string Option type (CE/PE for derivatives, else blank).
strikePrice string Option strike price (string format, "0.00" for non-derivative instruments).
symbol string Symbol code of the instrument (e.g., IDEA).
displaySymbol string Symbol displayed in UI (same as symbol in most cases, e.g., ITBEES).
exchangeSegment string Exchange segment (e.g., nse_cm, bse_cm).
series string Series of the instrument (e.g., EQ).
exchangeIdentifier string Exchange-provided identifier for the scrip.
sellableQuantity integer Quantity available for selling at the moment.
securityType string Type of security (e.g., EQUITY STOCK, ETF).
securitySubType string Subtype of security (e.g., EQUITY STOCK, ETF).
logoUrl string URL for the company/logo image.
cmotCode string Internal Kotak code mapped for margin/holdings tracking.

Example Error Response

{
  "stat": "Not_Ok",
  "emsg": "Invalid session",
  "stCode": 1003
}
Field Type Description
stat string "Not_Ok" for errors
emsg string Error message in English
stCode int Error code (see explanations below)