Closing Auction Session (CAS) — API Changes You Need to Know

Nivas
Nivas edited August 3 in General
Starting August 3, 2026, the exchange is introducing the Closing Auction Session (CAS) for F&O-eligible equity shares.

While the general mechanics, trading rules, and stock eligibility are detailed in our Z-Connect Post, here's a quick summary of the API-level changes:
  1. Market Orders via API: Market orders, which currently aren't allowed via the API, will now be accepted only between 3:20 PM and 3:25 PM.
  2. Circuit Limits during CAS: The exchange refreshes price bands by 3:20 PM based on the reference price, and these updated circuit limits will be served via the /quote endpoint. During CAS, the price band is +/-3% of the reference price.
If you have technical questions related to CAS, feel free to post them in this thread.
  • KamalChhirang
    The exchange starts sharing the following information on a continuous basis: (a) indicative equilibrium price (b) total buy/sell quantities (c) imbalance quantities (d) indicative index value
    Will this information be available through the Quote API? If so, in what format will it be provided?

    Additionally, will this information continue to be shared between 3:25 PM and 3:30 PM, until the session closes at a randomly selected time?
  • Nivas
    Currently, the updated circuit limits will be served via the /quote endpoint, and other CAS-related fields will be added in the coming weeks.
  • zhkas
    Hi,
    I haven't fully understood the CAS stuff yet, so I might be mistaken. But won't this information be available on the WebSocket? Or do we need to fetch it periodically from the quote endpoint instead?
  • Nivas
    @zhkas, currently, it is available via the quote endpoint only.
  • KamalChhirang
    @Nivas
    other CAS-related fields will be added in the coming weeks.
    Could you please share as much detail as possible about the changes you're planning to implement in the coming weeks? This would help me prepare my strategy and code accordingly. It would be a big help, thank you.
  • Nivas
    Nivas edited August 4
    Could you please share as much detail as possible about the changes you're planning to implement in the coming weeks?
    This is currently in the testing phase. If we introduce any new fields that result in a breaking change, we will communicate the changes well in advance so that everyone has sufficient time to make the necessary updates.
  • KamalChhirang
    @Nivas
    I can see the following items in the quote. Could you please confirm whether these values are reliable (stable update), and If I can use this information in my code?

    'reference_limit_price': 1157.9,
    'indicative_close_price': 1172,
    'total_imbalance': 4294961084,
  • Nivas
    I can see the following items in the quote. Could you please confirm whether these values are reliable (stable update), and If I can use this information in my code?
    @KamalChhirang We are reviewing this internally and will provide an update as soon as possible.
  • Matti
    Matti edited August 5
    Hey @KamalChhirang you can reliably use reference_limit_price right now.
  • adi_mantra
    Hi @Nivas ,

    After the recent CAS rollout, has there been any change in how Previous Close is populated in the Kite Connect Quote/LTP APIs?

    We observed some unexpected differences in the opening market data and wanted to confirm whether the Previous Close value is immediately available and stable from market open, or if there are any known changes or delays after CAS.

    Thanks.
  • Nivas
    After the recent CAS rollout, has there been any change in how Previous Close is populated in the Kite Connect Quote/LTP APIs?
    @adi_mantra There shouldn't be any change in the close price field via the Quote/LTP API. If you encounter any issues, please let us know; we'll check at our end.

  • adi_mantra
    Hi @Nivas
    Thanks for the clarification.

    We observed an issue today around market open and wanted to check if it's related to Kite Connect or if it was just a temporary issue.

    We started our application before market open, but for the first few minutes after 09:15, the API repeatedly failed with:

    requests.exceptions.ReadTimeout:
    HTTPSConnectionPool(host='api.kite.trade', port=443):
    Read timed out. (read timeout=7)

    The timeout occurred while calling:

    kite.instruments("NSE")

    The request finally succeeded around 09:19 AM, after which our application continued normally.

    Was there any known issue, increased latency, or higher API load around market open today? Or was this likely an isolated timeout on our side?

    Thanks.
  • Nivas
    We're investigating and will update you shortly.
  • zhkas
    zhkas edited August 6
    As per your docs

    Order Entry Session I is opened. One can place both market and limit orders during this time. The exchange starts sharing the following information on a continuous basis:

    (a) indicative equilibrium price
    (b) total buy/sell quantities
    (c) imbalance quantities
    (d) indicative index value

    But any of four days, I am unable to find these values.
    Where can I see these values ?
  • deepak163299
    Why there is no Dedicated elements as like OHLC in zerodha app or api.
    These cas elements must be in the zerodha have during the cas session:
    - indicative equilibrium price
    - indicative volume quantities
    - imbalance quantities

    Due to these options are not available in the application or in the api, how the user will see that at which price he is buying or selling that is completely GAMBLING not TRADING, because the execution will happen at that price which is not visible to the trader. when we are using the zerodha platform we must have a dedicated options for indicative equilibrium price, indicative volume quantity and imbalance quantities as like open high low close upper circuit lower circuit these kinds of things are there, but the cas element is not there, which is already implemented on 3rd of August I think not late for implementing this

    I am begging deodhar team to please add dedicated iep indicated quantity as well as imbalance quantity section in the app as like ohlc
  • deepak163299
    @Nivas please reply for that
  • Nivas
    @zhkas @deepak163299 > Currently, you can use the following fields from the Quote API during the CAS session:
    • `total_imbalance` – Indicates the total order imbalance.
    • `volume` – Represents the indicative traded volume during CAS.
    • `buy_quantity` and `sell_quantity` – Represent the total buy and sell order quantities, respectively.
    Support for the Indicative Equilibrium Price/Indicative index value will be made available shortly.
  • Nivas
    @adi_mantra 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.
  • KamalChhirang
    @Nivas

    Could you confirm that the behaviour of the volume field has been changed during CAS? If so, this seems like a poor design decision.

    Previously, volume always represented the cumulative volume for the full trading day. Now, from 15:20 until the CAS closes at 15:30, it instead reflects the indicative traded volume of the auction session. This means the day's total volume is effectively lost during that window, users now have to either cache it before 15:20 or fetch it separately from the historical data API.

    A far better approach would be to introduce a dedicated field for this, e.g. indicative_volume, and leave the behaviour of the existing volume field untouched.

    Also, as far as I can tell, this change was never announced anywhere. It broke my code without warning, and I only discovered it now, four trading sessions after the rollout.
  • zhkas
    Please update doc at
    kite.trade docs connect v3 market-quotes

    it is much helpful to read that
  • Nivas
    @KamalChhirang, we're getting this checked and will share an update shortly.

    @zhkas, yes, it will be incorporated.
  • Matti
    Could you confirm that the behaviour of the volume field has been changed during CAS? If so, this seems like a poor design decision.
    Hey Kamal. We're working on chaning this to add a separate indicative volume field to the stream. The change in the value was made by the exchange where they send the regular volume for the day and the indicative volume for the CAS section in the same field.
  • zhkas
    What does indicative_close_price indicates ?
    Why does it keep changing even after 153000?
    What does it mean before 151500 ?
    What the numerical value here 5314.58 denotes ?

    quote response:
    "indicative_close_price": 5314.58
    {
    "status": "success",
    "data": {
    "BSE:SENSEX": {
    "instrument_token": 265,
    "tradingsymbol": "SENSEX",
    "timestamp": "2026-08-07 15:33:59",
    "last_price": 78499.17,
    "net_change": -455.59,
    "indicative_close_price": 5314.58,
    "ohlc": {
    "open": 78516.08,
    "high": 78757.4,
    "low": 78377.07,
    "close": 78954.76
    }
    },
    "NSE:NIFTY 50": {
    "instrument_token": 256265,
    "tradingsymbol": "NIFTY 50",
    "timestamp": "2026-08-07 15:33:59",
    "last_price": 24570.65,
    "net_change": -65.35,
    "indicative_close_price": 5014.73,
    "ohlc": {
    "open": 24538.9,
    "high": 24630.4,
    "low": 24522.75,
    "close": 24636
    }
    }
    }
    }
  • Nivas
    @zhkas, The indicative_close_price field is intended to provide the Indicative Equilibrium Price (IEP) during the CAS session. However, this functionality is still being rolled out and is not fully available yet.

    Until the rollout is complete, we recommend ignoring this field, as its value may not be consistent. We'll notify users here once the field is fully supported.
  • alphamurho
    Why is it so difficult to roll this out? The field is cleanly available in broadcast streams and should be a one line change to send from 1520. This is pretty important for even charting tools to display otherwise retail is gambling.. needs to be prioritised heavily
Sign In or Register to comment.