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
 
 -   
 -   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      },      "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
 -   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
 
 -   
 -   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...","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  },  "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
 
 -   
 -   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  },  "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>"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"    }  }}