<?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 Uploading app trough REST API via Python script in Integration, Extension &amp; APIs</title>
    <link>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2456219#M20663</link>
    <description>&lt;P&gt;Hello guys,&lt;/P&gt;
&lt;P&gt;I am trying to upload a Qlik Sense app into the QMC with a python script using the REST API.&lt;/P&gt;
&lt;P&gt;&lt;A href="https://help.qlik.com/en-US/sense-developer/May2024/Subsystems/RepositoryServiceAPI/Content/Sense_RepositoryServiceAPI/RepositoryServiceAPI-App-Upload-App.htm" target="_blank" rel="noopener"&gt;https://help.qlik.com/en-US/sense-developer/May2024/Subsystems/RepositoryServiceAPI/Content/Sense_RepositoryServiceAPI/RepositoryServiceAPI-App-Upload-App.htm&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am using the following script:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;import&lt;/SPAN&gt;&lt;SPAN&gt; requests&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV&gt;&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;requests.packages.urllib3.disable_warnings()&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;xrf = &lt;/SPAN&gt;&lt;SPAN&gt;'1234567890123456'&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;#Set up necessary headers comma separated&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;headers = {&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'X-Qlik-Xrfkey'&lt;/SPAN&gt;&lt;SPAN&gt;: xrf,&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'X-Qlik-User'&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;'UserDirectory=INTERNAL;UserId=sa_repository'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'Content-Type'&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;'application/vnd.qlik.sense.app'&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;#Set the endpoint URL&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;url = &lt;/SPAN&gt;&lt;SPAN&gt;'&lt;A href="https://servername:4242/qrs/app/upload?name=ImportREST&amp;amp;Xrfkey=" target="_blank" rel="noopener"&gt;https://servername:4242/qrs/app/upload?name=ImportREST&amp;amp;Xrfkey=&lt;/A&gt;{}'&lt;/SPAN&gt;&lt;SPAN&gt;.format(xrf)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;#Set up the certificate path&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;cert = (&lt;/SPAN&gt;&lt;SPAN&gt;'C:/LocalUserData/Certificates/Sense TEST/client.pem'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'C:/LocalUserData/Certificates/Sense TEST/client_key.pem'&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;# Open file&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;with&lt;/SPAN&gt;&lt;SPAN&gt; open(&lt;/SPAN&gt;&lt;SPAN&gt;"C:/Users/&amp;lt;user_id&amp;gt;/Downloads/ImportREST.qvf"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;"rb"&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;as&lt;/SPAN&gt;&lt;SPAN&gt; f:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; files = {&lt;/SPAN&gt;&lt;SPAN&gt;'file'&lt;/SPAN&gt;&lt;SPAN&gt;: f.read()}&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;# Send the POST request&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;try&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; response = requests.request(&lt;/SPAN&gt;&lt;SPAN&gt;"POST"&lt;/SPAN&gt;&lt;SPAN&gt;, url, headers=headers, files=files, verify=&lt;/SPAN&gt;&lt;SPAN&gt;False&lt;/SPAN&gt;&lt;SPAN&gt;, cert=cert)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; response.raise_for_status() &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;# Raise an error for bad responses&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; print(&lt;/SPAN&gt;&lt;SPAN&gt;'Upload successful! &amp;nbsp;Server responded with:'&lt;/SPAN&gt;&lt;SPAN&gt;, response.text)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;except&lt;/SPAN&gt;&lt;SPAN&gt; requests.exceptions.RequestException &lt;/SPAN&gt;&lt;SPAN&gt;as&lt;/SPAN&gt;&lt;SPAN&gt; err:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; print(&lt;/SPAN&gt;&lt;SPAN&gt;'Upload failed:'&lt;/SPAN&gt;&lt;SPAN&gt;, err)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;After executing the script I am getting the error "500 Server Error: Internal Server Error for url: &lt;A href="https://servername:4242/qrs/app/upload?name=ImportREST&amp;amp;Xrfkey=1234567890123456&amp;quot;" target="_blank" rel="noopener"&gt;https://servername:4242/qrs/app/upload?name=ImportREST&amp;amp;Xrfkey=1234567890123456"&lt;/A&gt;.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;I tried to upload the same app with Postman and it worked perfectly. These are my settings in Postman.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vasilev_0-1716566038633.png" style="width: 400px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/166831i653719AA03F044FE/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vasilev_0-1716566038633.png" alt="vasilev_0-1716566038633.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vasilev_1-1716566065689.png" style="width: 400px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/166832i2355A120A727031C/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vasilev_1-1716566065689.png" alt="vasilev_1-1716566065689.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vasilev_2-1716566087535.png" style="width: 400px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/166833i82F07ACC942C6B10/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vasilev_2-1716566087535.png" alt="vasilev_2-1716566087535.png" /&gt;&lt;/span&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am struggling all the day with this issue I have no idea what I am doing wrong in Python. Has anybody an idea what could be the problem with the script?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR,&lt;/P&gt;
&lt;P&gt;Rumen&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;</description>
    <pubDate>Fri, 24 May 2024 16:28:28 GMT</pubDate>
    <dc:creator>vasilev</dc:creator>
    <dc:date>2024-05-24T16:28:28Z</dc:date>
    <item>
      <title>Uploading app trough REST API via Python script</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2456219#M20663</link>
      <description>&lt;P&gt;Hello guys,&lt;/P&gt;
&lt;P&gt;I am trying to upload a Qlik Sense app into the QMC with a python script using the REST API.&lt;/P&gt;
&lt;P&gt;&lt;A href="https://help.qlik.com/en-US/sense-developer/May2024/Subsystems/RepositoryServiceAPI/Content/Sense_RepositoryServiceAPI/RepositoryServiceAPI-App-Upload-App.htm" target="_blank" rel="noopener"&gt;https://help.qlik.com/en-US/sense-developer/May2024/Subsystems/RepositoryServiceAPI/Content/Sense_RepositoryServiceAPI/RepositoryServiceAPI-App-Upload-App.htm&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am using the following script:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;import&lt;/SPAN&gt;&lt;SPAN&gt; requests&lt;/SPAN&gt;&lt;/P&gt;
&lt;DIV&gt;&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;requests.packages.urllib3.disable_warnings()&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;xrf = &lt;/SPAN&gt;&lt;SPAN&gt;'1234567890123456'&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;#Set up necessary headers comma separated&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;headers = {&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'X-Qlik-Xrfkey'&lt;/SPAN&gt;&lt;SPAN&gt;: xrf,&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'X-Qlik-User'&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;'UserDirectory=INTERNAL;UserId=sa_repository'&lt;/SPAN&gt;&lt;SPAN&gt;,&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &lt;/SPAN&gt;&lt;SPAN&gt;'Content-Type'&lt;/SPAN&gt;&lt;SPAN&gt;: &lt;/SPAN&gt;&lt;SPAN&gt;'application/vnd.qlik.sense.app'&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;#Set the endpoint URL&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;url = &lt;/SPAN&gt;&lt;SPAN&gt;'&lt;A href="https://servername:4242/qrs/app/upload?name=ImportREST&amp;amp;Xrfkey=" target="_blank" rel="noopener"&gt;https://servername:4242/qrs/app/upload?name=ImportREST&amp;amp;Xrfkey=&lt;/A&gt;{}'&lt;/SPAN&gt;&lt;SPAN&gt;.format(xrf)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;#Set up the certificate path&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;cert = (&lt;/SPAN&gt;&lt;SPAN&gt;'C:/LocalUserData/Certificates/Sense TEST/client.pem'&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;'C:/LocalUserData/Certificates/Sense TEST/client_key.pem'&lt;/SPAN&gt;&lt;SPAN&gt;)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;# Open file&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;with&lt;/SPAN&gt;&lt;SPAN&gt; open(&lt;/SPAN&gt;&lt;SPAN&gt;"C:/Users/&amp;lt;user_id&amp;gt;/Downloads/ImportREST.qvf"&lt;/SPAN&gt;&lt;SPAN&gt;, &lt;/SPAN&gt;&lt;SPAN&gt;"rb"&lt;/SPAN&gt;&lt;SPAN&gt;) &lt;/SPAN&gt;&lt;SPAN&gt;as&lt;/SPAN&gt;&lt;SPAN&gt; f:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; files = {&lt;/SPAN&gt;&lt;SPAN&gt;'file'&lt;/SPAN&gt;&lt;SPAN&gt;: f.read()}&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;BR /&gt;
&lt;DIV&gt;&lt;SPAN&gt;# Send the POST request&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;try&lt;/SPAN&gt;&lt;SPAN&gt;:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; response = requests.request(&lt;/SPAN&gt;&lt;SPAN&gt;"POST"&lt;/SPAN&gt;&lt;SPAN&gt;, url, headers=headers, files=files, verify=&lt;/SPAN&gt;&lt;SPAN&gt;False&lt;/SPAN&gt;&lt;SPAN&gt;, cert=cert)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; response.raise_for_status() &amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;# Raise an error for bad responses&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; print(&lt;/SPAN&gt;&lt;SPAN&gt;'Upload successful! &amp;nbsp;Server responded with:'&lt;/SPAN&gt;&lt;SPAN&gt;, response.text)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;except&lt;/SPAN&gt;&lt;SPAN&gt; requests.exceptions.RequestException &lt;/SPAN&gt;&lt;SPAN&gt;as&lt;/SPAN&gt;&lt;SPAN&gt; err:&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; print(&lt;/SPAN&gt;&lt;SPAN&gt;'Upload failed:'&lt;/SPAN&gt;&lt;SPAN&gt;, err)&lt;/SPAN&gt;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;After executing the script I am getting the error "500 Server Error: Internal Server Error for url: &lt;A href="https://servername:4242/qrs/app/upload?name=ImportREST&amp;amp;Xrfkey=1234567890123456&amp;quot;" target="_blank" rel="noopener"&gt;https://servername:4242/qrs/app/upload?name=ImportREST&amp;amp;Xrfkey=1234567890123456"&lt;/A&gt;.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;I tried to upload the same app with Postman and it worked perfectly. These are my settings in Postman.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vasilev_0-1716566038633.png" style="width: 400px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/166831i653719AA03F044FE/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vasilev_0-1716566038633.png" alt="vasilev_0-1716566038633.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vasilev_1-1716566065689.png" style="width: 400px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/166832i2355A120A727031C/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vasilev_1-1716566065689.png" alt="vasilev_1-1716566065689.png" /&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="vasilev_2-1716566087535.png" style="width: 400px;"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/166833i82F07ACC942C6B10/image-size/medium?v=v2&amp;amp;px=400" role="button" title="vasilev_2-1716566087535.png" alt="vasilev_2-1716566087535.png" /&gt;&lt;/span&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I am struggling all the day with this issue I have no idea what I am doing wrong in Python. Has anybody an idea what could be the problem with the script?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;BR,&lt;/P&gt;
&lt;P&gt;Rumen&lt;/P&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;</description>
      <pubDate>Fri, 24 May 2024 16:28:28 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2456219#M20663</guid>
      <dc:creator>vasilev</dc:creator>
      <dc:date>2024-05-24T16:28:28Z</dc:date>
    </item>
    <item>
      <title>Re: Uploading app trough REST API via Python script</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2456428#M20666</link>
      <description>&lt;P&gt;&lt;A href="https://github.com/clintcarr/qrspy/blob/d6950b4d746cbe99b88edbd830bfb9e923544f2d/qrspy.py#L794" target="_blank"&gt;https://github.com/clintcarr/qrspy/blob/d6950b4d746cbe99b88edbd830bfb9e923544f2d/qrspy.py#L794&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;def import_app(self, name, filename):&lt;BR /&gt;"""&lt;BR /&gt;Imports an application&lt;BR /&gt;:param name: Name of application to import&lt;BR /&gt;:param filename: Path and file of qvf&lt;BR /&gt;:returns: HTTP Status Code&lt;BR /&gt;"""&lt;BR /&gt;path = 'qrs/app/upload?name={0}'.format(name)&lt;BR /&gt;headers["Content-Type"] = "application/vnd.qlik.sense.app"&lt;BR /&gt;headers["Connection"] = "Keep-Alive"&lt;BR /&gt;with open(filename, 'rb') as app:&lt;BR /&gt;return self.post(path, app)&lt;/P&gt;</description>
      <pubDate>Mon, 27 May 2024 05:26:51 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2456428#M20666</guid>
      <dc:creator>Marc</dc:creator>
      <dc:date>2024-05-27T05:26:51Z</dc:date>
    </item>
    <item>
      <title>Re: Uploading app trough REST API via Python script</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2456651#M20673</link>
      <description>&lt;P&gt;It works fine! Thank you&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/29458"&gt;@Marc&lt;/a&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 27 May 2024 15:29:50 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2456651#M20673</guid>
      <dc:creator>vasilev</dc:creator>
      <dc:date>2024-05-27T15:29:50Z</dc:date>
    </item>
    <item>
      <title>Re: Uploading app trough REST API via Python script</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2512011#M21976</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/14950"&gt;@vasilev&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;what exactly you made changes in your code to get this worked as per Marc reply.&amp;nbsp;&lt;/P&gt;&lt;P&gt;could you please share the code which is working for you using python.&lt;/P&gt;&lt;P&gt;Thanks in advance&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;BR,&lt;/P&gt;&lt;P&gt;Naresh&lt;/P&gt;</description>
      <pubDate>Fri, 28 Mar 2025 13:32:33 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2512011#M21976</guid>
      <dc:creator>Nareshgp</dc:creator>
      <dc:date>2025-03-28T13:32:33Z</dc:date>
    </item>
    <item>
      <title>Re: Uploading app trough REST API via Python script</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2513287#M22025</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/29458"&gt;@Marc&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;I am struggling to incorporate the above code with python to upload the Qlik Sense application.&amp;nbsp;&lt;/P&gt;&lt;P&gt;could you please help me with working code for this.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Mon, 07 Apr 2025 07:01:12 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2513287#M22025</guid>
      <dc:creator>Nareshgp</dc:creator>
      <dc:date>2025-04-07T07:01:12Z</dc:date>
    </item>
    <item>
      <title>Re: Uploading app trough REST API via Python script</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2514337#M22066</link>
      <description>&lt;P&gt;if you check the link in my original post,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;you will see that the ReadMe has instructions on how to connect to your Qlik Sense Server&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://github.com/clintcarr/qrspy/tree/d6950b4d746cbe99b88edbd830bfb9e923544f2d?tab=readme-ov-file#instantiate-the-connectqlik-class" target="_self"&gt;Instantiate-the-connectqlik-class&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Once you have the QRS class you can then use it to Import the apps with the import_app method, (just adapt the for loop for a single qvf rather than for each app in the dir)&lt;/P&gt;
&lt;P&gt;&lt;A href="https://github.com/clintcarr/qrspy/tree/d6950b4d746cbe99b88edbd830bfb9e923544f2d?tab=readme-ov-file#import-the-apps-in-a-folder-into-a-server" target="_self"&gt;Import-the-apps-in-a-folder-into-a-server&lt;/A&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 15 Apr 2025 00:50:29 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Uploading-app-trough-REST-API-via-Python-script/m-p/2514337#M22066</guid>
      <dc:creator>Marc</dc:creator>
      <dc:date>2025-04-15T00:50:29Z</dc:date>
    </item>
  </channel>
</rss>

