# Single Integration API

Information noteIf you are using Qlik Sense Business or Qlik Sense Enterprise SaaS, see the API documentation at the Qlik ([Developer Portal](https://qlik.dev/)).

Information noteSTABLE.   
  
This API is reliable and breaking changes are unlikely.

## Syntax

http[s]://&lt;machinename | servername&gt;/{virtual proxy}/single/?appid={appid}&obj={obj}&opt={options}&bookmark={bookmark}&select={selection}&theme={themeid}

## Version history

| Version state | Details |
| --- | --- |
| Introduced | 1.0 |
| Updated | 1.1, 3.0, 3.1, Sense February 2018 |

Information noteA new implementation of the Base URL was introduced in version 3.1. The legacy implementation of the URL will continue to work but use this new implementation for new integration.

## Overview

The Single Integration API provides parameters that can be used to create an URL that returns a complete HTML page containing for example an embedded Qlik Sense visualization. This URL can be embedded in a web page, for example by including it in an iframe.

Tip noteUse the Single configurator to quickly get started using the Single Integration API, see [Dev Hub: Single configurator](https://help.qlik.com/en-US/sense-developer/May2025/Subsystems/Dev-Hub/Content/Sense_Dev-Hub/SingleConfigurator/dev-hub-single-configurator.htm).

## Base URL

The Base URL is constant and defines the location of the machine.

Syntax: Base URL

http[s]://&lt;machinename | servername&gt;/{virtual proxy}/single/?

Parameter descriptions

| Parameter | Description |
| --- | --- |
| machinename \| servername | Specifies the path to the local machine or the server on which the app is located.<br><br><ul> <li><span>https://&lt;servername&gt;/</span> </li> <li><span>http://localhost:4848/</span> for <span>Qlik Sense Desktop</span> environment.</li> </ul> |
| virtual proxy | This parameter is optional depending on server configuration for the server.<br><br>Specifies the virtual proxy to use. |

### Retrieving the virtual proxy prefix programmatically

To get the virtual proxy prefix programmatically, you can use the following code in a browser console:

var prefix = window.location.pathname.substr( 0, window.location.pathname.toLowerCase().lastIndexOf( "/single" ) + 1 );

## Legacy implementation of the base URL

Before version 3.1, the base URL had a slightly different syntax.

Syntax: Base URL

http[s]://&lt;machinename | servername&gt;/{virtual proxy}/single?

## Additional parameters

The following parameters can be used to display a single visualization, a single sheet, or a single snapshot.

Additional parameters

| Parameter | Description |
| --- | --- |
| appid | Defining the id of a Qlik Sense app. If no appid is available, the file name will be listed.<br><br>Example: appid example<br><br>appid=133dab5d-8f56-4d40-b3e0-a6b401391bde<br><br>Example: appid example in Qlik Sense Desktop<br><br>appid=&lt;FolderPath&gt;%5CHelpdesk%20Management.qvf |
| obj | Defining the id of a Qlik Sense visualization.<br><br>Example:<br><br>&obj=hRZaKk |
| sheet | Defining the id of a sheet in a Qlik Sense app.<br><br>Information noteSheets are not responsive when embedded with the Single Integration API. If responsiveness is wanted, embed individual visualizations instead.<br><br>Information noteThe sheet title is not included when embedding sheets.<br><br>Example:<br><br>&sheet=1ff88551-9c4d-41e0-b790-37f4c11d3df8 |
| snapshot | Defining the id of a snapshot in a Qlik Sense app. Introduced in Qlik Sense version 1.1.<br><br>Example:<br><br>&snapshot=EwrnQf |
| identity | Defining a session identity. If no identity is defined, the session and selection state will be shared with the client.<br><br>If an identity is defined, a separate session is created and any selections made in the single feature does not affect a concurrent session in the Qlik Sense client. |
| lang | Override default language settings by defining the language for the specific object. Supported languages are:<br><br><ul> <li>Default language: This option does not add any language settings to the URL. The default language will be used.</li> <li> <p>German: </p> <p>short: <span>de</span></p> <p>long: <span>de-DE</span></p> </li> <li> <p>English: </p> <p>short: <span>en</span></p> <p>long: <span>en-US</span></p> </li> <li> <p>Spanish: </p> <p>short: <span>es</span></p> <p>long: <span>es-ES</span></p> </li> <li> <p>French: </p> <p>short: <span>fr</span></p> <p>long: <span>fr-FR</span></p> </li> <li> <p>Italian: </p> <p>short: <span>it</span></p> <p>long: <span>it-IT</span></p> </li> <li> <p>Japanese: </p> <p>short: <span>ja</span></p> <p>long: <span>ja-JP</span></p> </li> <li> <p>Korean: (introduced in <span>Qlik Sense</span> version 3.0)</p> <p>short: <span>ko</span></p> <p>long: <span>ko-KR</span></p> </li> <li> <p>Dutch: </p> <p>short: <span>nl</span></p> <p>long: <span>nl-NL</span></p> </li> <li> <p>Polish:  (introduced in <span>Qlik Sense</span> version 3.0)</p> <p>short: <span>pl</span></p> <p>long: <span>pl-PL</span></p> </li> <li> <p>Brazilian Portuguese:</p> <p>short: <span>pt</span></p> <p>long: <span>pt-BR</span></p> </li> <li> <p>Russian: </p> <p>short: <span>ru</span></p> <p>long: <span>ru-RU</span></p> </li> <li> <p>Swedish: </p> <p>short: <span>sv</span></p> <p>long: <span>sv-SE</span></p> </li> <li> <p>Turkish:  (introduced in <span>Qlik Sense</span> version 3.0)</p> <p>short: <span>tr</span></p> <p>long: <span>tr-TR</span></p> </li> <li> <p>Simplified Chinese: </p> <p>short: Do not use!</p> <p>long: <span>zh-CN</span></p> </li> <li> <p>Traditional Chinese:  (introduced in <span>Qlik Sense</span> version 3.0)</p> <p>short: Do not use!</p> <p>long: <span>zh-TW</span></p> </li> </ul><br><br>Examples:<br><br>&lang=es<br><br>&lang=es-ES |
| opt | Defining options. Supported options are:<br><br><ul> <li><span>ctxmenu</span>: enables the context menu.</li> <li><span>currsel</span>: displays the Selection bar.</li> <li> <p><span>debug</span>: starts a JavaScript debugger.</p> <p>The <span>debug</span> option can only be defined in the URL.</p> </li> <li> <p><span>noAnimate</span>: turns off animations.</p> </li> <li><span>noselections</span>: turns off selections.</li> <li><span>noInteraction</span>: turns off interaction.</li> </ul><br><br>If you want to define multiple options you separate them with a comma sign.<br><br>Example:<br><br>&opt=currsel |
| bookmark | Defining the id of a bookmark in a Qlik Sense app.<br><br>Introduced in Qlik Sense version 1.1.<br><br>This is the id of the bookmark to apply.<br><br>Example: Bookmark applied<br><br>&bookmark=PzsxuKb |
| select | Mandatory: Field name and values to select.<br><br>Optional: The name of the state to make selections in.<br><br>Introduced in Qlik Sense version 1.1.<br><br>The field name and the values define the selections to make. It is possible to define multiple select parameters.<br><br>Example: Selections in two fields<br><br>&select=Month,1,2,3,4&select=Priority,High<br><br>The example above selects the months of January, February, March and April and High priority.<br><br>Information noteYou have to define the number for numeric fields (Month in the example above), text will not work.<br><br>Example: Clear all selections in all states<br><br>&select=clearall<br><br>Example: Clear all selections in the default state<br><br>&select=$::clearall<br><br>Example: Clear all selections in one state<br><br>&select=My state::clearall<br><br>Example: Clear all selections in multiple states<br><br>&select=My first state::clearall&select=My second state::clearall<br><br>Example: Make a new selection in the default state<br><br>&select=Year,2011 or &select=$::Year,2011<br><br>Example: Make a new selection in multiple fields<br><br>&select=Year,2011&select=Month,April<br><br>Example: Make a new selection for multiple values<br><br>&select=Year,2011,2012,2013<br><br>Example: Make a new selection in one state<br><br>&select=My state::Year,2011<br><br>Example: Make a new selection in multiple states<br><br>&select=My first state::Year,2011&select=My second state::Year,2012 |
| theme | Defining the id of a theme.<br><br>Introduced in Qlik Sense February 2018.<br><br>Example: Theme applied<br><br>&theme=breeze |

## Execution order

The execution order of rendering a HTML page containing the object and its set options is as follows:

1. Clear existing selections (if applicable).
2. Apply a bookmark (if applicable).
3. Make selections in fields (if applicable).