Skip to content

Changelog

Learn about new developer features and improvements.

Apps API evaluation endpoints replaced by Analytics Apps namespaced API

Six evaluation endpoints in the Apps REST API are deprecated and will be removed on or after September 24, 2026.

Direct replacements are available in the new Analytics Apps API.

What’s changing

The evaluation sub-resources at /api/v1/apps/... are deprecated. They will be removed on or after September 24, 2026. Equivalent endpoints are now available under /api/analytics/apps/....

The new endpoints include improved response schemas, a standardized Accept header for format selection on download operations, and a clearer path naming convention for comparison operations.

Endpoint mapping

Legacy endpointReplacement endpoint
GET /api/v1/apps/{guid}/evaluationsGET /api/analytics/apps/{guid}/evaluations
POST /api/v1/apps/{guid}/evaluationsPOST /api/analytics/apps/{guid}/evaluations
GET /api/v1/apps/evaluations/{baseid}/actions/compare/{comparisonid}GET /api/analytics/apps/evaluations/{baselineId}/compare/{comparisonId}
GET /api/v1/apps/evaluations/{baseid}/actions/compare/{comparisonid}/actions/downloadGET /api/analytics/apps/evaluations/{baselineId}/compare/{comparisonId}/actions/download
GET /api/v1/apps/evaluations/{id}GET /api/analytics/apps/evaluations/{id}
GET /api/v1/apps/evaluations/{id}/actions/downloadGET /api/analytics/apps/evaluations/{id}/actions/download

Migration guide

Update your integrations for each change listed below.

Update the base path

Replace /api/v1/apps with /api/analytics/apps in every evaluation request.

Terminal window
# Before
GET https://<TENANT>.us.qlikcloud.com/api/v1/apps/<GUID>/evaluations
# After
GET https://<TENANT>.us.qlikcloud.com/api/analytics/apps/<GUID>/evaluations

Rename path parameters in comparison endpoints

The comparison endpoints rename their path parameters. Update your URL templates:

Parameter (legacy)Parameter (new)
{baseid}{baselineId}
{comparisonid}{comparisonId}
Terminal window
# Before
GET /api/v1/apps/evaluations/{baseid}/actions/compare/{comparisonid}
# After
GET /api/analytics/apps/evaluations/{baselineId}/compare/{comparisonId}

Use the Accept header to choose download format

The legacy download endpoints had no format selection mechanism and always returned application/xml. The new download endpoints accept an Accept header:

Terminal window
# Legacy: no format control, always returns XML
GET /api/v1/apps/evaluations/{id}/actions/download
# New: choose the format
GET /api/analytics/apps/evaluations/{id}/actions/download
Accept: application/json

Accepted values are application/xml (default) and application/json. The same applies to the comparison download endpoint.

Note

The ?format=json|xml query parameter on the non-download GET endpoints (GET .../evaluations/{id} and GET .../evaluations/{baselineId}/compare/{comparisonId}) is unchanged between the legacy and new endpoints.

Update code that reads evaluation response fields

Update field references:

FindReplace with
evaluation.metadataevaluation.reloadInformation
evaluation.events[].detailsevaluation.events[].message
evaluation.result.sheetsevaluation.result.sheetsCached + evaluation.result.sheetsUncached

Remove these fields since they’re not included in the analytics/apps API responses:

  • evaluation.sheetId, evaluation.sheetTitle: no direct replacement. Sheet context is available per-event via events[].sheetId and .sheetTitle
  • evaluation.details.dedicated

Handle these new fields:

  • evaluation.engine: { shortName: string }: Engine version that ran the evaluation (e.g., "OAPE-40")
  • evaluation.openAppProgress: { messages: [{ message: string, timeSinceStartMilliseconds: string }] }: Timestamped progress log of the app open phase
  • evaluation.result.openApp: { steps: [{ name: string, durationMilliseconds: number }], totalDurationMilliseconds: number }: Breakdown of app open timing by phase

Update code that reads comparison response fields

Update field references:

FindReplace with
comparison.documentSizeMibcomparison.documentSizeMiB

Remove these fields since they’re not included in the analytics/apps API responses:

  • comparison.objHeavy, comparison.fileSizeMib, comparison.maxMemoryMib, comparison.dataModelSizeMib, comparison.appOpenTimeSeconds

Handle this new field:

  • comparison.engine: { baseline: { shortName: string }, comparison: { shortName: string } }: Engine versions used in each of the two evaluations

For more information, see the Analytics Apps API reference and the Apps REST API reference.

Was this page helpful?