qliksense-api
v1.4.0
Published
Best Wrapper For Qlik Sense API, This package is designed to be the simplest way possible to connect to Qlik Sense.
Downloads
59
Maintainers
Readme
Best Wrapper For Qlik Sense API
Getting tired of trying to connect to Qlik Sense API? The easiest way to connect with Qlik Sense. A lightful wrapper for Qlik Sense made by developer to developer :)
IMPORTANT - This package is under construction, feel free to contribuite, open issues or contact.
Getting Started
This package is designed to be the simplest way possible to connect to Qlik.
Prerequisites
- Export Qlik Sense Certificates (qlik help documentation)
Installing
npm i qliksense-api --save
Starting
const qlikapi = require('qliksense-api')
let qlik = qlikapi.createClient({
key: "./certificates/client_key.pem", //path to certificates
cert: "./certificates/client.pem",
ca: "./certificates/root.pem"
})
QSR
Get /about Path
qlik.getAbout().then((res)=>{
console.log(res)
})
or Async/Await :
let res = await qlik.getAbout()
console.log(res)
Get Functions:
- qlik.getApps()
- qlik.getHealthCheck()
- qlik.getExecutionResult()
- qlik.getTaskLog(taskId) // return the last execution log
- qlik.getReloadTaskToken(taskId, fileReferenceID) //return the execution reload task token
- qlik.getExeutionLog(reloadTaskToken, taskName) // return the execution log
- qlik.doReloadTask('taskName') // reload task by name
- ... More to come
Post Functions:
- qlik.uploadApp(name, filePath) // return the new uploaded app
- qlik.replaceApp(id,appid) // Replace an app, identified by {appid}, with the app identified by {id}.
- qlik.publishApp(id,streamId, name) // Publish an existing app, identified by {id}, to the stream identified by {streamid}. Optionally, provide a {name} for the app.
- qlik.deleteApp(id) // Delete the app by id
Get QSR Generic Path
You can see the full list of QSR endpoints path here
const path = 'repositoryservice/full'
qlik.getQsr(path).then((res)=>{
console.log(res)
})
or Async/Await :
const path = 'repositoryservice/full'
let res = await qlik.getQsr(path)
console.log(res)
Post QSR Generic Path
const path = 'task/start/synchronous?name=test'
qlik.postQsr('path').then((res)=>{
console.log(res)
})
QPS
Generating Session
The session solution allows the Qlik Sense Proxy Service (QPS) to use a session from an external system to validate who the user is.
let username = 'userExemple'
let userRepository = 'repositoryExemple'
qlik.generateSession(userRepository, username).then((res)=>{
console.log(res)
})
or Async/Await :
let username = 'userExemple'
let userRepository = 'repositoryExemple'
let res = await qlik.generateSession(userRepository, username)
console.log(res)
Get Session
let sessionId = 'ed0671860b754b92df7c2e9c6cea4a7f'
qlik.getSession(sessionId).then((res)=>{
console.log(res)
})
or Async/Await :
let sessionId = 'ed0671860b754b92df7c2e9c6cea4a7f'
let res = await qlik.getSession(sessionId)
console.log(res)
Delete Session
let sessionId = 'ed0671860b754b92df7c2e9c6cea4a7f'
qlik.deleteSession(sessionId).then((res)=>{
console.log(res)
})
or Async/Await :
let sessionId = 'ed0671860b754b92df7c2e9c6cea4a7f'
let res = await qlik.deleteSession(sessionId)
console.log(res)
Qlik Engine API
The Qlik Engine API consists of a set of objects representing apps, lists, and so on.
Global Class
All the methods available can be found here
let method = 'GetDocList'
let params = []
qlik.engine(method, params).then((res)=>{
console.log(res)
})
or Async/Await:
let method = 'GetDocList'
let params = []
let res = await qlik.engine(method)
console.log(res)
App Class
All the methods available can be found here
let appId = '9586b50f-4df2-400e-8b4a-69874a7dcc3e'
let method = 'GetAllInfos'
let params = []
qlik.openDoc(appId, method, params).then((res)=>{
console.log(res)
})
or Async/Await:
let appId = '9586b50f-4df2-400e-8b4a-69874a7dcc3e'
let method = 'GetAllInfos'
let params = []
let res = await qlik.openDoc(appId, method, params)
console.log(res)
Authors
- Rodolfo Viola - Initial work
See also the list of contributors who participated in this project.
License
This project is licensed under the MIT License - see the LICENSE.md file for details