KiteTicker WebSocket 403 Forbidden — official example also fails

RoshanT
I'm getting a persistent 403 Forbidden error when connecting via KiteTicker, using Zerodha's own minimal example code with no modifications:

ERROR:kiteconnect.ticker:Connection error: 1006 - connection was closed uncleanly (WebSocket connection upgrade failed (403 - Forbidden))

Details:

App name: ORB_Algo, type: Connect, subscription status: Active, expiry 23 August 2026
kite.instruments() and other REST calls work fine with the same api_key and access_token in the same script run
Access token is freshly generated today via the standard login flow, confirmed valid (same-day date)
Tested with Zerodha's own bare-minimum example script — same error
Tested from two different networks (home broadband and office) — identical error on both
pip show kiteconnect version: 5.2.1

Since REST works but WebSocket specifically fails with 403 regardless of network, this looks like an account-side configuration issue on your end rather than something in my code. Could you please check my app's WebSocket/streaming permissions?
  • salim_chisty
    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, historical data, or the WebSocket API. This limitation is likely the reason you are encountering the HTTP 403 (Insufficient permission for that call) error.

    To verify this, please check the type of your app in the Developer Console and ensure that you are using the correct api_key associated with your paid Kite Connect application.
Sign In or Register to comment.