219e797144
For external groups the group name is missing if there is no group backend that can resolve the group UUID. E.g. this can happen when a plugin that provided a group backend was uninstalled (e.g. the singleusergroup plugin). Change-Id: I0d7f7253698c0125d7692781fa32f4294cda3bcc Signed-off-by: Edwin Kempin <ekempin@google.com>
1596 lines
39 KiB
Plaintext
1596 lines
39 KiB
Plaintext
= Gerrit Code Review - /groups/ REST API
|
|
|
|
This page describes the group related REST endpoints.
|
|
Please also take note of the general information on the
|
|
link:rest-api.html[REST API].
|
|
|
|
[[group-endpoints]]
|
|
== Group Endpoints
|
|
|
|
[[list-groups]]
|
|
=== List Groups
|
|
--
|
|
'GET /groups/'
|
|
--
|
|
|
|
Lists the groups accessible by the caller. This is the same as
|
|
using the link:cmd-ls-groups.html[ls-groups] command over SSH,
|
|
and accepts the same options as query parameters.
|
|
|
|
As result a map is returned that maps the group names to
|
|
link:#group-info[GroupInfo] entries. The entries in the map are sorted
|
|
by group name.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/ HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"Administrators": {
|
|
"id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"url": "#/admin/groups/uuid-6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"options": {
|
|
},
|
|
"description": "Gerrit Site Administrators",
|
|
"group_id": 1,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
},
|
|
"Anonymous Users": {
|
|
"id": "global%3AAnonymous-Users",
|
|
"url": "#/admin/groups/uuid-global%3AAnonymous-Users",
|
|
"options": {
|
|
},
|
|
"description": "Any user, signed-in or not",
|
|
"group_id": 2,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
},
|
|
"MyProject_Committers": {
|
|
"id": "834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7",
|
|
"url": "#/admin/groups/uuid-834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7",
|
|
"options": {
|
|
"visible_to_all": true,
|
|
},
|
|
"group_id": 6,
|
|
"owner": "MyProject_Committers",
|
|
"owner_id": "834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
},
|
|
"Non-Interactive Users": {
|
|
"id": "5057f3cbd3519d6ab69364429a89ffdffba50f73",
|
|
"url": "#/admin/groups/uuid-5057f3cbd3519d6ab69364429a89ffdffba50f73",
|
|
"options": {
|
|
},
|
|
"description": "Users who perform batch actions on Gerrit",
|
|
"group_id": 4,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
},
|
|
"Project Owners": {
|
|
"id": "global%3AProject-Owners",
|
|
"url": "#/admin/groups/uuid-global%3AProject-Owners",
|
|
"options": {
|
|
},
|
|
"description": "Any owner of the project",
|
|
"group_id": 5,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
},
|
|
"Registered Users": {
|
|
"id": "global%3ARegistered-Users",
|
|
"url": "#/admin/groups/uuid-global%3ARegistered-Users",
|
|
"options": {
|
|
},
|
|
"description": "Any signed-in user",
|
|
"group_id": 3,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
}
|
|
----
|
|
|
|
.Get all groups
|
|
****
|
|
get::/groups/
|
|
****
|
|
|
|
[[group-options]]
|
|
==== Group Options
|
|
Additional fields can be obtained by adding `o` parameters, each option
|
|
requires more lookups and slows down the query response time to the
|
|
client so they are generally disabled by default. Optional fields are:
|
|
|
|
[[includes]]
|
|
--
|
|
* `INCLUDES`: include list of direct subgroups.
|
|
--
|
|
|
|
[[members]]
|
|
--
|
|
* `MEMBERS`: include list of direct group members.
|
|
--
|
|
|
|
==== Check if a group is owned by the calling user
|
|
By setting the option `owned` and specifying a group to inspect with
|
|
the option `group`/`g`, it is possible to find out if this group is
|
|
owned by the calling user.
|
|
|
|
[NOTE] Earlier the `group`/`g` option was named `query`/`q`. Using
|
|
`query`/`q` still works, but this option is deprecated and may be
|
|
removed in future. Hence all users should be adapted to use
|
|
`group`/`g` instead.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/?owned&q=MyProject-Committers HTTP/1.0
|
|
----
|
|
|
|
If the group is owned by the calling user, the returned map contains
|
|
this group. If the calling user doesn't own this group an empty map is
|
|
returned.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"MyProject-Committers": {
|
|
"id": "9999c971bb4ab872aab759d8c49833ee6b9ff320",
|
|
"url": "#/admin/groups/uuid-9999c971bb4ab872aab759d8c49833ee6b9ff320",
|
|
"options": {
|
|
"visible_to_all": true
|
|
},
|
|
"description":"contains all committers for MyProject",
|
|
"group_id": 551,
|
|
"owner": "MyProject-Owners",
|
|
"owner_id": "7ca042f4d5847936fcb90ca91057673157fd06fc",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
}
|
|
----
|
|
|
|
[[group-limit]]
|
|
==== Group Limit
|
|
The `/groups/` URL also accepts a limit integer in the `n` parameter.
|
|
This limits the results to show `n` groups.
|
|
|
|
Query the first 25 groups in group list.
|
|
----
|
|
GET /groups/?n=25 HTTP/1.0
|
|
----
|
|
|
|
The `/groups/` URL also accepts a start integer in the `S` parameter.
|
|
The results will skip `S` groups from group list.
|
|
|
|
Query 25 groups starting from index 50.
|
|
----
|
|
GET /groups/?n=25&S=50 HTTP/1.0
|
|
----
|
|
|
|
[[suggest-group]]
|
|
==== Suggest Group
|
|
The `suggest` or `s` option indicates a user-entered string that
|
|
should be auto-completed to group names.
|
|
If this option is set and `n` is not set, then `n` defaults to 10.
|
|
|
|
When using this option, the `project` or `p` option can be used to
|
|
name the current project, to allow context-dependent suggestions.
|
|
|
|
Not compatible with `visible-to-all`, `owned`, `user`, `match`,
|
|
`group`, or `S`.
|
|
(Attempts to use one of those options combined with `suggest` will
|
|
error out.)
|
|
|
|
.Request
|
|
----
|
|
GET /groups/?suggest=ad&p=All-Projects HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"Administrators": {
|
|
"url": "#/admin/groups/uuid-59b92f35489e62c80d1ab1bf0c2d17843038df8b",
|
|
"options": {},
|
|
"description": "Gerrit Site Administrators",
|
|
"group_id": 1,
|
|
"owner": "Administrators",
|
|
"owner_id": "59b92f35489e62c80d1ab1bf0c2d17843038df8b",
|
|
"created_on": "2013-02-01 09:59:32.126000000",
|
|
"id": "59b92f35489e62c80d1ab1bf0c2d17843038df8b"
|
|
}
|
|
}
|
|
----
|
|
|
|
Regex(r)::
|
|
Limit the results to those groups that match the specified regex.
|
|
+
|
|
Boundary matchers '^' and '$' are implicit. For example: the regex 'test.*' will
|
|
match any groups that start with 'test' and regex '.*test' will match any
|
|
group that end with 'test'.
|
|
+
|
|
The match is case sensitive.
|
|
+
|
|
List all groups that match regex `test.*group`:
|
|
+
|
|
.Request
|
|
----
|
|
GET /groups/?r=test.*group HTTP/1.0
|
|
----
|
|
+
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"test/some-group": {
|
|
"url": "#/admin/groups/uuid-59b92f35489e62c80d1ab1bf0c2d17843038df8b",
|
|
"options": {},
|
|
"description": "Gerrit Site Administrators",
|
|
"group_id": 1,
|
|
"owner": "Administrators",
|
|
"owner_id": "59b92f35489e62c80d1ab1bf0c2d17843038df8b",
|
|
"created_on": "2013-02-01 09:59:32.126000000",
|
|
"id": "59b92f35489e62c80d1ab1bf0c2d17843038df8b"
|
|
}
|
|
"test/some-other-group": {
|
|
"url": "#/admin/groups/uuid-99b92f35489e62c80d1ab1bf0c2d17843038df8b",
|
|
"options": {},
|
|
"description": "Gerrit Site Administrators",
|
|
"group_id": 1,
|
|
"owner": "Administrators",
|
|
"owner_id": "99b92f35489e62c80d1ab1bf0c2d17843038df8b",
|
|
"created_on": "2014-02-01 09:59:32.126000000",
|
|
"id": "99b92f35489e62c80d1ab1bf0c2d17843038df8b"
|
|
}
|
|
}
|
|
|
|
----
|
|
|
|
Substring(m)::
|
|
Limit the results to those groups that match the specified substring.
|
|
+
|
|
The match is case insensitive.
|
|
+
|
|
List all groups that match substring `test/`:
|
|
+
|
|
.Request
|
|
----
|
|
GET /groups/?m=test%2F HTTP/1.0
|
|
----
|
|
+
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"test/test": {
|
|
"url": "#/admin/groups/uuid-786a95e85f9a2223a96545f10003f396aba871f2",
|
|
"options": {},
|
|
"group_id": 15,
|
|
"owner": "test/test",
|
|
"owner_id": "786a95e85f9a2223a96545f10003f396aba871f2",
|
|
"created_on": "2017-07-11 13:56:24.000000000",
|
|
"id": "786a95e85f9a2223a96545f10003f396aba871f2"
|
|
}
|
|
}
|
|
----
|
|
|
|
[[query-groups]]
|
|
=== Query Groups
|
|
--
|
|
'GET /groups/?query2=<query>'
|
|
--
|
|
|
|
Queries internal groups visible to the caller. The
|
|
link:user-search-groups.html#_search_operators[query string] must be
|
|
provided by the `query2` parameter. The `start` and `limit` parameters
|
|
can be used to skip/limit results.
|
|
|
|
As result a list of link:#group-info[GroupInfo] entities is returned.
|
|
|
|
[NOTE] `query2` is a temporary name and in future this option may be
|
|
renamed to `query`. `query2` was chosen to maintain backwards
|
|
compatibility with the deprecated `query` parameter on the
|
|
link:#list-groups[List Groups] endpoint.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/?query2=inname:test HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
[
|
|
{
|
|
"url": "#/admin/groups/uuid-68236a40ca78de8be630312d8ba50250bc5638ae",
|
|
"options": {},
|
|
"description": "Group for running tests on MyProject",
|
|
"group_id": 20,
|
|
"owner": "MyProject-Test-Group",
|
|
"owner_id": "59b92f35489e62c80d1ab1bf0c2d17843038df8b",
|
|
"created_on": "2013-02-01 09:59:32.126000000",
|
|
"id": "68236a40ca78de8be630312d8ba50250bc5638ae"
|
|
},
|
|
{
|
|
"url": "#/admin/groups/uuid-99a534526313324a2667025c3f4e089199b736aa",
|
|
"options": {},
|
|
"description": "Testers for ProjectX",
|
|
"group_id": 17,
|
|
"owner": "ProjectX-Testers",
|
|
"owner_id": "59b92f35489e62c80d1ab1bf0c2d17843038df8b",
|
|
"created_on": "2013-02-01 09:59:32.126000000",
|
|
"id": "99a534526313324a2667025c3f4e089199b736aa"
|
|
}
|
|
]
|
|
----
|
|
|
|
If the number of groups matching the query exceeds either the internal
|
|
limit or a supplied `limit` query parameter, the last group object has
|
|
a `_more_groups: true` JSON field set.
|
|
|
|
[[group-query-limit]]
|
|
==== Group Limit
|
|
The `/groups/?query2=<query>` URL also accepts a limit integer in the
|
|
`limit` parameter. This limits the results to `limit` groups.
|
|
|
|
Query the first 25 groups in group list.
|
|
----
|
|
GET /groups/?query2=<query>&limit=25 HTTP/1.0
|
|
----
|
|
|
|
The `/groups/` URL also accepts a start integer in the `start`
|
|
parameter. The results will skip `start` groups from group list.
|
|
|
|
Query 25 groups starting from index 50.
|
|
----
|
|
GET /groups/?query2=<query>&limit=25&start=50 HTTP/1.0
|
|
----
|
|
|
|
[[group-query-options]]
|
|
==== Group Options
|
|
Additional fields can be obtained by adding `o` parameters. Each option
|
|
requires more lookups and slows down the query response time to the
|
|
client so they are generally disabled by default. The supported fields
|
|
are described in the context of the link:#group-options[List Groups]
|
|
REST endpoint.
|
|
|
|
[[get-group]]
|
|
=== Get Group
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]'
|
|
--
|
|
|
|
Retrieves a group.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/6a1e70e1a88782771a91808c8af9bbb7a9871389 HTTP/1.0
|
|
----
|
|
|
|
As response a link:#group-info[GroupInfo] entity is returned that
|
|
describes the group.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"name": "Administrators",
|
|
"url": "#/admin/groups/uuid-6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"options": {
|
|
},
|
|
"description": "Gerrit Site Administrators",
|
|
"group_id": 1,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
----
|
|
|
|
[[create-group]]
|
|
=== Create Group
|
|
--
|
|
'PUT /groups/link:#group-name[\{group-name\}]'
|
|
--
|
|
|
|
Creates a new Gerrit internal group.
|
|
|
|
In the request body additional data for the group can be provided as
|
|
link:#group-input[GroupInput].
|
|
|
|
.Request
|
|
----
|
|
PUT /groups/MyProject-Committers HTTP/1.0
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
{
|
|
"description": "contains all committers for MyProject",
|
|
"visible_to_all": true,
|
|
"owner": "MyProject-Owners",
|
|
"owner_id": "7ca042f4d5847936fcb90ca91057673157fd06fc"
|
|
}
|
|
----
|
|
|
|
As response the link:#group-info[GroupInfo] entity is returned that
|
|
describes the created group.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 201 Created
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"id": "9999c971bb4ab872aab759d8c49833ee6b9ff320",
|
|
"name": "MyProject-Committers",
|
|
"url": "#/admin/groups/uuid-9999c971bb4ab872aab759d8c49833ee6b9ff320",
|
|
"options": {
|
|
"visible_to_all": true
|
|
},
|
|
"description":"contains all committers for MyProject",
|
|
"group_id": 551,
|
|
"owner": "MyProject-Owners",
|
|
"owner_id": "7ca042f4d5847936fcb90ca91057673157fd06fc",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
----
|
|
|
|
If the group creation fails because the name is already in use the
|
|
response is "`409 Conflict`".
|
|
|
|
[[get-group-detail]]
|
|
=== Get Group Detail
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/detail'
|
|
--
|
|
|
|
Retrieves a group with the direct link:#members[members] and the
|
|
directly link:#includes[included groups].
|
|
|
|
.Request
|
|
----
|
|
GET /groups/6a1e70e1a88782771a91808c8af9bbb7a9871389/detail HTTP/1.0
|
|
----
|
|
|
|
As response a link:#group-info[GroupInfo] entity is returned that
|
|
describes the group.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"name": "Administrators",
|
|
"url": "#/admin/groups/uuid-6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"options": {
|
|
},
|
|
"description": "Gerrit Site Administrators",
|
|
"group_id": 1,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000",
|
|
"members": [
|
|
{
|
|
"_account_id": 1000097,
|
|
"name": "Jane Roe",
|
|
"email": "jane.roe@example.com",
|
|
"username": "jane"
|
|
},
|
|
{
|
|
"_account_id": 1000096,
|
|
"name": "John Doe",
|
|
"email": "john.doe@example.com"
|
|
"username": "john"
|
|
}
|
|
],
|
|
"includes": []
|
|
}
|
|
----
|
|
|
|
[[get-group-name]]
|
|
=== Get Group Name
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/name'
|
|
--
|
|
|
|
Retrieves the name of a group.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/9999c971bb4ab872aab759d8c49833ee6b9ff320/name HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
"MyProject-Committers"
|
|
----
|
|
|
|
[[rename-group]]
|
|
=== Rename Group
|
|
--
|
|
'PUT /groups/link:#group-id[\{group-id\}]/name'
|
|
--
|
|
|
|
Renames a Gerrit internal group.
|
|
|
|
The new group name must be provided in the request body.
|
|
|
|
.Request
|
|
----
|
|
PUT /groups/MyProject-Committers/name HTTP/1.0
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
{
|
|
"name": "My-Project-Committers"
|
|
}
|
|
----
|
|
|
|
As response the new group name is returned.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
"My-Project-Committers"
|
|
----
|
|
|
|
If renaming the group fails because the new name is already in use the
|
|
response is "`409 Conflict`".
|
|
|
|
[[get-group-description]]
|
|
=== Get Group Description
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/description'
|
|
--
|
|
|
|
Retrieves the description of a group.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/9999c971bb4ab872aab759d8c49833ee6b9ff320/description HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
"contains all committers for MyProject"
|
|
----
|
|
|
|
If the group does not have a description an empty string is returned.
|
|
|
|
[[set-group-description]]
|
|
=== Set Group Description
|
|
--
|
|
'PUT /groups/link:#group-id[\{group-id\}]/description'
|
|
--
|
|
|
|
Sets the description of a Gerrit internal group.
|
|
|
|
The new group description must be provided in the request body.
|
|
|
|
.Request
|
|
----
|
|
PUT /groups/9999c971bb4ab872aab759d8c49833ee6b9ff320/description HTTP/1.0
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
{
|
|
"description": "The committers of MyProject."
|
|
}
|
|
----
|
|
|
|
As response the new group description is returned.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
"The committers of MyProject."
|
|
----
|
|
|
|
If the description was deleted the response is "`204 No Content`".
|
|
|
|
[[delete-group-description]]
|
|
=== Delete Group Description
|
|
--
|
|
'DELETE /groups/link:#group-id[\{group-id\}]/description'
|
|
--
|
|
|
|
Deletes the description of a Gerrit internal group.
|
|
|
|
.Request
|
|
----
|
|
DELETE /groups/9999c971bb4ab872aab759d8c49833ee6b9ff320/description HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 204 No Content
|
|
----
|
|
|
|
[[get-group-options]]
|
|
=== Get Group Options
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/options'
|
|
--
|
|
|
|
Retrieves the options of a group.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/9999c971bb4ab872aab759d8c49833ee6b9ff320/options HTTP/1.0
|
|
----
|
|
|
|
As response a link:#group-options-info[GroupOptionsInfo] entity is
|
|
returned that describes the options of the group.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"visible_to_all": true
|
|
}
|
|
----
|
|
|
|
[[set-group-options]]
|
|
=== Set Group Options
|
|
--
|
|
'PUT /groups/link:#group-id[\{group-id\}]/options'
|
|
--
|
|
|
|
Sets the options of a Gerrit internal group.
|
|
|
|
The new group options must be provided in the request body as a
|
|
link:#group-options-input[GroupOptionsInput] entity.
|
|
|
|
.Request
|
|
----
|
|
PUT /groups/9999c971bb4ab872aab759d8c49833ee6b9ff320/options HTTP/1.0
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
{
|
|
"visible_to_all": true
|
|
}
|
|
----
|
|
|
|
As response the new group options are returned as a
|
|
link:#group-options-info[GroupOptionsInfo] entity.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"visible_to_all": true
|
|
}
|
|
----
|
|
|
|
[[get-group-owner]]
|
|
=== Get Group Owner
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/owner'
|
|
--
|
|
|
|
Retrieves the owner group of a Gerrit internal group.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/9999c971bb4ab872aab759d8c49833ee6b9ff320/owner HTTP/1.0
|
|
----
|
|
|
|
As response a link:#group-info[GroupInfo] entity is returned that
|
|
describes the owner group.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"name": "Administrators",
|
|
"url": "#/admin/groups/uuid-6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"options": {
|
|
},
|
|
"description": "Gerrit Site Administrators",
|
|
"group_id": 1,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
----
|
|
|
|
[[set-group-owner]]
|
|
=== Set Group Owner
|
|
--
|
|
'PUT /groups/link:#group-id[\{group-id\}]/owner'
|
|
--
|
|
|
|
Sets the owner group of a Gerrit internal group.
|
|
|
|
The new owner group must be provided in the request body.
|
|
|
|
The new owner can be specified by name, by group UUID or by the legacy
|
|
numeric group ID.
|
|
|
|
.Request
|
|
----
|
|
PUT /groups/9999c971bb4ab872aab759d8c49833ee6b9ff320/owner HTTP/1.0
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
{
|
|
"owner": "6a1e70e1a88782771a91808c8af9bbb7a9871389"
|
|
}
|
|
----
|
|
|
|
As response a link:#group-info[GroupInfo] entity is returned that
|
|
describes the new owner group.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"name": "Administrators",
|
|
"url": "#/admin/groups/uuid-6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"options": {
|
|
},
|
|
"description": "Gerrit Site Administrators",
|
|
"group_id": 1,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
----
|
|
|
|
[[get-audit-log]]
|
|
=== Get Audit Log
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/log.audit'
|
|
--
|
|
|
|
Gets the audit log of a Gerrit internal group.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/9999c971bb4ab872aab759d8c49833ee6b9ff320/log.audit HTTP/1.0
|
|
----
|
|
|
|
As response a list of link:#group-audit-event-info[GroupAuditEventInfo]
|
|
entities is returned that describes the audit events of the group. The
|
|
returned audit events are sorted by date in reverse order so that the
|
|
newest audit event comes first.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
[
|
|
{
|
|
"member": {
|
|
"url": "#/admin/groups/uuid-fdda826a0815859ab48d22a05a43472f0f55f89a",
|
|
"options": {},
|
|
"group_id": 3,
|
|
"owner": "Administrators",
|
|
"owner_id": "e56678641565e7f59dd5c6878f5bcbc842bf150a",
|
|
"created_on": "2013-02-01 09:59:32.126000000",
|
|
"id": "fdda826a0815859ab48d22a05a43472f0f55f89a",
|
|
"name": "MyGroup"
|
|
},
|
|
"type": "REMOVE_GROUP",
|
|
"user": {
|
|
"_account_id": 1000000,
|
|
"name": "Administrator",
|
|
"email": "admin@example.com",
|
|
"username": "admin"
|
|
},
|
|
"date": "2015-07-03 09:22:26.348000000"
|
|
},
|
|
{
|
|
"member": {
|
|
"url": "#/admin/groups/uuid-fdda826a0815859ab48d22a05a43472f0f55f89a",
|
|
"options": {},
|
|
"group_id": 3,
|
|
"owner": "Administrators",
|
|
"owner_id": "e56678641565e7f59dd5c6878f5bcbc842bf150a",
|
|
"created_on": "2013-02-01 09:59:32.126000000",
|
|
"id": "fdda826a0815859ab48d22a05a43472f0f55f89a",
|
|
"name": "MyGroup"
|
|
},
|
|
"type": "ADD_GROUP",
|
|
"user": {
|
|
"_account_id": 1000000,
|
|
"name": "Administrator",
|
|
"email": "admin@example.com",
|
|
"username": "admin"
|
|
},
|
|
"date": "2015-07-03 08:43:36.592000000"
|
|
},
|
|
{
|
|
"member": {
|
|
"_account_id": 1000000,
|
|
"name": "Administrator",
|
|
"email": "admin@example.com",
|
|
"username": "admin"
|
|
},
|
|
"type": "ADD_USER",
|
|
"user": {
|
|
"_account_id": 1000001,
|
|
"name": "John Doe",
|
|
"email": "john.doe@example.com",
|
|
"username": "jdoe"
|
|
},
|
|
"date": "2015-07-01 13:36:36.602000000"
|
|
}
|
|
]
|
|
----
|
|
|
|
[[index-group]]
|
|
=== Index Group
|
|
--
|
|
'POST /groups/link:#group-id[\{group-id\}]/index'
|
|
--
|
|
|
|
Adds or updates the internal group in the secondary index.
|
|
|
|
.Request
|
|
----
|
|
POST /groups/fdda826a0815859ab48d22a05a43472f0f55f89a/index HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 204 No Content
|
|
----
|
|
|
|
[[group-member-endpoints]]
|
|
== Group Member Endpoints
|
|
|
|
[[group-members]]
|
|
=== List Group Members
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/members/'
|
|
--
|
|
|
|
Lists the direct members of a Gerrit internal group.
|
|
|
|
As result a list of detailed link:rest-api-accounts.html#account-info[
|
|
AccountInfo] entries is returned. The entries in the list are sorted by
|
|
full name, preferred email and id.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7/members/ HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
[
|
|
{
|
|
"_account_id": 1000097,
|
|
"name": "Jane Roe",
|
|
"email": "jane.roe@example.com",
|
|
"username": "jane"
|
|
},
|
|
{
|
|
"_account_id": 1000096,
|
|
"name": "John Doe",
|
|
"email": "john.doe@example.com",
|
|
"username": "john"
|
|
}
|
|
]
|
|
----
|
|
|
|
.Get all members of the 'Administrators' group (normally group id = 1)
|
|
****
|
|
get::/groups/1/members/
|
|
****
|
|
|
|
To resolve the included groups of a group recursively and to list all
|
|
members the parameter `recursive` can be set.
|
|
|
|
Members from included external groups and from included groups which
|
|
are not visible to the calling user are ignored.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7/members/?recursive HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
[
|
|
{
|
|
"_account_id": 1000097,
|
|
"name": "Jane Roe",
|
|
"email": "jane.roe@example.com",
|
|
"username": "jane"
|
|
},
|
|
{
|
|
"_account_id": 1000096,
|
|
"name": "John Doe",
|
|
"email": "john.doe@example.com",
|
|
"username": "john"
|
|
},
|
|
{
|
|
"_account_id": 1000098,
|
|
"name": "Richard Roe",
|
|
"email": "richard.roe@example.com",
|
|
"username": "rroe"
|
|
}
|
|
]
|
|
----
|
|
|
|
[[get-group-member]]
|
|
=== Get Group Member
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/members/link:rest-api-accounts.html#account-id[\{account-id\}]'
|
|
--
|
|
|
|
Retrieves a group member.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7/members/1000096 HTTP/1.0
|
|
----
|
|
|
|
As response a detailed link:rest-api-accounts.html#account-info[
|
|
AccountInfo] entity is returned that describes the group member.
|
|
|
|
.Response
|
|
----
|
|
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",
|
|
"username": "john"
|
|
}
|
|
----
|
|
|
|
[[add-group-member]]
|
|
=== Add Group Member
|
|
--
|
|
'PUT /groups/link:#group-id[\{group-id\}]/members/link:rest-api-accounts.html#account-id[\{account-id\}]'
|
|
--
|
|
|
|
Adds a user as member to a Gerrit internal group.
|
|
|
|
.Request
|
|
----
|
|
PUT /groups/MyProject-Committers/members/John%20Doe HTTP/1.0
|
|
----
|
|
|
|
As response a detailed link:rest-api-accounts.html#account-info[
|
|
AccountInfo] entity is returned that describes the group member.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 201 Created
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"_account_id": 1000037,
|
|
"name": "John Doe",
|
|
"email": "john.doe@example.com",
|
|
"username": "john"
|
|
}
|
|
----
|
|
|
|
The request also succeeds if the user is already a member of this
|
|
group, but then the HTTP response code is `200 OK`.
|
|
|
|
=== Add Group Members
|
|
--
|
|
'POST /groups/link:#group-id[\{group-id\}]/members'
|
|
--
|
|
|
|
OR
|
|
|
|
--
|
|
'POST /groups/link:#group-id[\{group-id\}]/members.add'
|
|
--
|
|
|
|
Adds one or several users to a Gerrit internal group.
|
|
|
|
The users to be added to the group must be provided in the request body
|
|
as a link:#members-input[MembersInput] entity.
|
|
|
|
.Request
|
|
----
|
|
POST /groups/MyProject-Committers/members.add HTTP/1.0
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
{
|
|
"members": [
|
|
"jane.roe@example.com",
|
|
"john.doe@example.com"
|
|
]
|
|
}
|
|
----
|
|
|
|
As response a list of detailed link:rest-api-accounts.html#account-info[
|
|
AccountInfo] entities is returned that describes the group members that
|
|
were specified in the link:#members-input[MembersInput]. An
|
|
link:rest-api-accounts.html#account-info[AccountInfo] entity
|
|
is returned for each user specified in the input, independently of
|
|
whether the user was newly added to the group or whether the user was
|
|
already a member of the group.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
[
|
|
{
|
|
"_account_id": 1000057,
|
|
"name": "Jane Roe",
|
|
"email": "jane.roe@example.com",
|
|
"username": "jane"
|
|
},
|
|
{
|
|
"_account_id": 1000037,
|
|
"name": "John Doe",
|
|
"email": "john.doe@example.com",
|
|
"username": "john"
|
|
}
|
|
]
|
|
----
|
|
|
|
[[remove-group-member]]
|
|
=== Remove Group Member
|
|
--
|
|
'DELETE /groups/link:#group-id[\{group-id\}]/members/link:rest-api-accounts.html#account-id[\{account-id\}]'
|
|
--
|
|
|
|
Removes a user from a Gerrit internal group.
|
|
|
|
.Request
|
|
----
|
|
DELETE /groups/MyProject-Committers/members/John%20Doe HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 204 No Content
|
|
----
|
|
|
|
[[remove-group-members]]
|
|
=== Remove Group Members
|
|
--
|
|
'POST /groups/link:#group-id[\{group-id\}]/members.delete'
|
|
--
|
|
|
|
Removes one or several users from a Gerrit internal group.
|
|
|
|
The users to be removed from the group must be provided in the request
|
|
body as a link:#members-input[MembersInput] entity.
|
|
|
|
.Request
|
|
----
|
|
POST /groups/MyProject-Committers/members.delete HTTP/1.0
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
{
|
|
"members": [
|
|
"jane.roe@example.com",
|
|
"john.doe@example.com"
|
|
]
|
|
}
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 204 No Content
|
|
----
|
|
|
|
[[subgroup-endpoints]]
|
|
== Subgroup Endpoints
|
|
|
|
[[list-subgroups]]
|
|
=== List Subgroups
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/groups/'
|
|
--
|
|
|
|
Lists the direct subgroups of a group.
|
|
|
|
As result a list of link:#group-info[GroupInfo] entries is returned.
|
|
The entries in the list are sorted by group name and UUID.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7/groups/ HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
[
|
|
{
|
|
"id": "7ca042f4d5847936fcb90ca91057673157fd06fc",
|
|
"name": "MyProject-Verifiers",
|
|
"url": "#/admin/groups/uuid-7ca042f4d5847936fcb90ca91057673157fd06fc",
|
|
"options": {
|
|
},
|
|
"group_id": 38,
|
|
"owner": "MyProject-Verifiers",
|
|
"owner_id": "7ca042f4d5847936fcb90ca91057673157fd06fc",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
]
|
|
----
|
|
|
|
[[get-subgroup]]
|
|
=== Get Subgroup
|
|
--
|
|
'GET /groups/link:#group-id[\{group-id\}]/groups/link:#group-id[\{group-id\}]'
|
|
--
|
|
|
|
Retrieves a subgroup.
|
|
|
|
.Request
|
|
----
|
|
GET /groups/834ec36dd5e0ed21a2ff5d7e2255da082d63bbd7/groups/7ca042f4d5847936fcb90ca91057673157fd06fc HTTP/1.0
|
|
----
|
|
|
|
As response a link:#group-info[GroupInfo] entity is returned that
|
|
describes the subgroup.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"id": "7ca042f4d5847936fcb90ca91057673157fd06fc",
|
|
"name": "MyProject-Verifiers",
|
|
"url": "#/admin/groups/uuid-7ca042f4d5847936fcb90ca91057673157fd06fc",
|
|
"options": {
|
|
},
|
|
"group_id": 38,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
----
|
|
|
|
[[add-subgroup]]
|
|
=== Add Subgroup
|
|
--
|
|
'PUT /groups/link:#group-id[\{group-id\}]/groups/link:#group-id[\{group-id\}]'
|
|
--
|
|
|
|
Adds an internal or external group as subgroup to a Gerrit internal group.
|
|
External groups must be specified using the UUID.
|
|
|
|
.Request
|
|
----
|
|
PUT /groups/MyProject-Committers/groups/MyGroup HTTP/1.0
|
|
----
|
|
|
|
As response a link:#group-info[GroupInfo] entity is returned that
|
|
describes the subgroup.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 201 Created
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
{
|
|
"id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"name": "MyGroup",
|
|
"url": "#/admin/groups/uuid-6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"options": {
|
|
},
|
|
"group_id": 8,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
----
|
|
|
|
The request also succeeds if the group is already a subgroup of this
|
|
group.
|
|
|
|
[[add-subgroups]]
|
|
=== Add Subgroups
|
|
--
|
|
'POST /groups/link:#group-id[\{group-id\}]/groups'
|
|
--
|
|
|
|
OR
|
|
|
|
--
|
|
'POST /groups/link:#group-id[\{group-id\}]/groups.add'
|
|
--
|
|
|
|
Adds one or several groups as subgroups to a Gerrit internal group.
|
|
|
|
The subgroups to be added must be provided in the request body as a
|
|
link:#groups-input[GroupsInput] entity.
|
|
|
|
.Request
|
|
----
|
|
POST /groups/MyProject-Committers/groups.add HTTP/1.0
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
{
|
|
"groups": [
|
|
"MyGroup",
|
|
"MyOtherGroup"
|
|
]
|
|
}
|
|
----
|
|
|
|
As response a list of link:#group-info[GroupInfo] entities is
|
|
returned that describes the groups that were specified in the
|
|
link:#groups-input[GroupsInput]. A link:#group-info[GroupInfo] entity
|
|
is returned for each group specified in the input, independently of
|
|
whether the group was newly added as subgroup or whether the
|
|
group was already a subgroup of the group.
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 200 OK
|
|
Content-Disposition: attachment
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
)]}'
|
|
[
|
|
{
|
|
"id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"name": "MyGroup",
|
|
"url": "#/admin/groups/uuid-6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"options": {
|
|
},
|
|
"group_id": 8,
|
|
"owner": "Administrators",
|
|
"owner_id": "6a1e70e1a88782771a91808c8af9bbb7a9871389",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
},
|
|
{
|
|
"id": "5057f3cbd3519d6ab69364429a89ffdffba50f73",
|
|
"name": "MyOtherGroup",
|
|
"url": "#/admin/groups/uuid-5057f3cbd3519d6ab69364429a89ffdffba50f73",
|
|
"options": {
|
|
},
|
|
"group_id": 10,
|
|
"owner": "MyOtherGroup",
|
|
"owner_id": "5057f3cbd3519d6ab69364429a89ffdffba50f73",
|
|
"created_on": "2013-02-01 09:59:32.126000000"
|
|
}
|
|
]
|
|
----
|
|
|
|
[[remove-subgroup]]
|
|
=== Remove Subgroup
|
|
--
|
|
'DELETE /groups/link:#group-id[\{group-id\}]/groups/link:#group-id[\{group-id\}]'
|
|
--
|
|
|
|
Removes a subgroup from a Gerrit internal group.
|
|
|
|
.Request
|
|
----
|
|
DELETE /groups/MyProject-Committers/groups/MyGroup HTTP/1.0
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 204 No Content
|
|
----
|
|
|
|
[[remove-subgroups]]
|
|
=== Remove Subgroups
|
|
--
|
|
'POST /groups/link:#group-id[\{group-id\}]/groups.delete'
|
|
--
|
|
|
|
Removes one or several subgroups from a Gerrit internal group.
|
|
|
|
The subgroups to be removed must be provided in the request body as a
|
|
link:#groups-input[GroupsInput] entity.
|
|
|
|
.Request
|
|
----
|
|
POST /groups/MyProject-Committers/groups.delete HTTP/1.0
|
|
Content-Type: application/json; charset=UTF-8
|
|
|
|
{
|
|
"groups": [
|
|
"MyGroup",
|
|
"MyOtherGroup"
|
|
]
|
|
}
|
|
----
|
|
|
|
.Response
|
|
----
|
|
HTTP/1.1 204 No Content
|
|
----
|
|
|
|
|
|
[[ids]]
|
|
== IDs
|
|
|
|
[[group-id]]
|
|
=== \{group-id\}
|
|
Identifier for a group.
|
|
|
|
This can be:
|
|
|
|
* the UUID of the group
|
|
* the legacy numeric ID of the group
|
|
* the name of the group if it is unique
|
|
|
|
[[group-name]]
|
|
=== \{group-name\}
|
|
Group name that uniquely identifies one group.
|
|
|
|
|
|
[[json-entities]]
|
|
== JSON Entities
|
|
|
|
[[group-audit-event-info]]
|
|
=== GroupAuditEventInfo
|
|
The `GroupAuditEventInfo` entity contains information about an audit
|
|
event of a group.
|
|
|
|
[options="header",cols="1,6"]
|
|
|======================
|
|
|Field Name|Description
|
|
|`member` |
|
|
The group member that is added/removed. If `type` is `ADD_USER` or
|
|
`REMOVE_USER` the member is returned as detailed
|
|
link:rest-api-accounts.html#account-info[AccountInfo] entity, if `type`
|
|
is `ADD_GROUP` or `REMOVE_GROUP` the member is returned as
|
|
link:#group-info[GroupInfo] entity.
|
|
|`type` |
|
|
The event type, can be: `ADD_USER`, `REMOVE_USER`, `ADD_GROUP` or
|
|
`REMOVE_GROUP`.
|
|
|
|
`ADD_USER`: A user was added as member to the group.
|
|
|
|
`REMOVE_USER`: A user member was removed from the group.
|
|
|
|
`ADD_GROUP`: A group was included as member in the group.
|
|
|
|
`REMOVE_GROUP`: An included group was removed from the group.
|
|
|`user` |
|
|
The user that did the add/remove as detailed
|
|
link:rest-api-accounts.html#account-info[AccountInfo] entity.
|
|
|`date` |
|
|
The timestamp of the event.
|
|
|======================
|
|
|
|
[[group-info]]
|
|
=== GroupInfo
|
|
The `GroupInfo` entity contains information about a group. This can be
|
|
a Gerrit internal group, or an external group that is known to Gerrit.
|
|
|
|
[options="header",cols="1,^1,5"]
|
|
|===========================
|
|
|Field Name ||Description
|
|
|`id` ||The URL encoded UUID of the group.
|
|
|`name` |
|
|
optional, not set if returned in a map where the group name is used as map key|
|
|
The name of the group. +
|
|
For external groups the group name is missing if there is no group
|
|
backend that can resolve the group UUID. E.g. this can happen when a
|
|
plugin that provided a group backend was uninstalled.
|
|
|`url` |optional|
|
|
URL to information about the group. Typically a URL to a web page that
|
|
permits users to apply to join the group, or manage their membership.
|
|
|`options` ||link:#group-options-info[Options of the group]
|
|
|`description` |only for internal groups|The description of the group.
|
|
|`group_id` |only for internal groups|The numeric ID of the group.
|
|
|`owner` |only for internal groups|The name of the owner group.
|
|
|`owner_id` |only for internal groups|The URL encoded UUID of the owner group.
|
|
|`created_on` |only for internal groups|The
|
|
link:rest-api.html#timestamp[timestamp] of when the group was created.
|
|
|`_more_groups`|optional, only for internal groups, not set if `false`|
|
|
Whether the query would deliver more results if not limited. +
|
|
Only set on the last group that is returned by a
|
|
link:#query-groups[group query].
|
|
|`members` |optional, only for internal groups|
|
|
A list of link:rest-api-accounts.html#account-info[AccountInfo]
|
|
entities describing the direct members. +
|
|
Only set if link:#members[members] are requested.
|
|
|`includes` |optional, only for internal groups|
|
|
A list of link:#group-info[GroupInfo] entities describing the direct
|
|
subgroups. +
|
|
Only set if link:#includes[subgroups] are requested.
|
|
|===========================
|
|
|
|
The type of a group can be deduced from the group's UUID:
|
|
|============
|
|
|UUID matches "^[0-9a-f]\{40\}$"|Gerrit internal group
|
|
|UUID starts with "global:"|Gerrit system group
|
|
|UUID starts with "ldap:"|LDAP group
|
|
|UUID starts with "<prefix>:"|other external group
|
|
|============
|
|
|
|
[[group-input]]
|
|
=== GroupInput
|
|
The 'GroupInput' entity contains information for the creation of
|
|
a new internal group.
|
|
|
|
[options="header",cols="1,^1,5"]
|
|
|===========================
|
|
|Field Name ||Description
|
|
|`name` |optional|The name of the group (not encoded). +
|
|
If set, must match the group name in the URL.
|
|
|`description` |optional|The description of the group.
|
|
|`visible_to_all`|optional|
|
|
Whether the group is visible to all registered users. +
|
|
`false` if not set.
|
|
|`owner_id` |optional|The URL encoded ID of the owner group. +
|
|
This can be a group UUID, a legacy numeric group ID or a unique group
|
|
name. +
|
|
If not set, the new group will be self-owned.
|
|
|`members` |optional|The initial members in a list of +
|
|
link:rest-api-accounts.html#account-id[account ids].
|
|
|===========================
|
|
|
|
[[group-options-info]]
|
|
=== GroupOptionsInfo
|
|
Options of the group.
|
|
|
|
[options="header",cols="1,^1,5"]
|
|
|=============================
|
|
|Field Name ||Description
|
|
|`visible_to_all`|not set if `false`|
|
|
Whether the group is visible to all registered users.
|
|
|=============================
|
|
|
|
[[group-options-input]]
|
|
=== GroupOptionsInput
|
|
New options for a group.
|
|
|
|
[options="header",cols="1,^1,5"]
|
|
|=============================
|
|
|Field Name ||Description
|
|
|`visible_to_all`|not set if `false`|
|
|
Whether the group is visible to all registered users.
|
|
|=============================
|
|
|
|
[[groups-input]]
|
|
=== GroupsInput
|
|
The `GroupsInput` entity contains information about groups that should
|
|
be included into a group or that should be deleted from a group.
|
|
|
|
[options="header",cols="1,^1,5"]
|
|
|==========================
|
|
|Field Name ||Description
|
|
|`_one_group` |optional|
|
|
The link:#group-id[id] of one group that should be included or deleted.
|
|
|`groups` |optional|
|
|
A list of link:#group-id[group ids] that identify the groups that
|
|
should be included or deleted.
|
|
|==========================
|
|
|
|
[[members-input]]
|
|
=== MembersInput
|
|
The `MembersInput` entity contains information about accounts that should
|
|
be added as members to a group or that should be deleted from the group.
|
|
|
|
[options="header",cols="1,^1,5"]
|
|
|==========================
|
|
|Field Name ||Description
|
|
|`_one_member`|optional|
|
|
The link:rest-api-accounts.html#account-id[id] of one account that
|
|
should be added or deleted.
|
|
|`members` |optional|
|
|
A list of link:rest-api-accounts.html#account-id[account ids] that
|
|
identify the accounts that should be added or deleted.
|
|
|==========================
|
|
|
|
|
|
GERRIT
|
|
------
|
|
Part of link:index.html[Gerrit Code Review]
|
|
|
|
SEARCHBOX
|
|
---------
|