<?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: Extracting all visualizations in an app in Integration, Extension &amp; APIs</title>
    <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625555#M11348</link>
    <description>&lt;P&gt;It's the sheet layout:&lt;/P&gt;
&lt;LI-CODE lang="javascript"&gt;return app.getObject(sheetId)
      .then(function(sheetModel) {
        return sheetModel.getLayout()
          .then(function(sheetLayout) {
              [.....]&lt;/LI-CODE&gt;
&lt;P&gt;I am not 100% sure when the `height` appears, I will try to find out.&lt;/P&gt;</description>
    <pubDate>Thu, 19 Sep 2019 05:53:43 GMT</pubDate>
    <dc:creator>Aiham_Azmeh</dc:creator>
    <dc:date>2019-09-19T05:53:43Z</dc:date>
    <item>
      <title>Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1622235#M11269</link>
      <description>&lt;P&gt;Hello everyone,&lt;/P&gt;&lt;P&gt;I'm thinking of writing a script to automate the creation of mashups and to start I thought I'd use the Engine API to extract the IDs and types of all visualizations within an app.&amp;nbsp; Does anyone know if there's a way to do this without using the GetObjects method of a document and specifying every type of visualization?&amp;nbsp; When I specify the object type, I get the result I expect, while when I pass an empty qTypes option, it returns an empty reply:&lt;/P&gt;&lt;P&gt;This works:&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;{
	"handle": 1,
	"method": "GetObjects",
	"params": {
		"qOptions": {
			"qTypes": [
				"barchart"
			],
			"qIncludeSessionObjects": false,
			"qData": {}
		}
	}
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;SPAN&gt;and returns:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;{
	"jsonrpc": "2.0",
	"id": 5,
	"delta": true,
	"result": {
		"qList": [
			{
				"qInfo": {
					"qId": "bbb31edd-f836-4bb1-a826-7a230d14f760",
					"qType": "barchart"
				},
				"qMeta": {
					"title": "xxxx",
					"description": "",
					"tags": []
				},
				"qData": {}
			},
			{
				"qInfo": {
					"qId": "98e3d4a1-8e2f-40df-8f80-55e40072dc74",
					"qType": "barchart"
				},
				"qData": {}
			}
		]
	}
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;This doesn't:&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;{
	"handle": 1,
	"method": "GetObjects",
	"params": {
		"qOptions": {
			"qTypes": [
				""
			],
			"qIncludeSessionObjects": false,
			"qData": {}
		}
	}
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Returns:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;{
	"jsonrpc": "2.0",
	"id": 6,
	"delta": true,
	"result": {
		"qList": []
	}
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Is there a wildcard or keyword that would allow me to retrieve all visualizations, regardless of the type?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;</description>
      <pubDate>Sat, 16 Nov 2024 04:43:04 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1622235#M11269</guid>
      <dc:creator>rbartley</dc:creator>
      <dc:date>2024-11-16T04:43:04Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1622445#M11274</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/47074"&gt;@rbartley&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;There are no wildcards, so you need to list all the type in the array, but obviously you will miss the custom types (3rd party visualization extensions).&lt;/P&gt;
&lt;P&gt;I would recommend you to list all sheets &amp;amp; cells instead:&lt;/P&gt;
&lt;LI-CODE lang="javascript"&gt;[
  {
    "name": "SHEETLIST",
    "method": "CreateSessionObject",
    "handle": "${dochandle}",
    "params": [
        {
          "qInfo": {
            "qType": "SheetList"
          },
          "qAppObjectListDef": {
            "qType": "sheet",
            "qData": {
              "cells": "/cells"
            }
          }
        }
    ]
  },
  {
    "method": "GetLayout",
    "handle": "${SHEETLIST.result.qReturn.qHandle}",
    "params": []
  }
]&lt;/LI-CODE&gt;
&lt;P&gt;You should be able to transform the result object into the list of objectIds that are consumed in the app&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I hope this helps,&lt;/P&gt;</description>
      <pubDate>Wed, 11 Sep 2019 06:51:07 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1622445#M11274</guid>
      <dc:creator>Aiham_Azmeh</dc:creator>
      <dc:date>2019-09-11T06:51:07Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1624731#M11328</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/45449"&gt;@Aiham_Azmeh&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your response.&amp;nbsp; This is very useful.&amp;nbsp; Could you tell me how the order of the items in the response is determined?&amp;nbsp; For example, is it ordered from top left of a sheet to bottom right or by the time when the visualization was added?&amp;nbsp; Is there a way of determining relative position of each visualization within a sheet?&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 17 Sep 2019 14:46:21 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1624731#M11328</guid>
      <dc:creator>rbartley</dc:creator>
      <dc:date>2019-09-17T14:46:21Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625001#M11334</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/47074"&gt;@rbartley&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;
&lt;P&gt;There is no order, the position is calculated with through rows and cols placement.&lt;/P&gt;
&lt;P&gt;Below you have the code snippet we use in single integration for recreating a sheet:&lt;/P&gt;
&lt;LI-CODE lang="javascript"&gt;getSheetHtml(sheetLayout) {
    const height = sheetLayout.height || 100;
    let html = `&amp;lt;div style="position:relative;width:100%;height: ${height}%;" class="qvt-sheet"&amp;gt;`;
    let cols = 0;
    let rows = 0;
    sheetLayout.cells.forEach(function(v) {
      cols = Math.max(cols, v.col + v.colspan);
      rows = Math.max(rows, v.row + v.rowspan);
    });
    sheetLayout.cells.forEach(function(v) {
      let style = 'position:absolute;';
      if (v.bounds) {
        const b = v.bounds;
        style += `left: ${b.x}%;`;
        style += `top: ${b.y}%;`;
        style += `width: calc(${b.width}% - 10px);`;
        style += `height: calc(${b.height}% - 10px);`;
        style += 'margin: 5px';
        html += `&amp;lt;div style="${style}" data-qid="${v.name}" col="${v.col}" row="${v.row}"&amp;gt;&amp;lt;/div&amp;gt;`;
      } else {
        style += `left: ${(v.col * 100) / cols}%;`;
        style += `top: ${(v.row * 100) / rows}%;`;
        style += `width: calc(${(v.colspan * 100) / cols}% - 10px);`;
        style += `height: calc(${(v.rowspan * 100) / rows}% - 10px);`;
        style += 'margin: 5px';
        html += `&amp;lt;div style="${style}" data-qid="${v.name}" col="${v.col}" row="${v.row}"&amp;gt;&amp;lt;/div&amp;gt;`;
      }
    });
    html += '&amp;lt;/div&amp;gt;';
    return html;
  },&lt;/LI-CODE&gt;
&lt;P&gt;&amp;nbsp;This may help,&lt;/P&gt;
&lt;P&gt;/aiham&lt;/P&gt;</description>
      <pubDate>Wed, 18 Sep 2019 07:06:42 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625001#M11334</guid>
      <dc:creator>Aiham_Azmeh</dc:creator>
      <dc:date>2019-09-18T07:06:42Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625200#M11335</link>
      <description>&lt;P&gt;Hi aiham &lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/45449"&gt;@Aiham_Azmeh&lt;/a&gt;&amp;nbsp;,&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks for your reply.&amp;nbsp; In the first line of your getSheetHtml function you have&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;sheetLayout.height&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, I do not appear to have a height property in the result of either the&amp;nbsp;CreateSessionObject method or the GetLayout method.&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;sheetsObject= 
{jsonrpc: "2.0", id: 3, result: {…}}
id: 3
jsonrpc: "2.0"
result:
qLayout:
qAppObjectList:
qItems: Array(3)
0:
qData:
cells: Array(7)
0: {name: "e9246f16-9e9f-4fb4-a00a-bd92ed7b9add", type: "filterpane", col: 4, row: 0, colspan: 10, …}
1: {name: "13e0ff36-6dd8-457e-b718-c4f74a1af710", type: "qsSimpleKPI", col: 14, row: 0, colspan: 4, …}
2: {name: "bbb31edd-f836-4bb1-a826-7a230d14f760", type: "barchart", col: 11, row: 1, colspan: 13, …}
3: {name: "12d8901e-a7f5-4494-a01c-d6b97a8fb0c6", type: "qlik-tabbed-container", col: 0, row: 1, colspan: 11, …}
4: {name: "83bc44a7-a56c-41d3-a091-abde7accb15d", type: "qlik-button-for-navigation", col: 18, row: 0, colspan: 3, …}
5: {name: "BfYjW", type: "SimpleFieldSelect", col: 0, row: 0, colspan: 4, …}
6: {name: "BUEmaf", type: "com-qliktech-screenshottopdf_app", col: 21, row: 0, colspan: 3, …}
length: 7
__proto__: Array(0)
__proto__: Object
qInfo: {qId: "a0dc4ad1-6d0d-43c3-bd72-661e701bea50", qType: "sheet"}
qMeta:
approved: true
createdDate: "2019-06-21T09:49:01.605Z"
description: ""
draftObject: ""
modifiedDate: "2019-09-02T16:37:49.283Z"
owner: {id: "6e06e227-8817-4c0d-a8c6-5dd1b766643e", userId: "XXXXX", userDirectory: "XXXXX", name: "XXXXXX", privileges: null}
privileges: (5) ["read", "update", "delete", "publish", "approve"]
publishTime: "2019-06-21T09:49:02.776Z"
published: true
qSize: -1
sourceObject: ""
title: "Absolute (Heads/Tonnes)"&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could you please confirm which object you are passing to your getSheetHtml function?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 18 Sep 2019 11:57:14 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625200#M11335</guid>
      <dc:creator>rbartley</dc:creator>
      <dc:date>2019-09-18T11:57:14Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625314#M11339</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hi aiham&amp;nbsp;&lt;/SPAN&gt;&lt;A href="https://community.qlik.com/t5/user/viewprofilepage/user-id/45449" target="_blank"&gt;@aaz&lt;/A&gt;&lt;SPAN&gt;&amp;nbsp;,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Also, is it possible to determine the number of fields in a filterpanel by using the Engine API?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Thanks in advance,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Richard&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 18 Sep 2019 13:49:12 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625314#M11339</guid>
      <dc:creator>rbartley</dc:creator>
      <dc:date>2019-09-18T13:49:12Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625337#M11340</link>
      <description>&lt;P&gt;I see that I can get this information (number of fields in a filter pane) by calling the GetObject method, passing the qId(s) of the filterpane(s) as a parameter and then calling GetLayout.&amp;nbsp; This returns:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="javascript"&gt;{
	"jsonrpc": "2.0",
	"id": 6,
	"delta": true,
	"result": {
		"qLayout": {
			"qInfo": {
				"qId": "e9246f16-9e9f-4fb4-a00a-bd92ed7b9add",
				"qType": "filterpane"
			},
			"qSelectionInfo": {},
			"qChildList": {
				"qItems": [
					{
						"qInfo": {
							"qId": "bd9c9e17-7fc9-47a3-8bfb-6b96f9a4bdfa",
							"qType": "listbox"
						},
						"qData": {
							"info": ""
						}
					},
					{
						"qInfo": {
							"qId": "29ea0fc0-13cd-41da-afd6-efb179ee2ff1",
							"qType": "listbox"
						},
						"qData": {
							"info": ""
						}
					},
					{
						"qInfo": {
							"qId": "8daada98-5543-4731-91b4-e97afb96362a",
							"qType": "listbox"
						},
						"qData": {
							"info": ""
						}
					}
				]
			},
			"showTitles": false,
			"title": "",
			"subtitle": "",
			"footnote": "",
			"visualization": "filterpane"
		}
	}
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 18 Sep 2019 14:36:54 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625337#M11340</guid>
      <dc:creator>rbartley</dc:creator>
      <dc:date>2019-09-18T14:36:54Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625555#M11348</link>
      <description>&lt;P&gt;It's the sheet layout:&lt;/P&gt;
&lt;LI-CODE lang="javascript"&gt;return app.getObject(sheetId)
      .then(function(sheetModel) {
        return sheetModel.getLayout()
          .then(function(sheetLayout) {
              [.....]&lt;/LI-CODE&gt;
&lt;P&gt;I am not 100% sure when the `height` appears, I will try to find out.&lt;/P&gt;</description>
      <pubDate>Thu, 19 Sep 2019 05:53:43 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625555#M11348</guid>
      <dc:creator>Aiham_Azmeh</dc:creator>
      <dc:date>2019-09-19T05:53:43Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625610#M11349</link>
      <description>&lt;P&gt;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/45449"&gt;@Aiham_Azmeh&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;The sheet list only seems to return the filterpane, not the filterpane contents (the lists inside the filterpane).&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 19 Sep 2019 08:31:21 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625610#M11349</guid>
      <dc:creator>rbartley</dc:creator>
      <dc:date>2019-09-19T08:31:21Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625615#M11350</link>
      <description>&lt;P&gt;your probably need to do GetObject =&amp;gt; GetLayout for each one of them individually.&lt;/P&gt;</description>
      <pubDate>Thu, 19 Sep 2019 08:35:05 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1625615#M11350</guid>
      <dc:creator>Aiham_Azmeh</dc:creator>
      <dc:date>2019-09-19T08:35:05Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1626338#M11361</link>
      <description>&lt;P&gt;OK, as per my previous snippet then.&lt;/P&gt;&lt;P&gt;Thanks for all your help.&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Richard&lt;/P&gt;</description>
      <pubDate>Fri, 20 Sep 2019 13:09:17 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1626338#M11361</guid>
      <dc:creator>rbartley</dc:creator>
      <dc:date>2019-09-20T13:09:17Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1626848#M11373</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.qlik.com/t5/user/viewprofilepage/user-id/45449"&gt;@Aiham_Azmeh&lt;/a&gt;&amp;nbsp;,&lt;/P&gt;&lt;P&gt;If&amp;nbsp; I have multiple filter panes for which I want to get the number of lists in the pane, is there a response message attribute that I can use so that I can use this instead of using message ids?&amp;nbsp; e.g.&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;var msg = JSON.parse(event.data);

if(msg.result.qReturn.qGenericType)
  {objType=msg.result.qReturn.qGenericType;}
else 
  {objType=msg.result.qReturn.qType;}
????????
    
switch(objType) {
   
	case "Doc":
		ws.send(JSON.stringify(getSheetList));
		break;
	case "SheetList":
		ws.send(JSON.stringify(getSheetContent));
		break;   
	... 
	...
	case "FilterPane"
		ws.send(JSON.stringify(getLists));
		break;
	... 
	...&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The issue I have is that the filterpane type appears to be GenericObject, which is not very helpful in my case.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;</description>
      <pubDate>Mon, 23 Sep 2019 11:46:28 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1626848#M11373</guid>
      <dc:creator>rbartley</dc:creator>
      <dc:date>2019-09-23T11:46:28Z</dc:date>
    </item>
    <item>
      <title>Re: Extracting all visualizations in an app</title>
      <link>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1627034#M11378</link>
      <description>&lt;P&gt;In fact, I see that the response to the GetObjects with parameter&amp;nbsp;"qTypes": ["filterpane"] returns a list with members of qtype filterpane&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;{
	"jsonrpc": "2.0",
	"id": 5,
	"delta": true,
	"result": {
		"qList": [
			{
				"qInfo": {
					"qId": "e9246f16-9e9f-4fb4-a00a-bd92ed7b9add",
					"qType": "filterpane"
				},
				"qData": {}
			},
			{
				"qInfo": {
					"qId": "67f95aaa-ae99-44a3-898c-fabd242346ec",
					"qType": "filterpane"
				},
				"qData": {}
			}
		]
	}
}&lt;/LI-CODE&gt;&lt;P&gt;While the GetObject call returns an object with qGenericType "filterpane"&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;{
	"jsonrpc": "2.0",
	"id": 6,
	"delta": true,
	"result": {
		"qReturn": {
			"qType": "GenericObject",
			"qHandle": 3,
			"qGenericType": "filterpane",
			"qGenericId": "e9246f16-9e9f-4fb4-a00a-bd92ed7b9add"
		}
	}
}&lt;/LI-CODE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And GetLayout on this returns a childList with members of qType "listbox"&lt;/P&gt;&lt;LI-CODE lang="markup"&gt;{
	"jsonrpc": "2.0",
	"id": 7,
	"delta": true,
	"result": {
		"qLayout": {
			"qInfo": {
				"qId": "e9246f16-9e9f-4fb4-a00a-bd92ed7b9add",
				"qType": "filterpane"
			},
			"qSelectionInfo": {},
			"qChildList": {
				"qItems": [
					{
						"qInfo": {
							"qId": "bd9c9e17-7fc9-47a3-8bfb-6b96f9a4bdfa",
							"qType": "listbox"
						},
						"qData": {
							"info": ""
						}
					},
					{
						"qInfo": {
							"qId": "29ea0fc0-13cd-41da-afd6-efb179ee2ff1",
							"qType": "listbox"
						},
						"qData": {
							"info": ""
						}
					},
					{
						"qInfo": {
							"qId": "8daada98-5543-4731-91b4-e97afb96362a",
							"qType": "listbox"
						},
						"qData": {
							"info": ""
						}
					}
				]
			},
			"showTitles": false,
			"title": "",
			"subtitle": "",
			"footnote": "",
			"visualization": "filterpane"
		}
	}
}&lt;/LI-CODE&gt;&lt;P&gt;I should be able to get what I need from this.&lt;/P&gt;</description>
      <pubDate>Mon, 23 Sep 2019 16:00:04 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Integration-Extension-APIs/Extracting-all-visualizations-in-an-app/m-p/1627034#M11378</guid>
      <dc:creator>rbartley</dc:creator>
      <dc:date>2019-09-23T16:00:04Z</dc:date>
    </item>
  </channel>
</rss>

