The DCaaS API is being deprecated
The DCaaS
API provides
the ability to create analytics data connections in your Qlik Cloud tenant.
In response to customer feedback, the functionalities of DCaaS
were merged into
the data-connections
and data-sources
APIs
in March 2024, as announced in this changelog.
This post serves as notice that DCaaS
will be deprecated no sooner than 120 days
from the date of this changelog, on or after November 23, 2024.
Migrating from POST /v1/dcaas/actions/data-connections
You must move from POST /v1/dcaas/actions/data-connections
to POST /v1/data-connections
.
To prevent breaking changes for current users of POST /v1/data-connections
,
some parameter names have changed to incorporate the capabilities from
POST /v1/dcaas/actions/data-connections
.
Namely:
- The parameter for passing the name of the connection is
qName
rather thanconnectionName
. - The parameter for passing the ID of the space to create the connection in is
space
rather thanspaceId
.
With POST /v1/dcaas/actions/data-connections
,
you sent:
curl --location "https://your-tenant.us.qlikcloud.com/api/v1/dcaas/actions/data-connections" ^
--header "Content-Type: application/json" ^
--header "Authorization: <ACCESS_TOKEN>" ^
--data "{
\"dataSourceId\": \"DG_mysql\",
\"connectionName\": \"<CONNECTION_NAME>\",
\"spaceId\": \"<SPACE_ID>\",
\"connectionProperties\": {
\"gatewayInstance\": \"<GATEWAY_ID>\",
\"host\": \"<HOST>\",
\"port\": \"3306\",
\"database\": \"<DATABASE_NAME>\",
\"username\": \"<USERNAME>\",
\"password\": \"<PASSWORD>\"
}
}"
With POST /v1/data-connections
,
you should send:
curl --location "https://your-tenant.us.qlikcloud.com/api/v1/data-connections" ^
--header "Content-Type: application/json" ^
--header "Authorization: <ACCESS_TOKEN>" ^
--data "{
\"dataSourceId\": \"DG_mysql\",
\"qName\": \"<CONNECTION_NAME>\",
\"space\": \"<SPACE_ID>\",
\"connectionProperties\": {
\"gatewayInstance\": \"<GATEWAY_ID>\",
\"host\": \"<HOST>\",
\"port\": \"3306\",
\"database\": \"<DATABASE_NAME>\",
\"username\": \"<USERNAME>\",
\"password\": \"<PASSWORD>\"
}
}"
Migrating from GET /v1/dcaas/actions/data-connections/{connectionId}
You must move from GET /v1/dcaas/actions/data-connections/{connectionId}
to GET /v1/data-connections/{qID}
.
Changes:
- The
qName
property is used instead ofconnectionName
. - The
space
property is used instead ofspaceId
. - The
qID
property is used instead ofconnectionId
. - The legacy response of the data-connections API will be returned along with the DCaaS style response.
You must pass the parameter parseConnection=true
to return
the DCaaS style response.
With GET /v1/dcaas/actions/data-connections/{connectionId}
,
you sent:
curl --location "https://your-tenant.us.qlikcloud.com/api/v1/dcaas/actions/data-connections/{connectionId}" ^
--header "Authorization: <ACCESS_TOKEN>"
With GET /v1/data-connections/{qID}
,
you should send:
curl --location "https://your-tenant.us.qlikcloud.com/api/v1/data-connections/{qID}?parseConnection=true" ^
--header "Authorization: <ACCESS_TOKEN>"
Migrating from GET /v1/dcaas/actions/data-connections/api-specs
You must move from GET /v1/dcaas/actions/data-connections/api-specs
to GET /v1/data-sources/{dataSourceId}/api-specs
.
With GET /v1/dcaas/actions/data-connections/api-specs
,
the dataSourceId
was a query parameter, and you sent:
curl --location "https://your-tenant.us.qlikcloud.com/api/v1/dcaas/actions/data-connections/api-specs?dataSourceId={dataSourceId}" ^
--header "Authorization: Bearer <API-key>"
With GET /v1/data-sources/{dataSourceId}/api-specs
,
you pass the dataSourceId
in the path, so you should send:
curl --location "https://your-tenant.us.qlikcloud.com/api/v1/data-sources/{dataSourceId}/api-specs" ^
--header "Authorization: Bearer <API-key>"
Consider reviewing the guides on how to create data connections.