openapi: 3.2.0 info: title: data-stores Data Store API version: '' servers: - url: https://{tenant}.{region}.qlikcloud.com variables: region: default: us description: The region the tenant is hosted in tenant: default: your-tenant description: Name of the tenant that will be called tags: - name: Datastore paths: /api/v1/data-stores: get: tags: - Datastore summary: Get all data stores responses: '200': content: application/json: schema: $ref: '#/components/schemas/PageDataStore' description: Successful Operation '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. parameters: - in: query name: limit schema: type: integer format: int32 default: 20 maximum: 100 required: false description: Page size limit. - in: query name: page schema: type: integer format: int32 default: 0 required: false - in: query name: projections schema: type: array items: type: string default: [] required: false description: Comma-separated fields to return in the response. - in: query name: sort schema: type: array items: type: string required: false description: Comma-separated fields and field start with '-' character sorts the result set in descending order. operationId: getDataStores x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '1' limit: 1000 post: tags: - Datastore summary: Save new data store responses: '201': content: application/json: schema: $ref: '#/components/schemas/DataStore' description: Created new data store successfully. '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. operationId: saveDataStore requestBody: content: application/json: schema: $ref: '#/components/schemas/DataStore' required: true x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '2' limit: 100 delete: tags: - Datastore summary: Delete data stores if it does not contain any data-assets responses: '204': description: Deleted empty data stores. '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. operationId: batchDeleteDataStores requestBody: content: application/json: schema: $ref: '#/components/schemas/BatchIdDto' required: true x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '2' limit: 100 /api/v1/data-stores/{data-store-id}: get: tags: - Datastore summary: Get data store by ID responses: '200': content: application/json: schema: $ref: '#/components/schemas/DataStore' description: Successful Operation. '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. parameters: - in: path name: data-store-id schema: type: string required: true - in: query name: projections schema: type: array items: type: string default: [] required: false description: Comma-separated fields to return in the response. operationId: getDataStore x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '1' limit: 1000 patch: tags: - Datastore summary: Patch data store responses: '200': content: application/json: schema: $ref: '#/components/schemas/DataStore' description: Patched data store successfully. '204': content: application/json: schema: $ref: '#/components/schemas/DataStore' description: Patched data store successfully. '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. parameters: - in: path name: data-store-id schema: type: string required: true operationId: patchDataStore requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/JsonPatch' description: Array of JSON patch documents as defined by RFC 6902. required: true x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '2' limit: 100 put: tags: - Datastore summary: Update data store responses: '200': content: application/json: schema: $ref: '#/components/schemas/DataStore' description: Updated data store successfully. '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. parameters: - in: path name: data-store-id schema: type: string required: true operationId: updateDataStore requestBody: content: application/json: schema: $ref: '#/components/schemas/DataStore' required: true x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '2' limit: 100 /api/v1/data-stores/{data-store-ids}/data-assets: get: tags: - Datastore summary: Get all data assets belonging to the data store(s) responses: '200': content: application/json: schema: $ref: '#/components/schemas/PageDataAsset' description: Successful Operation '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. parameters: - in: path name: data-store-ids schema: type: array items: type: string required: true description: Comma-separated data store IDs or * to include all data stores. - in: query name: limit schema: type: integer format: int32 default: 20 maximum: 100 required: false description: Page size limit. - in: query name: page schema: type: integer format: int32 default: 0 required: false - in: query name: projections schema: type: array items: type: string default: [] required: false description: Comma-separated fields to return in the response. - in: query name: sort schema: type: array items: type: string required: false description: Comma-separated fields and field start with '-' character sorts the result set in descending order. operationId: getDataAssets x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '1' limit: 1000 delete: tags: - Datastore summary: Delete data assets and child data-sets by data-store IDs responses: '204': description: Deleted data assets successfully. '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. parameters: - in: path name: data-store-ids schema: type: array items: type: string required: true description: Comma-separated data store IDs or * to include all data stores. operationId: deleteDataAssetByDataStoreId x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '2' limit: 100 /api/v1/data-stores/{data-store-ids}/data-assets/{data-asset-ids}/data-sets: get: tags: - Datastore summary: Get all data sets belonging to the data store(s) and data asset(s) responses: '200': content: application/json: schema: $ref: '#/components/schemas/PageDataSet' description: Successful Operation. '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. parameters: - in: path name: data-asset-ids schema: type: array items: type: string required: true description: Comma-separated data asset IDs or * to include all data assets. - in: path name: data-store-ids schema: type: array items: type: string required: true description: Comma-separated data store IDs or * to include all data stores. - in: query name: limit schema: type: integer format: int32 default: 20 maximum: 100 required: false description: Page size limit. - in: query name: page schema: type: integer format: int32 default: 0 required: false - in: query name: projections schema: type: array items: type: string default: [] required: false description: Comma-separated fields to return in the response. - in: query name: sort schema: type: array items: type: string required: false description: Comma-separated fields and field start with '-' character sorts the result set in descending order. operationId: getDataSets x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '1' limit: 1000 delete: tags: - Datastore summary: Delete data sets by data-store IDs and data-asset IDs responses: '204': description: Deleted data sets. '400': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The request is in incorrect format. '401': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have valid authentication credentials. '403': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: User does not have access to the resource. '404': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Resource does not exist. '409': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: The input request conflicts with the current state of the resource. '500': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Internal Server Error. '503': content: application/json: schema: $ref: '#/components/schemas/ErrorResponse' description: Requested service is not available. parameters: - in: path name: data-asset-ids schema: type: array items: type: string required: true description: Comma-separated data asset IDs or * to include all data assets. - in: path name: data-store-ids schema: type: array items: type: string required: true description: Comma-separated data store IDs or * to include all data stores. operationId: deleteDataSetsByDataStoreIdsAndDataAssetIds x-qlik-stability: stable x-qlik-visibility: public x-qlik-deprecated: false x-qlik-tier: tier: '2' limit: 100 components: schemas: DataStoreInfo: type: object required: - id properties: id: type: string name: type: string readOnly: true type: type: string readOnly: true BatchIdDto: type: object properties: ids: type: array items: type: string uniqueItems: true UserTag: type: object properties: id: type: string description: The id of the tag in Collections name: type: string maxLength: 128 minLength: 1 description: An array of user-supplied tags Error: type: object properties: code: type: string title: type: string detail: type: string status: type: string PageDataStore: type: object properties: data: type: array items: $ref: '#/components/schemas/DataStore' page: type: integer format: int32 limit: type: integer format: int32 links: $ref: '#/components/schemas/Links' pages: type: integer format: int32 total: type: integer format: int64 JsonPatch: type: object required: - op - path properties: op: enum: - add - remove - replace - move - copy - test type: string description: The operation to be performed. from: type: string description: A JSON Pointer path pointing to the location to move/copy from. path: type: string description: A JSON pointer to the property being affected. value: type: object description: The value to add, replace or test. Links: type: object properties: last: $ref: '#/components/schemas/Link' next: $ref: '#/components/schemas/Link' prev: $ref: '#/components/schemas/Link' self: $ref: '#/components/schemas/Link' first: $ref: '#/components/schemas/Link' DataStore: type: object title: Data Store required: - technicalName - type properties: id: type: string description: Only required when updating the resource. Must be null for new resources. uri: type: string maxLength: 512 minLength: 0 name: type: string maxLength: 255 minLength: 0 tags: type: array items: type: string uniqueItems: true type: type: string maxLength: 64 minLength: 1 ownerId: type: string description: The value is automatically set by the application. spaceId: type: string version: type: integer format: int64 description: Only required when updating the resource. Must be null for new resources. tenantId: type: string readOnly: true description: The value is automatically set by the application. User defined value is ignored. createdBy: type: string readOnly: true description: The value is automatically set by the application. User defined value is ignored. properties: type: object description: A Map of name-value pairs. additionalProperties: type: object description: A Map of name-value pairs. createdTime: type: string format: date-time readOnly: true description: The value is automatically set by the application. User defined value is ignored. description: type: string maxLength: 1024 minLength: 0 technicalName: type: string maxLength: 255 minLength: 1 lastModifiedBy: type: string readOnly: true description: The value is automatically set by the application. User defined value is ignored. lastModifiedTime: type: string format: date-time readOnly: true description: The value is automatically set by the application. User defined value is ignored. technicalDescription: type: string maxLength: 1024 minLength: 0 PageDataSet: type: object properties: data: type: array items: $ref: '#/components/schemas/DataSet' page: type: integer format: int32 limit: type: integer format: int32 links: $ref: '#/components/schemas/Links' pages: type: integer format: int32 total: type: integer format: int64 DataSet: type: object title: Data Set required: - dataAssetInfo - qri - secureQri - technicalName properties: id: type: string description: Only required when updating the resource. Must be null for new resources. qri: type: string format: qdf:::<user/space guid>: maxLength: 1024 minLength: 8 description: 'NOTE: this will be deprecated after migration to secureQri. Required user defined field. All the parts in the format must be separated by '':''. The first part denotes the resourceType, followed by dataStoreType and tenant guid. The spaceGuid or userGuid is to be populated based on if the dataset is in shared or private space and finally the full file name. This field is auto populated for the dataSet generated for qix-datafiles.' name: type: string maxLength: 255 minLength: 0 tags: type: array items: type: string uniqueItems: true type: type: string schema: $ref: '#/components/schemas/Schema' ownerId: type: string description: The value is automatically set by the application. spaceId: type: string version: type: integer format: int64 description: Only required when updating the resource. Must be null for new resources. tenantId: type: string readOnly: true description: The value is automatically set by the application. User defined value is ignored. createdBy: type: string readOnly: true description: The value is automatically set by the application. User defined value is ignored. secureQri: type: string properties: type: object description: A Map of name-value pairs. additionalProperties: type: object description: A Map of name-value pairs. createdTime: type: string format: date-time readOnly: true description: The value is automatically set by the application. User defined value is ignored. description: type: string maxLength: 1024 minLength: 0 operational: $ref: '#/components/schemas/Operational' dataAssetInfo: $ref: '#/components/schemas/DataAssetInfo' technicalName: type: string maxLength: 255 minLength: 1 lastModifiedBy: type: string readOnly: true description: The value is automatically set by the application. User defined value is ignored. appTypeOverride: type: string description: Optional override of DataAsset appType. lastModifiedTime: type: string format: date-time readOnly: true description: The value is automatically set by the application. User defined value is ignored. additionalSchemas: type: array items: $ref: '#/components/schemas/Schema' description: Optional field to specify additional schemas for files where multiple tables or sheets are available. User must define primary schema in 'schema' attribute and rest of the sheets/ tables can be defined using this field. This field is not populated for the dataSets with single schema technicalDescription: type: string maxLength: 1024 minLength: 0 createdByConnectionId: type: string description: The connectionId that created the Dataset. Optional. ErrorResponse: type: object properties: errors: type: array items: $ref: '#/components/schemas/Error' traceId: type: string TableConnectionInfo: type: object properties: tableName: type: string selectionScript: type: string additionalProperties: type: object additionalProperties: type: string FieldDataType: type: object required: - type properties: type: enum: - DATE - TIME - DATETIME - TIMESTAMP - STRING - DOUBLE - DECIMAL - INTEGER - BOOLEAN - BINARY - CUSTOM type: string description: 'Each datatype may vary in terms of required properties. Example: Datatype DECIMAL requires two mandatory properties to be defined - precision and scale, each one accepts integer value. All other datatypes does not have any required properties.' properties: type: object description: 'The properties map key is string and the value is of type object. Please note, Datatype DECIMAL requires two mandatory properties to be defined; these properties must be named: precision and scale, each of these property accepts integer value. All other datatypes does not require any manadatory properties to be defined.' additionalProperties: type: object description: 'The properties map key is string and the value is of type object. Please note, Datatype DECIMAL requires two mandatory properties to be defined; these properties must be named: precision and scale, each of these property accepts integer value. All other datatypes does not require any manadatory properties to be defined.' originalType: type: string Link: type: object properties: href: type: string Schema: type: object title: Schema required: - dataFields properties: anomalies: type: array items: type: string description: 'Anomalies associated with this schema. Example: $warning-unknown-headers' description: 'Anomalies associated with this schema. Example: $warning-unknown-headers' uniqueItems: true dataFields: type: array items: $ref: '#/components/schemas/DataField' schemaName: type: string loadOptions: type: object description: 'Options for loading files. Example: "qLabel": "embedded labels"' additionalProperties: type: object description: 'Options for loading files. Example: "qLabel": "embedded labels"' effectiveDate: type: string format: date-time readOnly: true overrideSchemaAnomalies: type: boolean description: Optional field to specify additional schemas for files where multiple tables or sheets are available. User must define primary schema in 'schema' attribute and rest of the sheets/ tables can be defined using this field. This field is not populated for the dataSets with single schema PageDataAsset: type: object properties: data: type: array items: $ref: '#/components/schemas/DataAsset' page: type: integer format: int32 limit: type: integer format: int32 links: $ref: '#/components/schemas/Links' pages: type: integer format: int32 total: type: integer format: int64 DataField: type: object required: - dataType - name properties: name: type: string maxLength: 255 minLength: 1 tags: type: array items: type: string description: An array of system tags description: An array of system tags uniqueItems: true alias: type: string index: type: integer format: int32 readOnly: true orphan: type: boolean dataType: $ref: '#/components/schemas/FieldDataType' nullable: type: boolean userTags: type: array items: $ref: '#/components/schemas/UserTag' description: An array of user-supplied tags uniqueItems: true encrypted: type: boolean sensitive: type: boolean primaryKey: type: boolean properties: type: object additionalProperties: type: object description: type: string ordinalPositionInKey: type: integer format: int32 Operational: type: object title: Operational properties: size: type: integer format: int64 status: type: string endDate: type: string format: date-time location: type: string rowCount: type: integer format: int64 startDate: type: string format: date-time logMessage: type: string tableOwner: type: string lastLoadTime: type: string format: date-time contentUpdated: type: boolean lastUpdateTime: type: string format: date-time tableConnectionInfo: $ref: '#/components/schemas/TableConnectionInfo' DataAssetInfo: type: object required: - id properties: id: type: string name: type: string readOnly: true dataStoreInfo: $ref: '#/components/schemas/DataStoreInfo' DataAsset: type: object title: Data Asset required: - appType - technicalName properties: id: type: string description: Only required when updating the resource. Must be null for new resources. name: type: string maxLength: 255 minLength: 0 tags: type: array items: type: string uniqueItems: true appId: type: string appType: type: string ownerId: type: string description: The value is automatically set by the application. spaceId: type: string version: type: integer format: int64 description: Only required when updating the resource. Must be null for new resources. tenantId: type: string readOnly: true description: The value is automatically set by the application. User defined value is ignored. createdBy: type: string readOnly: true description: The value is automatically set by the application. User defined value is ignored. properties: type: object description: A Map of name-value pairs. additionalProperties: type: object description: A Map of name-value pairs. createdTime: type: string format: date-time readOnly: true description: The value is automatically set by the application. User defined value is ignored. description: type: string maxLength: 1024 minLength: 0 dataFreshness: type: string format: date-time description: The date-time when the source data was last changed dataStoreInfo: $ref: '#/components/schemas/DataStoreInfo' technicalName: type: string maxLength: 255 minLength: 1 lastModifiedBy: type: string readOnly: true description: The value is automatically set by the application. User defined value is ignored. lastModifiedTime: type: string format: date-time readOnly: true description: The value is automatically set by the application. User defined value is ignored. technicalDescription: type: string maxLength: 1024 minLength: 0