# Qlik Sense Repository Service API

The Qlik Sense Repository Service (QRS) contains all data and configuration information for a Qlik Sense site. The data is normally added and updated using the Qlik Management Console (QMC) or a Qlik Sense client, but it is also possible to communicate directly with the QRS using its API. This enables the automation of a range of tasks, for example:

* Start tasks from an external scheduling tool
* Change license configurations
* Extract data about the system

The QRS API is delivered as a REpresentational State Transfer (REST) web service that contains a number of paths (also referred to as endpoints) that are used to execute various functions. To communicate with these paths, HTTP calls that contain GET, POST, PUT, or DELETE requests are made.

The content sent to and received from the paths is normally formatted as JSON structures and in some cases as files. For example, if a GET request is submitted to the `/qrs/app` path, the user receives a list of all apps in the system formatted as a JSON structure.

To communicate with the paths securely, the requests must be made with some specific settings as described in this documentation.

## Version history

### Qlik Sense April 2018

#### Deprecated endpoints:

* License access type information: Get

#### New endpoints:

* License access type overview: Get

### Qlik Sense November 2017

#### Updated endpoints:

When the optional filter parameter is used with the `/qrs/notification` endpoint, it does not apply to deletion notifications. Notifications will be sent for all deletions affecting the entity type. For example, if you set ` filter=executingNodeName eq 'somehost.qliktech.com'  `and subscribe to deletion notifications for `ExecutionResult`, notifications will be sent for deletions of any `ExecutionResult` entity, not just for the `ExecutionResult` with the specified `executingNodeName`.

### Qlik Sense September 2017

#### Updated endpoints:

The `/qrs/app/{id}/copy?name={name}` endpoint now requires Read and Duplicate permissions instead of Read and Create. The default rules have been modified to ensure that the behavior is the same as in the earlier release as long as the rules have not been previously changed.

### Qlik Sense June 2017

#### New endpoints:

* Security rule: Create

* Analytic connection: Get

* Analytic connection: Create

* Analytic connection: Delete

* Analytic connection: Update

* File extension: Get

* File extension: Add

* File extension: Delete

* File extension whitelist: Get

* File extension whitelist: Update

#### Removed endpoints:

* Synchronization: Create snapshot

### Qlik Sense 3.2

#### New endpoints:

* Virtual Proxy: Link
* Virtual Proxy: Create

### Qlik Sense 3.1

#### New interpretation of SchemaEvent date properties

The interpretation of the ` startDate  `and ` expirationDate  `properties of the ` SchemaEvent  `entity has changed. Previously these properties represented a date and time stamp including offset. The time zone (in IANA/Olson format) is now stored in a separate property (called `timeZone`). In addition, the new property ` daylightSavingTime  `now indicates whether daylight savings is observed (valid values are "`ObserveDaylightSavingTime`", "`PermanentStandardTime`", "`PermanentDaylightSavingTime`"). The QRS API will continue to accept offsets, but we recommend that you update your code to use the new properties because the support of offsets will be removed in a future release.

#### New endpoints:

* Server node: Activate server node

### Qlik Sense 3.0

#### New endpoints:

* App: Get hub information
* App: Get hub list
* App content quota: Get
* App content quota: Update
* Shared content: Delete content
* Shared content: Upload file

#### Removed endpoints:

* AccesssType: Request Access Type

#### New entities:

* `CloudAppSyncStatus` (For future use)
* `CloudCredentials` (For future use)
* `CloudStreamSyncStatus` (For future use)

#### New properties:

* `deleteProhibited` property of the `User` entity (For future use)
* `timeZone` and `daylightSavingTime` properties of the `SchemaEvent` entity (For future use)

### Qlik Sense 2.2

#### New endpoints:

* License rule audit: Get audit rules matrix
* Security rule audit: Get audit rules matrix
* Synchronization rule audit: Get audit rules matrix
* Data market: Add license bundle
* Data market: Get terms acceptance
* Printing Service: Get local printing service
* Server node configuration: Get local

#### Updated endpoints:

* App: Upload app
* App: Import app
* Access type: Request access type
* Engine service: Get local engine service

#### Removed endpoints:

* Service registration: Add server node configuration
* Access type: Add User access type by selection

### Qlik Sense 2.1

#### New endpoints:

* App content: Upload file
* App content: Delete content

#### Updated endpoints:

* Content library: Upload file
* Content library: Delete content

### Qlik Sense 2.0

#### New endpoints:

* SAML: Metadata download (call 1 of 2)
* SAML: Metadata download (call 2 of 2)
* Preview create privilege
* App object: Publish
* App object: Unpublish
* App: Migrate
* App: Get state
* Certificate installation: Install certificate
* Certificate installation: Setup ping
* Synchronization: Create snapshot
* User: Synchronize user
* About API: Get all defaults
* About API: Get type
* About API: Get description
* About API: Get relations
* About API: Get enums
* Data market: Get license
* Data market: Add license
* Data market: Update license

#### Updated endpoints:

* Certificate distribution: Export certificates
* Security rule: Get attribute values

#### Removed endpoints:

* Custom: Get custom
* License rule: Get associated rules
* Security rule: Get associated rules
* Synchronization rule: Get associated rules

### Qlik Sense 1.1

#### New endpoints:

* Extension: Create extension with schema
* Extension: Delete extension by name
* Extension: Create or update a file in an extension
* Extension: Delete a file from an extension
* Notification: Add change subscription
* Notification: Remove change subscription

#### Updated endpoints:

* Security rule audit: Get accessible objects

#### Removed endpoints:

* Notification: Add event listener
* Notification: Delete event listener