Skip to main content

Adding a Qlik Cloud Connection

Prerequisites

  • A user with sufficient permissions is required to establish a connection with Qlik Cloud.
  • Zeenea traffic flows towards the data source must be open.
note

A configuration template can be downloaded here: qlik-cloud.conf.

Installing the Plugin

The Qlik Cloud plugin can be downloaded here: Zeenea Connector Downloads

For more information on how to install a plugin, please refer to the following article: Installing and Configuring Connectors as a Plugin.

Declaring the Connection

Creating and configuring connectors is done through a dedicated configuration file located in the /connections folder of the relevant scanner. The scanner frequently checks for any change and resynchronises automatically.

Read more: Managing Connections

In order to establish a connection with a Qlik Cloud instance, specifying the following parameters in the dedicated file is required:

ParameterExpected value
nameThe name that will be displayed to catalog users for this connection
codeThe unique identifier of the connection on the Zeenea platform. Once registered on the platform, this code must not be modified or the connection will be considered as new and the old one removed from the scanner.
connector_idThe connector type to use for the connection. Here, the value must be qlik-cloud and this value must not be modified.
connection.urlInstance address (https://.eu.qlikcloud.com)
connection.auth_modeQlik Cloud authentication mode (accepted values : oauth, token)
connection.auth.valueHeader value for authentication, format: domain\user name
connection.tokenConnection token for Qlik API
connection.oauth.client_idOAuth application ID (client)
connection.oauth.client_secretOAuth client secret
filterTo filter visualizations during the inventory. See Rich Filters.
tls.truststore.pathThe Trust Store file path. This file must be provided in case TLS encryption is activated (protocol https) and when certificates of servers are delivered by a specific authority. It must contain the certification chain.
tls.truststore.passwordPassword of the trust store file
tls.truststore.typeType of the trust store file (PKCS12 or JKS). Default value is discovered from the file extension.
proxy.schemeDepending on the proxy, http or https
proxy.hostnameProxy address
proxy.portProxy port
proxy.usernameProxy username
proxy.passwordProxy account password

User Permissions

In order to collect metadata, the running user's permissions must allow them to access and read needed applications.

When authenticating with OAuth, you need to configure the following scopes for the OAuth application:

  • user_default
  • admin_classic
  • admin.apps
  • apps

Rich Filters

Qlik Cloud connector benefits from the feature of rich filters in the configuration of the connector.

Available filtering key for Qlik Cloud is the following :

  • name

Read more: Filters.

Data Extraction

To extract information, the connector runs REST requests on following endpoints:

  • GET /api/v1/items: Get all visible applications
  • GET /api/v1/apps/: Get application metadata
  • GET /api/v1/apps//data/metadata: Get application datamodel
  • GET /api/v1/lineage-graphs/nodes/: Get application lineage
  • GET /api/v1/users/: Get user information
  • GET /api/v1/data-connections: Get all configured data connections

Collected Metadata

Inventory

Will collect the list of applications accessible by the user.

Lineage

Qlik Cloud connector is able to reconstruct the lineage of tables used in applications if they are used directly by them.

Source SystemPossible value of alias parameter to be set in source system configuration file
BigQuerybigquery.googleapis.com/{project name}
Snowflake{snowflake account name}.snowflakecomputing.com/{database name}
Warning

If transformations are performed on the source data, Qlik Cloud will convert the data into Qlik files that cannot be interpreted by the connector. As a result, lineage will not be functional.

Visualization

A Visualization is a Qlik application.

  • Name: Application name
  • Source Description: Application description
  • Contacts
  • Technical Data:
    • Application Name: Application name
    • Application URL: Application URL
    • Created At: Application creation datetime
    • Modified At: Application update datetime
    • Reloaded At: Application last reload datetime
    • Created By: User name who created the application

Dataset

A Dataset is a table from application's datamodel:

  • Name: Table name
  • Source Description: Table description
  • Technical Data:
    • Byte Size: Byte size of table data
    • Number of Rows: Number of rows of loaded table

Field

Dataset field.

  • Name: Field name
  • Type: Interpreted type
  • Can be null: true if field is not primary key
  • Multivalued: false by default
  • Primary Key:true if field has $key tag

Data Process

To represent the data flow from an external source, a Zeenea Data Process will be created for each Qlik application if lineage is found.

  • Name: import application-name

Object Identification Keys

An identification key is associated with each object in the catalog. In the case of the object being created by a connector, the connector builds it.

More information about unique identification keys in this documentation: Identification Keys.

ObjectIdentification KeyDescription
Visualizationcode/application id
  • code: Unique identifier of the connection noted in the configuration file
  • application id
Datasetcode/application id/table name
  • code: Unique identifier of the connection noted in the configuration file
  • application id
  • table name
Fieldcode/application id/table name/field name
  • code: Unique identifier of the connection noted in the configuration file
  • application id
  • table name
  • field name
Data Processcode/lineage/application id
  • code: Unique identifier of the connection noted in the configuration file
  • application id