This page describes the account related REST endpoints. Please also take note of the general information on the REST API.
Endpoints
Get Account
GET /accounts/{account-id}
Returns an account as an AccountInfo entity.
GET /accounts/self HTTP/1.0
HTTP/1.1 200 OK
Content-Disposition: attachment
Content-Type: application/json;charset=UTF-8
)]}'
{
"_account_id": 1000096,
"name": "John Doe",
"email": "john.doe@example.com"
}
List Account Capabilities
GET /accounts/{account-id}/capabilities
Returns the global capabilities that are enabled for the specified user.
If the global capabilities for the calling user should be listed, self can be used as account-id. This can be used by UI tools to discover if administrative features are available to the caller, so they can hide (or show) relevant UI actions.
GET /accounts/self/capabilities HTTP/1.0
As response the global capabilities of the user are returned as a CapabilityInfo entity.
HTTP/1.1 200 OK
Content-Disposition: attachment
Content-Type: application/json;charset=UTF-8
)]}'
{
"queryLimit": {
"min": 0,
"max": 500
},
"emailReviewers": true
}
Administrator that has authenticated with digest authentication:
GET /a/accounts/self/capabilities HTTP/1.0 Authorization: Digest username="admin", realm="Gerrit Code Review", nonce="...
HTTP/1.1 200 OK
Content-Disposition: attachment
Content-Type: application/json;charset=UTF-8
)]}'
{
"administrateServer": true,
"queryLimit": {
"min": 0,
"max": 500
},
"createAccount": true,
"createGroup": true,
"createProject": true,
"emailReviewers": true,
"killTask": true,
"viewCaches": true,
"flushCaches": true,
"viewConnections": true,
"viewQueue": true,
"runGC": true,
"startReplication": true
}
To filter the set of global capabilities the q parameter can be used. Filtering may decrease the response time by avoiding looking at every possible alternative for the caller.
GET /a/accounts/self/capabilities?q=createAccount&q=createGroup HTTP/1.0 Authorization: Digest username="admin", realm="Gerrit Code Review", nonce="...
HTTP/1.1 200 OK
Content-Disposition: attachment
Content-Type: application/json;charset=UTF-8
)]}'
{
"createAccount": true,
"createGroup": true
}
Check Account Capability
GET /accounts/{account-id}/capabilities/{capability-id}
Checks if a user has a certain global capability.
GET /a/accounts/self/capabilities/createGroup HTTP/1.0
If the user has the global capability the string ok is returned.
HTTP/1.1 200 OK ok
If the user doesn’t have the global capability the response is 404 Not Found.
List Groups
GET /accounts/{account-id}/groups/
Lists all groups that contain the specified user as a member.
GET /a/accounts/self/groups/ HTTP/1.0
As result a list of GroupInfo entries is returned.
HTTP/1.1 200 OK
Content-Disposition: attachment
Content-Type: application/json;charset=UTF-8
)]}'
[
{
"kind": "gerritcodereview#group",
"id": "global%3AAnonymous-Users",
"url": "#/admin/groups/uuid-global%3AAnonymous-Users",
"options": {
},
"description": "Any user, signed-in or not",
"group_id": 2,
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389"
},
{
"kind": "gerritcodereview#group",
"id": "834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7",
"url": "#/admin/groups/uuid-834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7",
"options": {
"visible_to_all": true,
},
"group_id": 6,
"owner_id": "834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7"
},
{
"kind": "gerritcodereview#group",
"id": "global%3ARegistered-Users",
"url": "#/admin/groups/uuid-global%3ARegistered-Users",
"options": {
},
"description": "Any signed-in user",
"group_id": 3,
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389"
}
]
Get Avatar
GET /accounts/{account-id}/avatar
Retrieves the avatar image of the user.
With the size option (alias s) you can specify the preferred size in pixels (height and width).
GET /a/accounts/john.doe@example.com/avatar?s=20 HTTP/1.0
The response redirects to the URL of the avatar image.
HTTP/1.1 302 Found Location: https://profiles/avatar/john_doe.jpeg?s=20x20
IDs
{account-id}
Identifier that uniquely identifies one account.
This can be:
-
a string of the format "Full Name <email@example.com>"
-
just the email address ("email@example")
-
a full name if it is unique ("Full Name")
-
an account ID ("18419")
-
a user name ("username")
-
self for the calling user
{capability-id}
Identifier of a global capability. Valid values are all field names of the CapabilityInfo entity.
JSON Entities
AccountInfo
The AccountInfo entity contains information about an account.
| Field Name | Description | |
|---|---|---|
_account_id |
The numeric ID of the account. |
|
name |
optional |
The full name of the user. |
optional |
The email address the user prefers to be contacted through. |
CapabilityInfo
The CapabilityInfo entity contains information about the global capabilities of a user.
| Field Name | Description | |
|---|---|---|
administrateServer |
not set if false |
Whether the user has the Administrate Server capability. |
queryLimit |
The Query Limit of the user as QueryLimitInfo. |
|
createAccount |
not set if false |
Whether the user has the Create Account capability. |
createGroup |
not set if false |
Whether the user has the Create Group capability. |
createProject |
not set if false |
Whether the user has the Create Project capability. |
emailReviewers |
not set if false |
Whether the user has the Email Reviewers capability. |
killTask |
not set if false |
Whether the user has the Kill Task capability. |
viewCaches |
not set if false |
Whether the user has the View Caches capability. |
flushCaches |
not set if false |
Whether the user has the Flush Caches capability. |
viewConnections |
not set if false |
Whether the user has the View Connections capability. |
viewQueue |
not set if false |
Whether the user has the View Queue capability. |
runGC |
not set if false |
Whether the user has the Run Garbage Collection capability. |
startReplication |
not set if false |
Whether the user has the Start Replication capability. |
QueryLimitInfo
The QueryLimitInfo entity contains information about the Query Limit of a user.
| Field Name | Description |
|---|---|
min |
Lower limit. |
max |
Upper limit. |
Part of Gerrit Code Review