Review Diff Comment List Resource¶
Added in 1.6
Provides information on diff comments made on a review.
If the review is a draft, then comments can be added, deleted, or changed on this list. However, if the review is already published, then no changes can be made.
Details¶
Name | diff_comments |
URI | /api/review-requests/{review_request_id}/reviews/{review_id}/diff-comments/ |
Token Policy ID | review_diff_comment |
HTTP Methods | |
Parent Resource | Review Resource |
Child Resources | |
Anonymous Access | Yes, if anonymous site access is enabled |
Links¶
Name | Method | Resource |
---|---|---|
create | POST | Review Diff Comment List Resource |
self | GET | Review Diff Comment List Resource |
HTTP GET¶
Returns the list of comments made on a review.
This list can be filtered down by using the ?line=
and
?interdiff-revision=
.
To filter for comments that start on a particular line in the file,
using ?line=
.
To filter for comments that span revisions of diffs, you can specify
the second revision in the range using ?interdiff-revision=
.
Request Parameters¶
counts-onlyBoolean | If specified, a single count field is returned with the number of results, instead of the results themselves. |
interdiff-revisionInteger | The second revision in an interdiff revision range. The comments will be limited to this range. |
lineInteger | The line number that each comment must start on. |
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. |
order-byString | Comma-separated list of fields to order by. Added in 1.7.10 |
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 diff comment.
This will create a new diff comment on this review. The review must be a draft review.
Request Parameters¶
filediff_idInteger | Required The ID of the file diff the comment is on. |
first_lineInteger | Required The line number the comment starts at. |
num_linesInteger | Required The number of lines the comment spans. |
textRich Text | Required The comment text. Added in 2.0 |
force_text_typeOne of plain , markdown , html |
The text type, if any, to force for returned text fields. The contents will be converted to the requested type in the payload, but will not be saved as that type. Added in 2.0.9 |
interfilediff_idInteger | The ID of the second file diff in the interdiff the comment is on. |
issue_openedBoolean | Whether the comment opens an issue. Added in 2.0 |
text_typeOne of plain , markdown |
The content type for the comment text field. The default is Added in 2.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 |
Examples¶
application/vnd.reviewboard.org.review-diff-comments+json¶
$ curl http://reviews.example.com/api/review-requests/8/reviews/8/diff-comments/ -H "Accept: application/json"
Vary: Accept, Cookie
Item-Content-Type: application/vnd.reviewboard.org.review-diff-comment+json
Content-Type: application/vnd.reviewboard.org.review-diff-comments+json
X-Content-Type-Options: nosniff
{
"diff_comments": [
{
"extra_data": {},
"first_line": 12,
"id": 5,
"interfilediff": null,
"issue_opened": false,
"issue_status": "",
"links": {
"delete": {
"href": "http://reviews.example.com/api/review-requests/8/reviews/8/diff-comments/5/",
"method": "DELETE"
},
"filediff": {
"href": "http://reviews.example.com/api/review-requests/8/diffs/3/files/41/",
"method": "GET",
"title": "/trunk/reviewboard/settings_local.py.tmpl (1797) -> /trunk/reviewboard/settings_local.py.tmpl ((working copy))"
},
"self": {
"href": "http://reviews.example.com/api/review-requests/8/reviews/8/diff-comments/5/",
"method": "GET"
},
"update": {
"href": "http://reviews.example.com/api/review-requests/8/reviews/8/diff-comments/5/",
"method": "PUT"
},
"user": {
"href": "http://reviews.example.com/api/users/admin/",
"method": "GET",
"title": "admin"
}
},
"num_lines": 3,
"public": true,
"text": "This is just a sample comment.",
"text_type": "plain",
"timestamp": "2010-08-22T17:25:41Z"
},
{
"extra_data": {},
"first_line": 29,
"id": 6,
"interfilediff": null,
"issue_opened": false,
"issue_status": "",
"links": {
"delete": {
"href": "http://reviews.example.com/api/review-requests/8/reviews/8/diff-comments/6/",
"method": "DELETE"
},
"filediff": {
"href": "http://reviews.example.com/api/review-requests/8/diffs/3/files/41/",
"method": "GET",
"title": "/trunk/reviewboard/settings_local.py.tmpl (1797) -> /trunk/reviewboard/settings_local.py.tmpl ((working copy))"
},
"self": {
"href": "http://reviews.example.com/api/review-requests/8/reviews/8/diff-comments/6/",
"method": "GET"
},
"update": {
"href": "http://reviews.example.com/api/review-requests/8/reviews/8/diff-comments/6/",
"method": "PUT"
},
"user": {
"href": "http://reviews.example.com/api/users/admin/",
"method": "GET",
"title": "admin"
}
},
"num_lines": 3,
"public": true,
"text": "Another sample comment.",
"text_type": "plain",
"timestamp": "2010-08-22T17:25:52Z"
}
],
"links": {
"create": {
"href": "http://reviews.example.com/api/review-requests/8/reviews/8/diff-comments/",
"method": "POST"
},
"self": {
"href": "http://reviews.example.com/api/review-requests/8/reviews/8/diff-comments/",
"method": "GET"
}
},
"stat": "ok",
"total_results": 2
}