Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Qlik offers a wide range of channels to assist you in troubleshooting, answering frequently asked questions, and getting in touch with our technical experts. In this article, we guide you through all available avenues to secure your best possible experience.
For details on our terms and conditions, review the Qlik Support Policy.
Index:
We're happy to help! Here's a breakdown of resources for each type of need.
Support | Professional Services (*) | |
Reactively fixes technical issues as well as answers narrowly defined specific questions. Handles administrative issues to keep the product up-to-date and functioning. | Proactively accelerates projects, reduces risk, and achieves optimal configurations. Delivers expert help for training, planning, implementation, and performance improvement. | |
|
|
(*) reach out to your Account Manager or Customer Success Manager
Your first line of support: https://community.qlik.com/
Looking for content? Type your question into our global search bar:
Leverage the enhanced and continuously updated Knowledge Base to find solutions to your questions and best practice guides. Bookmark this page for quick access!
Subscribe to maximize your Qlik experience!
The Support Updates Blog
The Support Updates blog delivers important and useful Qlik Support information about end-of-product support, new service releases, and general support topics. (click)
The Qlik Design Blog
The Design blog is all about product and Qlik solutions, such as scripting, data modelling, visual design, extensions, best practices, and more! (click)
The Product Innovation Blog
By reading the Product Innovation blog, you will learn about what's new across all of the products in our growing Qlik product portfolio. (click)
Q&A with Qlik
Live sessions with Qlik Experts in which we focus on your questions.
Techspert Talks
Techspert Talks is a free webinar to facilitate knowledge sharing held on a monthly basis.
Technical Adoption Workshops
Our in depth, hands-on workshops allow new Qlik Cloud Admins to build alongside Qlik Experts.
Qlik Fix
Qlik Fix is a series of short video with helpful solutions for Qlik customers and partners.
Suggest an idea, and influence the next generation of Qlik features!
Search & Submit Ideas
Ideation Guidelines
Get the full value of the community.
Register a Qlik ID:
Incidents are supported through our Chat, by clicking Chat Now on any Support Page across Qlik Community.
To raise a new issue, all you need to do is chat with us. With this, we can:
Log in to manage and track your active cases in the Case Portal. (click)
Please note: to create a new case, it is easiest to do so via our chat (see above). Our chat will log your case through a series of guided intake questions.
When creating a case, you will be prompted to enter problem type and issue level. Definitions shared below:
Select Account Related for issues with your account, licenses, downloads, or payment.
Select Product Related for technical issues with Qlik products and platforms.
If your issue is account related, you will be asked to select a Priority level:
Select Medium/Low if the system is accessible, but there are some functional limitations that are not critical in the daily operation.
Select High if there are significant impacts on normal work or performance.
Select Urgent if there are major impacts on business-critical work or performance.
If your issue is product related, you will be asked to select a Severity level:
Severity 1: Qlik production software is down or not available, but not because of scheduled maintenance and/or upgrades.
Severity 2: Major functionality is not working in accordance with the technical specifications in documentation or significant performance degradation is experienced so that critical business operations cannot be performed.
Severity 3: Any error that is not Severity 1 Error or Severity 2 Issue. For more information, visit our Qlik Support Policy.
If you require a support case escalation, you have two options:
When other Support Channels are down for maintenance, please contact us via phone for high severity production-down concerns.
A collection of useful links.
Qlik Cloud Status Page
Keep up to date with Qlik Cloud's status.
Support Policy
Review our Service Level Agreements and License Agreements.
Live Chat and Case Portal
Your one stop to contact us.
Creating a Qlik Sense Client-Managed connection | Migration Center Help documents all steps needed to create a Qlik Sense Client-Managed connection to the Qlik Analytics Migration Tool.
As a part of the System Requirements (System requirements | Migration Center Help), Qlik advises that the Qlik Sense Proxy service must have a valid third-party certificate.
This article explains the process to follow if no third-party certificate is available; for example, when setting up a test connection in your UAT or test environment. For this example, we will be using the self-signed certificate used by Qlik Sense.
The first challenge we need to overcome is the Not Secure alert when accessing Qlik Sense:
Creating a Qlik Sense Client-Managed connection | Migration Center Help
To establish a connection to the Qlik Analytics Migration Tool in this example, we will be using Method 2 of the recommended steps: Create a virtual proxy using the tool | help.qlik.com.
Is it possible to migrate users and data connections from one Qlik Cloud Analytics tenant to another?
You cannot migrate users and data connections from an existing tenant to a newly purchased tenant.
The following will need to be done:
What about apps and scripts?
Apps can be migrated from one tenant to another using the following Qlik CLI automation: Migrate apps between Qlik Cloud tenants
This tutorial is not exhaustive, and does not migrate other resources such as spaces, automations, data alerts, subscriptions, notes, etc. Qlik offers solutions via Qlik Professional Services for complete tenant to tenant migrations.
For scripts, follow the process of exporting them manually from the old tenant and then importing them to the new tenant. See Exporting scripts.
To make the process easier for you, Qlik's customer support team can link the newly purchased tenant license to a trial tenant, and you can continue to use the trial tenant. The trial tenant will be updated to a Standard, Premium, or Enterprise version after linking the license (depending on which package was purchased).
Qlik Sense Enterprise on Windows can be set up with a central node and multiple rim nodes. See Installing a Qlik Sense rim node.
To remove a rim node at any point after setup:
It is now safe to uninstall the Qlik Sense services or decommission the server. When uninstalling, ensure that you select the Remove Qlik Sense certificates and data folders option.
While Qlik Cloud provides robust data connectivity options through the Data Movement Gateway, some organizations require additional controls to restrict access to the Qlik Cloud Talend platform itself, not only to data connections.
While Qlik Cloud does not currently support full tenant-level access restriction via PrivateLink, it does offer:
This article outlines these available options and limitations for securing tenant access at the platform level.
Content
Yes. Qlik Cloud supports IP allowlisting through Web Integrations, which can be configured to restrict access to the tenant based on specific IP addresses.
See Managing web integrations for details.
Qlik Talend Data Integration supports private connections for tenant-level access. Does Qlik Cloud support a similar, solution, such as Azure or AWS PrivateLink?
No, Qlik Cloud does not support Azure PrivateLink for tenant-level access in the same way Talend Cloud does.
Qlik Cloud offers several security features for tenant access:
See Securing the system.
When using the Data Movement Gateway, Qlik Cloud ensures secure communication through a multi-step cryptographic process:
This architecture ensures that all data movement operations are secure, authenticated, and encrypted end-to-end.
If full tenant isolation via PrivateLink is a critical requirement, please submit a feature request via Qlik Ideation.
After upgrading to Remote Engine 2.13.13, when enabling the option to execute a job from Studio on a remote engine, the process fails due to SSL and PKCS-related errors.
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
SSL Configuration for Talend Studio to Connect with Remote Engine
During the installation of Talend Remote Engine, SSL credentials are automatically generated. To retrieve the keystore password, execute the following command:
cat /opt/TalendRemoteEngine/bin/sysenv
and locate the line
TMC_ENGINE_JOB_SERVER_SSL_KEY_STORE_PASSWORD=<PASSWORD>
The following files are necessary for secure communication between Talend Studio and the Remote Engine:
/opt/TalendRemoteEngine/etc/keystores/jobserver-client-keystore.p12
/opt/TalendRemoteEngine/etc/keystores/jobserver-client-truststore.p12 (Truststore file added with RE 2.13.13)
Transfer these files to your Talend Studio workstation and store them in a dedicated folder.
Edit the Studio startup configuration file, depending on your operating system:
-Dorg.talend.remote.client.ssl.force=true
-Dorg.talend.remote.client.ssl.keyStore=path_to_keystore/jobserver-client-keystore.p12
-Dorg.talend.remote.client.ssl.keyStoreType=PKCS12
-Dorg.talend.remote.client.ssl.keyStorePassword=<password_from_step_1>
-Dorg.talend.remote.client.ssl.keyPassword=<password_from_step_1><
-Dorg.talend.remote.client.ssl.trustStore=path_to_truststore/jobserver-client-truststore.p12
-Dorg.talend.remote.client.ssl.trustStoreType=PKCS12
-Dorg.talend.remote.client.ssl.trustStorePassword=<password_from_step_1>
-Dorg.talend.remote.client.ssl.disablePeerTrust=false
-Dorg.talend.remote.client.ssl.enabled.protocols=TLSv1.2,TLSv1.3
Talend Remote Engine enforces SSL communication by default, ensuring that all interactions with the engine are encrypted. If Studio does not have the appropriate certificates installed, it will be unable to establish a secure connection with the Remote Engine.
The "Enable IP Allowlist" option has been enabled, and several IPs have already been added to the list to restrict access solely to those on the allowlist. However, other IPs are still able to access TMC.
To configure an IP allowlist in Talend Management Console, the user account needs to possess the Security Administrator role.
Only accounts granted the "Users - Manage" permission can bypass the IP allowlist. (This permission is encompassed within the Security Administrator role.).
Once the IP allowlist is enabled, the same user account must take one of the following actions:
Either create additional users without the "Users-Manage" permission, Or remove its own Security Administrator role.
This guarantees that the IP allowlist is effectively enforced for the account.
Consequently, IP addresses not included in the IP allowlist will be unable to connect to TMC, as illustrated below:
Setting up IP allowlist policy to restrict user access
The required Microsoft Excel Driver may not be installed by default.
Open the Windows Registry Editor and navigate to Computer\HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\
?
This file can be directly sourced from the Microsoft Download site. The 64bit version is required.
Example: Microsoft Access Database Engine 2016 Redistributable
If the installer fails with CVRUNTIME140.dll error, cancel the installation.
Obtain a valid CVRUNTIME140.dll and place the file in C:\Windows\System32
A copy of this file is attached to this article.
Run the installer again.
A sample XLS file is attached to this article.
The below should be logged:
Verify that the users have been added
The Attributes are reflected in the user's properties
Errors you may find in the C:\ProgramData\Qlik\Sense\Log\Repository\Trace\<SERVER>_UserManagement_Repository.txt
==> Verify step 5 ; names "name" and "userid" of the columns is important, you cannot change them
The information in this article is provided as-is and to be used at own discretion. Depending on tool(s) used, customization(s), and/or other factors ongoing support on the solution below may not be provided by Qlik Support.
***Changes must be made to all Qlik servers that will not be provided with internet access.***
For servers not connected to the internet, they may be prompted with a pop-up error when browsing in the Hub or in the Data Load Editor with the following errors:
Browser Debug tools may display the following error in the console:
This was originally defined as an issue with the Qlik Sense DataMarket connector executable, which is cryptography signed for authenticity verification, and the .NET Framework's verification procedure when launching an executable includes checking OCSP and Certificate Revocation List information, which means fetching it online if the system doesn't have a fresh cached copy locally.
Even without the QlikData Market being in use, the solutions provided can be deployed when encountering issues with Qlik Sense Enterprise Windows servers that have no internet access. Internet access is recommended.
Only deploy one of the below options.
Option 1 will persist through upgrades, whereas Option 2 would have to be reapplied after every Sense upgrade.
<runtime> <generatePublisherEvidence enabled="false"/> </runtime>
<runtime> <generatePublisherEvidence enabled="false"/> </runtime>
<runtime> <some other key="value"/> <generatePublisherEvidence enabled="false"/> </runtime>Example:
<runtime>
<generatePublisherEvidence enabled="false"/>
</runtime>
<runtime>
<generatePublisherEvidence enabled="false"/>
</runtime>
<runtime>
<some other key="value"/>
<generatePublisherEvidence enabled="false"/>
</runtime>
For Qlik Versions 2.x.x [mid-2016 and older]... this will fully disable Qlik Sense DataMarket:
Node.js comes bundled with Qlik Sense Enterprise on Windows. Its version depends on the Qlik Sense released currently installed.
You can verify the version of any of the third-party integrations Qlik Sense makes use of by:
https://qlikserver.domain.local/api/about/v1/thirdParty
You may want to upgrade node.js, specifically in response to a security vulnerability. To do so, upgrade Qlik Sense Enterprise on Windows. When upgrading Qlik Sense, the currently installed node.exe will be replaced with the version Qlik Sense comes bundled with at this release.
Installing Qlik Sense installs node.exe side-by-side in the following location: C:\Program Files\Qlik\Sense\ServiceDispatcher\Node.
If you install node.js manually it will typically be installed in C:\Program Files\nodejs and the Windows environment variable will point to this location by default (i.e. running node -v to get the version will result in providing the version of node found in C:\Program Files\nodejs).
As Qlik Sense will not register any Windows environment variable for node.js, it will not tamper with any settings affecting already installed node.js instances. Therefore it is safe to upgrade your separate instance of Node.js.
Third-party and middleware software integrated with Qlik Sense Enterprise on Windows
Qlik Direct Access Gateway (DAG) is shown as disconnected.
The Windows server's time lags behind the Qlik Cloud tenant's timezone.
Address the time difference by aligning the Windows server's clock. If necessary, align it to a standard NTP service.
Misaligned time. Without alignment, Qlik Direct Access Gateway will disconnect.
In this article, we detail the 12 steps necessary to successfully configure Qlik Sense Enterprise on Windows after an Active Directory Domain name change or moving Qlik Sense to a new domain.
Depending on how you have configured your platform, not all the steps might be applicable. Before updating any hostname in Qlik Sense, make sure that the original value is using the old domain name. In some case, you may have configured “localhost” or the server name without any reference to the domain so there is no need in these cases to perform any update.
In this scenario we are updating a three-node environment running Qlik Sense February 2021:
The domain has been changed from DOMAIN.local to DOMAIN2.local
The servers mentioned below are already part of the new domain name DOMAIN2.local and their Fully Qualified Domain Name (FQDN) is already updated as followed:
All Qlik Sense services have been stopped on every node.
The first step is to update the postgres.conf file to listen on the correct hostname
Before doing any further changes, it is important to take a backup of your Qlik Sense Platform
Now we update the node names in the database with the new Fully Qualified Domain Name.
UPDATE public."Users"
SET "UserDirectory" = 'DOMAIN2'
WHERE "UserDirectory" = 'DOMAIN';
SELECT * FROM public."Users"
cd "C:\Program Files\Qlik\Sense\NLAppSearch\install"
.\Configure-Service.ps1 QlikServer3.domain2.local 4432 qliksenserepository <qliksenserepository_password>
cd "C:\Program Files\Qlik\Sense\AppDistributionService"
.\Configure-Service.ps1 QlikServer3.domain2.local 4432 qliksenserepository <qliksenserepository_password>
cd "C:\Program Files\Qlik\Sense\HybridDeploymentService"
.\Configure-Service.ps1 QlikServer3.domain2.local 4432 qliksenserepository <qliksenserepository_password>
cd "C:\Program Files\Qlik\Sense\Licenses"
.\Configure-Service.ps1 QlikServer3.domain2.local 4432 qliksenserepository <qliksenserepository_password>
cd "C:\Program Files\Qlik\Sense\NotifierService\install"
.\Configure-Service.ps1 QlikServer3.domain2.local 4432 qliksenserepository <qliksenserepository_password>
cd "C:\Program Files\Qlik\Sense\MobilityRegistrarService\install"
.\Configure-Service.ps1 QlikServer3.domain2.local 4432 qliksenserepository <qliksenserepository_password>
cd "C:\Program Files\Qlik\Sense\PrecedentsService\install"
.\Configure-Service.ps1 QlikServer3.domain2.local 4432 qliksenserepository <qliksenserepository_password>
cd "C:\Program Files\Qlik\Sense\DataPrepService\install"
.\Configure-Service.ps1 QlikServer3.domain2.local 4432 qliksenserepository <qliksenserepository_password>
If you are using the Qlik Logging Service;
cd "C:\Program Files\Qlik\Sense\Logging"
Qlik.Logging.Service.exe validate
cd "C:\Program Files\Qlik\Sense\Logging"
Qlik.Logging.Service.exe update -h QlikServer3.domain2.local
"C:\Program Files\Qlik\Sense\Repository\Repository.exe" -bootstrap -iscentral -restorehostname
If you are syncing your users with a User Directory Connector you will need to change the LDAP path to point to the new domain.
You will need to update the monitoring apps and their associated data connection to use the new Fully Qualified Domain Name
It is possible that you have created rules based on the User Directory. As you have changed the domain name, the user directory has also changed in Qlik Sense so you will need to update those to reflect that.
The information in this article is provided as-is and to be used at own discretion. Depending on tool(s) used, customization(s), and/or other factors ongoing support on the solution below may not be provided by Qlik Support.
Scenario: A task with Sybase ASE as the Source and Confluent Kafka as the Destination.
Requirement: Create a new column with a unique identifier "UUID" to identify the message in Confluent Kafka.
Is there any customization in Qlik Replicate that allows the creation of a unique sequencer for each replicated record per table?
The following transformation is provided as is. For more detailed customization assistance, post your requirement in the Qlik Replicate forum, where your knowledgeable Qlik peers and our active Support Agents can help. If you need direct assistance, contact Qlik's Consulting Services.
You can add a new column and hard-code it to a unique (random) value by using the Transform tab in Table Settings.
Example Expression Value:
substr(lower(hex(randomblob(16))),1,8) || '-' || substr(lower(hex(randomblob(16))),9,4) || '-4' || substr(lower(hex(randomblob(16))),13,3) || '-' || substr('89ab', abs(random()) % 4 + 1, 1) || substr(lower(hex(randomblob(16))),17,3) || '-' || substr(lower(hex(randomblob(16))),21,12)
For more information on transformations, see Defining transformations for a single table/view.
In processing step, under Lineage, you may unable to select the "Allow Lineage collection of this task" check box to enable it when creating or editing your task in Talend Management Console.
To verify your Qlik Talend Cloud License Type
The reason of "Allow Lineage collection of this task" option is not visible when creating tasks in Qlik Talend Management Console is due to the type of license currently in use. The Lineage feature is only available with the Qlik Talend Cloud Enterprise Edition or Qlik Talend Cloud Premium Edition licenses.
For more details please find the links below
Qlik Sense Enterprise on Windows facilitates the export of an Audit from the Qlik Sense Management Console. See Exporting audit query results.
This export works as expected unless the Audit result is filtered by one app and one user. If only one user and one app are used in the filter, the resulting Excel file is empty.
This is a known defect (QCB-32416), which is expected to be fixed in a future release. Review the Qlik Sense Enterprise on Windows Release Notes for details.
Filter by more than one app and one user.
Product Defect ID: QCB-32416
After upgrading to Qlik Sense Enterprise on Windows May 2023 (or later), the Qlik Sense Repository Service may cause CPU usage spikes on the central node. In addition, the central Engine node may show an increased average RAM consumption while a high volume of reloads is being executed.
The Qlik Sense System_Repository log file will read:
"API call to Engine service was successful: The retrieved 'StaticByteSize' value for app 'App-GUID' is: 'Size in bytes' bytes."
Default location of log: C:\ProgramData\Qlik\Sense\Log\Repository\Trace\[Server_Name]_System_Repository.txt
This activity is associated with the ability to see the Base memory size in the Qlik Sense Enterprise Management Console. See Show base memory size of apps in QMC.
The feature to see Base memory size can be disabled. This may require an upgrade and will require downtime as configuration files need to be changed.
Take a backup of your environment before proceeding.
If any issues occur, revert the changes by restoring the backed up files and open a ticket with Support providing the changed versions of repository.exe.config, capabilities.json mentioning this article.
Show base memory size of apps in QMC
QB-22795
QB-24301
Qlik Sense Enterprise on Windows May 2023, August 2023, November 2023, February 2024.
Ever wanted to brand or customize the default Qlik Sense Login page?
The functionality exists, and it's really as simple as just designing your HTML page and 'POSTing' it into your environment.
We've all seen the standard Qlik Sense Login page, this article is all about customizing this page.
This customization is provided as is. Qlik Support cannot provide continued support of the solution. For assistance, reach out to our Professional Services or engage in our active Integrations forum.
To customize the page:
{
"id": "8817d7ab-e9b2-4816-8332-f8cb869b27c2",
"createdDate": "2020-03-23T15:39:33.540Z",
"modifiedDate": "2020-05-20T18:46:13.995Z",
"modifiedByUserName": "INTERNAL\\sa_api",
"customProperties": [],
"settings": {
"id": "8817d7ab-e9b2-4816-8332-f8cb869b27c2",
"createdDate": "2020-03-23T15:39:33.540Z",
"modifiedDate": "2020-05-20T18:46:13.995Z",
"modifiedByUserName": "INTERNAL\\sa_api",
"listenPort": 443,
"allowHttp": true,
"unencryptedListenPort": 80,
"authenticationListenPort": 4244,
"kerberosAuthentication": false,
"unencryptedAuthenticationListenPort": 4248,
"sslBrowserCertificateThumbprint": "e6ee6df78f9afb22db8252cbeb8ad1646fa14142",
"keepAliveTimeoutSeconds": 10,
"maxHeaderSizeBytes": 16384,
"maxHeaderLines": 100,
"logVerbosity": {
"id": "8817d7ab-e9b2-4816-8332-f8cb869b27c2",
"createdDate": "2020-03-23T15:39:33.540Z",
"modifiedDate": "2020-05-20T18:46:13.995Z",
"modifiedByUserName": "INTERNAL\\sa_api",
"logVerbosityAuditActivity": 4,
"logVerbosityAuditSecurity": 4,
"logVerbosityService": 4,
"logVerbosityAudit": 4,
"logVerbosityPerformance": 4,
"logVerbositySecurity": 4,
"logVerbositySystem": 4,
"schemaPath": "ProxyService.Settings.LogVerbosity"
},
"useWsTrace": false,
"performanceLoggingInterval": 5,
"restListenPort": 4243,
"virtualProxies": [
{
"id": "58d03102-656f-4075-a436-056d81144c1f",
"prefix": "",
"description": "Central Proxy (Default)",
"authenticationModuleRedirectUri": "",
"sessionModuleBaseUri": "",
"loadBalancingModuleBaseUri": "",
"useStickyLoadBalancing": false,
"loadBalancingServerNodes": [
{
"id": "f1d26a45-b0dd-4be1-91d0-34c698e18047",
"name": "Central",
"hostName": "qlikdemo",
"temporaryfilepath": "C:\\Users\\qservice\\AppData\\Local\\Temp\\",
"roles": [
{
"id": "2a6a0d52-9bb4-4e74-b2b2-b597fa4e4470",
"definition": 0,
"privileges": null
},
{
"id": "d2c56b7b-43fd-44ad-a12f-59e778ce575a",
"definition": 1,
"privileges": null
},
{
"id": "37244424-96ae-4fe5-9522-088a0e9679e3",
"definition": 2,
"privileges": null
},
{
"id": "b770516e-fe8a-43a8-a7a4-318984ee4bd6",
"definition": 3,
"privileges": null
},
{
"id": "998b7df8-195f-4382-af18-4e0c023e7f1c",
"definition": 4,
"privileges": null
},
{
"id": "2a5325f4-649b-4147-b0b1-f568be1988aa",
"definition": 5,
"privileges": null
}
],
"serviceCluster": {
"id": "b07fc5f2-f09e-4676-9de6-7d73f637b962",
"name": "ServiceCluster",
"privileges": null
},
"privileges": null
}
],
"authenticationMethod": 0,
"headerAuthenticationMode": 0,
"headerAuthenticationHeaderName": "",
"headerAuthenticationStaticUserDirectory": "",
"headerAuthenticationDynamicUserDirectory": "",
"anonymousAccessMode": 0,
"windowsAuthenticationEnabledDevicePattern": "Windows",
"sessionCookieHeaderName": "X-Qlik-Session",
"sessionCookieDomain": "",
"additionalResponseHeaders": "",
"sessionInactivityTimeout": 30,
"extendedSecurityEnvironment": false,
"websocketCrossOriginWhiteList": [
"qlikdemo",
"qlikdemo.local",
"qlikdemo.paris.lan"
],
"defaultVirtualProxy": true,
"tags": [],
"samlMetadataIdP": "",
"samlHostUri": "",
"samlEntityId": "",
"samlAttributeUserId": "",
"samlAttributeUserDirectory": "",
"samlAttributeSigningAlgorithm": 0,
"samlAttributeMap": [],
"jwtAttributeUserId": "",
"jwtAttributeUserDirectory": "",
"jwtAudience": "",
"jwtPublicKeyCertificate": "",
"jwtAttributeMap": [],
"magicLinkHostUri": "",
"magicLinkFriendlyName": "",
"samlSlo": false,
"privileges": null
},
{
"id": "a8b561ec-f4dc-48a1-8bf1-94772d9aa6cc",
"prefix": "header",
"description": "header",
"authenticationModuleRedirectUri": "",
"sessionModuleBaseUri": "",
"loadBalancingModuleBaseUri": "",
"useStickyLoadBalancing": false,
"loadBalancingServerNodes": [
{
"id": "f1d26a45-b0dd-4be1-91d0-34c698e18047",
"name": "Central",
"hostName": "qlikdemo",
"temporaryfilepath": "C:\\Users\\qservice\\AppData\\Local\\Temp\\",
"roles": [
{
"id": "2a6a0d52-9bb4-4e74-b2b2-b597fa4e4470",
"definition": 0,
"privileges": null
},
{
"id": "d2c56b7b-43fd-44ad-a12f-59e778ce575a",
"definition": 1,
"privileges": null
},
{
"id": "37244424-96ae-4fe5-9522-088a0e9679e3",
"definition": 2,
"privileges": null
},
{
"id": "b770516e-fe8a-43a8-a7a4-318984ee4bd6",
"definition": 3,
"privileges": null
},
{
"id": "998b7df8-195f-4382-af18-4e0c023e7f1c",
"definition": 4,
"privileges": null
},
{
"id": "2a5325f4-649b-4147-b0b1-f568be1988aa",
"definition": 5,
"privileges": null
}
],
"serviceCluster": {
"id": "b07fc5f2-f09e-4676-9de6-7d73f637b962",
"name": "ServiceCluster",
"privileges": null
},
"privileges": null
}
],
"authenticationMethod": 1,
"headerAuthenticationMode": 1,
"headerAuthenticationHeaderName": "userid",
"headerAuthenticationStaticUserDirectory": "QLIKDEMO",
"headerAuthenticationDynamicUserDirectory": "",
"anonymousAccessMode": 0,
"windowsAuthenticationEnabledDevicePattern": "Windows",
"sessionCookieHeaderName": "X-Qlik-Session-Header",
"sessionCookieDomain": "",
"additionalResponseHeaders": "",
"sessionInactivityTimeout": 30,
"extendedSecurityEnvironment": false,
"websocketCrossOriginWhiteList": [
"qlikdemo",
"qlikdemo.local"
],
"defaultVirtualProxy": false,
"tags": [],
"samlMetadataIdP": "",
"samlHostUri": "",
"samlEntityId": "",
"samlAttributeUserId": "",
"samlAttributeUserDirectory": "",
"samlAttributeSigningAlgorithm": 0,
"samlAttributeMap": [],
"jwtAttributeUserId": "",
"jwtAttributeUserDirectory": "",
"jwtAudience": "",
"jwtPublicKeyCertificate": "",
"jwtAttributeMap": [],
"magicLinkHostUri": "",
"magicLinkFriendlyName": "",
"samlSlo": false,
"privileges": null
}
],
"formAuthenticationPageTemplate": "",
"loggedOutPageTemplate": "",
"errorPageTemplate": "",
"schemaPath": "ProxyService.Settings"
},
"serverNodeConfiguration": {
"id": "f1d26a45-b0dd-4be1-91d0-34c698e18047",
"name": "Central",
"hostName": "qlikdemo",
"temporaryfilepath": "C:\\Users\\qservice\\AppData\\Local\\Temp\\",
"roles": [
{
"id": "2a6a0d52-9bb4-4e74-b2b2-b597fa4e4470",
"definition": 0,
"privileges": null
},
{
"id": "d2c56b7b-43fd-44ad-a12f-59e778ce575a",
"definition": 1,
"privileges": null
},
{
"id": "37244424-96ae-4fe5-9522-088a0e9679e3",
"definition": 2,
"privileges": null
},
{
"id": "b770516e-fe8a-43a8-a7a4-318984ee4bd6",
"definition": 3,
"privileges": null
},
{
"id": "998b7df8-195f-4382-af18-4e0c023e7f1c",
"definition": 4,
"privileges": null
},
{
"id": "2a5325f4-649b-4147-b0b1-f568be1988aa",
"definition": 5,
"privileges": null
}
],
"serviceCluster": {
"id": "b07fc5f2-f09e-4676-9de6-7d73f637b962",
"name": "ServiceCluster",
"privileges": null
},
"privileges": null
},
"tags": [],
"privileges": null,
"schemaPath": "ProxyService"
}
If your login page does not work and you need to revert back to the default, simply do a GET call on your proxy service, and set formAuthenticationPageTemplate back to an empty string:
formAuthenticationPageTemplate": ""
The following article describes how to use Postman to make GET and PUT requests and verify the JSON output.
The information in this article is provided as-is and to be used at own discretion. Depending on tool(s) used, customization(s), and/or other factors ongoing support on the solution below may not be provided by Qlik Support.
Steps
Copy the Certificates to the server/computer where Postman is used.
Open Postman and go to menu "Settings" , In the General tab set "SSL certificate verification" to Off, In the Certificates Tab select "add Certificate" and set the path to the exported certs. The CRT file path will correspond to the path where the client.pem certificate resides, the Key file to the cleint_key.pem
Now Postman is ready to be used, this article describes how to make a GET and PUT request to add a tag to a sheet.
It is suggested to visit our Help site to verify the documentation about the API, in this case we will use
get /app/object/{id}
put /app/object/{id}
The URL would be
https://qlikserver1.domain.local:4242/qrs/app/object/aa73b22a-c933-4c26-aa2b-1e0947d708ab?xrfkey=12345678qwertyui
[Server] + [API end point] + [xrfkey]
The necessary headers would be :
X-Qlik-xrfkey = 12345678qwertyui
(this value needs to be the same provided in the URL xrfkey), for questions about xrfkey headers please refer to the following information: Using Xrfkey headers
X-Qlik-User = UserDirectory=DOMAIN;UserId=Administrator (this value would be the user to make the API calls)
Note that Postman will include xrfkey in the parameters section once the URL is pasted in the GET response.
Please refer to the following pictures to verify the configurations are correct.
GET
Postman Headers
Once is configured you can click the "Send" button, the Response will look like this:
PUT
In order to send the PUT method it is necessary to copy the JSON Response from the previous GET call and modify the necessary information, this need to be done carefully otherwise the request will return an error. The details can be found In our Qlik Site under "Updating an entry" section included here.
Sample (It will be necessary to include a comma if there are already tags associated to the object)
{
"id": "376e0283-3e5b-4968-bc55-2a19c4ba3b17",
"name": "Tag3",
"privileges": null
}
Please refer to the following pictures to verify that the configurations are correct
PUT Header
PUT Body
Once the information is correct, select the "Send" button, and you should get a 200 OK Status.
We can verify the chances in the Qlik Sense Management Console, now the tag shows 1 Occurrence and the sheet shows the new tag.
When using Talend Administration Center, you may encounter the following message
Error: License token will expire in xx days
This message refers to the license token expiring, not the license itself.
Talend Administration Center has Internet access
Talend Administration Center has no Internet access
If TAC does not have Internet connectivity, follow these steps
Your license token is now validated manually.
Talend Administration Center (TAC) requires an Internet connection during license token validation and the license token must be periodically validated.
If TAC has Internet access, license token validation is automatic. If not, use the manual validation process by generating a request, retrieving the validation token from another machine, and pasting it back into TAC.
If a Replicate task fails with the following error:
00008696: 2021-01-20T10:06:02:964052 [SOURCE_CAPTURE ]E: Cannot find archived REDO log with sequence '7204', thread '1' (oracdc_reader.c:412)
OR
00005624: 2020-06-02T17:05:23:665747 [SOURCE_CAPTURE ]E: Oracle CDC stopped [1022301] (oracdc_merger.c:1178)
Replicate is always reading V$archived_log to get the archived REDO information. The redo log needs to have an active/available status from the V$archived_log
This means that Replicate is complaining that it cannot find the redo archive file.
Either
1. the Replicate Oracle Source Endpoint should be using a different Oracle DEST_ID;
2. the file does not exist on disk; or
3. the file exists but that the internal Oracle metadata in v$archived_log view says that it's not available.
The simplest explanation is that the redo log could just have been deleted before Replicate was able to process it.
We recommend to at least keep it for 72 hours in case of unexpected weekend issues.
What you can do as well if you encounter an issue like this, is to restore the oracle redo log and then resume the task.
If the redo log cannot be restored, then you need to reload the entire task.
The event payloads emitted by the Qlik Cloud webhooks service are changing. Qlik is replacing a legacy event format with a new cloud event format.
Any legacy events (such as anything not already cloud event compliant) will be updated to a temporary hybrid event containing both legacy and cloud event payloads. This will start on or after November 3, 2025.
Please consider updating your integrations to use the new fields once added.
A formal deprecation with at least a 6-month notice will be provided via the Qlik Developer changelog. After that period, hybrid events will be replaced entirely by cloud events.
Webhook automations in Qlik Automate will not be impacted at this time.
The webhooks service in Qlik Cloud enables you to subscribe to notifications when your Qlik Cloud tenant generates specific events.
At the time of writing, the following legacy events are available:
Service | Event name | Event type | When is event generated |
API keys | API key validation failed | com.qlik.v1.api-key.validation.failed | The tenant tries to use an API key which is expired or revoked |
Apps (Analytics apps) | App created | com.qlik.v1.app.created | A new analytics app is created |
Apps (Analytics apps) | App deleted | com.qlik.v1.app.deleted | An analytics app is deleted |
Apps (Analytics apps) | App exported | com.qlik.v1.app.exported | An analytics app is exported |
Apps (Analytics apps) | App reload finished | com.qlik.v1.app.reload.finished | An analytics app has finished refreshing on an analytics engine (not it may not be saved yet) |
Apps (Analytics apps) | App published | com.qlik.v1.app.published | An analytics app is published from a personal or shared space to a managed space |
Apps (Analytics apps) | App data updated | com.qlik.v1.app.data.updated | An analytics app is saved to persistent storage |
Automations (Automate) | Automation created | com.qlik.v1.automation.created | A new automation is created |
Automations (Automate) | Automation deleted | com.qlik.v1.automation.deleted | An automation is deleted |
Automations (Automate) | Automation updated | com.qlik.v1.automation.updated | An automation has been updated and saved to persistent storage |
Automations (Automate) | Automation run started | com.qlik.v1.automation.run.started | An automation run began execution |
Automations (Automate) | Automation run failed | com.qlik.v1.automation.run.failed | An automation run failed |
Automations (Automate) | Automation run ended | com.qlik.v1.automation.run.ended | An automation run finished successfully |
Reloads (Analytics reloads) | Reload finished | com.qlik.v1.reload.finished | An analytics app has been refreshed and saved |
Users | User created | com.qlik.v1.user.created | A new user is created |
Users | User deleted | com.qlik.v1.user.deleted | A user is deleted |
Any events not listed above will remain as-is, as they already adhere to the cloud event format.
Each event will change to a new structure. The details included in the payloads will remain the same, but some attributes will be available in a different location.
The changes being made:
data
object.cloudEventsVersion
is replaced by specversion
. For most events this will be from cloudEventsVersion: 0.1
to specversion: 1.0+
.contentType
is replaced by datacontentype
to describe the media type of the data object.eventId
is replaced by id
.eventTime
is replaced by time
.eventTypeVersion
is not present in the future schema.eventType
is replaced by type
.extensions.actor
is replaced by authtype
and authclaims
.extensions.updates
is replaced by data._updates
extensions.meta
, and any other direct objects on extensions
are replaced by equivalents in data
where relevant.extensions
object will be moved to the root and renamed to be lowercase if needed, such astenantId
,userId
,spaceId
, etc.
This is the current legacy payload of the automation created event:
{
"cloudEventsVersion": "0.1",
"source": "com.qlik/automations",
"contentType": "application/json",
"eventId": "f4c26f04-18a4-4032-974b-6c7c39a59816",
"eventTime": "2025-09-01T09:53:17.920Z",
"eventTypeVersion": "1.0.0",
"eventType": "com.qlik.v1.automation.created",
"extensions": {
"ownerId": "637390ef6541614d3a88d6c3",
"spaceId": "685a770f2c31b9e482814a4f",
"tenantId": "BL4tTJ4S7xrHTcq0zQxQrJ5qB1_Q6cSo",
"userId": "637390ef6541614d3a88d6c3"
},
"data": {
"connectorIds": {},
"containsBillable": null,
"createdAt": "2025-09-01T09:53:17.000000Z",
"description": null,
"endpointIds": {},
"id": "cae31848-2825-4841-bc88-931be2e3d01a",
"lastRunAt": null,
"lastRunStatus": null,
"name": "hello world",
"ownerId": "637390ef6541614d3a88d6c3",
"runMode": "manual",
"schedules": {},
"snippetIds": {},
"spaceId": "685a770f2c31b9e482814a4f",
"state": "available",
"tenantId": "BL4tTJ4S7xrHTcq0zQxQrJ5qB1_Q6cSo",
"updatedAt": "2025-09-01T09:53:17.000000Z"
}
}
This will be the temporary hybrid event for automation created:
{
// cloud event fields
"id": "f4c26f04-18a4-4032-974b-6c7c39a59816",
"time": "2025-09-01T09:53:17.920Z",
"type": "com.qlik.v1.automation.created",
"userid": "637390ef6541614d3a88d6c3",
"ownerid": "637390ef6541614d3a88d6c3",
"tenantid": "BL4tTJ4S7xrHTcq0zQxQrJ5qB1_Q6cSo",
"description": "hello world",
"datacontenttype": "application/json",
"specversion": "1.0.2",
// legacy event fields
"eventId": "f4c26f04-18a4-4032-974b-6c7c39a59816",
"eventTime": "2025-09-01T09:53:17.920Z",
"eventType": "com.qlik.v1.automation.created",
"extensions": {
"userId": "637390ef6541614d3a88d6c3",
"spaceId": "685a770f2c31b9e482814a4f",
"ownerId": "637390ef6541614d3a88d6c3",
"tenantId": "BL4tTJ4S7xrHTcq0zQxQrJ5qB1_Q6cSo",
},
"contentType": "application/json",
"eventTypeVersion": "1.0.0",
"cloudEventsVersion": "0.1",
// unchanged event fields
"data": {
"connectorIds": {},
"containsBillable": null,
"createdAt": "2025-09-01T09:53:17.000000Z",
"description": null,
"endpointIds": {},
"id": "cae31848-2825-4841-bc88-931be2e3d01a",
"lastRunAt": null,
"lastRunStatus": null,
"name": "hello world",
"ownerId": "637390ef6541614d3a88d6c3",
"runMode": "manual",
"schedules": {},
"snippetIds": {},
"spaceId": "685a770f2c31b9e482814a4f",
"state": "available",
"tenantId": "BL4tTJ4S7xrHTcq0zQxQrJ5qB1_Q6cSo",
"updatedAt": "2025-09-01T09:53:17.000000Z"
},
"source": "com.qlik/automations"
}