API changes from v8.7.1 to v8.8

API changes from v8.7.1 to v8.8

With the new and upcoming releases of QMetry, we continue to add exciting and useful new features that improve usability. The new features and improvements being added to QMetry also necessitate changes in the APIs. This page enlists such APIs that will be updated from v8.8 scheduled to be released during the first week of May 2021 for all the cloud and server customers. The purpose of this document is to help integration teams keep their code updated and current with the API changes/updates to the existing APIs. In case you do not use any of these APIs, these changes can be safely ignored.

 

Summarized API changes

API Name

REST URL

Method

Backward compatibility with 8.7

Request Change

Response Change

API Name

REST URL

Method

Backward compatibility with 8.7

Request Change

Response Change

Create or update requirements

/rest/requirements

POST

Yes

Yes

No

Create or update test cases

/rest/testcases

POST

Yes

Yes

No

Create or update test suites

/rest/testsuites

POST

Yes

Yes

No

Create or update issues

/rest/issues

POST

Yes 

Yes

No

Get Test Suite Run IDs

/rest/execution/list/platformHome

POST

Yes

No

Yes

List Test Case Steps

/rest/testcases/steps/list

POST

Yes

No

Yes

Get Info

/rest/admin/project/getinfo

GET

Yes

No

Yes

Fetch Details of a specific test case version

/rest/testcases/list

POST

Yes

No

Yes

Get Test Suite Run IDs

/rest/execution/list/platformHome

POST

Yes

No

Yes

Fetch Requirements

/rest/requirements/list/viewColumns

POST

Yes

No

Yes

Fetch Test Cases

/rest/testcases/list/viewColumns

POST

Yes

No

Yes

Updated APIs

Create or update requirements

API

/rest/requirements

API

/rest/requirements

Method

POST

Impact of change

Low

Backward Compatibility

Yes

Reason for change

API updated to manage the same name as in the manage fields section.

Changes

"owner" parameter updated to "requirementOwner"

Version 8.7.1

Version 8.8.0

Version 8.7.1

Version 8.8.0

Request Body
{ "rqFolderId": "57796", "updateWithVersion": false, "updateVersionFlag": 0, "scope": "project", "name": "Summary", "priority": [ 2025268 ], "component": [ 2025328 ], "requirementState": [ 2025285 ], "description": "desc", "owner": 1467, "associateRelCyc": true, "releaseCycleMapping": [ { "release": 14239, "cycle": [ 21395 ], "version": 1 } ] }
Request Body
{ "rqFolderId": "57796", "updateWithVersion": false, "updateVersionFlag": 0, "scope": "project", "name": "Summary", "priority": [ 2025268 ], "component": [ 2025328 ], "requirementState": [ 2025285 ], "description": "desc", "requirementOwner": 1467, "associateRelCyc": true, "releaseCycleMapping": [ { "release": 14239, "cycle": [ 21395 ], "version": 1 } ] }

Create or update test cases

API

/rest/testcases

API

/rest/testcases

Method

POST

Impact of change

Low

Backward Compatibility

Yes

Reason for change

API updated to manage the same name as in the manage fields section.

Changes

"executionMinutes" parameter updated to "estimatedTime"

Version 8.7.1

Version 8.8.0

Version 8.7.1

Version 8.8.0

Request Body
{ "tcFolderID": "34363", "scope": "project", "steps": [{ "orderId": 1, "description": "First Step", "inputData": "First Data", "expectedOutcome": "First Outcome" }, { "orderId": 2, "description": "Second Step", "inputData": "Second Data", "expectedOutcome": "Second Outcome" } ], "name": "Test Case 1", "priority": 156433, "component": [ 156816 ], "owner": 1314, "testCaseState": 156477, "testCaseType": 156448, "executionMinutes": 30, "description": "Description", "associateRelCyc": true, "releaseCycleMapping": [{ "release": 4005, "cycle": [ 5925 ], "version": 1 }] }
Request Body
{ "tcFolderID": "34363", "scope": "project", "steps": [{ "orderId": 1, "description": "First Step", "inputData": "First Data", "expectedOutcome": "First Outcome" }, { "orderId": 2, "description": "Second Step", "inputData": "Second Data", "expectedOutcome": "Second Outcome" } ], "name": "Test Case 1", "priority": 156433, "component": [ 156816 ], "owner": 1314, "testCaseState": 156477, "testCaseType": 156448, "estimatedTime": 30, "description": "Description", "associateRelCyc": true, "releaseCycleMapping": [{ "release": 4005, "cycle": [ 5925 ], "version": 1 }] }

Create or update test suites

API

/rest/testsuites

API

/rest/testsuites

Method

POST

Impact of change

Low

Backward Compatibility

Yes

Reason for change

API updated to manage the same name as in the manage fields section.

Changes

"owner" parameter updated to "testsuiteOwner"

Version 8.7.1

Version 8.8.0

Version 8.7.1

Version 8.8.0

Request Body
{ "parentFolderId": "16907", "isAutomatedFlag": false, "name": "Testsuite without platform", "description": "Testsuite description", "owner": 11, "testSuiteState": 156489, "associateRelCyc": true, "releaseCycleMapping": [ { "buildID": 5923, "releaseId": 4004 } ] }
Request Body
{ "parentFolderId": "16907", "isAutomatedFlag": false, "name": "Testsuite without platform", "description": "Testsuite description", "testsuiteOwner": 11, "testSuiteState": 156489, "associateRelCyc": true, "releaseCycleMapping": [ { "buildID": 5923, "releaseId": 4004 } ] }

Create or update issues

API

/rest/issues

API

/rest/issues

Method

POST

Impact of change

Low

Backward Compatibility

Yes

Reason for change

API updated to manage the same name as in the manage fields section.

Changes

"owner" parameter updated to "issueOwner"

Version 8.7.1

Version 8.8.0

Version 8.7.1

Version 8.8.0

Request Body
{ "sync_with": 2, "issueType": 156454, "issuePriority": 156457, "owner": 302, "summary": "Money withdrawal is success even if insufficient amount", "component": [156821, 156819, 156818], "environment": "Staging", "description": "Money withdrawal is success even if insufficient amount", "affectedRelease": 4036 }
Request Body
{ "sync_with": 2, "issueType": 156454, "issuePriority": 156457, "issueOwner": 302, "summary": "Money withdrawal is success even if insufficient amount", "component": [156821, 156819, 156818], "environment": "Staging", "description": "Money withdrawal is success even if insufficient amount", "affectedRelease": 4036 }

Get Info API

API

/rest/admin/project/getinfo

API

/rest/admin/project/getinfo

Method

GET

Impact of change

Low

Backward Compatibility

Yes

Reason for change

New parameter added for the requirement review workflow for eSignature enabled projects

Changes

"isRequirementReviewer" parameter added which has the value true/false based on the requirement reviewer process enabled/disabled.

Version 8.7.1

Version 8.8.0

Version 8.7.1

Version 8.8.0

Request Body
{ "clientData": { "localeID": 1, "timeZoneID": 18, "dateTimeFormatID": 1, "ldapActive": true, "SAMLActive": false, "authTypeArray": ["QMETRY", "LDAP"], "isAllowManualEditOfLastExecutedField": "false", "maxpagelimit": "10", "saveexecutionhistory": "true", "timesettings": "12" }, ... "maxAttachmentSize": 10, "agentUrl": "URL", "isTestingTypeVisible": true, "clientCode": "2O5API", "isMatrixViewEnabled": true, "isPlatformScopeFeatureEnabled": true, "isSyncAcrossDomainEnabled": false, "isTestDataEnabled": false, "isTestCaseApprover": false, "isTestSuiteApprover": false, "isApprovalWorkflowEnabled": true, "isPartLevelComplianceEnabled": false, "userType": 1, "defaultPlatformId": 2209, "isSaasEnabled": true, "timeFormat": 24, "dateTimeFormatID": 4, "matrixPlatformCount": 20, "testSuiteTescaseCount": 50 ... "isBddConfigured": true, "isMFAMandatory": false, "authenticationInfo": [{ "181": "" }] }
Request Body
{ "clientData": { "localeID": 1, "timeZoneID": 18, "dateTimeFormatID": 1, "ldapActive": true, "SAMLActive": false, "authTypeArray": ["QMETRY", "LDAP"], "isAllowManualEditOfLastExecutedField": "false", "maxpagelimit": "10", "saveexecutionhistory": "true", "timesettings": "12" }, ... "maxAttachmentSize": 10, "agentUrl": "URL", "isTestingTypeVisible": true, "clientCode": "2O5API", "isMatrixViewEnabled": true, "isPlatformScopeFeatureEnabled": true, "isSyncAcrossDomainEnabled": false, "isTestDataEnabled": false, "isTestCaseApprover": false, "isTestSuiteApprover": false, "isRequirementReviewer": true, "isApprovalWorkflowEnabled": true, "isPartLevelComplianceEnabled": false, "userType": 1, "defaultPlatformId": 2209, "isSaasEnabled": true, "timeFormat": 24, "dateTimeFormatID": 4, "matrixPlatformCount": 20, "testSuiteTescaseCount": 50 ... "isBddConfigured": true, "isMFAMandatory": false, "authenticationInfo": [{ "181": "" }] }

Fetch Details of a specific test case version

API

/rest/testcases/list

API

/rest/testcases/list

Method

POST

Impact of change

Low

Backward Compatibility

Yes

Reason for change

New parameters added for multilevel eSignature approval workflow when test case is pending for approval.

Changes

Parameters added -  "approverLevelID", "approverLevelOrder", "approverLevelName", "approverID" in the API response

Version 8.7.1

Version 8.8.0

Version 8.7.1

Version 8.8.0

Response Body
{ "data": [{ "isVersionArchived": false, "isShared": false, "associatedCycles": "Default Cycle", "state": 1, "releaseNameDetail": "Default Release", "cycleNameDetail": "Default Cycle", "cycleIdsAsVersion": "4448", "releaseIdsAsVersion": "3023", "tcrCount": 0, "associatedVersion": 1, "tcID": 1303073, "paramIdList": "", "entityKey": "FT-TC-163", "projectId": 1257, "projectName": "Fitness Tracker", "summary": "Test case 2 with multilevel approval", "tcVersion": 1, "approvedBy": "", "approvedByAlias": "", "approvedDate": "", "createdDate": "04-21-2021 06:11:08 AM", "updatedDate": "04-21-2021 06:12:59 AM", "description": "Sample Test Description<div><br></div>", "updatedBy": "jatin", "updatedByAlias": "jatin (jatin)", "createdBy": "jatin", "createdByAlias": "jatin (jatin)", "designerAlias": "", "testingType": 116705, "testingTypeAlias": "Manual", "testCaseType": 116711, "testCaseTypeAlias": "Regression", "testCaseState": 116704, "testCaseStateAlias": "Open", "testCaseStateLabel": "Open", "priority": 617762, "priorityAlias": "Major", "tcFolderID": 9845, "folderPath": "/Fitness Tracker", "tcVersionID": 1276256, "testScriptName": "", "owner": 302, "ownerAlias": "jatin", "modifiedReasonAlias": "", "executionMinutes": "20", "preCondition": "", "postCondition": "", "isLatestVersion": true, "currentTcVersion": 1, "isArchived": false, "attachmentCount": 0, "statusId": 8937, "isChild": false, "component": "[116763]", "componentAlias": "Track", "componentAlias_search": "Track", "Automation_Command": "Automation Accomplished<div><br></div>", "totalWatchers": 1, "isCurrentUserWatcher": true, "isUpdatedByActive": true, "isCreatedByActive": true, "isParameterized": false }], "total": 1, "buildId": 3023, "cycleId": 4448, "UDFTypeData": { "Automation_Command": "LARGETEXT" } }
Response Body
{ "data": [ { "isVersionArchived": false, "isShared": false, "associatedCycles": "Default Cycle", "state": 1, "releaseNameDetail": "Default Release", "cycleNameDetail": "Default Cycle", "cycleIdsAsVersion": "4448", "releaseIdsAsVersion": "3023", "tcrCount": 0, "associatedVersion": 1, "tcID": 1303073, "paramIdList": "", "entityKey": "FT-TC-163", "projectId": 1257, "projectName": "Fitness Tracker", "summary": "Test case 2 with multilevel approval", "tcVersion": 1, "approvedBy": "", "approvedByAlias": "", "approvedDate": "", "createdDate": "21-Apr-2021 16:08:12", "updatedDate": "", "description": "test case 2 with multilevel approval", "updatedBy": "jatin", "updatedByAlias": "jatin (jatin)", "createdBy": "jatin", "createdByAlias": "jatin (jatin)", "designerAlias": "", "testingType": 116705, "testingTypeAlias": "Manual", "testCaseType": 116711, "testCaseTypeAlias": "Regression", "testCaseState": 116704, "testCaseStateAlias": "Open", "testCaseStateLabel": "Open", "priority": 116700, "priorityAlias": "Major", "tcFolderID": 9845, "folderPath": "/Fitness Tracker", "tcVersionID": 1276256, "testScriptName": "", "owner": 302, "ownerAlias": "jatin", "modifiedReasonAlias": "", "executionMinutes": "10", "preCondition": "", "postCondition": "", "isLatestVersion": true, "currentTcVersion": 1, "isArchived": false, "attachmentCount": 0, "statusId": 8937, "isChild": false, "component": "[116763]", "componentAlias": "Track", "componentAlias_search": "Track", "totalWatchers": 1, "isCurrentUserWatcher": true, "isCreatedByActive": true, "isParameterized": false, "approverLevelID": 42, "approverLevelOrder": 1, "approverLevelName": "Level 1", "approverID": 1429 } ], "total": 1, "buildId": 3023, "cycleId": 4448, "UDFTypeData": {} }

Get Test Suite Run IDs

API

/rest/execution/list/platformHome

API

/rest/execution/list/platformHome

Method

POST

Impact of change

Low

Backward Compatibility

Yes

Reason for change

New parameters added for multilevel eSignature approval workflow when the test suite is pending approval.

Changes

Parameters added -  "approverLevelID", "approverLevelOrder", "approverLevelName", "approverID" in the API response

Version 8.7.1

Version 8.8.0

Version 8.7.1

Version 8.8.0

Response Body
{ "data": [ { "isAutomatedFlag": false, "PlatformId": 2539, "Platform": "iOS", "approvedBy": "Jatin", "approvedByAlias": "jatin (jatin)", "approvedDate": "04-21-2021 07:38:46 AM", "TestSuiteName": "Test Suite 2 with Approved Test Cases, "tsRunID": 161306, "tsID": 72166, "isTestRun": false, "isPlatformArchived": false, "isTestSuiteArchived": false, "isTSRunArchived": false, "cycleName": "Default Cycle", "releaseName": "Default Release", "cycleID": 4448, "releaseID": 3023, "entityKey": "FT-TS-14", "TestSuitePath": "/Fitness Tracker", "Total": 1, "isCycleArchived": false, "isReleaseArchived": false, "state": 1, "status_8937": 0, "status_8942": 0, "status_8941": 0, "status_8936": 1, "status_8940": 0, "status_8939": 0, "Status": "Not Run", "statusID": 8936, "Defects": 0, "createdDate": "04-21-2021 07:24:40 AM", "createdByAlias": "jatin" } ], "total": 1, "isBuildSelectionMandatory": false }
Response Body
{ "data": [ { "isAutomatedFlag": false, "PlatformId": 2539, "Platform": "iOS", "TestSuiteName": "Test Suite 2 with Approved Test Cases", "tsRunID": 161306, "tsID": 72166, "isTestRun": false, "startTime": "21-Apr-2021 16:55:55", "isPlatformArchived": false, "isTestSuiteArchived": false, "isTSRunArchived": false, "cycleName": "Default Cycle", "releaseName": "Default Release", "cycleID": 4448, "releaseID": 3023, "entityKey": "FT-TS-14", "TestSuitePath": "/Fitness Tracker", "totalTCWithExecutionTime": 1, "totalExecutionTime": 10, "RemainingTime": 10, "Total": 1, "isCycleArchived": false, "isReleaseArchived": false, "state": 1, "status_8937": 0, "status_8942": 0, "status_8941": 0, "status_8936": 1, "status_8940": 0, "status_8939": 0, "Status": "Not Run", "statusID": 8936, "Defects": 0, "createdDate": "21-Apr-2021 16:55:42", "createdByAlias": "jatin", "approverID": 1859, "approverLevelID": 1655, "approverLevelName": "Level2", "approverLevelOrder": 2 } ], "total": 1, "isBuildSelectionMandatory": false }

Fetch Requirements

API

/rest/requirements/list/viewColumns

API

/rest/requirements/list/viewColumns

Method

POST

Impact of change

Low

Backward Compatibility

Yes

Reason for change

New parameters added for multilevel eSignature approval workflow now available for requirements for the requirements that are pending approval.

Changes

Parameters added - "approverLevelOrder", "approverID" in the API response.

Version 8.7.1

Version 8.8.0

Version 8.7.1

Version 8.8.0

Response Body
{ "data": [ { "entityKey": "FT-RQ-274", "associatedVersion": 1, "name": "Requirement with approval workflow", "rqVersionList": "[{\"isArchived\":0,\"rqVersion\":1,\"rqVersionId\":1051876, \"rqVersionName\":\"Version-1\"}]", "createdByAlias": "jatin (jatin)", "owner": "afjal.ansari (afjal.ansari@qmetry.com)", "createdDate": "04-21-2021 08:09:57 AM", "createdSystem": "QMetry", "requirementStateAlias": "Open", "priorityAlias": "Major", "attachmentCount": 0, "linkedTcCount": 0, "linkedDfCount": 0, "isWatcher": true, "isArchived": false, "id": 1242283, "componentAlias": [ "Track" ], "versionId": 1177748, "isCurrentlyConfiguredProject": false } ], "total": 1, "viewId": 2398, "filter": "[]", "sort": "[{\"property\":\"name\",\"direction\":\"ASC\"}]", "viewName": "Custom", "filterTemplate": [], "columns": { "visibleColumns": [], "hiddenColumns": [] }, "udfFilter": "[]", "folderSortColumn": "name", "folderSortOrder": "ASC", "hideEmptyFolders": false, "getSubEntities": true, "filterType": "QMETRY" }
Response Body
{ "data": [ { "entityKey": "FT-RQ-274", "associatedVersion": 1, "name": "Requirement with approval workflow", "rqVersionList": "[{\"isArchived\":0,\"rqVersion\":1,\"rqVersionId\":1177748, \"rqVersionName\":\"Version-1\"}]", "createdByAlias": "jatin (jatin)", "owner": "jatin (jatin)", "createdDate": "21-Apr-2021 17:35:32", "createdSystem": "QMetry", "requirementStateAlias": "Open", "priorityAlias": "Major", "attachmentCount": 0, "linkedTcCount": 0, "linkedDfCount": 0, "isWatcher": true, "isArchived": false, "id": 1242283, "componentAlias": [ "Track" ], "versionId": 1177748, "folderPath": "/Fitness Tracker/Approved Requirements", "reviewStatus": 1, "approverID": 1425, "approverLevelOrder": 1, "isCurrentlyConfiguredProject": false } ], "total": 1, "viewId": 2398, "jiraFilter": "[]", "sort": "[{\"property\":\"name\",\"direction\":\"ASC\"}]", "viewName": "Custom", "filterTemplate": [], "columns": { "visibleColumns": [], "hiddenColumns": [] }, "folderSortColumn": "name", "folderSortOrder": "ASC", "hideEmptyFolders": false, "getSubEntities": true, "filterType": "JIRA" }

Fetch Test Cases

API

/rest/testcases/list/viewColumns

API

/rest/testcases/list/viewColumns

Method

POST

Impact of change

Low

Backward Compatibility

Yes

Reason for change

New parameters added for multilevel eSignature approval workflow now available for requirements for the requirements that are pending approval.

Changes

Parameters added -  "approverID", "approverLevelOrder" in the API response.

Version 8.7.1

Version 8.8.0

Version 8.7.1

Version 8.8.0

Response Body
{ "data": [ { "entityKey": "FT-TC-165", "tcFolderId": 34441, "associatedVersion": 1, "name": "Test Cases with multiple levels of approval", "createdByAlias": "jatin (jatin)", "owner": "jatin", "createdDate": "04-21-2021 09:08:11 AM", "executionMinutes": 10, "testCaseStateAlias": "Open", "priorityAlias": "Major", "testingTypeAlias": "Manual", "testCaseTypeAlias": "Functional", "isWatcher": true, "isArchived": false, "folderPath": "/Fitness Tracker/Approved Test Cases", "id": 1303132, "isShared": false, "versionId": 1276321, "attachmentCount": 0, "linkedDfCount": 0, "linkedRqCount": 0, "linkedTsCount": 0, "approvalStatus": 2, "approvedByAlias": "Sahashraanshu (sumi)", "isChild": false, "componentAlias": [ "Not Available" ] } ], "total": 1, "viewId": 2399, "filter": "[]", "sort": null, "viewName": "Custom", "filterTemplate": [], "columns": { "visibleColumns": [], "hiddenColumns": [] }, "udfFilter": "[]", "folderSortColumn": "name", "folderSortOrder": "ASC", "hideEmptyFolders": false, "getSubEntities": true, "isParameterized": false, "havingSharedTestcases": false }
Response Body
{ "data": [ { "entityKey": "FT-TC-165", "tcFolderId": 34441, "associatedVersion": 1, "name": "Test Cases with multiple levels of approval", "createdByAlias": "jatin (jatin)", "owner": "jatin", "createdDate": "21-Apr-2021 18:18:46", "executionMinutes": 10, "testCaseStateAlias": "Open", "priorityAlias": "Major", "testingTypeAlias": "Manual", "testCaseTypeAlias": "Functional", "isWatcher": true, "isArchived": false, "folderPath": "/Fitness Tracker/Approved Test Cases", "id": 1303132, "isShared": false, "versionId": 1276321, "linkedDfCount": 0, "linkedRqCount": 0, "linkedTsCount": 0, "approvalStatus": 1, "approverID": 1429, "approverLevelOrder": 1, "componentAlias": [ "Track" ] } ], "total": 1, "viewId": 2399, "filter": "[]", "sort": "[{\"property\":\"entityKey\",\"direction\":\"ASC\"}]", "viewName": "Custom", "filterTemplate": [], "columns": { "visibleColumns": [], "hiddenColumns": [] }, "udfFilter": "[]", "folderSortColumn": "name", "folderSortOrder": "ASC", "hideEmptyFolders": false, "getSubEntities": true, "isParameterized": false, "havingSharedTestcases": false }