We are currently evaluating the feasibility of providing historical data for expired options contracts through the API. At this time, we do not have a confirmed timeline or ETA to share. We will communicate further details once there is an update.
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…
1. Does timestamp `15:10:00+05:30` for a `5minute` historical candle denote exactly the half-open interval `[15:10:00,15:15:00)`? Is that timestamp the start of the event interval for cash equities and indices?The timestamp returned by the Historica…
The static IP from which your API request originates must exactly match the whitelisted IP in the developer console. Please verify the updated IP in the IP whitelisting section of the developer console.
Note: Please avoid sharing API_Key and client…
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 (more than 2%), to ensure consistency in pric…
ChatGPT MCP (Codex) is currently not supported with Kite MCP.
You may refer to this article for information on integrating Kite MCP with other supported AI assistants.
If you are trying to create an app and upload an app icon during the initial setup, we recommend creating the app first without an icon and adding the icon after the app has been successfully created. Please ensure that the app icon is in PNG format…
The Invalid api_key error occurs when the API key being used does not match the API key of the active app on your developer account. Please double-check that you are entering the correct API key exactly as it appears, without any extra spaces.
As per the new algo regulations, a static IP is required for order placement only. The WebSocket market data streaming and other endpoints, like order book and positions can still be accessed from any IP address.
Please verify that you are using a Kite Connect (paid) app's API_Key. Please generate a fresh access_token for the same API_Key and check. You may refer to a similar discussion here.
Please review the WebSocket example code and ensure you are using…
@UU2119 We have verified that there is currently no issue with fetching historical data through the Kite Connect API from our end. Please ensure that you are using the correct API key and a valid access token associated with your Kite Connect app.
Non-alphanumeric characters are currently accepted in the tag parameter. tag has a maximum length of 20 characters. If tag exceeds 20 characters, the order is rejected with the corresponding validation error; it is not truncated.
Market orders will…
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 an…
Please verify that you are using a Kite Connect (paid) app's API_Key. Please generate a fresh access_token for the same API_Key and check. You may refer to the similar discussion here.
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…
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.