Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Current »

Create a requirement tree in the release node

Use the following operation:

POST /flex/services/rest/latest/requirementtree/add

Request format

To create a requirement in a release node, send a POST request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/requirementtree/add

Request body

{
  "name": "Node1",
  "description": "",
  "type": "req",
  "releaseIds": [
    "1"
  ],
  "parentId": 0,
  "projectId": 1
}

parentId - pass 0 when creating under the release node.
releaseIds - the ID of the release where the requirement folder should be created.

Response body

{
  "id" : 7,
  "name" : "Node1",
  "description" : "",
  "projectId" : 1,
  "parentId" : 0,
  "categories" : [ ],
  "requirements" : [ ],
  "releaseIds" : [ 1 ],
  "releaseId" : 1,
  "type" : "req"
}

Create a requirement tree sub-folder

Use the following operation:

POST /flex/services/rest/latest/requirementtree/add

Request format

To create a requirement tree sub-folder, send a POST request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/requirementtree/add

Request body

{
  "name": "Sub Folder",
  "description": "",
  "type": "req",
  "releaseIds": [
    "1"
  ],
  "parentId": 7,
  "projectId": 1
}

parentId - pass the ID of the parent folder where a sub-folder should be created.

Response body

{
  "id" : 8,
  "name" : "Sub Folder",
  "description" : "",
  "projectId" : 1,
  "parentId" : 7,
  "categories" : [ ],
  "requirements" : [ ],
  "releaseIds" : [ 1 ],
  "releaseId" : 1,
  "type" : "req"
}

Create a requirement

Use the following operation to create a requirement in Zephyr Enterprise:

POST /flex/services/rest/latest/requirement

Request format

To create a requirement, send a POST request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/requirement

Request body

{
  "requirementTreeId": 7,
  "name": "Untitled requirement",
  "details": "requirement details",
  "createdBy": 1,
  "lastModifiedBy": 1,
  "requirementType": 0,
  "testcaseIds": [],
  "releaseIds": [
    1
  ],
  "customProperties": null
}

requirementTreeId - the ID of the tree where the requirement will be created.

Response body

{
  "customProperties" : { },
  "customProcessedProperties" : { },
  "id" : 1,
  "requirementTreeId" : 7,
  "name" : "Untitled requirement",
  "details" : "requirement details",
  "createdOn" : 1594991430176,
  "reqCreationDate" : "07/17/2020",
  "createdBy" : 1,
  "lastModifiedBy" : 1,
  "lastModifiedOn" : 1594991430206,
  "createDatetime" : 1594991430195,
  "requirementType" : 0,
  "testcaseIds" : [ ],
  "testcaseVersionIds" : [ ],
  "releaseIds" : [ 1 ],
  "requirementTreeIds" : [ 7, 9 ],
  "requirementReleaseTestcaseCountMapping" : [ ],
  "projectId" : 1,
  "customFieldProcessed" : false,
  "customFieldValues" : [ ],
  "releaseNames" : [ ],
  "isBddSupported" : false,
  "actualTestcaseIds" : [ ]
}

Update a requirement

Use the following operation to update a requirement in Zephyr Enterprise:

PUT /flex/services/rest/latest/requirement/{id}

{id} - the requirement ID.

Request format

To update a requirement, send a PUT request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/requirement/{id}

Sample request body

{
  "attachmentCount": 0,
  "actualTestcaseIds": [],
  "requirementTreeId": 7,
  "name": "Updated Requirement",
  "details": "requirement details",
  "externalId": "AltId:1",
  "url": "http://localhost/",
  "priority": 1,
  "id": 1,
  "releaseIds": [
    "1"
  ],
  "customProperties": {},
  "customProcessedProperties": {},
  "createdBy": 1,
  "createdOn": 1594924200000,
  "reqCreationDate": "07/17/2020",
  "testcaseIds": [],
  "requirementType": 0,
  "requirementReleaseTestcaseCountMapping": [],
  "projectId": 1
}

Sample response

1

Link the test case to requirements

You can do this in one of the following ways:

Map a single test case to a single requirement

Use the following operation:

POST /flex/services/rest/latest/testcase/allocate/requirement/{testcaseid}?releaseid={id}

testcaseid - the ID of the test case version.

releaseid - the release ID.

Request format

To map a single test case to a single requirement, send a POST request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/testcase/allocate/requirement/{testcaseid}?releaseid={id}

Sample request

{
  "modRequirementTree": [
    [
      10,
      0
    ]
  ],
  "testcaseid": 192,
  "modRequirement": [
    [
      10,
      2
    ]
  ],
  "releaseId": 4
}

In this request, 10 is the requirement tree ID, and 2 is the requirement ID.

Sample response

[ 2 ]

Map a single test case to multiple requirements

Use the following operation:

POST /flex/services/rest/latest/testcase/allocate/requirement/{testcaseid}?releaseid={id}

testcaseid - the ID of the test case version.

releaseid - the release ID.

Request format

To map a single test case to multiple requirements, send a POST request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/testcase/allocate/requirement/{testcaseid}?releaseid={id}

Sample request

{
  "modRequirementTree": [
    [
      10,
      0
    ]
  ],
  "testcaseid": 25,
  "modRequirement": [
    [
      10,
      2
    ],
    [
      10,
      3
    ]
  ],
  "releaseId": 4
}

In this request, 10 is the requirement tree ID; 2 and 3 are requirement IDs.

Sample response

[ 2, 3 ]

Map a single test case to requirements from multiple nodes

Use the following operation:

POST /flex/services/rest/latest/testcase/allocate/requirement/{testcaseid}?releaseid={id}

testcaseid - the ID of the test case version.

releaseid - the release ID.

Request format

To map a single test case to requirements from multiple nodes, send a POST request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/testcase/allocate/requirement/{testcaseid}?releaseid={id}

Sample request

{
  "modRequirementTree": [
    [
      10,
      0
    ],
    [
      11,
      0
    ]
  ],
  "testcaseid": 26,
  "modRequirement": [
    [
      10,
      4
    ],
    [
      11,
      7
    ]
  ],
  "releaseId": 4
}

In this request, 10 and 11 are requirement tree IDs. 4 and 7 are requirement IDs.

Sample response

[ 4, 7 ]

Map multiple test cases to multiple requirements

Use the following operation:

POST /flex/services/rest/latest/testcase/allocate/requirement?releaseid={id}&tcrCatalogTreeId={id}

Request format

To map multiple test cases to multiple requirements, send a POST request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/testcase/allocate/requirement?releaseid={id}&tcrCatalogTreeId={id}

releaseid - the release ID.

tcrCatalogTreeId - the ID of the tree where the test case resides.

Sample request

{
  "selectedAll": 1,
  "modRequirementTree": [
    [
      11,
      0
    ],
    [
      10,
      0
    ]
  ],
  "testcaseids": [
    196,
    195
  ],
  "modRequirement": [
    [
      10,
      5
    ],
    [
      10,
      6
    ]
  ],
  "releaseId": 4,
  "override": false
}

testcaseid - the ID of the test case version.

10 and 11 are requirement tree IDs. 5 and 6 are requirement IDs.

Sample response

{
  "195" : [ 5, 6 ],
  "196" : [ 5, 6 ]
}

Map a single test case to the entire Requirements node

Use the following operation:

POST /flex/services/rest/latest/testcase/allocate/requirement/{testcaseid}?releaseid={id}

Request format

To map a single test case to the entire Requirements node, send a POST request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/testcase/allocate/requirement/{testcaseid}?releaseid={id}

testcaseid - the ID of the test case version.

releaseid - the ID of the release.

Sample request

{
  "modRequirementTree": [
    [
      10,
      0
    ],
    [
      11,
      2
    ]
  ],
  "testcaseid": 198,
  "modRequirement": [],
  "releaseId": 4
}

In [11, 2], 2 is specified to map the entire node.

In [10, 0], 0 indicates that no requirement is mapped to the test case in the node with the ID 10.

Sample response

[ 7, 8, 9, 10, 11 ]

Synchronize requirements

Use the following operation to synchronize requirements in Zephyr Enterprise:

POST /flex/services/rest/latest/externalrequirement/importall?projectId={id}

projectId - the ID of the project.

Request format

To synchronize requirements, send a POST request to the following URL:

http://{ZEPHYR-SERVER}/flex/services/rest/latest/externalrequirement/importall?projectId={id}

Sample request

{
  "projectId": 1,
  "importExternalRequirementDTO": {
    "projectId": 1,
    "topFolderName": "",
    "jiraSync": true
  },
  "searchStringDTO": {
    "searchString": "Project = \"zs-development\""
  },
  "filterSearch": false,
  "filterName": "",
  "filterId": null,
  "jiraSyncId": "",
  "releaseId": "1",
  "bugs": [],
  "importAll": true
}

searchString - a Jira query for importing requirements.

Sample response

Successfully imported total 19 requirements 

See Also

Migration REST API

  • No labels