<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Qlik's WebSocket request error in Integration, Extension &amp; APIs</title>
    <link>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2544876#M22794</link>
    <description>&lt;P&gt;&lt;SPAN&gt;Hello, thank you for your reply. I looked at this article, and it says that the response headers need to be configured in the QMC virtual proxy. After configuring the response headers, how should my request parameters change? Do I need to append them when sending the request, or remove the ticket parameter? Could you take let testSocket = new WebSocket('wss://192.168.111.63/bi/?qlikTicket=a52e013e-1cb9-425a-b7b3-ab0c0031f5db'); as an example and give me a request address that I can access? Thank you, looking forward to your next reply.&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Mon, 16 Mar 2026 10:03:07 GMT</pubDate>
    <dc:creator>liuzhiwei</dc:creator>
    <dc:date>2026-03-16T10:03:07Z</dc:date>
    <item>
      <title>Qlik's WebSocket request error</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2544865#M22791</link>
      <description>&lt;P&gt;Like before, if I wanted to establish a Qlik engine API connection, I could directly use const ws = new WebSocket("ws://192.168.111.63:8080/bi/app/?qlikTicket=3cc9ca3b-d36c-4ee6-ab3a-f225615ec5c6"), where the value after qlikTicket is the browser's cookie value. But now, if I write it this way, it throws the following error: failed: Error during WebSocket handshake: Unexpected response code: 403. I want to know the reason and the solution, thank you!&lt;/P&gt;</description>
      <pubDate>Mon, 16 Mar 2026 08:30:52 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2544865#M22791</guid>
      <dc:creator>liuzhiwei</dc:creator>
      <dc:date>2026-03-16T08:30:52Z</dc:date>
    </item>
    <item>
      <title>Re: Qlik's WebSocket request error</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2544875#M22793</link>
      <description>&lt;P&gt;I don't know what versions you have moved between, but maybe you are missing the csrf-token that is now needed for websockets? &lt;A href="https://community.qlik.com/t5/Official-Support-Articles/Qlik-Sense-Enterprise-on-Windows-Extended-WebSocket-CSRF/ta-p/2509211" target="_blank"&gt;https://community.qlik.com/t5/Official-Support-Articles/Qlik-Sense-Enterprise-on-Windows-Extended-WebSocket-CSRF/ta-p/2509211&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Mar 2026 09:49:00 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2544875#M22793</guid>
      <dc:creator>Øystein_Kolsrud</dc:creator>
      <dc:date>2026-03-16T09:49:00Z</dc:date>
    </item>
    <item>
      <title>Re: Qlik's WebSocket request error</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2544876#M22794</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hello, thank you for your reply. I looked at this article, and it says that the response headers need to be configured in the QMC virtual proxy. After configuring the response headers, how should my request parameters change? Do I need to append them when sending the request, or remove the ticket parameter? Could you take let testSocket = new WebSocket('wss://192.168.111.63/bi/?qlikTicket=a52e013e-1cb9-425a-b7b3-ab0c0031f5db'); as an example and give me a request address that I can access? Thank you, looking forward to your next reply.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Mar 2026 10:03:07 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2544876#M22794</guid>
      <dc:creator>liuzhiwei</dc:creator>
      <dc:date>2026-03-16T10:03:07Z</dc:date>
    </item>
    <item>
      <title>Re: Qlik's WebSocket request error</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2544956#M22795</link>
      <description>&lt;P&gt;Well, I think the information you need is in that page, but maybe it could be made more clear. Have a look at the "Workflow" section! There's a picture there that illustrates the flow.&lt;/P&gt;
&lt;P&gt;The basic idea is that you need to request a csrf token from the Proxy service and use that when setting up the websocket. A similar flow also exists in the cloud solution.&lt;/P&gt;
&lt;P&gt;So the flow is a two step process:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;Call the REST endpoint qps/csrftoken:&lt;BR /&gt;GET &lt;A href="https://&amp;lt;url&amp;gt;/qps/csrftoken" target="_blank"&gt;https://&amp;lt;url&amp;gt;/qps/csrftoken&lt;/A&gt;&lt;/LI&gt;
&lt;LI&gt;Add the returned token as an argument to your websocket connection:&lt;BR /&gt;Websocket request: wss://&amp;lt;url&amp;gt;/app?qlik-csrf-token=&amp;lt;token&amp;gt;&lt;/LI&gt;
&lt;/OL&gt;
&lt;P&gt;Reference documentation for the csrftoken endpoint can be found here:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://help.qlik.com/en-US/sense-developer/November2025/apis/ProxyAPI/OpenAPI_Personal.generated.html?page=7" target="_blank"&gt;https://help.qlik.com/en-US/sense-developer/November2025/apis/ProxyAPI/OpenAPI_Personal.generated.html?page=7&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 17 Mar 2026 11:13:54 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2544956#M22795</guid>
      <dc:creator>Øystein_Kolsrud</dc:creator>
      <dc:date>2026-03-17T11:13:54Z</dc:date>
    </item>
    <item>
      <title>Re: Qlik's WebSocket request error</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2545019#M22798</link>
      <description>&lt;P&gt;&lt;SPAN&gt;You can still call it using the method I used before, you just need to configure the new parameters in the server request response header, I found this after a long trial.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 18 Mar 2026 02:30:41 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Qlik-s-WebSocket-request-error/m-p/2545019#M22798</guid>
      <dc:creator>liuzhiwei</dc:creator>
      <dc:date>2026-03-18T02:30:41Z</dc:date>
    </item>
  </channel>
</rss>

