Resource: Requirement ( /api/requirement/{id} )
Requirement resource
This resource supports the following methods: DELETE, GET, PUT
Methods
DELETE
Delete a requirement.
Required Permissions
- TestManagement/ManageRequirements
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. |
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
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
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/View
Supported Expansions
- Widgets
- FieldValues
- Package
- Children
- Attachments
- Status
- Priority
- Type
- DifficultyLevel
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. |
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
PUT
Updates an existing requirement.
Required Permissions
- TestManagement/ManageRequirements
Supported Expansions
- Widgets
- FieldValues
- Package
- Children
- Attachments
- Status
- Priority
- Type
- DifficultyLevel
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 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 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
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 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