Positions
Positions contain the user open position across exchange segments. The Equity positions which are passed overnight are transferred to the holdings portfolio the following day. The positions API provides two sets of positions i.e. Daily and Expiry where position tagged as ‘Expiry’ is the carryforwarded positions and position tagged as ‘Daily’ is today's created positions.
🛣️Path Parameter
| Parameter | Type | Required | Description | Example/ENUM |
|---|---|---|---|---|
| type | string | Yes | The type of positions to fetch. Possible values are: all: Fetch all positions, daily: Fetch daily positions, expiry: Fetch positions by expiry | all, daily, expiry |
🟢Success Response - 200 Ok
| Field | Type | Description | Example |
|---|---|---|---|
| status | string | Indicates the result of API Call | "success" |
| code | string | Response code corresponding to the request | "s-101" |
| message | string | Descriptive message for the response | "Success Message" |
| data | arrary | An array of position objects containing the user's position details. | See below table |
📘Data Object Info Fields
| Field | Type | Description | Example |
|---|---|---|---|
| exchange | string | The Exchange segments where the scrip is traded | NSE, BSE, MCX, etc. |
| scrip_token | integer | Exchange token number assigned to the scrip or instrument. | "123456" |
| product_type | string | Product type used for trading. | "INTRADAY" |
| symbol | string | Symbol code provided in the exchange scripmaster file | "KOLTEPATIL" |
| series | string | Series to which the scrip belongs (e.g., A, Eq, B, T, Z, etc.). | "EQ" |
| instrument | string | Instrument name (e.g., underlying instrument for F&O). | "EQUITIES" |
| expiry_date | string | Expiry date of the contract in YYYY-MM-DD format. | 2025-06-30 |
| strike_price | string | Strike price of the contract, usually in Paise. | "0.01" |
| option_type | string | Option type (whether it is a Call or Put option). | CE (Call Option), PE (Put Option) |
| buy_quantity | integer | Quantity of the scrip bought by the user. | 50 , 100 |
| avg_buy_price | string | Average buy price of the scrip. | "271.70" |
| buy_value | string | Total value of the buy order. | "815.10" |
| sell_quantity | integer | Quantity of the scrip sold by the user | 100,200 |
| avg_sell_price | string | Average sell price of the scrip. | "360.50" |
| sell_value | string | Total value of the sell order. | "36050" |
| net_quantity | integer | Net quantity of the position (buy quantity - sell quantity) | 50,100 |
| net_price | string | Net price of the position (average buy/sell price after carry forwards). | "355.75" |
| net_value | string | Total value of the net position (net quantity * net price). | "1778.75" |
| multiplier | string | Order type (e.g., Limit, Market, Stop-Loss). Refer to Global Constants. | "1.00" |
🔴 Error Response - 400 Bad Request
| Field | Type | Description | Example |
|---|---|---|---|
| status | string | Status of the API call Default Error | "error" |
| code | string | Error code indicating the failure | "e-101" |
| message | string | Specific message explaining the reason for failed request. | "Error Message" |
get
/transactional/v1/portfolio/positions/{type}