Skip to content

kite portfolio

Read equity holdings, day/net positions, auction instruments, and start holdings authorisation or convert a position between products.

Command Purpose
kite portfolio holdings Show equity holdings.
kite portfolio authorise-holdings [--file <json>] Start holdings authorisation. With no file: empty POST. With a file: per-ISIN/quantity form.
kite portfolio positions Show day and net positions.
kite portfolio convert --file <json> Live action Convert a position between products.
kite portfolio auctions Show auction instruments.
Terminal window
kite portfolio holdings --json --no-color
kite portfolio positions --json --no-color
kite portfolio auctions --json --no-color

To start authorisation for all eligible holdings:

Terminal window
kite portfolio authorise-holdings --json --no-color

To request authorisation for specific ISIN quantities — write a JSON array file:

[{ "isin": "INE009A01021", "quantity": 1 }]
Terminal window
kite portfolio authorise-holdings --file ./holdings-authorise.json --json --no-color

The response includes a request_idthe operator must then open the depository URL to finish the flow:

https://kite.zerodha.com/connect/portfolio/authorise/holdings/<api_key>/<request_id>

Replace <api_key> with the stored Kite app’s API key. There is no CLI flag to automate the final browser step — it is a regulatory depository consent that must happen in the operator’s browser.

Convert a position between product types (e.g. MIS → CNC). Requires --file <json>.

{
"exchange": "NSE",
"tradingsymbol": "INFY",
"transaction_type": "BUY",
"position_type": "day",
"quantity": 1,
"old_product": "MIS",
"new_product": "CNC"
}
Terminal window
kite portfolio convert --file ./convert-position.json --json --no-color

The CLI never invents payloads — only the fields in the file are passed through.