<?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: Forbidden app for the current user - Qlik Sense Mashup in Integration, Extension &amp; APIs</title>
    <link>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461732#M9430</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No, I'm sorry there isn't. The onError method should catch this though. There is also the undocumented waitForOpen promise (I think it's at app.model.waitForOpen), that probably would work (I haven't tested).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You don't need to open a separate web socket to get the app list. You can use app.global. But catching open errors would mean less overhead, since getting the app list might be slow, if you have many apps and access rules that don't evaluate super quickly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Erik Wetterberg&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 10 Jan 2018 12:30:46 GMT</pubDate>
    <dc:creator>ErikWetterberg</dc:creator>
    <dc:date>2018-01-10T12:30:46Z</dc:date>
    <item>
      <title>Forbidden app for the current user - Qlik Sense Mashup</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461729#M9427</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a multiple QVF mashup and one of then is not available for the user. I want to show a friendly message, according to the app that is forbidden.&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;I could not find anything that solves my problem yet.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there a way to know if an app is forbidden or not for a user, inside a mashup?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 09 Jan 2018 22:11:43 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461729#M9427</guid>
      <dc:creator>thpessato</dc:creator>
      <dc:date>2018-01-09T22:11:43Z</dc:date>
    </item>
    <item>
      <title>Re: Forbidden app for the current user - Qlik Sense Mashup</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461730#M9428</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;If the user has no access to the app it will not be visible, so openApp will fail. You could catch this error. Another approach is to get the users list of available app either over the web socket through the Capabilities API or with a call to the QRS API.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Erik Wetterberg&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Jan 2018 07:55:50 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461730#M9428</guid>
      <dc:creator>ErikWetterberg</dc:creator>
      <dc:date>2018-01-10T07:55:50Z</dc:date>
    </item>
    <item>
      <title>Re: Forbidden app for the current user - Qlik Sense Mashup</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461731#M9429</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Since openApp will fail, I was hoping there's something like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;qlik.openApp(...,..).then(function(app){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //do stuff on success&lt;/P&gt;&lt;P&gt;}, function(error){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //do stuff on fail&lt;/P&gt;&lt;P&gt;});&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is there something like this? (without opening a web socket just to do this)&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Jan 2018 12:24:07 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461731#M9429</guid>
      <dc:creator>thpessato</dc:creator>
      <dc:date>2018-01-10T12:24:07Z</dc:date>
    </item>
    <item>
      <title>Re: Forbidden app for the current user - Qlik Sense Mashup</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461732#M9430</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No, I'm sorry there isn't. The onError method should catch this though. There is also the undocumented waitForOpen promise (I think it's at app.model.waitForOpen), that probably would work (I haven't tested).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You don't need to open a separate web socket to get the app list. You can use app.global. But catching open errors would mean less overhead, since getting the app list might be slow, if you have many apps and access rules that don't evaluate super quickly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Erik Wetterberg&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Jan 2018 12:30:46 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461732#M9430</guid>
      <dc:creator>ErikWetterberg</dc:creator>
      <dc:date>2018-01-10T12:30:46Z</dc:date>
    </item>
    <item>
      <title>Re: Forbidden app for the current user - Qlik Sense Mashup</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461733#M9431</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I see.. The onError doesn't tell me which app is forbidden, it just gives me the message... at least that's what I saw while debugging... I'll try the waitForOpen, it seems interesting &lt;IMG src="https://community.qlik.com/legacyfs/online/emoticons/happy.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks Erik!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Jan 2018 12:47:21 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461733#M9431</guid>
      <dc:creator>thpessato</dc:creator>
      <dc:date>2018-01-10T12:47:21Z</dc:date>
    </item>
    <item>
      <title>Re: Forbidden app for the current user - Qlik Sense Mashup</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461734#M9432</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hey Erik,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Using waitForOpen, I managed to solve my problem. When going to reject function, I can use the 'error.message' along with the opened app.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;app.model.waitForOpen.promise.then(function(response){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; console.log(response);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }, function(e){&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(e.error.message == 'Forbidden') {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; console.log(app.id);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;});&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That way, I can tell which app is forbidden, by it's ID, so the user can have more information about the problem &lt;IMG src="https://community.qlik.com/legacyfs/online/emoticons/happy.png" /&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Thanks!!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 10 Jan 2018 17:38:57 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Forbidden-app-for-the-current-user-Qlik-Sense-Mashup/m-p/1461734#M9432</guid>
      <dc:creator>thpessato</dc:creator>
      <dc:date>2018-01-10T17:38:57Z</dc:date>
    </item>
  </channel>
</rss>

