Knowledgebases
Knowledgebases are collections of individual data sources, that are indexed for use in generating responses to user questions via Assistants for Qlik Answers.
Endpoints
Returns a list of all knowledgebases the user has access to.
Facts
| Rate limit | Tier 1 (1000 requests per minute) |
| Categories |
Query Parameters
- limitinteger
The number of knowledgebases to get.
- nextstring
Optional parameter to request the next page.
- prevstring
Optional parameter to request the previous page.
- sortstring
Optional resource field name to sort on, case insensitive, eg. name. Can be prefixed with - to set descending order, defaults to ascending.
Can be one of: "NAME""-NAME""DESCRIPTION""-DESCRIPTION""CREATED""-CREATED""UPDATED""-UPDATED"
- countTotalbooleanDeprecated
Optional parameter to request total count for query
Responses
200
Successful Operation.
- application/jsonobject
application/json properties
- dataarray of objectsRequired
data properties
- idstringRequired
Unique identifier of the knowledgebase
- namestringRequired
Name of the knowledgebase
- tagsarray of stringsRequired
List of tags associated with the knowledgebase.
- ownerIdstringRequired
The unique identifier of the knowledgebase owner
- spaceIdstringRequired
The unique identifier of the space containing the knowledgebase
- tenantIdstring
Unique identifier of the tenant
- createdAtstringRequired
Datetime when the knowledgebase was created
- createdBystringRequired
Unique identifier of the user who created the knowledgebase
- updatedAtstringRequired
Datetime when the knowledgebase was updated
- updatedBystringRequired
The unique identifier of the user who last updated the knowledgebase
- descriptionstringRequired
Description of the knowledgebase
- lastIndexedAtstring
Datetime when the knowledgebase was last indexed
- contentSummaryobjectRequired
contentSummary properties
- fileSizeintegerRequired
- textSizeintegerRequired
- fileCountintegerRequired
- effectivePagesintegerRequired
-
- advancedIndexingboolean
User opt in to advanced parsing and chunking pipeline. Default is false, which will run legacy parsing and chunking.
- selectedErrorsCountinteger
Number of selected errors to store in the case of any failed datasources.
-
- linksobject
links properties
- nextobject
next properties
- hrefstring
-
- prevobject
prev properties
- hrefstring
-
- selfobject
self properties
- hrefstring
-
-
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.getKnowledgebases({})This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases" \-H "Authorization: Bearer <access_token>"Example Response
{ "data": [ { "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "name": "Organization wide knowledgebase", "tags": [ "Red", "Sales" ], "ownerId": "507f191e810c19729de860ea", "spaceId": "507f191e810c19729de860ea", "tenantId": "507f191e810c19729de860ea", "createdAt": "2021-10-02T14:20:50.52Z", "createdBy": "507f191e810c19729de860ea", "updatedAt": "2021-10-02T14:20:50.52Z", "updatedBy": "507f191e810c19729de860ea", "description": "This knowledgebase is used for...", "lastIndexedAt": "2021-10-02T14:20:50.52Z", "contentSummary": { "fileSize": 42, "textSize": 42, "fileCount": 42, "effectivePages": 42 }, "advancedIndexing": true, "selectedErrorsCount": 10 } ], "links": { "next": { "href": "string" }, "prev": { "href": "string" }, "self": { "href": "string" } }}Creates a new knowledgebase.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Request Body
- application/jsonobject
application/json properties
- namestringRequired
Name of the knowledgebase
- tagsarray of strings
List of tags for knowledgebase
- spaceIdstringRequired
Unique identifier of the space to contain the knowledgebase
- descriptionstring
Description of the knowledgebase
- advancedIndexingboolean
User opt in to advanced parsing and chunking pipeline. Default is false, which will run legacy parsing and chunking.
- selectedErrorsCountinteger
Number of selected errors to store in the case of any failed datasources. Optional value with a default of 10.
-
Responses
201
Successfully created a new knowledgebase.
- application/jsonobject
application/json properties
- idstringRequired
Unique identifier of the knowledgebase
- namestringRequired
Name of the knowledgebase
- tagsarray of stringsRequired
List of tags associated with the knowledgebase.
- ownerIdstringRequired
The unique identifier of the knowledgebase owner
- spaceIdstringRequired
The unique identifier of the space containing the knowledgebase
- tenantIdstring
Unique identifier of the tenant
- createdAtstringRequired
Datetime when the knowledgebase was created
- createdBystringRequired
Unique identifier of the user who created the knowledgebase
- updatedAtstringRequired
Datetime when the knowledgebase was updated
- updatedBystringRequired
The unique identifier of the user who last updated the knowledgebase
- descriptionstringRequired
Description of the knowledgebase
- lastIndexedAtstring
Datetime when the knowledgebase was last indexed
- contentSummaryobjectRequired
contentSummary properties
- fileSizeintegerRequired
- textSizeintegerRequired
- fileCountintegerRequired
- effectivePagesintegerRequired
-
- advancedIndexingboolean
User opt in to advanced parsing and chunking pipeline. Default is false, which will run legacy parsing and chunking.
- selectedErrorsCountinteger
Number of selected errors to store in the case of any failed datasources.
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.createKnowledgebase({ description: 'This knowledgebase is used for...', name: 'Organization wide knowledgebase', selectedErrorsCount: 10, spaceId: '507f191e810c19729de860ea', tags: ['Red', 'Sales'],})This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases" \-X POST \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '{"name":"Organization wide knowledgebase","tags":["Red","Sales"],"spaceId":"507f191e810c19729de860ea","description":"This knowledgebase is used for...","advancedIndexing":true,"selectedErrorsCount":10}'Example Response
{ "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "name": "Organization wide knowledgebase", "tags": [ "Red", "Sales" ], "ownerId": "507f191e810c19729de860ea", "spaceId": "507f191e810c19729de860ea", "tenantId": "507f191e810c19729de860ea", "createdAt": "2021-10-02T14:20:50.52Z", "createdBy": "507f191e810c19729de860ea", "updatedAt": "2021-10-02T14:20:50.52Z", "updatedBy": "507f191e810c19729de860ea", "description": "This knowledgebase is used for...", "lastIndexedAt": "2021-10-02T14:20:50.52Z", "contentSummary": { "fileSize": 42, "textSize": 42, "fileCount": 42, "effectivePages": 42 }, "advancedIndexing": true, "selectedErrorsCount": 10}Retrieves a specific knowledgebase.
Facts
| Rate limit | Tier 1 (1000 requests per minute) |
| Categories |
Path Parameters
- idstringRequired
The id of the knowledgebase to retrieve.
Responses
200
Successfully retrieved the knowledgebase.
- application/jsonobject
application/json properties
- idstringRequired
Unique identifier of the knowledgebase
- namestringRequired
Name of the knowledgebase
- tagsarray of stringsRequired
List of tags associated with the knowledgebase.
- ownerIdstringRequired
The unique identifier of the knowledgebase owner
- spaceIdstringRequired
The unique identifier of the space containing the knowledgebase
- tenantIdstring
Unique identifier of the tenant
- createdAtstringRequired
Datetime when the knowledgebase was created
- createdBystringRequired
Unique identifier of the user who created the knowledgebase
- updatedAtstringRequired
Datetime when the knowledgebase was updated
- updatedBystringRequired
The unique identifier of the user who last updated the knowledgebase
- descriptionstringRequired
Description of the knowledgebase
- lastIndexedAtstring
Datetime when the knowledgebase was last indexed
- contentSummaryobjectRequired
contentSummary properties
- fileSizeintegerRequired
- textSizeintegerRequired
- fileCountintegerRequired
- effectivePagesintegerRequired
-
- advancedIndexingboolean
User opt in to advanced parsing and chunking pipeline. Default is false, which will run legacy parsing and chunking.
- selectedErrorsCountinteger
Number of selected errors to store in the case of any failed datasources.
- datasourcesarray of objects
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
datasources properties
- idstringRequired
Unique identifier of the datasource
- namestring
Name of the datasource
- typestringRequired
Can be one of: "file""web""database"
- spaceIdstring
The unique identifier of the space containing the datasource
- chunkingobject
chunking properties
- sizeintegerRequired
Size of chunks
- typestringRequired
Chunking strategy
- overlapintegerRequired
Chunk overlap, should be less than size
- separatorsarray of stringsRequired
List of separators to chunk by
- keepSeparatorbooleanRequired
Allows to keep or remove separators used
-
- syncInfoobject
syncInfo properties
- statusstringRequired
Sync status
Can be one of: "neverIndexed""progress""completed""completedWithError""toAdd""toDelete"
- startedAtstringRequired
Datetime when the sync task was started
- lastSyncIdstring
sync Id
- completedAtstringRequired
Datetime when the sync task was completed
-
- fileConfigobject
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
fileConfig properties
- filesarray of strings
- scopeobject
Scope for the file crawler.
scope properties
- depthintegerRequired
The number of levels of sub folders that should be considered
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- extensionsarray of strings
list of file extensions to be considered
- maxFilesTotalinteger
Total number of files that should be considered
- modifiedAfterstring
only files modified after this time should be indexed. If set older files will be removed from index.
- maxFilesPerFolderinteger
Maximum number of files per folder that should be considered
-
- folderstring
Root folder for traversing.
- userIdstringRequired
userId of the owner of the datasource fileConfig
- connectionIdstringRequired
connection id to be used to retrieve the raw data
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
- sourceCountinteger
The number of times that a datasource was referenced as a source in an answer
- crawlerConfigobject
Configuration for webcrawling
crawlerConfig properties
- urlstringRequired
Seed URL that crawling will start on.
- scopeobjectRequired
Scope for th webcrawler
scope properties
- depthintegerRequired
The number of levels of links the crawler will traverse
- scopestringRequired
The scope that the crawler will crawl.
Can be one of: "all""domain""subdomain"
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- maxLinksinteger
Maximum number of links per page that will be extracted
- downloadFilesboolean
if set to true crawler will try to download and index other supported content like pdf:s from links
-
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
- indexPatternsarray of objects
Pattern matching links to index
indexPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
- contentSummaryobjectRequired
contentSummary properties
- fileSizeintegerRequired
- textSizeintegerRequired
- fileCountintegerRequired
- effectivePagesintegerRequired
-
-
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The operation failed due to insufficient permissions.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The knowledgebase is not found
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.getKnowledgebase( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d',)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}" \-H "Authorization: Bearer <access_token>"Example Response
{ "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "name": "Organization wide knowledgebase", "tags": [ "Red", "Sales" ], "ownerId": "507f191e810c19729de860ea", "spaceId": "507f191e810c19729de860ea", "tenantId": "507f191e810c19729de860ea", "createdAt": "2021-10-02T14:20:50.52Z", "createdBy": "507f191e810c19729de860ea", "updatedAt": "2021-10-02T14:20:50.52Z", "updatedBy": "507f191e810c19729de860ea", "description": "This knowledgebase is used for...", "lastIndexedAt": "2021-10-02T14:20:50.52Z", "contentSummary": { "fileSize": 42, "textSize": 42, "fileCount": 42, "effectivePages": 42 }, "advancedIndexing": true, "selectedErrorsCount": 10, "datasources": [ { "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "name": "string", "type": "file", "spaceId": "507f191e810c19729de860ea", "chunking": { "size": 1024, "type": "recursive", "overlap": 20, "separators": [ "\n", ".", " " ], "keepSeparator": false }, "syncInfo": { "status": "neverIndexed", "startedAt": "2021-10-02T14:20:50.52Z", "lastSyncId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "completedAt": "2021-10-02T14:20:50.52Z" }, "fileConfig": { "files": [ "string" ], "scope": { "depth": 1, "maxSize": 1000000, "extensions": [ "pdf" ], "maxFilesTotal": 50, "modifiedAfter": "2021-10-02T14:20:50.52Z", "maxFilesPerFolder": 100 }, "folder": "folderA/folderB", "userId": "507f191e810c19729de860ea", "connectionId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "crawlPatterns": [ { "type": "include", "pattern": "(.*)example(.*)" } ] }, "sourceCount": 10, "crawlerConfig": { "url": "http://www.example.com", "scope": { "depth": 1, "scope": "all", "maxSize": 1000000, "maxLinks": 100, "downloadFiles": false }, "crawlPatterns": [ { "type": "include", "pattern": "(.*)example(.*)" } ], "indexPatterns": [ { "type": "include", "pattern": "(.*)example(.*)" } ] }, "contentSummary": { "fileSize": 42, "textSize": 42, "fileCount": 42, "effectivePages": 42 } } ]}Updates properties of a specific knowledgebase.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Header Parameters
- if-matchstring
Optional header to do conditional updates. Using the Etag value that was returned the last time the knowledgebase was fetched.
Path Parameters
- idstringRequired
The knowledgebase id.
Request Body
Required- application/jsonarray of objects
An array of JSON Patch documents
application/json properties
- opstringRequired
The operation to be performed.
Can be one of: "REPLACE"
- pathstringRequired
A JSON Pointer.
- valuestring|number|booleanRequired
The value to be used for this operation.
One of:- string
- number
- boolean
-
-
Responses
204
Knowledgebase updated successfully.
400
Bad request. Payload could not be parsed to a JSON Patch or Patch operations are invalid.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
401
Not authorized.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The operation failed due to insufficient permissions.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The term to patch was not found.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
429
Request has been rate limited.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.patchKnowledgebase( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', [ { op: 'replace', path: '/name', value: 'new name', },
{ op: 'replace', path: '/description', value: 'new description', }, ],)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}" \-X PATCH \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '[{"op":"replace","path":"/name","value":"new name"},{"op":"replace","path":"/description","value":"new description"}]'Deletes a knowledgebase and all of its resources.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Path Parameters
- idstringRequired
The id of the knowledgebase to delete.
Responses
204
Successful Operation.
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The operation failed due to insufficient permissions.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The knowledgebase is not found
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.deleteKnowledgebase( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d',)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}" \-X DELETE \-H "Authorization: Bearer <access_token>"Execute search with either SIMPLE or FULL mode. SIMPLE does semantic search while FULL will also do reranking and include keyword based chunks. Use topN to control number of chunks in response, max limit is 50. Default to 5.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Path Parameters
- idstringRequired
The ID of the knowledgebase
Request Body
- application/jsonobject
application/json properties
- topNinteger
Number of chunks to return in results.
- promptstringRequired
Query text or question to search.
- searchModestring
Search mode to use. Allowed values:
SIMPLEandFULL. Default:SIMPLE.Can be one of: "SIMPLE""FULL"
-
Responses
200
Chunks retrieved successfully.
- application/jsonobject
application/json properties
- chunksarray of objectsRequired
Retrieved document chunks
chunks properties
- textstringRequired
Text content of the chunk
- chunkMetaobjectRequired
Metadata about the chunk
chunkMeta properties
- sourcestringRequired
source of chunk
- chunkIdstringRequired
chunkId
- documentIdstringRequired
documentId of chunk
- datasourceIdstringRequired
datasourceId of chunk
- knowledgeBaseIdstringRequired
knowledgeBaseId of chunk
-
- tfidfScorenumber
Score from keyword search
- searchSourcestring
search method for the chunk, e.g.
semantic search,keyword searchorsemantic and keyword search - semanticScorenumber
Similarity score from embedding match
-
-
400
The request is in incorrect format
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Custom error codes
- AE-1 - Internal processing error
- AE-2 - Incorrect request
- AE-3 - Authentication issue
- AE-4 - Prompt is rejected
- AE-5 - Resource is not found
- AE-6 - API usage rate limit is exceeded
- AE-7 - Method is not allowed
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Custom error codes
- AE-1 - Internal processing error
- AE-2 - Incorrect request
- AE-3 - Authentication issue
- AE-4 - Prompt is rejected
- AE-5 - Resource is not found
- AE-6 - API usage rate limit is exceeded
- AE-7 - Method is not allowed
- titlestring
- detailstring
-
- traceIdstring
-
404
Knowledgebase is not found.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Custom error codes
- AE-1 - Internal processing error
- AE-2 - Incorrect request
- AE-3 - Authentication issue
- AE-4 - Prompt is rejected
- AE-5 - Resource is not found
- AE-6 - API usage rate limit is exceeded
- AE-7 - Method is not allowed
- titlestring
- detailstring
-
- traceIdstring
-
405
Method is not allowed.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Custom error codes
- AE-1 - Internal processing error
- AE-2 - Incorrect request
- AE-3 - Authentication issue
- AE-4 - Prompt is rejected
- AE-5 - Resource is not found
- AE-6 - API usage rate limit is exceeded
- AE-7 - Method is not allowed
- titlestring
- detailstring
-
- traceIdstring
-
500
Prompt processing error.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Custom error codes
- AE-1 - Internal processing error
- AE-2 - Incorrect request
- AE-3 - Authentication issue
- AE-4 - Prompt is rejected
- AE-5 - Resource is not found
- AE-6 - API usage rate limit is exceeded
- AE-7 - Method is not allowed
- titlestring
- detailstring
-
- traceIdstring
-
// qlik-api has not implemented support for `POST /api/v1/knowledgebases/{id}/actions/search` yet.// In the meantime, you can use fetch like this:
const response = await fetch( '/api/v1/knowledgebases/{id}/actions/search', { method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ topN: 20, prompt: 'What is LLM?', searchMode: 'SIMPLE', }), },)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/actions/search" \-X POST \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '{"topN":20,"prompt":"What is LLM?","searchMode":"SIMPLE"}'Example Response
{ "chunks": [ { "text": "LLM stands for Large Language Model", "chunkMeta": { "source": "string", "chunkId": "string", "documentId": "string", "datasourceId": "string", "knowledgeBaseId": "string" }, "tfidfScore": 0.9, "searchSource": "string", "semanticScore": 0.63 } ]}Adds a datasource to a knowledgebase.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Path Parameters
- idstringRequired
The id of the knowledgebase.
Request Body
- application/jsonobject
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
application/json properties
- namestringRequired
Name of the datasource
- typestringRequired
Can be one of: "file""web""database"
- fileConfigobject
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
fileConfig properties
- filesarray of strings
- scopeobject
Scope for the file crawler.
scope properties
- depthintegerRequired
The number of levels of sub folders that should be considered
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- extensionsarray of strings
list of file extensions to be considered
- maxFilesTotalinteger
Total number of files that should be considered
- modifiedAfterstring
only files modified after this time should be indexed. If set older files will be removed from index.
- maxFilesPerFolderinteger
Maximum number of files per folder that should be considered
-
- folderstring
Root folder for traversing.
- userIdstringRequired
userId of the owner of the datasource fileConfig
- connectionIdstringRequired
connection id to be used to retrieve the raw data
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
- crawlerConfigobject
Configuration for webcrawling
crawlerConfig properties
- urlstringRequired
Seed URL that crawling will start on.
- scopeobjectRequired
Scope for th webcrawler
scope properties
- depthintegerRequired
The number of levels of links the crawler will traverse
- scopestringRequired
The scope that the crawler will crawl.
Can be one of: "all""domain""subdomain"
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- maxLinksinteger
Maximum number of links per page that will be extracted
- downloadFilesboolean
if set to true crawler will try to download and index other supported content like pdf:s from links
-
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
- indexPatternsarray of objects
Pattern matching links to index
indexPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
-
Responses
201
Successfully added a datasource to the knowledgebase.
- application/jsonobject
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
application/json properties
- idstringRequired
Unique identifier of the datasource
- namestring
Name of the datasource
- typestringRequired
Can be one of: "file""web""database"
- spaceIdstring
The unique identifier of the space containing the datasource
- chunkingobject
chunking properties
- sizeintegerRequired
Size of chunks
- typestringRequired
Chunking strategy
- overlapintegerRequired
Chunk overlap, should be less than size
- separatorsarray of stringsRequired
List of separators to chunk by
- keepSeparatorbooleanRequired
Allows to keep or remove separators used
-
- syncInfoobject
syncInfo properties
- statusstringRequired
Sync status
Can be one of: "neverIndexed""progress""completed""completedWithError""toAdd""toDelete"
- startedAtstringRequired
Datetime when the sync task was started
- lastSyncIdstring
sync Id
- completedAtstringRequired
Datetime when the sync task was completed
-
- fileConfigobject
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
fileConfig properties
- filesarray of strings
- scopeobject
Scope for the file crawler.
scope properties
- depthintegerRequired
The number of levels of sub folders that should be considered
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- extensionsarray of strings
list of file extensions to be considered
- maxFilesTotalinteger
Total number of files that should be considered
- modifiedAfterstring
only files modified after this time should be indexed. If set older files will be removed from index.
- maxFilesPerFolderinteger
Maximum number of files per folder that should be considered
-
- folderstring
Root folder for traversing.
- userIdstringRequired
userId of the owner of the datasource fileConfig
- connectionIdstringRequired
connection id to be used to retrieve the raw data
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
- sourceCountinteger
The number of times that a datasource was referenced as a source in an answer
- crawlerConfigobject
Configuration for webcrawling
crawlerConfig properties
- urlstringRequired
Seed URL that crawling will start on.
- scopeobjectRequired
Scope for th webcrawler
scope properties
- depthintegerRequired
The number of levels of links the crawler will traverse
- scopestringRequired
The scope that the crawler will crawl.
Can be one of: "all""domain""subdomain"
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- maxLinksinteger
Maximum number of links per page that will be extracted
- downloadFilesboolean
if set to true crawler will try to download and index other supported content like pdf:s from links
-
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
- indexPatternsarray of objects
Pattern matching links to index
indexPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
- contentSummaryobjectRequired
contentSummary properties
- fileSizeintegerRequired
- textSizeintegerRequired
- fileCountintegerRequired
- effectivePagesintegerRequired
-
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The knowledgebase is not found.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.createKnowledgebaseDatasource( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', { crawlerConfig: { crawlPatterns: [ { pattern: '(.*)example(.*)', type: 'include', }, ], indexPatterns: [ { pattern: '(.*)example(.*)', type: 'include', }, ], scope: { depth: 1, maxLinks: 100, maxSize: 1000000, scope: 'all', }, url: 'http://www.example.com', }, fileConfig: { connectionId: 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', crawlPatterns: [ { pattern: '(.*)example(.*)', type: 'include', }, ], files: ['string'], folder: 'folderA/folderB', scope: { depth: 1, extensions: ['pdf'], maxFilesPerFolder: 100, maxFilesTotal: 50, maxSize: 1000000, modifiedAfter: '2021-10-02T14:20:50.52Z', }, userId: '507f191e810c19729de860ea', }, name: 'string', type: 'file', },)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources" \-X POST \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '{"name":"string","type":"file","fileConfig":{"files":["string"],"scope":{"depth":1,"maxSize":1000000,"extensions":["pdf"],"maxFilesTotal":50,"modifiedAfter":"2021-10-02T14:20:50.52Z","maxFilesPerFolder":100},"folder":"folderA/folderB","userId":"507f191e810c19729de860ea","connectionId":"f256b3e4-03e0-4f74-ae46-a4d43882ee5d","crawlPatterns":[{"type":"include","pattern":"(.*)example(.*)"}]},"crawlerConfig":{"url":"http://www.example.com","scope":{"depth":1,"scope":"all","maxSize":1000000,"maxLinks":100,"downloadFiles":false},"crawlPatterns":[{"type":"include","pattern":"(.*)example(.*)"}],"indexPatterns":[{"type":"include","pattern":"(.*)example(.*)"}]}}'Example Response
{ "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "name": "string", "type": "file", "spaceId": "507f191e810c19729de860ea", "chunking": { "size": 1024, "type": "recursive", "overlap": 20, "separators": [ "\n", ".", " " ], "keepSeparator": false }, "syncInfo": { "status": "neverIndexed", "startedAt": "2021-10-02T14:20:50.52Z", "lastSyncId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "completedAt": "2021-10-02T14:20:50.52Z" }, "fileConfig": { "files": [ "string" ], "scope": { "depth": 1, "maxSize": 1000000, "extensions": [ "pdf" ], "maxFilesTotal": 50, "modifiedAfter": "2021-10-02T14:20:50.52Z", "maxFilesPerFolder": 100 }, "folder": "folderA/folderB", "userId": "507f191e810c19729de860ea", "connectionId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "crawlPatterns": [ { "type": "include", "pattern": "(.*)example(.*)" } ] }, "sourceCount": 10, "crawlerConfig": { "url": "http://www.example.com", "scope": { "depth": 1, "scope": "all", "maxSize": 1000000, "maxLinks": 100, "downloadFiles": false }, "crawlPatterns": [ { "type": "include", "pattern": "(.*)example(.*)" } ], "indexPatterns": [ { "type": "include", "pattern": "(.*)example(.*)" } ] }, "contentSummary": { "fileSize": 42, "textSize": 42, "fileCount": 42, "effectivePages": 42 }}Updates a specified datasource.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Path Parameters
- datasourceIdstringRequired
The id of the datasource to update.
- idstringRequired
The id of a knowledgebase.
Request Body
- application/jsonobject
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
application/json properties
- idstringRequired
Unique identifier of the datasource
- namestring
Name of the datasource
- typestringRequired
Can be one of: "file""web""database"
- spaceIdstring
The unique identifier of the space containing the datasource
- chunkingobject
chunking properties
- sizeintegerRequired
Size of chunks
- typestringRequired
Chunking strategy
- overlapintegerRequired
Chunk overlap, should be less than size
- separatorsarray of stringsRequired
List of separators to chunk by
- keepSeparatorbooleanRequired
Allows to keep or remove separators used
-
- syncInfoobject
syncInfo properties
- lastSyncIdstring
sync Id
-
- fileConfigobject
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
fileConfig properties
- filesarray of strings
- scopeobject
Scope for the file crawler.
scope properties
- depthintegerRequired
The number of levels of sub folders that should be considered
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- extensionsarray of strings
list of file extensions to be considered
- maxFilesTotalinteger
Total number of files that should be considered
- modifiedAfterstring
only files modified after this time should be indexed. If set older files will be removed from index.
- maxFilesPerFolderinteger
Maximum number of files per folder that should be considered
-
- folderstring
Root folder for traversing.
- userIdstringRequired
userId of the owner of the datasource fileConfig
- connectionIdstringRequired
connection id to be used to retrieve the raw data
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
- sourceCountinteger
The number of times that a datasource was referenced as a source in an answer
- crawlerConfigobject
Configuration for webcrawling
crawlerConfig properties
- urlstringRequired
Seed URL that crawling will start on.
- scopeobjectRequired
Scope for th webcrawler
scope properties
- depthintegerRequired
The number of levels of links the crawler will traverse
- scopestringRequired
The scope that the crawler will crawl.
Can be one of: "all""domain""subdomain"
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- maxLinksinteger
Maximum number of links per page that will be extracted
- downloadFilesboolean
if set to true crawler will try to download and index other supported content like pdf:s from links
-
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
- indexPatternsarray of objects
Pattern matching links to index
indexPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
- contentSummaryobjectRequired
contentSummary properties
- fileSizeintegerRequired
- textSizeintegerRequired
- fileCountintegerRequired
- effectivePagesintegerRequired
-
-
Responses
200
Successfully updated the datasource.
- application/jsonobject
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
application/json properties
- idstringRequired
Unique identifier of the datasource
- namestring
Name of the datasource
- typestringRequired
Can be one of: "file""web""database"
- spaceIdstring
The unique identifier of the space containing the datasource
- chunkingobject
chunking properties
- sizeintegerRequired
Size of chunks
- typestringRequired
Chunking strategy
- overlapintegerRequired
Chunk overlap, should be less than size
- separatorsarray of stringsRequired
List of separators to chunk by
- keepSeparatorbooleanRequired
Allows to keep or remove separators used
-
- syncInfoobject
syncInfo properties
- statusstringRequired
Sync status
Can be one of: "neverIndexed""progress""completed""completedWithError""toAdd""toDelete"
- startedAtstringRequired
Datetime when the sync task was started
- lastSyncIdstring
sync Id
- completedAtstringRequired
Datetime when the sync task was completed
-
- fileConfigobject
Specification on where to fetch the files for. This is required when the type == 'file'. Only one of path and files can be set. Path takes precedence if both are provided.
fileConfig properties
- filesarray of strings
- scopeobject
Scope for the file crawler.
scope properties
- depthintegerRequired
The number of levels of sub folders that should be considered
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- extensionsarray of strings
list of file extensions to be considered
- maxFilesTotalinteger
Total number of files that should be considered
- modifiedAfterstring
only files modified after this time should be indexed. If set older files will be removed from index.
- maxFilesPerFolderinteger
Maximum number of files per folder that should be considered
-
- folderstring
Root folder for traversing.
- userIdstringRequired
userId of the owner of the datasource fileConfig
- connectionIdstringRequired
connection id to be used to retrieve the raw data
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
- sourceCountinteger
The number of times that a datasource was referenced as a source in an answer
- crawlerConfigobject
Configuration for webcrawling
crawlerConfig properties
- urlstringRequired
Seed URL that crawling will start on.
- scopeobjectRequired
Scope for th webcrawler
scope properties
- depthintegerRequired
The number of levels of links the crawler will traverse
- scopestringRequired
The scope that the crawler will crawl.
Can be one of: "all""domain""subdomain"
- maxSizeinteger
Optional parameter. Max size of downloaded files in bytes
- maxLinksinteger
Maximum number of links per page that will be extracted
- downloadFilesboolean
if set to true crawler will try to download and index other supported content like pdf:s from links
-
- crawlPatternsarray of objects
Pattern matching links to crawl
crawlPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
- indexPatternsarray of objects
Pattern matching links to index
indexPatterns properties
- typestringRequired
include or exclude
Can be one of: "include""exclude"
- patternstringRequired
Regex patterna to filter links on
-
-
- contentSummaryobjectRequired
contentSummary properties
- fileSizeintegerRequired
- textSizeintegerRequired
- fileCountintegerRequired
- effectivePagesintegerRequired
-
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The operation failed due to insufficient permissions.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The record is not found
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
// qlik-api has not implemented support for `PUT /api/v1/knowledgebases/{id}/datasources/{datasourceId}` yet.// In the meantime, you can use fetch like this:
const response = await fetch( '/api/v1/knowledgebases/{id}/datasources/{datasourceId}', { method: 'PUT', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ id: 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', name: 'string', type: 'file', spaceId: '507f191e810c19729de860ea', chunking: { size: 1024, type: 'recursive', overlap: 20, separators: ['\n', '.', ' '], keepSeparator: false, }, syncInfo: { lastSyncId: 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', }, fileConfig: { files: ['string'], scope: { depth: 1, maxSize: 1000000, extensions: ['pdf'], maxFilesTotal: 50, modifiedAfter: '2021-10-02T14:20:50.52Z', maxFilesPerFolder: 100, }, folder: 'folderA/folderB', userId: '507f191e810c19729de860ea', connectionId: 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', crawlPatterns: [ { type: 'include', pattern: '(.*)example(.*)', }, ], }, sourceCount: 10, crawlerConfig: { url: 'http://www.example.com', scope: { depth: 1, scope: 'all', maxSize: 1000000, maxLinks: 100, downloadFiles: false, }, crawlPatterns: [ { type: 'include', pattern: '(.*)example(.*)', }, ], indexPatterns: [ { type: 'include', pattern: '(.*)example(.*)', }, ], }, contentSummary: { fileSize: 42, textSize: 42, fileCount: 42, effectivePages: 42, }, }), },)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}" \-X PUT \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '{"id":"f256b3e4-03e0-4f74-ae46-a4d43882ee5d","name":"string","type":"file","spaceId":"507f191e810c19729de860ea","chunking":{"size":1024,"type":"recursive","overlap":20,"separators":["\n","."," "],"keepSeparator":false},"syncInfo":{"lastSyncId":"f256b3e4-03e0-4f74-ae46-a4d43882ee5d"},"fileConfig":{"files":["string"],"scope":{"depth":1,"maxSize":1000000,"extensions":["pdf"],"maxFilesTotal":50,"modifiedAfter":"2021-10-02T14:20:50.52Z","maxFilesPerFolder":100},"folder":"folderA/folderB","userId":"507f191e810c19729de860ea","connectionId":"f256b3e4-03e0-4f74-ae46-a4d43882ee5d","crawlPatterns":[{"type":"include","pattern":"(.*)example(.*)"}]},"sourceCount":10,"crawlerConfig":{"url":"http://www.example.com","scope":{"depth":1,"scope":"all","maxSize":1000000,"maxLinks":100,"downloadFiles":false},"crawlPatterns":[{"type":"include","pattern":"(.*)example(.*)"}],"indexPatterns":[{"type":"include","pattern":"(.*)example(.*)"}]},"contentSummary":{"fileSize":42,"textSize":42,"fileCount":42,"effectivePages":42}}'Example Response
{ "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "name": "string", "type": "file", "spaceId": "507f191e810c19729de860ea", "chunking": { "size": 1024, "type": "recursive", "overlap": 20, "separators": [ "\n", ".", " " ], "keepSeparator": false }, "syncInfo": { "status": "neverIndexed", "startedAt": "2021-10-02T14:20:50.52Z", "lastSyncId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "completedAt": "2021-10-02T14:20:50.52Z" }, "fileConfig": { "files": [ "string" ], "scope": { "depth": 1, "maxSize": 1000000, "extensions": [ "pdf" ], "maxFilesTotal": 50, "modifiedAfter": "2021-10-02T14:20:50.52Z", "maxFilesPerFolder": 100 }, "folder": "folderA/folderB", "userId": "507f191e810c19729de860ea", "connectionId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "crawlPatterns": [ { "type": "include", "pattern": "(.*)example(.*)" } ] }, "sourceCount": 10, "crawlerConfig": { "url": "http://www.example.com", "scope": { "depth": 1, "scope": "all", "maxSize": 1000000, "maxLinks": 100, "downloadFiles": false }, "crawlPatterns": [ { "type": "include", "pattern": "(.*)example(.*)" } ], "indexPatterns": [ { "type": "include", "pattern": "(.*)example(.*)" } ] }, "contentSummary": { "fileSize": 42, "textSize": 42, "fileCount": 42, "effectivePages": 42 }}Deletes a specified datasource and all its resources.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Path Parameters
- datasourceIdstringRequired
The id of the datasource to delete.
- idstringRequired
The id of the knowledgebase the datasource belongs to.
Responses
204
Successful Operation.
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The operation failed due to insufficient permissions.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The knowledgebase is not found
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.deleteKnowledgebaseDatasource( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d',)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}" \-X DELETE \-H "Authorization: Bearer <access_token>"Cancels ongoing sync for a specified datasource.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Path Parameters
- datasourceIdstringRequired
The id of the datasource to cancel sync for.
- idstringRequired
The id of the knowledgebase the datasource belongs to.
Responses
200
Successfully cancelled sync.
- application/jsonobject
Response when a datasource sync is started, contains the sync Id
application/json properties
- idstringRequired
Unique identifier of the sync
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The resource does not exist.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.cancelKnowledgebaseDatasource( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d',)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}/actions/cancel" \-X POST \-H "Authorization: Bearer <access_token>"Example Response
{ "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d"}Downloads a specified reference.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Path Parameters
- datasourceIdstringRequired
The id of the datasource to download from.
- idstringRequired
The id of the knowledgebase the datasource belongs to.
Request Body
- application/jsonobject
application/json properties
- pathstringRequired
file path to the file to downlaod.
-
Responses
200
Download a file from a datasource.
- application/jsonobject
Download information for the file.
application/json properties
- urlstringRequired
URL to download the file.
- namestringRequired
The requested file name.
- spaceIdstringRequired
Space id the file belongs in.
- fileSizeintegerRequired
Size of downloaded file.
- mimeTypestringRequired
The mimetype of the file.
- lastUpdatedAtstringRequired
Date for last time the file was modified.
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The resource does not exist.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.downloadKnowledgebaseDatasource( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', { path: 'folder/file.pdf' },)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}/actions/download" \-X POST \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '{"path":"folder/file.pdf"}'Example Response
{ "url": "/v1/temp-contents/65f4287d785c400fe6d1e861", "name": "stories/content/billy.txt", "spaceId": "507f191e810c19729de860ea", "fileSize": 542, "mimeType": "text/plain", "lastUpdatedAt": "2020-04-16T23:17:28Z"}Starts syncing a specified datasource to a specified knowledgebase index.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Query Parameters
- migrateboolean
Optional parameter to migrate indexed files to docdetails collection
Path Parameters
- datasourceIdstringRequired
The id of the datasource to sync.
- idstringRequired
The id of the knowledgebase the datasource belongs to.
Responses
202
Successfully started sync.
- application/jsonobject
Response when a datasource sync is started, contains the sync Id
application/json properties
- idstringRequired
Unique identifier of the sync
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The resource does not exist.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.syncKnowledgebaseDatasource( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', {},)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}/actions/sync" \-X POST \-H "Authorization: Bearer <access_token>"Example Response
{ "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d"}Retrieves sync history for a specified datasource in a knowledgebase. Returns a 404 if there is no sync history, or if the calling user doesn't have access to the datasource.
Facts
| Rate limit | Tier 1 (1000 requests per minute) |
| Categories |
Query Parameters
- limitinteger
The number of knowledgebases to get.
- nextstring
Optional parameter to request the next page.
- prevstring
Optional parameter to request the previous page.
- sortstring
Optional resource field name to sort on, case insensitive, eg. name. Can be prefixed with - to set descending order, defaults to ascending.
Can be one of: "COMPLETED""-COMPLETED"
Path Parameters
- datasourceIdstringRequired
The id of the datasource.
- idstringRequired
The id of the knowledgebase the datasource belongs to.
Responses
200
List of sync items ordered by the completed time.
- application/jsonobject
application/json properties
- dataarray of objectsRequired
data properties
- idstringRequired
sync id
- statusstringRequired
Sync status
Can be one of: "neverIndexed""progress""completed""completedWithError"
- docStatsobjectRequired
Summary of documents processed
docStats properties
- addedintegerRequired
- errorsintegerRequired
- deletedintegerRequired
- updatedintegerRequired
- deltaBytesintegerRequired
- deltaTextSizeintegerRequired
- largestFileSizeintegerRequired
- deltaEffectivePagesintegerRequired
- totalBytesProcessedintegerRequired
-
- startedAtstringRequired
Datetime when the sync task was started
- completedAtstring
Datetime when the sync task was completed
- triggerTypestringRequired
Datasource trigger type, was it manually or automatically synced
- connectionIdstringRequired
Connection id that the datasource used
- datasourceIdstringRequired
datasource id
- selectedErrorsarray of strings
populated with up to the first selectedErrorsCount errors if there were any during sync
-
- metaobject
meta properties
- countTotalinteger
-
- linksobject
links properties
- nextobject
next properties
- hrefstring
-
- prevobject
prev properties
- hrefstring
-
- selfobject
self properties
- hrefstring
-
-
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The datasource is not found, the datasource has no sync history (no syncs have been run), or the calling user doesn't have access to this datasource in the knowledgebase.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.getKnowledgebaseDatasourceHistories( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', {},)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}/histories" \-H "Authorization: Bearer <access_token>"Example Response
{ "data": [ { "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "status": [ "neverIndexed | progress | completed | completedWithError" ], "docStats": { "added": 1, "errors": 0, "deleted": 0, "updated": 0, "deltaBytes": 0, "deltaTextSize": 0, "largestFileSize": 123044444, "deltaEffectivePages": 0, "totalBytesProcessed": 123044444 }, "startedAt": "2021-10-02T14:20:50.52Z", "completedAt": "2021-10-02T14:20:50.52Z", "triggerType": [ "manual | schedule" ], "connectionId": "ee6a390c-5d33-11e8-9c2d-fa7ae01bbebc", "datasourceId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "selectedErrors": [ "unsupported file extension" ] } ], "meta": { "countTotal": 42 }, "links": { "next": { "href": "string" }, "prev": { "href": "string" }, "self": { "href": "string" } }}Retrieves detailed sync history for a specified datasource.
Facts
Path Parameters
- datasourceIdstringRequired
The id of the datasource.
- idstringRequired
The id of the knowledgebase the datasource belongs to.
- syncIdstringRequired
The sync identifier.
Responses
200
List of sync items ordered by the start time.
- application/jsonobject
application/json properties
- idstringRequired
document Id
- errorstring
error if one happened during sync
- actionstringRequired
acion performed
Can be one of: "add""delete""update"
- chunksinteger
number of chunks
- sourcestringRequired
Source of the document
- syncIdstringRequired
sync Id
- durationobject
duration properties
- chunkintegerRequired
- embedintegerRequired
- parseintegerRequired
- storeintegerRequired
- downloadintegerRequired
-
- fileSizeinteger
file size
- syncedAtstringRequired
Datetime when the sync task was executed
- chunkSizeinteger
chunk size
- explicitPagesintegerRequired
page count
- fileStartedAtstring
Datetime when the file processing started
- fileCompletedAtstring
Datetime when the file processing finished
- fileLastModifiedstring
Datetime when the file was last modified
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The resource does not exist.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.getKnowledgebaseDatasourceHistory( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d',)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}/histories/{syncId}" \-H "Authorization: Bearer <access_token>"Example Response
{ "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "error": "unsupported file extension", "action": "add", "chunks": 10, "source": "myfile.pdf", "syncId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "duration": { "chunk": 0, "embed": 996, "parse": 0, "store": 3653363805, "download": 207 }, "fileSize": 123044444, "syncedAt": "2021-10-02T14:20:50.52Z", "chunkSize": 14721, "explicitPages": 42, "fileStartedAt": "2021-10-02T14:20:50.52Z", "fileCompletedAt": "2021-10-02T14:21:50.52Z", "fileLastModified": "2024-02-16T20:06:02Z"}Returns a datasource schedule.
Facts
| Rate limit | Tier 1 (1000 requests per minute) |
| Categories |
Path Parameters
- datasourceIdstringRequired
The id of the datasource the schedule belongs to.
- idstringRequired
The id of the knowledgebase the schedule belongs to.
Responses
200
Successfully created a schedule.
- application/jsonobject
application/json properties
- ownerIdstringRequired
- spaceIdstring
- tenantIdstringRequired
- calendarsarray of objectsRequired
An event specification relative to the calendar, similar to a traditional cron specification.
calendars properties
- hourarray of objectsRequired
Hour range to match (0-23). Default matches 0
hour properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- yeararray of objectsRequired
Year range to match. Default matches all years
year properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- montharray of objectsRequired
Month range to match (1-12). Default matches all months
month properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- minutearray of objectsRequired
Minute range to match (0-59). Default matches 0
minute properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- secondarray of objectsRequired
Second range to match (0-59). Default matches 0
second properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- commentstringRequired
Description of the intention of this schedule
- dayOfWeekarray of objectsRequired
DayOfWeek range to match (0-6; 0 is Sunday). Default matches all days of the week
dayOfWeek properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- dayOfMontharray of objectsRequired
DayOfMonth range to match (1-31). Default matches all days
dayOfMonth properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
-
- intervalsarray of objects
For example, an
everyof 1 hour withoffsetof zero would match every hour, on the hour. The sameeverybut anoffsetof 19 minutes would match everyxx:19:00.intervals properties
- everystringRequired
The period to repeat the interval
- offsetstring
A fixed offset added to the intervals period. Optional, defaults to 0
-
- datasourceIdstring
- knowledgebaseIdstringRequired
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The resource does not exist.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.getKnowledgebaseDatasourceSchedule( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d',)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}/schedules" \-H "Authorization: Bearer <access_token>"Example Response
{ "ownerId": "507f191e810c19729de860ed", "spaceId": "507f191e810c19729de860ec", "tenantId": "507f191e810c19729de860eb", "calendars": [ { "hour": [ { "end": 42, "step": 1, "start": 42 } ], "year": [ { "end": 42, "step": 1, "start": 42 } ], "month": [ { "end": 42, "step": 1, "start": 42 } ], "minute": [ { "end": 42, "step": 1, "start": 42 } ], "second": [ { "end": 42, "step": 1, "start": 42 } ], "comment": "string", "dayOfWeek": [ { "end": 42, "step": 1, "start": 42 } ], "dayOfMonth": [ { "end": 42, "step": 1, "start": 42 } ] } ], "intervals": [ { "every": "5h30m", "offset": "0s" } ], "datasourceId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "knowledgebaseId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d"}Creates or updates a specified datasource schedule.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Path Parameters
- datasourceIdstringRequired
The id of the datasource the schedule belongs to.
- idstringRequired
The id of the knowledgebase the schedule belongs to.
Request Body
- application/jsonobject
application/json properties
- calendarsarray of objects
An event specification relative to the calendar, similar to a traditional cron specification.
calendars properties
- hourarray of objectsRequired
Hour range to match (0-23). Default matches 0
hour properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- yeararray of objectsRequired
Year range to match. Default matches all years
year properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- montharray of objectsRequired
Month range to match (1-12). Default matches all months
month properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- minutearray of objectsRequired
Minute range to match (0-59). Default matches 0
minute properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- secondarray of objectsRequired
Second range to match (0-59). Default matches 0
second properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- commentstringRequired
Description of the intention of this schedule
- dayOfWeekarray of objectsRequired
DayOfWeek range to match (0-6; 0 is Sunday). Default matches all days of the week
dayOfWeek properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- dayOfMontharray of objectsRequired
DayOfMonth range to match (1-31). Default matches all days
dayOfMonth properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
-
- intervalsarray of objects
For example, an
everyof 1 hour withoffsetof zero would match every hour, on the hour. The sameeverybut anoffsetof 19 minutes would match everyxx:19:00.intervals properties
- everystringRequired
The period to repeat the interval
- offsetstring
A fixed offset added to the intervals period. Optional, defaults to 0
-
-
Responses
200
Successfully created a schedule.
- application/jsonobject
application/json properties
- ownerIdstringRequired
- spaceIdstring
- tenantIdstringRequired
- calendarsarray of objectsRequired
An event specification relative to the calendar, similar to a traditional cron specification.
calendars properties
- hourarray of objectsRequired
Hour range to match (0-23). Default matches 0
hour properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- yeararray of objectsRequired
Year range to match. Default matches all years
year properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- montharray of objectsRequired
Month range to match (1-12). Default matches all months
month properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- minutearray of objectsRequired
Minute range to match (0-59). Default matches 0
minute properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- secondarray of objectsRequired
Second range to match (0-59). Default matches 0
second properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- commentstringRequired
Description of the intention of this schedule
- dayOfWeekarray of objectsRequired
DayOfWeek range to match (0-6; 0 is Sunday). Default matches all days of the week
dayOfWeek properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- dayOfMontharray of objectsRequired
DayOfMonth range to match (1-31). Default matches all days
dayOfMonth properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
-
- intervalsarray of objects
For example, an
everyof 1 hour withoffsetof zero would match every hour, on the hour. The sameeverybut anoffsetof 19 minutes would match everyxx:19:00.intervals properties
- everystringRequired
The period to repeat the interval
- offsetstring
A fixed offset added to the intervals period. Optional, defaults to 0
-
- datasourceIdstring
- knowledgebaseIdstringRequired
-
201
Successfully created a schedule.
- application/jsonobject
application/json properties
- ownerIdstringRequired
- spaceIdstring
- tenantIdstringRequired
- calendarsarray of objectsRequired
An event specification relative to the calendar, similar to a traditional cron specification.
calendars properties
- hourarray of objectsRequired
Hour range to match (0-23). Default matches 0
hour properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- yeararray of objectsRequired
Year range to match. Default matches all years
year properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- montharray of objectsRequired
Month range to match (1-12). Default matches all months
month properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- minutearray of objectsRequired
Minute range to match (0-59). Default matches 0
minute properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- secondarray of objectsRequired
Second range to match (0-59). Default matches 0
second properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- commentstringRequired
Description of the intention of this schedule
- dayOfWeekarray of objectsRequired
DayOfWeek range to match (0-6; 0 is Sunday). Default matches all days of the week
dayOfWeek properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
- dayOfMontharray of objectsRequired
DayOfMonth range to match (1-31). Default matches all days
dayOfMonth properties
- endinteger
End of the range (inclusive). If end < start, then end is interpreted as equal to start. Optional, defaulted to Start
- stepinteger
Step to be take between each value. Optional, defaulted to 1
- startintegerRequired
Start of the range (inclusive)
-
-
- intervalsarray of objects
For example, an
everyof 1 hour withoffsetof zero would match every hour, on the hour. The sameeverybut anoffsetof 19 minutes would match everyxx:19:00.intervals properties
- everystringRequired
The period to repeat the interval
- offsetstring
A fixed offset added to the intervals period. Optional, defaults to 0
-
- datasourceIdstring
- knowledgebaseIdstringRequired
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The resource does not exist.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.createKnowledgebaseDatasourceSchedule( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', { calendars: [ { comment: 'string', dayOfMonth: [ { end: 42, start: 42, step: 1 }, ], dayOfWeek: [ { end: 42, start: 42, step: 1 }, ], hour: [{ end: 42, start: 42, step: 1 }], minute: [{ end: 42, start: 42, step: 1 }], month: [{ end: 42, start: 42, step: 1 }], second: [{ end: 42, start: 42, step: 1 }], year: [{ end: 42, start: 42, step: 1 }], }, ], intervals: [{ every: '5h30m', offset: '0s' }], },)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}/schedules" \-X POST \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '{"calendars":[{"hour":[{"end":42,"step":1,"start":42}],"year":[{"end":42,"step":1,"start":42}],"month":[{"end":42,"step":1,"start":42}],"minute":[{"end":42,"step":1,"start":42}],"second":[{"end":42,"step":1,"start":42}],"comment":"string","dayOfWeek":[{"end":42,"step":1,"start":42}],"dayOfMonth":[{"end":42,"step":1,"start":42}]}],"intervals":[{"every":"5h30m","offset":"0s"}]}'Example Response
{ "ownerId": "507f191e810c19729de860ed", "spaceId": "507f191e810c19729de860ec", "tenantId": "507f191e810c19729de860eb", "calendars": [ { "hour": [ { "end": 42, "step": 1, "start": 42 } ], "year": [ { "end": 42, "step": 1, "start": 42 } ], "month": [ { "end": 42, "step": 1, "start": 42 } ], "minute": [ { "end": 42, "step": 1, "start": 42 } ], "second": [ { "end": 42, "step": 1, "start": 42 } ], "comment": "string", "dayOfWeek": [ { "end": 42, "step": 1, "start": 42 } ], "dayOfMonth": [ { "end": 42, "step": 1, "start": 42 } ] } ], "intervals": [ { "every": "5h30m", "offset": "0s" } ], "datasourceId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "knowledgebaseId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d"}Deletes a datasource schedule.
Facts
| Rate limit | Tier 2 (100 requests per minute) |
| Categories |
Path Parameters
- datasourceIdstringRequired
The id of the datasource the schedule belongs to.
- idstringRequired
The id of the knowledgebase the schedule belongs to.
Responses
204
Successfully deleted a schedule.
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The resource does not exist.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.deleteKnowledgebaseDatasourceSchedule( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d',)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/datasources/{datasourceId}/schedules" \-X DELETE \-H "Authorization: Bearer <access_token>"Retrieves sync history for the specified knowledgebase. Will return a 404 if no sync history exists, or if the calling user does not have access to synced datasources.
Facts
| Rate limit | Tier 1 (1000 requests per minute) |
| Categories |
Query Parameters
- limitinteger
The number of sync histories to get.
- nextstring
Optional parameter to request the next page.
- prevstring
Optional parameter to request the previous page.
- sortstring
Optional resource field name to sort on, case insensitive, eg. name. Can be prefixed with - to set descending order, defaults to ascending.
Can be one of: "COMPLETED""-COMPLETED"
Path Parameters
- idstringRequired
The id of the knowledgebase.
Responses
200
List of sync items ordered by the completed time.
- application/jsonobject
application/json properties
- dataarray of objectsRequired
data properties
- idstringRequired
sync id
- statusstringRequired
Sync status
Can be one of: "neverIndexed""progress""completed""completedWithError"
- docStatsobjectRequired
Summary of documents processed
docStats properties
- addedintegerRequired
- errorsintegerRequired
- deletedintegerRequired
- updatedintegerRequired
- deltaBytesintegerRequired
- deltaTextSizeintegerRequired
- largestFileSizeintegerRequired
- deltaEffectivePagesintegerRequired
- totalBytesProcessedintegerRequired
-
- startedAtstringRequired
Datetime when the sync task was started
- completedAtstring
Datetime when the sync task was completed
- triggerTypestringRequired
Datasource trigger type, was it manually or automatically synced
- connectionIdstringRequired
Connection id that the datasource used
- datasourceIdstringRequired
datasource id
- selectedErrorsarray of strings
populated with up to the first selectedErrorsCount errors if there were any during sync
-
- metaobject
meta properties
- countTotalinteger
-
- linksobject
links properties
- nextobject
next properties
- hrefstring
-
- prevobject
prev properties
- hrefstring
-
- selfobject
self properties
- hrefstring
-
-
-
400
The request is in incorrect format.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
403
The user does not have privileges to perform the requested action.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
404
The knowledgebase is not found, the knowledgebase has no sync history, or the calling user doesn't have access to the datasources in the knowledgebase.
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
- titlestring
- detailstring
-
- traceIdstring
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.knowledgebases.getKnowledgebaseHistories( 'f256b3e4-03e0-4f74-ae46-a4d43882ee5d', {},)This API is not included yet in qlik-clicurl "https://your-tenant.us.qlikcloud.com/api/v1/knowledgebases/{id}/histories" \-H "Authorization: Bearer <access_token>"Example Response
{ "data": [ { "id": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "status": [ "neverIndexed | progress | completed | completedWithError" ], "docStats": { "added": 1, "errors": 0, "deleted": 0, "updated": 0, "deltaBytes": 0, "deltaTextSize": 0, "largestFileSize": 123044444, "deltaEffectivePages": 0, "totalBytesProcessed": 123044444 }, "startedAt": "2021-10-02T14:20:50.52Z", "completedAt": "2021-10-02T14:20:50.52Z", "triggerType": [ "manual | schedule" ], "connectionId": "ee6a390c-5d33-11e8-9c2d-fa7ae01bbebc", "datasourceId": "f256b3e4-03e0-4f74-ae46-a4d43882ee5d", "selectedErrors": [ "unsupported file extension" ] } ], "meta": { "countTotal": 42 }, "links": { "next": { "href": "string" }, "prev": { "href": "string" }, "self": { "href": "string" } }}