Data credentials
Data credentials are the stored credentials leveraged by the data-connections service to connect to external data sources.
Endpoints
Facts
Rate limit | Tier 1 (1000 requests per minute) |
Categories | manage |
Query Parameters
- byCredentialNameboolean
If set to true, credentialId in the query will be interpreted as credential's name
Path Parameters
- qIDstringRequired
Credential ID
Responses
200
Credential retrieved
- application/jsonobject
application/json properties
- qIDstringRequired
UUID of the credential
- linksobject
links properties
- selfobjectRequired
Link to current query
self properties
- hrefstringRequired
URL pointing to the resource
-
-
- qNamestringRequiredFilterable
Name of the credential
- qTypestringRequiredFilterable
Type of credential
- createdstring
Datetime when the credential was created
- updatedstring
Datetime when the credential was last updated
- qConnCountintegerRequired
Number of linked connections
- datasourceIDstring
ID datasource that the credential is created for
- qReferenceKeystring
Reference key of credential in redis
-
400
Empty value not permitted for dataName
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
404
Credential not found
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.dataCredentials.getDataCredential( '027d2703-e745-43ec-8876-a2e6ac341700', {},)
This API is not included yet in qlik-cli
curl "https://your-tenant.us.qlikcloud.com/api/v1/data-credentials/{qID}" \-H "Authorization: Bearer <access_token>"
Example Response
{ "qID": "065f977e-6eca-408c-b78b-ecded823712c", "links": { "self": { "href": "https://mytenant.us.qlikcloud.com/..." } }, "qName": "MyCredential for REST datasource", "qType": "QvWebStorageProviderConnectorPackage.exe", "created": "2022-04-08T10:00:28.287Z", "updated": "2022-04-09T10:00:28.287Z", "qConnCount": 1, "datasourceID": "rest", "qReferenceKey": "credential:key"}
Facts
Rate limit | Tier 2 (100 requests per minute) |
Categories | manage |
Query Parameters
- byCredentialNameboolean
If set to true, credentialId in the query will be interpreted as credential's name
Path Parameters
- qIDstringRequired
Credential ID
Request Body
Required- application/jsonarray of objects
application/json properties
- opstringRequired
Operation type
Can be one of: "add""replace""remove"
- pathstringRequired
Path to the target field to be patched
- valuestring|boolean|integer|array
Value used for the patch. Required only for
add
orreplace
operations. The value type should match the type of the target field.One of:- string
- boolean
- integer
- array
-
-
Responses
204
Credential updated successfully
400
Connection ID changed
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
404
Credential not found
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
409
Credential already exists (when updated name conflicts with existing record)
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.dataCredentials.patchDataCredential( '027d2703-e745-43ec-8876-a2e6ac341700', {}, [ { op: 'add', path: '/qName', value: 'New value', }, ],)
This API is not included yet in qlik-cli
curl "https://your-tenant.us.qlikcloud.com/api/v1/data-credentials/{qID}" \-X PATCH \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '[{"op":"add","path":"/qName","value":"New value"}]'
Facts
Rate limit | Tier 2 (100 requests per minute) |
Categories | manage |
Query Parameters
- byCredentialNameboolean
If set to true, credentialId in the query will be interpreted as credential's name
Path Parameters
- qIDstringRequired
Credential ID
Request Body
Required- application/jsonobject
Credential
application/json properties
- qIDstring
UUID of the credential
- qNamestringRequired
Name of the credential
- qTypestringRequired
Type of credential (i.e. connector provider of the corresponding connection)
- qPasswordstringRequired
Password
- qUsernamestringRequired
User name
- connectionIdstring
ID of connection that will be associated with the credential
- datasourceIDstring
ID datasource that the credential is created for
-
Responses
204
Credential updated successfully
400
Connection ID changed
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
404
Credential not found
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
409
Credential already exists (when updated name conflicts with existing record)
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.dataCredentials.updateDataCredential( '027d2703-e745-43ec-8876-a2e6ac341700', {}, { connectionId: '2eb98dea-5e3b-4f50-9967-841cec04b72f', datasourceID: 'rest', qID: 'c2dd20e3-1842-42d0-81fe-1ecf08e6abde', qName: 'MyCredential for REST datasource', qPassword: 'MyPassword', qType: 'QvWebStorageProviderConnectorPackage.exe', qUsername: 'MyUsername', },)
This API is not included yet in qlik-cli
curl "https://your-tenant.us.qlikcloud.com/api/v1/data-credentials/{qID}" \-X PUT \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '{"qID":"c2dd20e3-1842-42d0-81fe-1ecf08e6abde","qName":"MyCredential for REST datasource","qType":"QvWebStorageProviderConnectorPackage.exe","qPassword":"MyPassword","qUsername":"MyUsername","connectionId":"2eb98dea-5e3b-4f50-9967-841cec04b72f","datasourceID":"rest"}'
Facts
Rate limit | Tier 2 (100 requests per minute) |
Categories | manage |
Query Parameters
- byCredentialNameboolean
If set to true, credentialId in the query will be interpreted as credential's name
Path Parameters
- qIDstringRequired
Credential ID
Responses
204
Credential deleted successfully
404
Credential not found
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.dataCredentials.deleteDataCredential( '027d2703-e745-43ec-8876-a2e6ac341700', {},)
This API is not included yet in qlik-cli
curl "https://your-tenant.us.qlikcloud.com/api/v1/data-credentials/{qID}" \-X DELETE \-H "Authorization: Bearer <access_token>"
Gets list of orphan data credentials (i.e. credentials that are not associated to any data connection) filtering on properties defined in request body
Facts
Rate limit | Tier 2 (100 requests per minute) |
Categories |
Request Body
Required- application/jsonobject
application/json properties
- qTypestring
Filtering on type of credentials
- qSeparatedinteger
Filtering on separate status of credentials: * 0 - embedded credential * 1 - separated credential
Can be one of: 01
- datasourceIDstring
Filtering on datasource ID of credentials
-
Responses
200
Orphan credentials returned
- application/jsonobject
application/json properties
- dataarray of objectsRequired
Orphan credential
data properties
- qIDstringRequired
UUID of the credential
- userstring
User ID of the credential's owner
- qNamestringRequired
Name of the credential
- qTypestringRequired
Type of credential (i.e. connector provider of the corresponding connection)
- tenantstring
Tenant ID of the credential's owner
- createdstringRequired
Datetime when the credential was created
- updatedstringRequired
Datetime when the credential was last updated
- datasourceIDstring
ID datasource that the credential is created for
-
- countintegerRequired
Number of orphan credentials found
-
400
Bad request (Missing required field in request body)
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
403
User has no access to credentials
- application/jsonobject
application/json properties
- errorsarray of objects
errors properties
- codestring
Unique internal error code
- titlestring
A summary in english explaining what went wrong
- detailstring
More concrete details
- statusinteger
HTTP status code
-
-
import { createQlikApi } from '@qlik/api'
const qlik = createQlikApi({ hostConfig: { host: 'https://your-tenant.us.qlikcloud.com', apiKey: '<access-token>', },})
await qlik.dataCredentials.filterOrphanedDataCredentials( { datasourceID: 'snowflake', qSeparated: 0, qType: 'QvOdbcConnectorPackage.exe', },)
This API is not included yet in qlik-cli
curl "https://your-tenant.us.qlikcloud.com/api/v1/data-credentials/actions/filter-orphan" \-X POST \-H "Content-type: application/json" \-H "Authorization: Bearer <access_token>" \-d '{"qType":"QvOdbcConnectorPackage.exe","qSeparated":0,"datasourceID":"snowflake"}'
Example Response
{ "data": [ { "qID": "c2dd20e3-1842-42d0-81fe-1ecf08e6abde", "user": "rFdHeUOiVYgPX5iTbvL0x0Cs6F62QI", "qName": "MyCredential for REST datasource", "qType": "QvWebStorageProviderConnectorPackage.exe", "tenant": "xqFQ0k34vSR0d9G7J-vZtHZQkiYrCqc8", "created": "2022-04-08T10:00:28.287Z", "updated": "2022-04-09T10:00:28.287Z", "datasourceID": "rest" } ], "count": 1}