POST/projects/{ProjectId}/defects/search

Applies to QAComplete 14.5, last modified on August 06, 2024

Returns a filtered list of defects in the specified project.

Use the operation to get a filtered list of all defects registered in a QAComplete project. This operation is equivalent to the /projects/{ProjectId}/defects (GET) operation, but this one allows you to send a large filter string.

To get information on a specific defect by its ID, use the …/defects/{Id} (GET) operation.

Authentication

Basic authentication using a user’s login and password. See Authentication for details.

Security Rights

The authenticating user must belong to a security group that has the Read privilege for Defects.

Request Format

To get a filtered list of defects, send a POST request to the following URL:

http://{server}/rest-api/service/api/v1/projects/{ProjectId}/defects/search?offset={offset}&limit={limit}
URL parameters

ProjectId  :  integer, required

The ID of the project.

offset  :  integer, default: 0

The number of defects to skip before counting the returned defects. The default value is 0, which is the offset of the first item. For details, see Paging Through Results Using Offset and Limit.

limit  :  integer, default: 25

The maximum number of defects to return in the response.

Body parameters

In the request body, pass the RequestDefectsAllPostt object that describes the defects to search for.

{
"Filter": "string"
}

Some string property values (for example, Status) are based on choice lists defined in your QAComplete project. You can find these values in Defects > Show Defects > Actions > Manage Choice Lists in QAComplete.

Filter  :  string

The filter expression to apply to the returned list. See Search Filters.

A sample request:

POST http://yourserver.com/rest-api/service/api/v1/projects/11873/defects/search HTTP/1.1
Host: yourserver.com
Connection: keep-alive
Content-Type: application/json
Accept: application/json
Authorization: Basic am9obkBleGFtcGxlLmNvbTpwQHNzd29yZA==
Content-Length: 63

{
"Filter": "(id in {1,2}) AND (title != 'Test Case 1')"
}

A sample request made by using cURL:

curl -u [email protected]:p@ssword -d @requirements.txt -H "Content-Type: application/json" -H "Accept: application/json" http://yourserver.com/rest-api/service/api/v1/projects/11873/defects/search

Response Format

If successful, the operation responds with HTTP status code 200 and returns a JSON object with defect information.

A sample response:

HTTP/1.1 200 OK
Content-Type: application/json
Content-Length: 1871


{
    "metadata": {
       "result_set": {
          "count": 1,
          "offset": 0,
          "limit": 25,
          "total": 1
       },
        "permissions": {
            "acl": 3
       }
    },
    "results": [
  {
    "id": 2,
    "title": "Floating toolbar improvements",
    "status": "Active",
    "__permissions": {
      "acl": 3
    },
    "act_finish": "2015-06-31T00:00:00.0000000",
    "act_hrs": 0,
    "act_start": "2015-06-17T00:00:00.000000",
    "actual_results": "The design of the floating toolbar is inconsistent.",
    "assigned_to_name": "Smith, John",
    "assignee_user_id": 27942,
    "closed_by": 27942,
    "custom_fields": [
      {
        "Id": "Custom1",
        "Name": "Components",
        "Value": "UI"
      },
      {
        "Id": "Custom2",
        "Name": "Fixed in build",
        "Value": "1.0.13"
      }
    ],
    "date_closed": "0001-01-01T00:00:00.0000000",
    "date_created": "2015-05-26T10:54:21.0930000",
    "date_opened": "2015-05-27T11:42:29.1700000",
    "date_resolved": "2015-06-24T09:55:25.4500000",
    "date_updated": "2015-06-24T09:55:25.4500000",
    "description": "The design of the floating toolbar needs improvement",
    "est_finish": "0001-01-01T00:00:00.0000000",
    "est_hrs": 0,
    "est_hrs_remaining": 0,
    "est_start": "0001-01-01T00:00:00.0000000",
    "expected_results": "This should work",
    "folder_id": 52359,
    "folder_name": "UI Defects",
    "functional_area_code": "",
    "how_found_code": "Code Review",
    "import_id": 0,
    "issue_code": "Code Defect",
    "nbr_events": 0,
    "nbr_files": 1,
    "nbr_notes": 1,
    "nbr_tasks": 0,
    "opened_by": 27942,
    "opened_by_company": "EDGB",
    "opened_by_email": "[email protected]",
    "opened_by_name": "Smith, John",
    "original_id": 0,
    "owner_name": "Smith, John",
    "owner_user_id": 27942,
    "pct_complete": 0,
    "priority_code": "1-Fix ASAP",
    "project_id": 11873,
    "resolution": "Toolbar is redesigned",
    "resolution_code": "Fixed",
    "resolved_by": 27942,
    "resolved_by_name": "Smith, John",
    "severity_code": "1-Crash",
    "software_version_code": "1.0",
    "steps_to_repro": "step 1\r\nstep 2\r\nstep 3\r\nstep 3.1\r\nstep 3.2\r\n",
    "update_user_id": 27942,
    "user_name": "Smith, John"
    }
  ]
}

Error responses

If the operation fails, it returns the appropriate status code and (optionally) the error description in the response body.

If the project with the specified ProjectId does not exist or the authenticating user does not have rights to access the project, the operation returns the Access is denied error.

See Also

Defects Resources

Highlight search results