QlikWorld 2020 Global Conference. Join us to discover how to get the most from your data. Act fast. Register now and save.

Capability APIs


The Capability APIs are a collection of JavaScript APIs that allows you to easily embed Qlik Sense content into a web page. With just a few lines of code it is possible to create a visualization that leverages the Qlik Sense visualization library.

The Capability APIs are dependent on AngularJS and RequireJS, so you will need to take this into consideration when integrating the Capability APIs into an existing project that also uses these libraries.

Using AngularJS in your mashup for more information on integrating the Capability APIs into an existing AngularJS project.

Note: The term Capability API was introduced with Qlik Sense 2.1. Some of the Capability APIs were available before this version, published under the name Mashup API.


Use these resources to build and bring capabilities into visualization extensions (), widgets (), custom components () and mashups ().

Capability API Namespace Usage
Root API qlik  
App API qlik.app
Bookmark API qlik.app.bookmark  
Field API qlik.app.field  
Selection API qlik.app.selectionState  
Variable API qlik.app.variable  
Visualization API qlik.app.visualization      
Global API qlik.global  
Navigation API qlik.navigation  
Table API qlik.table
Theme API qlik.theme      


The following capability API methods are not supported when used with Qlik Cloud Services and Qlik Sense Enterprise on Kubernetes.

Capability API Methods
Global API
  • getAppList()
  • getProductVersion()
  • getQTProduct()
  • isPersonalMode()
Root API
  • callRepository()
  • getAppList()
  • getExtensionList()
  • getGlobal()
  • sessionApp()
  • sessionAppFromApp()
QVisualization API
  • exportData()
  • exportImg()
  • exportPdf()

Getting started

Learn how to get started embedding Qlik Sense content into a web page.

Note: This example assumes you are already authenticated or have allowed anonymous access to your Qlik Sense instance.

Loading resources

To use the Capability APIs, you need to include references to the Qlik Sense implementation of RequireJS and one CSS file to ensure visualizations are styled as expected.


Include the following in the <head> section of your page:

<link rel="stylesheet" href="https://QSE_domain[:port]/<virtual proxy>/resources/autogenerated/qlik-styles.css">


Include the following before the closing </body> tag:

<script type="text/javascript" src="https://QSE_domain[:port]/<virtual proxy>/resources/assets/external/requirejs/require.js"></script>
Note: The virtual proxy may be omitted if you are connecting to the default virtual proxy. The virtual proxy is not applicable to Qlik Cloud Services or Qlik Sense Enterprise on Kubernetes.
Note: The port may be omitted if you are using the default ports for the current protocol (HTTP - 80, HTTPS - 443).

Connecting to the Qlik associative engine instance

You must create a config object to configure the baseUrl for RequireJS so that it knows where to fetch all the resources required:

var config = {
    host: "QSE_domain", //the address of your Qlik Engine Instance
    prefix: "/", //or the virtual proxy to be used. for example "/anonymous/"
    port: 443, //or the port to be used if different from the default port  
    isSecure: true //should be true if connecting over HTTPS
    //webIntegrationId: 'web-integration-id-here' //only needed in QCS and QSEoK

You then use the config object to tell RequireJS where to set the baseUrl:

const baseUrl = ( config.isSecure ? 'https://' : 'http://' ) + config.host + (config.port ? ':' + config.port : '') + config.prefix;
    baseUrl: '${baseUrl}resources'
    // webIntegrationId: config.webIntegrationId// only needed in QCS or QSEoK			

You can now load the main qlik.js file, which contains all the Capability APIs:

require(['js/qlik'], function(qlik) {
    //if there's any error we catch it here
    qlik.setOnError( function ( error ) {

The qlik object is an instance of the Root API. With your connection to the server, you can now open a Qlik Sense app:

var app = qlik.openApp("app name or id", config);

You can now work with your app, that uses the App API.

Version history

Each method and property contain information around when it was introduced, updated, deprecated or removed. A list of all relevant API changes per version release can be found in API version history.

Capability API version history

Did this information help you?

Thanks for letting us know. Is there anything you'd like to tell us about this topic?

Can you tell us why it did not help you and how we can improve it?