Root List Resource¶
Links to all the main resources, including URI templates to resources anywhere in the tree.
This should be used as a starting point for any clients that need to access any resources in the API. By browsing through the resource tree instead of hard-coding paths, your client can remain compatible with any changes in the resource URI scheme.
This also contains information on the server and the capabilities of the API. This information was formerly provided only by the Server Info resource, but has been moved here as a convenience to clients.
Details¶
Name | root |
URI | /api/ |
Token Policy ID | root |
HTTP Methods |
|
Parent Resource | None. |
Child Resources |
|
Anonymous Access | Yes, if anonymous site access is enabled |
Links¶
Name |
Method |
Resource |
---|---|---|
default_reviewers | GET |
|
extensions | GET |
|
groups | GET |
|
hosting_service_accounts | GET |
|
hosting_services | GET |
|
info | GET |
|
oauth_apps | GET |
|
oauth_tokens | GET |
|
repositories | GET |
|
review_requests | GET |
|
search | GET |
|
self | GET |
|
session | GET |
|
users | GET |
|
validation | GET |
|
webhooks | GET |
HTTP GET¶
Retrieves the list of top-level resources and templates.
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 |
112 - OAuth2 Missing Scope ErrorHTTP 403 - Forbidden | Your OAuth2 token lacks the necessary scopes for this request. |
113 - OAuth2 Access Denied ErrorHTTP 403 - Forbidden | OAuth2 token access for this resource is prohibited. |
Examples¶
application/vnd.reviewboard.org.root+json¶
$ curl http://reviews.example.com/api -H "Accept: application/json"
Content-Type: application/vnd.reviewboard.org.root+json
ETag: 66971be7a531141b44e28567fe4a9da31ff34312
X-Content-Type-Options: nosniff
Vary: Accept, Cookie
{
"capabilities": {
"diffs": {
"base_commit_ids": true,
"moved_files": true,
"validation": {
"base_commit_ids": true
}
},
"extra_data": {
"json_patching": true
},
"review_requests": {
"commit_ids": true,
"supports_history": true,
"trivial_publish": true
},
"scmtools": {
"git": {
"empty_files": true,
"symlinks": true
},
"mercurial": {
"empty_files": true
},
"perforce": {
"empty_files": true,
"moved_files": true
},
"svn": {
"empty_files": true
}
},
"text": {
"can_include_raw_values": true,
"markdown": true,
"per_field_text_types": true
}
},
"links": {
"default_reviewers": {
"href": "http://reviews.example.com/apidefault-reviewers/",
"method": "GET"
},
"extensions": {
"href": "http://reviews.example.com/apiextensions/",
"method": "GET"
},
"groups": {
"href": "http://reviews.example.com/apigroups/",
"method": "GET"
},
"hosting_service_accounts": {
"href": "http://reviews.example.com/apihosting-service-accounts/",
"method": "GET"
},
"hosting_services": {
"href": "http://reviews.example.com/apihosting-services/",
"method": "GET"
},
"info": {
"href": "http://reviews.example.com/apiinfo/",
"method": "GET"
},
"oauth_apps": {
"href": "http://reviews.example.com/apioauth-apps/",
"method": "GET"
},
"oauth_tokens": {
"href": "http://reviews.example.com/apioauth-tokens/",
"method": "GET"
},
"repositories": {
"href": "http://reviews.example.com/apirepositories/",
"method": "GET"
},
"review_requests": {
"href": "http://reviews.example.com/apireview-requests/",
"method": "GET"
},
"search": {
"href": "http://reviews.example.com/apisearch/",
"method": "GET"
},
"self": {
"href": "http://reviews.example.com/api",
"method": "GET"
},
"session": {
"href": "http://reviews.example.com/apisession/",
"method": "GET"
},
"users": {
"href": "http://reviews.example.com/apiusers/",
"method": "GET"
},
"validation": {
"href": "http://reviews.example.com/apivalidation/",
"method": "GET"
},
"webhooks": {
"href": "http://reviews.example.com/apiwebhooks/",
"method": "GET"
}
},
"product": {
"is_release": false,
"name": "Review Board",
"package_version": "4.0.7a0",
"version": "4.0.7 alpha 0 (dev)"
},
"site": {
"administrators": [
{
"email": "admin@example.com",
"name": "Example Admin"
}
],
"time_zone": "UTC",
"url": "http://example.com/"
},
"stat": "ok",
"uri_templates": {
"api_token": "http://reviews.example.com/apiusers/{username}/api-tokens/{api_token_id}/",
"api_tokens": "http://reviews.example.com/apiusers/{username}/api-tokens/",
"archived_review_request": "http://reviews.example.com/apiusers/{username}/archived-review-requests/{review_request_id}/",
"archived_review_requests": "http://reviews.example.com/apiusers/{username}/archived-review-requests/",
"branches": "http://reviews.example.com/apirepositories/{repository_id}/branches/",
"change": "http://reviews.example.com/apireview-requests/{review_request_id}/changes/{change_id}/",
"changes": "http://reviews.example.com/apireview-requests/{review_request_id}/changes/",
"commit": "http://reviews.example.com/apireview-requests/{review_request_id}/diffs/{diff_revision}/commits/{commit_id}/",
"commit_validation": "http://reviews.example.com/apivalidation/commits/",
"commits": "http://reviews.example.com/apireview-requests/{review_request_id}/diffs/{diff_revision}/commits/",
"default_reviewer": "http://reviews.example.com/apidefault-reviewers/{default_reviewer_id}/",
"default_reviewers": "http://reviews.example.com/apidefault-reviewers/",
"diff": "http://reviews.example.com/apireview-requests/{review_request_id}/diffs/{diff_revision}/",
"diff_comment": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/replies/{reply_id}/diff-comments/{comment_id}/",
"diff_comments": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/replies/{reply_id}/diff-comments/",
"diff_context": "http://reviews.example.com/apireview-requests/{review_request_id}/diff-context/",
"diff_file_attachment": "http://reviews.example.com/apirepositories/{repository_id}/diff-file-attachments/{file_attachment_id}/",
"diff_file_attachments": "http://reviews.example.com/apirepositories/{repository_id}/diff-file-attachments/",
"diff_validation": "http://reviews.example.com/apivalidation/diffs/",
"diffs": "http://reviews.example.com/apireview-requests/{review_request_id}/diffs/",
"draft": "http://reviews.example.com/apireview-requests/{review_request_id}/draft/",
"extension": "http://reviews.example.com/apiextensions/{extension_name}/",
"extensions": "http://reviews.example.com/apiextensions/",
"file": "http://reviews.example.com/apireview-requests/{review_request_id}/diffs/{diff_revision}/files/{filediff_id}/",
"file_attachment": "http://reviews.example.com/apireview-requests/{review_request_id}/file-attachments/{file_attachment_id}/",
"file_attachment_comment": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/file-attachment-comments/{comment_id}/",
"file_attachment_comments": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/file-attachment-comments/",
"file_attachments": "http://reviews.example.com/apireview-requests/{review_request_id}/file-attachments/",
"files": "http://reviews.example.com/apireview-requests/{review_request_id}/diffs/{diff_revision}/files/",
"general_comment": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/general-comments/{comment_id}/",
"general_comments": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/general-comments/",
"group": "http://reviews.example.com/apigroups/{group_name}/",
"groups": "http://reviews.example.com/apigroups/",
"hosting_service": "http://reviews.example.com/apihosting-services/{hosting_service_id}/",
"hosting_service_account": "http://reviews.example.com/apihosting-service-accounts/{account_id}/",
"hosting_service_accounts": "http://reviews.example.com/apihosting-service-accounts/",
"hosting_services": "http://reviews.example.com/apihosting-services/",
"info": "http://reviews.example.com/apiinfo/",
"last_update": "http://reviews.example.com/apireview-requests/{review_request_id}/last-update/",
"muted_review_request": "http://reviews.example.com/apiusers/{username}/muted-review-requests/{review_request_id}/",
"muted_review_requests": "http://reviews.example.com/apiusers/{username}/muted-review-requests/",
"oauth_app": "http://reviews.example.com/apioauth-apps/{app_id}/",
"oauth_apps": "http://reviews.example.com/apioauth-apps/",
"oauth_token": "http://reviews.example.com/apioauth-tokens/{oauth_token_id}/",
"oauth_tokens": "http://reviews.example.com/apioauth-tokens/",
"original_file": "http://reviews.example.com/apireview-requests/{review_request_id}/diffs/{diff_revision}/files/{filediff_id}/original-file/",
"patched_file": "http://reviews.example.com/apireview-requests/{review_request_id}/diffs/{diff_revision}/files/{filediff_id}/patched-file/",
"remote_repositories": "http://reviews.example.com/apihosting-service-accounts/{account_id}/remote-repositories/",
"remote_repository": "http://reviews.example.com/apihosting-service-accounts/{account_id}/remote-repositories/{repository_id}/",
"replies": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/replies/",
"reply": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/replies/{reply_id}/",
"reply_draft": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/replies/draft/",
"repositories": "http://reviews.example.com/apirepositories/",
"repository": "http://reviews.example.com/apirepositories/{repository_id}/",
"review": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/",
"review_draft": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/draft/",
"review_group_user": "http://reviews.example.com/apigroups/{group_name}/users/{username}/",
"review_group_users": "http://reviews.example.com/apigroups/{group_name}/users/",
"review_request": "http://reviews.example.com/apireview-requests/{review_request_id}/",
"review_requests": "http://reviews.example.com/apireview-requests/",
"reviews": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/",
"root": "http://reviews.example.com/api",
"screenshot": "http://reviews.example.com/apireview-requests/{review_request_id}/screenshots/{screenshot_id}/",
"screenshot_comment": "http://reviews.example.com/apireview-requests/{review_request_id}/reviews/{review_id}/screenshot-comments/{comment_id}/",
"screenshot_comments": "http://reviews.example.com/apireview-requests/{review_request_id}/screenshots/{screenshot_id}/screenshot-comments/",
"screenshots": "http://reviews.example.com/apireview-requests/{review_request_id}/screenshots/",
"search": "http://reviews.example.com/apisearch/{username}/",
"session": "http://reviews.example.com/apisession/",
"status_update": "http://reviews.example.com/apireview-requests/{review_request_id}/status-updates/{status_update_id}/",
"status_updates": "http://reviews.example.com/apireview-requests/{review_request_id}/status-updates/",
"user": "http://reviews.example.com/apiusers/{username}/",
"user_file_attachment": "http://reviews.example.com/apiusers/{username}/user-file-attachments/{file_attachment_id}/",
"user_file_attachments": "http://reviews.example.com/apiusers/{username}/user-file-attachments/",
"users": "http://reviews.example.com/apiusers/",
"validation": "http://reviews.example.com/apivalidation/",
"watched": "http://reviews.example.com/apiusers/{username}/watched/",
"watched_review_group": "http://reviews.example.com/apiusers/{username}/watched/review-groups/{watched_obj_id}/",
"watched_review_groups": "http://reviews.example.com/apiusers/{username}/watched/review-groups/",
"watched_review_request": "http://reviews.example.com/apiusers/{username}/watched/review-requests/{watched_obj_id}/",
"watched_review_requests": "http://reviews.example.com/apiusers/{username}/watched/review-requests/",
"webhook": "http://reviews.example.com/apiwebhooks/{webhook_id}/",
"webhooks": "http://reviews.example.com/apiwebhooks/"
}
}