A Market order with market_protection set to a positive value (0 to 100) is converted to a Limit order with the corresponding protection price. This behaviour is also applicable to MTF SELL orders.
Please note that while market protection converts…
Only a single active session is allowed per API key. However, you can use the same `access_token` across multiple independent programs or processes.
Please ensure that the combined API requests from all programs remain within the applicable rate li…
An Invalid checksum error generally indicates that the api_key, api_secret, or request_token being used is incorrect or does not correspond to the same authentication session. We have verified the Python SDK and found no issues.
Please try generati…
A request token is valid for 5 minutes and can be used only once. To generate the access token, you need to extract the request token from the redirect URL and use it to create the session.
Please note that the access token is valid for one trading…
The market_protection=-1 enables automatic market protection for MARKET and SL-M orders, with the protection percentage determined by the system.
The API response fields, such as order_type and market_protection,should not be assumed to retain the…
We have checked this from our end and could not identify any issue. An Invalid checksum error generally indicates that the api_key, api_secret, or request_token being used is incorrect or does not correspond to the same authentication session. We ha…
Does Kite Connect WebSocket provide real-time/tick-level data for MCX Gold futures?
Yes, the Kite Connect WebSocket API provides real-time streaming market quotes for MCX Gold futures.
Can an external application use the live data to construct a 1…
If you received a Postback for an order that you did not place through the same Kite Connect app, please note that Postback notifications are generated only for orders placed via the Kite Connect API. Orders placed through Kite Web/mobile or another…
The documented rate limit should be treated as a hard upper limit, rather than a rate at which an application should continuously operate, particularly when requests are being made concurrently or in bursts.
When operating very close to the limit, …
If you encounter the message "Access to https://kite.trade has been blocked" while creating an app, please try creating the app without uploading the app icon initially.
Once the app has been created successfully, you can edit the app and upload th…
You can integrate your Python application using the official PyKiteConnect library. Please refer to the Kite Connect API documentation and PyKiteConnect documentation for installation and usage details.
You can also refer to the PyKiteConnect FAQ o…
Please ensure the API request uses Content-Type: application/x-www-form-urlencoded and sends the form parameters in the URL-encoded format specified in the documentation. Also verify that all required fields, including the request_token are correctl…
It appears that an incorrect client id in numeric format was entered during app creation instead of the correct 6-digit alphanumeric Zerodha login user id. Please edit the app profile and update it with the correct client id.
You may refer to the s…
We checked this on our end and were able to generate a request token with the same redirect URL. Go to the app details and verify whether the redirect URL is updated correctly. If it is updated correctly, you can clear your browser cache and try aga…
For order-related requests, the applicable limits are 10 orders per second and 400 orders per minute; there are no separately documented per-hour request limits. Using multiple API keys does not bypass or multiply the account-level order-placement l…
@DM2290, The api_key in the login URL must correspond to the same Kite Connect app whose credentials are being used by the algo. If the API key in the URL differs from the one configured in the algo, the resulting authentication/session can belong t…
At present, the last price for mutual funds may be subject to a slight delay. However, we are working on improvements to ensure that the latest available data is reflected in upcoming updates.
This is currently a lower-priority item on our roadmap,…
To generate the access token, you need to copy the request token from the redirect URL and use it to generate the session. Please note that the access token is valid for one day, and you can use it for all API requests throughout that day. A request…
Based on the logs shared, it appears that more than 10 order requests were being submitted within a one-second interval, resulting in the rate-limit rejection. Please ensure that your implementation strictly adheres to the prescribed 10 orders-per-s…
Currently, GTT Market order with market_protection is not supported in the C# SDK. However, you can use the raw HTTP API to place GTT orders with the market_protection parameter.
We have checked and verified this at our end. There are no issues in generating the request token and access token for the newly created app.
Please follow the login flow as outlined in the Kite Connect API documentation. For further guidance, you …
The error message indicates that your access token might have expired. To resolve this, you need to fetch a new access token. Please note that the exchange mandates traders log in manually at least once a day, and we do not recommend automating the …
To access live market data, historical candle data, or the WebSocket API, you need to subscribe to the paid Kite Connect plan.
If you are using a Kite Connect Personal (free) app, please note that it does not provide access to market data, historic…
We have checked this and verified it at our end, and we didn't observe any issues with the WebSocket connection.
Please review the WebSocket example code and ensure you are using the correct instrument token from the instrument file to check for any…
Please ensure you are using the correct request token generated after the login/authentication flow and that it contains no trailing spaces or other unintended characters.
An Invalid checksum error generally indicates that the api_key, api_secret, …
As per the new algo framework effective from April 1, 2026, a static IP dedicated to the API key will only be required for order placement, modification, and cancellation endpoints.
You can raise a support ticket and share the complete details to i…
Kite Connect is an execution platform and does not provide APIs for indicators. Zerodha only provides raw data, so you will need to calculate indicators at your end. If you are using Python, you can utilize libraries such as `talib` or `pandas_talib…
The Kite Connect APIs are designed for tech-savvy traders. For step-by-step instructions and developer resources, refer to our comprehensive API documentation available at Kite Connect docs. You can explore our QuantInsti course on Algorithmic tradi…
@punitkandoi
1. Corporate action adjustments are completed as part of the beginning-of-day process on the ex-date, before the market opens.
2. Corporate actions are generally updated before market opening on the ex-date. Demergers are an exception …
We couldn't identify any abnormalities on our end. If you encounter this issue again or notice any similar behaviour in the future, please let us know along with the relevant details.
We have checked this and there is no issue at our end. This might be an issue with the firewall or a network-related issue and you may need to check the AWS server.
A 403 generally means the session expired or permission was not granted for initiating the WebSocket connection. Make sure you have created a Kite Connect app on the Developer Console and not a Kite personal app. To verify this, please check the typ…
The error: The user is not enabled for the app, usually indicates that the Zerodha account you're using to login is not mapped to the Kite Connect app. Please ensure you're logging in with the same Zerodha Client ID that is linked to your app in the…
If you encounter the message "Access to https://kite.trade has been blocked" while creating an app, please try creating the app without uploading the app icon initially.
Once the app has been created successfully, you can edit the app and upload th…
To access live market data, historical candle data, or the WebSocket API, you need to subscribe to the paid Kite Connect plan.
If you are using a Kite Connect Personal (free) app, please note that it does not provide access to market data, historic…
Kite Connect also supports Coin Mutual Fund APIs, but they do not support buying or selling mutual funds, unlike with equities. You can use them to fetch your mutual fund holdings, SIPs, instrument details, and mutual fund orders. The Orders API ret…
Currently, Kite Publisher does not support placing GTT (Good Till Triggered) or OCO (One Cancels Other) orders.
Kite Publisher does not support creating GTT/OCO orders, either as part of the basket payload or as a separate Publisher flow. GTT funct…
Kite Connect does not provide any dedicated API for basket order placement. However, you can create a basket at your end where all 3 legs can be sent in a single transaction.
@kakasubh If registration is NOT required: is the tag field on place_order optional/self-assigned for someone in my situation, or must it carry a specific identifier?
If your order placement rate is below 10 orders per second (OPS), exchange algo re…
Hi @chirag234
1. How far back is 15-minute historical candle data available for equity stocks? For example, can I retrieve 15-minute OHLC data from 2015 to the present for stocks where data is available?
Intraday (minute) candle data is available f…
@gowthamkaup, we haven't seen any trades for USDINR26724FUT (instrument token: 265731) for a long time, as it is an illiquid contract. Since there were no trades, the historical data API returns an empty candles array for this instrument.
To access live market data, historical candle data, or the WebSocket API, you need to subscribe to the paid Kite Connect plan.
If you are using a Kite Connect Personal (free) app, please note that it does not provide access to market data, historic…
Kite Connect provides live market data only for instruments that are available on the supported exchanges and included in the latest instrument dump. Please ensure that you're using the latest instrument dump and the correct trading symbol or instru…
With Kite Connect subscription, the historical data access is enabled by default; it covers all supported segments, including NSE, NFO, BSE, CDS, MCX, BFO, and INDICES.
You can access intraday historical data for active options contracts. However, …
Please confirm which Static IP should i take for my home Airtel WIFI connection IP V4 or IPV6 as there is no clarity while searching on google.
You can acquire a static IP from an ISP (internet service provider), a cloud provider (such as AWS or GCP…
Hi @stockants, we haven't seen any trades for SENSEX2681371100CE for a long time, as it is an illiquid contract. Since there were no trades, the historical data API returns an empty candles array for this instrument. You can also verify on the excha…
Hi @punitkandoi, the historical data for MBAPL is already updated to reflect the corporate action adjustments. Could you please retry fetching the historical data using the Historical Data endpoint API and let us know if you continue to observe any …
The https://api.kite.trade/margins/futures endpoint is a legacy endpoint and is no longer maintained. We recommend using the endpoints documented in the Margin Calculation API documentation for fetching the latest margin requirements.
We do adjust historical data for corporate actions to improve analysis. Historical data is adjusted for corporate actions, including bonuses, splits, rights issues, spin-offs, and extraordinary dividends(i.e more than 2%) to ensure consistency in pr…
Currently, GTT order is supported for Market order with market_protection parameter and Limit order only. You can use the limit order as an SL with a trigger price and a price. Trailing SL will be added via API in future updates. For more details, p…
You can access intraday historical data for active futures contracts using the Historical Data API. For expired futures contracts, only day-level historical data can be retrieved using the continuous feature. Please refer to the historical data API …
Navigate to the app details screen and verify that you have entered the correct client ID. Ensure there are no spaces at the beginning or end of the client ID. The Kite Connect APIs must be used with the same client ID that was used to create the ap…
IP whitelisting must be configured in your Kite Connect developer console under the Profile section. This setting is applied at the account level and not at the individual app level. Kindly ensure that a public static IP address is added, as private…
We request you to verify this at your end and let us know if the issue persists. If it does, please share the relevant details so we can investigate further.
@Vickyv1980 You are required to register at least one static IP address as your primary connection. You may also register a secondary static IP address as a backup; however, this is optional.
You can update a maximum of two IPs only(One as Primary …
@Brijwanth Sharing a static IP is permitted between family members (spouse, dependent children, and dependent parents) as per regulations. If you and your mother wish to share the same static IP for your separate algo setups, you can create an addit…
Yes, the GTT order with the Trailing Stop-Loss feature is currently available only on the Kite Web platform and the same will be added via API in future updates.
No, the WebSocket Quote mode does not include exchange timestamp details. It provides fields such as OHLC, Last Traded Price (LTP), Last Traded Quantity (LTQ), Volume, and Market Depth. If you require last_trade_time and exchange_timestamp, you must…
To access live market or historical candle data, you need to subscribe to the paid version of Kite Connect. It seems that you are using the Kite Connect personal (free version) app, which does not provide access to market data, historical data, or t…
We may support Trailing GTT orders in future updates; however, there is currently no estimated timeline (ETA) for this feature. You may refer to this support article for more details.
If you encounter the message "Access to https://kite.trade has been blocked" while creating an app, please try creating the app without uploading the app icon initially.
Once the app has been created successfully, you can edit the app and upload th…
You can update the static IP address from the Profile section of the Developer Console. Please note that only one static IP change is allowed per calendar week. Once updated, the new static IP takes effect immediately, including during market hours.
We may support Trailing GTT orders in future updates; however, there is currently no estimated timeline (ETA) for this feature. You may refer to this support article for more details.
We may support Trailing GTT orders in the future updates; however, there is currently no estimated timeline (ETA) for this feature. You may refer to this support article for more details.
The Kite Connect APIs do not currently support retrieving factsheet data. However, they do provide access to mutual fund holdings, orderbook, SIPs, instruments, and other related endpoints.For more details, you can refer to the Mutual Fund API docu…
Kite Publisher is primarily intended for order placement and does not support Postbacks/WebHooks for order status updates.
If your application requires reliable tracking of the complete order lifecycle (such as OPEN, COMPLETE, REJECTED, CANCELLED, …
The "Insufficient permission" error occurs when using a Personal (free) Kite Connect app, which does not provide access to live market or historical data. Please ensure you are using the API key and access token of a paid Kite Connect app (₹500/mont…
Yes, you can automate using the Kite Connect API. Please note that Kite Connect is primarily an execution platform, and we’re unable to provide general coding assistance.
We have checked and verified this at our end and did not observe any discrepancy in the day's change value.
Kindly share screenshots of the bond holding details from both the Kite Holdings page and the API response, along with the corresponding tim…
Expired option contracts and their corresponding instrument tokens are typically flushed on the next morning at approximately 7:00 AM. If you need the historical data for an option contract, we recommend downloading it before this time, as the instr…
We use the same tick data source to generate the OHLCV candles displayed on Kite charts. Therefore, unless ticks are being missed due to application-side issues—such as blocking the ticker callback, performing heavy computations on the main thread, …
NSE displays Open Interest (OI) in lots, whereas Kite provides OI in total quantity (number of underlying units). To compare the values, multiply the OI shown on the NSE option chain by the contract lot size(65); the resulting figure should match th…
To access live market or historical candle data, you need to subscribe to the paid version of Kite Connect. Currently, it seems you have created an app using the Kite Connect free version ('Personal'). Please ensure you are using the API key and acc…
The instrument dump is working as expected. For monthly NIFTY expiry contracts, the tradingsymbol follows the format NIFTY26JUN23800CE, where the month name is encoded rather than the exact expiry date. Please use the expiry field (2026-06-30) from …