Requirement

Requirement

Resource: Requirement ( /api/requirement/{id} )

Requirement resource

This resource supports the following methods: DELETE, GET, PATCH, PUT

 

Methods

DELETE


Delete a requirement.

Required Permissions

  • TestManagement/ManageRequirements/Delete

Status Codes

These are the expected status codes returned by the service. In addition, some other status codes may be returned if either an internal error occurs or there is an authentication issue (such as an expired OAuth token).

Status

Description

200 - OK

Returned if the request was completed successfully.

403 - Forbidden

Returned if you don not have the permissions required to delete the requirement.

404 - NotFound

Returned if the requirement does not exist.

 

Example - DELETE

 

Delete a requirement with no children.

Request Headers

Key

Value

Description

Accept

application/json

 

Request Parameters

Key

Value

Description

{id}

4bb709c2-e0e7-4af3-9f60-a045016a9610

Unique identifier of the requirement to delete.

Response Headers

Key

Value

Description

Content-Type

application/json; charset=utf-8

 

Status Code

200 - OK

 

Example - DELETE (when requirement has children).

 

Delete a requirement which has children. When deleteChildren is not set a forbidden status to be returned.

Request Headers

Key

Value

Description

Accept

application/json

 

Request Parameters

Key

Value

Description

{id}

4bb709c2-e0e7-4af3-9f60-a045016a9610

Unique identifier of the requirement to delete.

Response Headers

Key

Value

Description

Content-Type

application/json; charset=utf-8

 

Response Body

{ "Message": "The requirement has children." }

Status Code

403 - Forbidden

 

Example - Delete requirement and children.

 

Delete requirement and all its children.

Request Headers

Key

Value

Description

Accept

application/json

 

Request Parameters

Key

Value

Description

{id}

4bb709c2-e0e7-4af3-9f60-a045016a9610

Unique identifier of the requirement to delete.

deleteChildren

true

Forces deletion of children.

Response Headers

Key

Value

Description

Content-Type

application/json; charset=utf-8

 

Status Code

200 - OK

 

 

GET


Retrieves a single requirement by its unique Identifier.

Required Permissions

  • TestManagement/ManageRequirements/View

Supported Expansions

For more details on expansions, please see the Expand help topic.

Status Codes

These are the expected status codes returned by the service. In addition, some other status codes may be returned if either an internal error occurs or there is an authentication issue (such as an expired OAuth token).

Status

Description

200 - OK

Returned if the request was completed successfully.

403 - Forbidden

Returned if you do not have permission to view this requirement.

404 - NotFound

Returned if no requirement with that identifier exists.

 

Example - GET

 

Retrieves a requirement by its unique identifier.

Request Headers

Key

Value

Description

Accept

application/json

 

Request Parameters

Key

Value

Description

{id}

4bb709c2-e0e7-4af3-9f60-a045016a9610

Unique identifier of the requirement to retrieve.

Response Headers

Key

Value

Description

Content-Type

application/json; charset=utf-8

 

Response Body

{ "Id": "4bb709c2-e0e7-4af3-9f60-a045016a9610", "Name": "Report pagination", "AssignedToId": "191375f2-ae6e-4b52-8bed-4192e34b6486", "AssignedTo": "joeb", "Description": "Check report pagination works correctly", "PriorityId": "fe92720f-3fbd-4e49-a3b2-309f6a0a062a", "StatusId": "62daf195-0a65-400f-af4b-7fda3d529acb", "TypeId": "cfe51645-8179-4fe5-ada3-c145a64d0a05", "DifficultyLevelId": "47b4b0cc-22ee-4993-8ed5-ef1dec40a0d2", "CreatedAt": "2012-01-01T14:04:05Z", "LastUpdatedAt": "2012-02-02T15:05:06Z", "CreatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "CreatedBy": "joeb", "LastUpdatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "LastUpdatedBy": "joeb", "Number": 1, "EstimatedDuration": null, "PackageId": "0f2c3a76-bbd1-4370-8faa-6aacb52f1a01", "ParentId": null, "OrderNumber": 0, "ProjectId": "27dcaff0-1f8a-4dff-b49a-bb3d9f7153b3", "ProjectName": "Test Project", "ParentName": null, "PackageName": "Cycle 1", "ChangeComment": null, "VersionNumber": 0, "HasAttachments": false, "Expands": [ "Widgets", "FieldValues", "Package" ], "Self": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610", "Links": [ { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/relationships", "Rel": "Relationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/allrelationships", "Rel": "AllRelationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/comments", "Rel": "Comments" } ] }

Status Code

200 - OK

 

 

PATCH


Updates an existing requirement.

Required Permissions

  • TestManagement/ManageRequirements/Edit

Status Codes

These are the expected status codes returned by the service. In addition, some other status codes may be returned if either an internal error occurs or there is an authentication issue (such as an expired OAuth token).

Status

Description

204 - NoContent

Returned if it updated the requirement successfully.

403 - Forbidden

Returned if ET did not complete request (normally due to a validation failure or invalid permissions to complete the request).

404 - NotFound

Returned if the requirement does not exist.

PUT


Updates an existing requirement.

Required Permissions

  • TestManagement/ManageRequirements/Edit

Supported Expansions

For more details on expansions, please see the Expand help topic.

Status Codes

These are the expected status codes returned by the service. In addition, some other status codes may be returned if either an internal error occurs or there is an authentication issue (such as an expired OAuth token).

Status

Description

200 - OK

Returned if the request was completed successfully.

403 - Forbidden

Returned if ET did not complete request (normally due to a validation failure or invalid permissions to complete the request).

404 - NotFound

Returned if the requirement does not exist.

 

Example - PUT (rename requirement)

 

Example of renaming a requirement.

Request Headers

Key

Value

Description

Accept

application/json

 

Content-type

application/json

 

Request Parameters

Key

Value

Description

{id}

4bb709c2-e0e7-4af3-9f60-a045016a9610

Unique identifier of the requirement to update.

Request Body

{ "Name": "Updated name" }

Response Headers

Key

Value

Description

Content-Type

application/json; charset=utf-8

 

Response Body

{ "Id": "4bb709c2-e0e7-4af3-9f60-a045016a9610", "Name": "Updated name", "AssignedToId": null, "AssignedTo": null, "Description": null, "PriorityId": "fe92720f-3fbd-4e49-a3b2-309f6a0a062a", "StatusId": "62daf195-0a65-400f-af4b-7fda3d529acb", "TypeId": "cfe51645-8179-4fe5-ada3-c145a64d0a05", "DifficultyLevelId": "47b4b0cc-22ee-4993-8ed5-ef1dec40a0d2", "CreatedAt": "2012-01-01T14:04:05Z", "LastUpdatedAt": "2012-02-02T15:05:06Z", "CreatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "CreatedBy": "joeb", "LastUpdatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "LastUpdatedBy": "joeb", "Number": 1, "EstimatedDuration": null, "PackageId": "0f2c3a76-bbd1-4370-8faa-6aacb52f1a01", "ParentId": null, "OrderNumber": 0, "ProjectId": "27dcaff0-1f8a-4dff-b49a-bb3d9f7153b3", "ProjectName": "Test Project", "ParentName": null, "PackageName": "Cycle 1", "ChangeComment": null, "VersionNumber": 0, "HasAttachments": false, "Expands": [ "Widgets", "FieldValues", "Package" ], "Self": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610", "Links": [ { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/relationships", "Rel": "Relationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/allrelationships", "Rel": "AllRelationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/comments", "Rel": "Comments" } ] }

Status Code

200 - OK

 

Example - PUT (move requirement to new package)

 

Example of renaming a requirement.

Request Headers

Key

Value

Description

Accept

application/json

 

Content-type

application/json

 

Request Parameters

Key

Value

Description

{id}

4bb709c2-e0e7-4af3-9f60-a045016a9610

Unique identifier of the requirement to update.

Request Body

{ "PackageId": "daa396d6-ad7d-4acf-a6c5-40551a70f79" }

Response Headers

Key

Value

Description

Content-Type

application/json; charset=utf-8

 

Response Body

{ "Id": "4bb709c2-e0e7-4af3-9f60-a045016a9610", "Name": "Updated name", "AssignedToId": null, "AssignedTo": null, "Description": null, "PriorityId": "fe92720f-3fbd-4e49-a3b2-309f6a0a062a", "StatusId": "62daf195-0a65-400f-af4b-7fda3d529acb", "TypeId": "cfe51645-8179-4fe5-ada3-c145a64d0a05", "DifficultyLevelId": "47b4b0cc-22ee-4993-8ed5-ef1dec40a0d2", "CreatedAt": "2012-01-01T14:04:05Z", "LastUpdatedAt": "2012-02-02T15:05:06Z", "CreatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "CreatedBy": "joeb", "LastUpdatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "LastUpdatedBy": "joeb", "Number": 1, "EstimatedDuration": null, "PackageId": "daa396d6-ad7d-4acf-a6c5-40551a70f790", "ParentId": null, "OrderNumber": 0, "ProjectId": "27dcaff0-1f8a-4dff-b49a-bb3d9f7153b3", "ProjectName": "Test Project", "ParentName": null, "PackageName": "Cycle 3", "ChangeComment": null, "VersionNumber": 0, "HasAttachments": false, "Expands": [ "Widgets", "FieldValues", "Package" ], "Self": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610", "Links": [ { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/relationships", "Rel": "Relationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/allrelationships", "Rel": "AllRelationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/comments", "Rel": "Comments" } ] }

Status Code

200 - OK

 

Example - PUT (generate new auto-number)

 

An example of updating a requirement with a new automatically generated value (if auto-number of requirements is enabled for the project this requirement belongs to).

Request Headers

Key

Value

Description

Accept

application/json

 

Content-type

application/json

 

Request Parameters

Key

Value

Description

{id}

4bb709c2-e0e7-4af3-9f60-a045016a9610

Unique identifier of the requirement to update.

Request Body

{ "Number": "auto" }

Response Headers

Key

Value

Description

Content-Type

application/json; charset=utf-8

 

Response Body

{ "Id": "4bb709c2-e0e7-4af3-9f60-a045016a9610", "Name": "Sample name", "AssignedToId": null, "AssignedTo": null, "Description": null, "PriorityId": "fe92720f-3fbd-4e49-a3b2-309f6a0a062a", "StatusId": "62daf195-0a65-400f-af4b-7fda3d529acb", "TypeId": "cfe51645-8179-4fe5-ada3-c145a64d0a05", "DifficultyLevelId": "47b4b0cc-22ee-4993-8ed5-ef1dec40a0d2", "CreatedAt": "2012-01-01T14:04:05Z", "LastUpdatedAt": "2012-02-02T15:05:06Z", "CreatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "CreatedBy": "joeb", "LastUpdatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "LastUpdatedBy": "joeb", "Number": 1234, "EstimatedDuration": null, "PackageId": "0f2c3a76-bbd1-4370-8faa-6aacb52f1a01", "ParentId": null, "OrderNumber": 0, "ProjectId": "27dcaff0-1f8a-4dff-b49a-bb3d9f7153b3", "ProjectName": "Test Project", "ParentName": null, "PackageName": "Cycle 1", "ChangeComment": null, "VersionNumber": 0, "HasAttachments": false, "Expands": [ "Widgets", "FieldValues", "Package" ], "Self": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610", "Links": [ { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/relationships", "Rel": "Relationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/allrelationships", "Rel": "AllRelationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/comments", "Rel": "Comments" } ] }

Status Code

200 - OK

 

Example - PUT (full update)

 

Example of creating a new requirement with most of its fields populated (including custom fields).

Request Headers

Key

Value

Description

Accept

application/json

 

Content-type

application/json

 

Request Parameters

Key

Value

Description

{id}

4bb709c2-e0e7-4af3-9f60-a045016a9610

Unique identifier of the requirement to update.

$expand

FieldValues

Expand field (we expand the FieldValues to ensure that it is returned in the response to create a new requirement).

Request Body

{ "Id": "4bb709c2-e0e7-4af3-9f60-a045016a9610", "TemporaryId": "6cc26034-6514-44e0-907c-8f4f5eaa85b5", "PackageId": "0f2c3a76-bbd1-4370-8faa-6aacb52f1a01", "Number": 22, "Name": "Report pagination", "AssignedToId": "191375f2-ae6e-4b52-8bed-4192e34b6486", "EstimatedDuration": "5m", "PriorityId": "fe92720f-3fbd-4e49-a3b2-309f6a0a062a", "StatusId": "62daf195-0a65-400f-af4b-7fda3d529acb", "TypeId": "cfe51645-8179-4fe5-ada3-c145a64d0a05", "DifficultyLevelId": "47b4b0cc-22ee-4993-8ed5-ef1dec40a0d2", "Description": "derequiremention", "ChangeComment": "Requirement created updated via my API", "OrderNumber": 2, "FieldValues": { "Cycle": "V2.1 Cycle 1" } }

Response Headers

Key

Value

Description

Content-Type

application/json; charset=utf-8

 

Response Body

{ "Id": "4bb709c2-e0e7-4af3-9f60-a045016a9610", "Name": "My New Requirement", "AssignedToId": "191375f2-ae6e-4b52-8bed-4192e34b6486", "AssignedTo": "joeb", "Description": "derequiremention", "PriorityId": "fe92720f-3fbd-4e49-a3b2-309f6a0a062a", "StatusId": "62daf195-0a65-400f-af4b-7fda3d529acb", "TypeId": "cfe51645-8179-4fe5-ada3-c145a64d0a05", "DifficultyLevelId": "47b4b0cc-22ee-4993-8ed5-ef1dec40a0d2", "CreatedAt": "2012-01-01T14:04:05Z", "LastUpdatedAt": "2012-02-02T15:05:06Z", "CreatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "CreatedBy": "joeb", "LastUpdatedById": "191375f2-ae6e-4b52-8bed-4192e34b6486", "LastUpdatedBy": "joeb", "Number": 1, "EstimatedDuration": "5 minutes", "PackageId": "0f2c3a76-bbd1-4370-8faa-6aacb52f1a01", "ParentId": null, "OrderNumber": 22, "ProjectId": "27dcaff0-1f8a-4dff-b49a-bb3d9f7153b3", "ProjectName": "Test Project", "ParentName": null, "PackageName": "Cycle 1", "ChangeComment": "Requirement created updated via my API", "VersionNumber": 2, "HasAttachments": true, "Expands": [ "Widgets", "FieldValues", "Package" ], "Self": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610", "Links": [ { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/relationships", "Rel": "Relationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/allrelationships", "Rel": "AllRelationships" }, { "Href": "http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610/comments", "Rel": "Comments" } ] }

Status Code

200 - OK