Skip to content

Portfolio

Note

The BASE URL, Endpoint, and Payload JSON key values are case-sensitive. Please use the format which we have given in the documentation.

Method API Detail
GET {{BASE_URL}}/open-api/od/v1/holdings/productType Retrieve the list of long-term equity holdings. Possible Values CNC or MTF
GET {{BASE_URL}}/open-api/od/v1/positions Retrieve the list of short-term positions.
POST {{BASE_URL}}/open-api/od/v1/orders/positions/sqroff Close an open position by offsetting it with an opposite trade.
POST {{BASE_URL}}/open-api/od/v1/conversion Conversion of positions.

Holdings

Holdings contain the long term equity Holdings of the customer. All the financial instruments in the holdings reside in the customer’s DEMAT account indefinitely until its sold or is delisted or changed by the exchanges. Changes to DEMAT account is settled in T+1 days.

Response Structure

{
    "status": "Ok",
    "message": "Success",
    "result": [
        {
            "isin": "INE758T01015",
            "nseInstrumentId": "5097",
            "bseInstrumentId": "543320",
            "nseTradingSymbol": "ETERNAL-EQ",
            "bseTradingSymbol": "ETERNAL",
            "previousDayClose": 300.35,
            "product": "LONGTERM",
            "formattedInstrumentName": "ETERNAL-EQ",
            "averageTradedPrice": 0.00,
            "collateralQuantity": 500,
            "authorizedQuantity": 0,
            "dpQuantity": 0,
            "totalQuantity": 500,
            "t1Quantity": 0
        }
    ]
}

Response Parameters

Field Type Description
isin String International Securities Identification Number (ISIN) for the stock.
nseInstrumentId String Numeric identifier for the instrument on NSE (National Stock Exchange).
bseInstrumentId String Numeric identifier for the instrument on BSE (Bombay Stock Exchange).
nseTradingSymbol String Trading symbol/code used on NSE.
bseTradingSymbol String Trading symbol/code used on BSE.
previousDayClose Float Closing price of the instrument on the previous trading day.
product String Category/type of product (e.g., LONGTERM for long-term holdings).
formattedInstrumentName String Official full name of the instrument.
averageTradedPrice Float Average price at which the instrument was traded.
collateralQuantity Int Quantity of the instrument held as collateral.
authorizedQuantity Int Quantity authorized for trading or holding.
dpQuantity Int Quantity held in the Depository Participant account.
totalQuantity Int Total quantity of the instrument held.
t1Quantity Int Quantity still in the T+1 settlement period.

Positions

Users can retrieve a list of all open positions for the day. This includes all F&O carryforward positions as well.

Response Structure

{
    "status": "Ok",
    "message": "Success",
    "result": [
        {
            "instrumentId": "14366",
            "tradingSymbol": "IDEA-EQ",
            "formattedInstrumentName": "IDEA-EQ",
            "exchange": "NSE",
            "product": "LONGTERM",
            "netQuantity": 1,
            "netAveragePrice": 0.00,
            "overnightQuantity": 0,
            "overnightPrice": 0.00,
            "buyQuantity": 1,
            "sellQuantity": 0,
            "daySellQuantity": 0,
            "dayBuyQuantity": 1,
            "dayBuyPrice": 7.48,
            "daySellPrice": 0.00,
            "multiplier": 1,
            "lotsize": 1,
            "ticksize": 0.01,
            "previousDayClose": 7.63,
            "realizedPnl": 0.00,
            "buyPrice": 7.48,
            "sellPrice": 0.00,
            "dayBuyValue": 7.48,
            "daySellValue": 0.00,
            "validity": "DAY"
        },
        {
            "instrumentId": "14366",
            "tradingSymbol": "IDEA-EQ",
            "formattedInstrumentName": "IDEA-EQ",
            "exchange": "NSE",
            "product": "LONGTERM",
            "netQuantity": 1,
            "netAveragePrice": 0.00,
            "overnightQuantity": 0,
            "overnightPrice": 0.00,
            "buyQuantity": 1,
            "sellQuantity": 0,
            "daySellQuantity": 0,
            "dayBuyQuantity": 1,
            "dayBuyPrice": 7.48,
            "daySellPrice": 0.00,
            "multiplier": 1,
            "lotsize": 1,
            "ticksize": 0.01,
            "previousDayClose": 7.63,
            "realizedPnl": 0.00,
            "buyPrice": 7.48,
            "sellPrice": 0.00,
            "dayBuyValue": 7.48,
            "daySellValue": 0.00,
            "validity": "NET"
        }
    ]
}

Response Parameters

Field Type Description
instrumentId String Unique identifier of the instrument.
tradingSymbol String Tradable symbol for the instrument.
formattedInstrumentName String User-friendly display name of the instrument.
exchange String Exchange name (e.g., NSE, BSE).
product String Product type (e.g., LONGTERM, INTRADAY).
netQuantity Int Net quantity held (Buy - Sell).
netAveragePrice Float Average price of net quantity.
overnightQuantity Int Quantity carried forward from previous day.
overnightPrice Float Price of overnight quantity.
buyQuantity Int Total buy quantity.
sellQuantity Int Total sell quantity.
daySellQuantity Int Quantity sold on the current day.
dayBuyQuantity Int Quantity bought on the current day.
dayBuyPrice Float Price at which instrument was bought today.
daySellPrice Float Price at which instrument was sold today.
multiplier Int Quantity multiplier (1 for equities, more for derivatives).
lotsize Int Lot size applicable for the instrument.
ticksize Float Minimum tick movement allowed in the instrument price.
previousDayClose Float Last traded price of the previous day.
realizedPnl Float Realized profit or loss (based on completed trades).
buyPrice Float Average buy price.
sellPrice Float Average sell price.
dayBuyValue Float Total value of instruments bought today.
daySellValue Float Total value of instruments sold today.
validity String Order validity type (e.g., "DAY", "NET").

Position Square Off

Closing an open position by placing an opposite trade to realize profit or cut loss.

Request Structure

[
    {
        "instrumentId": "532822",
        "exchange": "BSE",
        "transactionType": "sell",
        "quantity":1,
        "orderComplexity": "Regular",
        "product": "LONGTERM",
        "orderType": "LIMIT",
        "price": "10.60",
        "validity": "DAY",
        "slTriggerPrice": "",
        "marketProtectionPercent": "",
        "targetLegPrice": "",//targetPrice
        "slLegPrice":"", //stoploss
        "trailingSlAmount": "",
        "apiOrderSource": "",
        "algoId": "",
        "disclosedQuantity":"",
        "orderTag":""
    }   
]

Input parameters

Field Type Description
instrumentId String Unique identifier assigned to the specific instrument being traded.
exchange String Code representing the exchange where the trade is executed.
transactionType String Type of transaction, indicating whether the trade is a "BUY" or "SELL".
quantity Int Quantity of the instrument to be traded.
orderComplexity String Complexity level of the order (e.g., REGULAR, AMO).
product String Product category of the trade (e.g., INTRADAY, LONGTERM, MTF).
orderType String Price type: Limit, Market, SL, SLM.
validity String Validity period of the order (e.g., DAY, IOC).
price String Price specified for the trade; may be ignored for market orders.
slTriggerPrice String Trigger price for stop-loss orders.
trailingSlAmount String Amount by which the stop-loss will trail the market price.
disclosedQuantity Int Portion of the total quantity disclosed to the market.
marketProtectionPercent String Allowed percentage deviation from the market price to protect from slippage.
apiOrderSource String Source identifier for API-based orders.
algoId String Identifier for the algorithm placing the order.
orderTag String Custom tag to identify or group orders (user-defined).

Response Structure

[
    {
        "requestTime": "14:42:57 21-07-2025",
        "message": "ok"
    }
]

Response Parameters

Field Type Description
requestTime String when the API request was initiated by the client, used for logging, tracking, or validating request timing.
message String Response message from the server (e.g., "ok").

Position conversion

Convert a position from intraday to delivery or vice versa.

Request Structure

{
    "exchange": "MCX",
    "validity": "DAY",
    "prevProduct": "MIS",
    "product": "CNC",
    "quantity": "1",
    "tradingSymbol": "SILVER25SEP25C100000",
    "transactionType": "BUY",
    "orderSource": "API"
}

Input parameters

Field Type Description
exchange String Code representing the exchange where the trade is executed.
validity String Validity period of the order (e.g., DAY, IOC).
prevProduct String Product category of the trade (e.g., MIS, CNC).
product String Target Product category(e.g., MIS, CNC).
quantity Int Quantity of the instrument to be traded.
tradingSymbol String Ticker symbol used for trading the instrument.
transactionType String Type of transaction, indicating whether the trade is a "BUY" or "SELL".
orderSource String Source identifier for API-based orders.

Response Structure

{
    "status": "Ok",
    "message": "Success",
    "result": [
        {
            "brokerOrderId": "250526000002881",
            "requestTime": "26-May-2025 13:11:34"
        }
    ]
}

Response Parameters

Field Type Description
requestTime String when the API request was initiated by the client, used for logging, tracking, or validating request timing.
brokerOrderId String Order Number is defined as Unique number it can be generated while placing the order.