Resource: Requirements ( /api/requirements )
Requirements collection resource
Root Relation: Requirements
This resource supports the following methods: GET, POST
Methods
GET
Retrieves all (or a subset) of requirements that are visible.
This method supports the TQL query parameters tql, $top, $take and $inlinecount. See TQL Topic for more details.
Required Permissions
- TestManagement/View
Supported Expansions
- FieldControls
- 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 could not complete the request (normally due to a validation failure or the necessary permissions to complete the request have not been met). |
Retrieves requirements matching a TQL query
Request Headers
Key | Value | Description |
---|---|---|
Accept | application/json |
Request Parameters
Key | Value | Description |
---|---|---|
tql | Name ~ 'Report' | The TQL query to execute. |
$top | 5 | The maximum number of results to return (defaults to 25). |
$skip | 0 | Number of results to skip before return the $top number of results matching the query. |
Response Headers
Key | Value | Description |
---|---|---|
Content-Type | application/json; charset=utf-8 |
Response Body
{ "Skip": 0, "Top": 5, "Total": 1, "Items": [ { "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": [ "FieldControls", "FieldValues", "Package", "Assignments" ], "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" } ] } ], "Self": "http://localhost/api/api/requirements?tql=Name~'Report'" }
Status Code
200 - OK
Retrieves all requirements.
Request Headers
Key | Value | Description |
---|---|---|
Accept | application/json |
Request Parameters
Key | Value | Description |
---|---|---|
$top | 5 | The maximum number of results to return (defaults to 25). |
$skip | 0 | The Number of results to skip before return the $top number of results matching the query. |
Response Headers
Key | Value | Description |
---|---|---|
Content-Type | application/json; charset=utf-8 |
Response Body
{ "Skip": 0, "Top": 5, "Total": 2, "Items": [ { "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": [ "FieldControls", "FieldValues", "Package", "Assignments" ], "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" } ] }, { "Id": "4bb709c2-e0e7-4af3-9f60-a045016a9610", "Name": "Login", "AssignedToId": null, "AssignedTo": null, "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-03-01T14:04:05Z", "LastUpdatedAt": "2012-03-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": [ "FieldControls", "FieldValues", "Package", "Assignments" ], "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" } ] } ], "Self": "http://localhost/api/api/requirements" }
Status Code
200 - OK
POST
Creates a new requirement.
Required Permissions
- TestManagement/ManageRequirements
Supported Expansions
- FieldControls
- 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. |
An example of creating a new requirement with only the minimum required information.
Request Headers
Key | Value | Description |
---|---|---|
Accept | application/json | |
Content-type | application/json |
Request Body
{ "PackageId": "0f2c3a76-bbd1-4370-8faa-6aacb52f1a01", "Name": "My New Requirement", "PriorityId": "fe92720f-3fbd-4e49-a3b2-309f6a0a062a", "StatusId": "62daf195-0a65-400f-af4b-7fda3d529acb", "TypeId": "cfe51645-8179-4fe5-ada3-c145a64d0a05", "DifficultyLevelId": "47b4b0cc-22ee-4993-8ed5-ef1dec40a0d2" }
Response Headers
Key | Value | Description |
---|---|---|
Location | http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610 | |
Content-Type | application/json; charset=utf-8 |
Response Body
{ "Id": "4bb709c2-e0e7-4af3-9f60-a045016a9610", "Name": "My New Requirement", "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 Projec", "ParentName": null, "PackageName": "Cycle 1", "ChangeComment": null, "VersionNumber": 0, "HasAttachments": false, "Expands": [ "FieldControls", "FieldValues", "Package", "Assignments" ], "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
201 - Created
An example of creating a new requirement with majority of fields populated (including custom fields).
Request Headers
Key | Value | Description |
---|---|---|
Accept | application/json | |
Content-type | application/json |
Request Parameters
Key | Value | Description |
---|---|---|
$expand | FieldValues | Expand field (FieldValues are expanded to ensure that they are returned in the response to creating a new requirement.) |
Request Body
{ "TemporaryId": "6cc26034-6514-44e0-907c-8f4f5eaa85b5", "PackageId": "0f2c3a76-bbd1-4370-8faa-6aacb52f1a01", "Number": 22, "Name": "My New Requirement", "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 via my API", "OrderNumber": 2, "FieldValues": { "Cycle": "V2.1 Cycle 1" } }
Response Headers
Key | Value | Description |
---|---|---|
Location | http://localhost/api/requirement/4bb709c2-e0e7-4af3-9f60-a045016a9610 | |
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 Projec", "ParentName": null, "PackageName": "Cycle 1", "ChangeComment": "Requirement created via my API", "VersionNumber": 1, "HasAttachments": true, "Expands": [ "FieldControls", "FieldValues", "Package", "Assignments" ], "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
201 - Created