Review Group User List Resource¶
Provides information on users that are members of a review group.
Details¶
Name | review_group_users |
URI | /api/groups/{group_name}/users/ |
Token Policy ID | review_group_user |
HTTP Methods | |
Parent Resource | Review Group Resource |
Child Resources | |
Anonymous Access | Yes, if anonymous site access is enabled |
Links¶
Name | Method | Resource |
---|---|---|
create | POST | Review Group User List Resource |
self | GET | Review Group User List Resource |
HTTP GET¶
Retrieves the list of users belonging to a specific review group.
This includes only the users who have active accounts on the site. Any account that has been disabled (for inactivity, spam reasons, or anything else) will be excluded from the list.
The list of users can be filtered down using the q
and
fullname
parameters.
Setting q
to a value will by default limit the results to
usernames starting with that value. This is a case-insensitive
comparison.
If fullname
is set to 1
, the first and last names will also be
checked along with the username. fullname
is ignored if q
is not set.
For example, accessing /api/users/?q=bo&fullname=1
will list
any users with a username, first name or last name starting with
bo
.
Request Parameters¶
counts-onlyBoolean | If specified, a single count field is returned with the number of results, instead of the results themselves. |
fullnameBoolean | Specifies whether q should also match the beginning of the first name or last name. Ignored if q is not set. |
include-inactiveBoolean | If set, users who are marked as inactive (their accounts have been disabled) will be included in the list. |
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. |
qString | The string that the username (or the first name or last name when using fullname ) must start with in order to be included in the list. This is case-insensitive. |
render-avatars-atString | A comma-separated list of avatar pixel sizes to render. Renders for each specified size be available in the avatars_html dictionary. If not provided, avatars will not be rendered. |
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 |
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. |
226 - User Query ErrorHTTP 500 - Internal Server Error | An error occurred querying the user list. |
HTTP POST¶
Adds a user to a review group.
Request Parameters¶
usernameString | Required The user to add to the group. Added in 1.6.14 |
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 |
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. |
208 - Invalid UserHTTP 400 - Bad Request | User does not exist. |
Examples¶
application/vnd.reviewboard.org.review-group-users+json¶
$ curl http://reviews.example.com/api/groups/devgroup/users/ -H "Accept: application/json"
Vary: Accept, Cookie
Item-Content-Type: application/vnd.reviewboard.org.review-group-user+json
Content-Type: application/vnd.reviewboard.org.review-group-users+json
X-Content-Type-Options: nosniff
{
"links": {
"create": {
"href": "http://reviews.example.com/api/groups/devgroup/users/",
"method": "POST"
},
"self": {
"href": "http://reviews.example.com/api/groups/devgroup/users/",
"method": "GET"
}
},
"stat": "ok",
"total_results": 2,
"users": [
{
"avatar_html": null,
"avatar_url": "https://secure.gravatar.com/avatar/b0f1ae4342591db2695fb11313114b3e?s=48&d=mm",
"avatar_urls": {
"1x": "https://secure.gravatar.com/avatar/b0f1ae4342591db2695fb11313114b3e?s=48&d=mm",
"2x": "https://secure.gravatar.com/avatar/b0f1ae4342591db2695fb11313114b3e?s=96&d=mm",
"3x": "https://secure.gravatar.com/avatar/b0f1ae4342591db2695fb11313114b3e?s=144&d=mm"
},
"email": "doc@example.com",
"first_name": "Doc",
"fullname": "Doc Dwarf",
"id": 2,
"is_active": true,
"last_name": "Dwarf",
"links": {
"delete": {
"href": "http://reviews.example.com/api/groups/devgroup/users/doc/",
"method": "DELETE"
},
"self": {
"href": "http://reviews.example.com/api/groups/devgroup/users/doc/",
"method": "GET"
}
},
"url": "/users/doc/",
"username": "doc"
},
{
"avatar_html": null,
"avatar_url": "https://secure.gravatar.com/avatar/1a0098e6600792ea4f714aa205bf3f2b?s=48&d=mm",
"avatar_urls": {
"1x": "https://secure.gravatar.com/avatar/1a0098e6600792ea4f714aa205bf3f2b?s=48&d=mm",
"2x": "https://secure.gravatar.com/avatar/1a0098e6600792ea4f714aa205bf3f2b?s=96&d=mm",
"3x": "https://secure.gravatar.com/avatar/1a0098e6600792ea4f714aa205bf3f2b?s=144&d=mm"
},
"email": "dopey@example.com",
"first_name": "Dopey",
"fullname": "Dopey Dwarf",
"id": 3,
"is_active": true,
"last_name": "Dwarf",
"links": {
"delete": {
"href": "http://reviews.example.com/api/groups/devgroup/users/dopey/",
"method": "DELETE"
},
"self": {
"href": "http://reviews.example.com/api/groups/devgroup/users/dopey/",
"method": "GET"
}
},
"url": "/users/dopey/",
"username": "dopey"
}
]
}