Jump to >

This documentation covers Review Board 2.5. You can see the latest Review Board documentation or all other versions.

File Attachment List Resource

Added in 1.6

A resource representing a file attachment on a review request.

Details

Name file_attachments
URI /api/review-requests/{review_request_id}/file-attachments/
Token Policy ID file_attachment
HTTP Methods
  • GET - Returns a list of file attachments on the review request.
  • POST - Creates a new file attachment from a file attachment.
Parent Resource Review Request Resource
Child Resources
Anonymous Access Yes, if anonymous site access is enabled

HTTP GET

Returns a list of file attachments on the review request.

Each item in this list is a file attachment attachment that is shown on the review request.

Request Parameters

counts-onlyBoolean If specified, a single count field is returned with the number of results, instead of the results themselves.
max-resultsInteger The maximum number of results to return in this list. By default, this is 25. There is a hard limit of 200; if you need more than 200 results, you will need to make more than one request, using the “next” pagination link.
startInteger The 0-based index of the first result in the list. The start index is usually the previous start index plus the number of previous results. By default, this is 0.

Errors

100 - Does Not ExistHTTP 404 - Not Found Object does not exist
101 - Permission DeniedHTTP 403 - Forbidden You don’t have permission for this
103 - Not Logged InHTTP 401 - Unauthorized You are not logged in
105 - Invalid Form DataHTTP 400 - Bad Request One or more fields had errors

HTTP POST

Creates a new file attachment from a file attachment.

This accepts any file type and associates it with a draft of a review request.

Creating a new file attachment will automatically create a new review request draft, if one doesn’t already exist. This attachment will be part of that draft, and will be shown on the review request when it’s next published.

It is expected that the client will send the data as part of a multipart/form-data mimetype. The file’s name and content should be stored in the path field. A typical request may look like:

– SoMe BoUnDaRy
Content-Disposition: form-data; name=path; filename=”foo.zip”

<Content here>
– SoMe BoUnDaRy –

Request Parameters

pathUploaded File Required

The file to upload.

attachment_historyInteger

ID of the corresponding FileAttachmentHistory.

Added in 2.5

captionString The optional caption describing the file.

Errors

100 - Does Not ExistHTTP 404 - Not Found Object does not exist
101 - Permission DeniedHTTP 403 - Forbidden You don’t have permission for this
103 - Not Logged InHTTP 401 - Unauthorized You are not logged in
105 - Invalid Form DataHTTP 400 - Bad Request One or more fields had errors

Examples

application/vnd.reviewboard.org.file-attachments+json

$ curl http://reviews.example.com/api/review-requests/8/file-attachments/ -H "Accept: application/json"
Vary: Accept, Cookie
Item-Content-Type: application/vnd.reviewboard.org.file-attachment+json
Content-Type: application/vnd.reviewboard.org.file-attachments+json
X-Content-Type-Options: nosniff
{
  "file_attachments": [
    {
      "absolute_url": "http://example.com/media/uploaded/images/2010/08/13/screenshot1.png", 
      "attachment_history_id": null, 
      "caption": "Example Attachment", 
      "filename": "screenshot1.png", 
      "icon_url": "/static/rb/images/mimetypes/image-x-generic.png", 
      "id": 1, 
      "links": {
        "delete": {
          "href": "http://reviews.example.com/api/review-requests/8/file-attachments/1/", 
          "method": "DELETE"
        }, 
        "file_attachment_comments": {
          "href": "http://reviews.example.com/api/review-requests/8/file-attachments/1/file-attachment-comments/", 
          "method": "GET"
        }, 
        "self": {
          "href": "http://reviews.example.com/api/review-requests/8/file-attachments/1/", 
          "method": "GET"
        }, 
        "update": {
          "href": "http://reviews.example.com/api/review-requests/8/file-attachments/1/", 
          "method": "PUT"
        }
      }, 
      "mimetype": "image/png", 
      "review_url": "", 
      "revision": 0, 
      "thumbnail": "<div class=\"file-thumbnail\"> <img src=\"/media/uploaded/images/2010/08/13/screenshot1_300.png\" data-at2x=\"/media/uploaded/images/2010/08/13/screenshot1_600.png\" alt=\"Example Attachment\" /></div>", 
      "url": "http://example.com/media/uploaded/images/2010/08/13/screenshot1.png"
    }
  ], 
  "links": {
    "create": {
      "href": "http://reviews.example.com/api/review-requests/8/file-attachments/", 
      "method": "POST"
    }, 
    "self": {
      "href": "http://reviews.example.com/api/review-requests/8/file-attachments/", 
      "method": "GET"
    }
  }, 
  "stat": "ok", 
  "total_results": 1
}