GET/projects/{ProjectId}/{EntityCode}/{EntityId}/files

Applies to QAComplete 14.3, last modified on February 19, 2024

Returns a list of attachments of the specified item (a defect, requirement and so on) in QAComplete.

Use the operation to get a list of files, URLs and UNC paths attached to an item you specified by its entity code (type) and ID, and by the ID of the project to which the item belongs.

To get information on an individual attachment, use the …/files/{Id} (GET) operation.

In QAComplete, you can view attachments on the Files tab of the needed item.

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 the entity (Defects, Tests and so on) that contains the attachment.

Request Format

To get information on all attachments, send a GET request to the following URL:

http://{server}/rest-api/service/api/v1/projects/{ProjectId}/{EntityCode}/{EntityId}/files?offset={offset}&limit={limit}

ProjectId  :  integer, required

The ID of the project, to which the item belongs.

EntityCode  :  string, required

The type of the item, whose attachments you want to get. Possible values:

  • Releases
  • Bugs (defects)
  • FunctionalSpecs (requirements)
  • Tests
  • TestSets
  • TestSteps

EntityId  :  integer, required

The ID of the item (a defect, requirement, and so on) that has attachments.

offset  :  integer, default: 0

The number of attachments to skip before counting the returned attachments. 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 attachments to return in the response.

A sample request:

GET http://yourserver.com/rest-api/service/api/v1/projects/11873/Bugs/12/files HTTP/1.1
Host: yourserver.com
Connection: keep-alive
Accept: application/json
Authorization: Basic am9obkBleGFtcGxlLmNvbTpwQHNzd29yZA==

A sample request made by using cURL:

curl -u [email protected]:p@ssword -H "Accept: application/json" http://yourserver.com/service/api/v1/projects/11873/Bugs/12/files

Response Format

On success, the operation responds with HTTP status code 200 and returns a JSON object with information about the attachments.

A sample response:

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


{
    "metadata": {
       "result_set": {
          "count": 2,
          "offset": 0,
          "limit": 25,
          "total": 2
       },
        "permissions": {
            "acl": 7
       }
    },
    "results": [
       {
          "attachment_type_code": "File",
          "file_name": "data.txt",
          "title": "data.txt",
          "date_created": "2015-06-29T11:23:52.3970000",
          "date_updated": "2015-06-29T11:23:52.3970000",
          "entity_code": "Bugs",
          "entity_id": 0,
          "update_user_id": 24663,
          "user_name": "Smith, John"
       },
       {
          "attachment_type_code": "File",
          "file_name": "http://testserver.com/media/images/pic01.png",
          "title": "image",
          "comment": "Comment 1",
          "date_created": "2015-06-29T11:41:55.6370000",
          "date_updated": "2015-06-29T11:41:55.6370000",
          "entity_code": "Bugs",
          "entity_id": 0,
          "update_user_id": 24663,
          "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.

If an item with the specified EntityCode or EntityId does not exist, the operation returns the File or directory not found error.

See Also

Files (Attachments) Resources

Highlight search results