This page describes the access rights related REST endpoints. Please also take note of the general information on the REST API.
Access Rights Endpoints
List Access Rights
'GET /access/?project={project-name}'
Lists the access rights for projects. The projects for which the access
rights should be returned must be specified as project
options. The
project
can be specified multiple times.
As result a map is returned that maps the project name to ProjectAccessInfo entities.
The entries in the map are sorted by project name.
GET /access/?project=MyProject&project=All-Projects HTTP/1.0
HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 )]}' { "All-Projects": { "revision": "edd453d18e08640e67a8c9a150cec998ed0ac9aa", "local": { "GLOBAL_CAPABILITIES": { "permissions": { "priority": { "rules": { "15bfcd8a6de1a69c50b30cedcdcc951c15703152": { "action": "BATCH" } } }, "streamEvents": { "rules": { "15bfcd8a6de1a69c50b30cedcdcc951c15703152": { "action": "ALLOW" } } }, "administrateServer": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" } } } } }, "refs/meta/config": { "permissions": { "submit": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" }, "global:Project-Owners": { "action": "ALLOW" } } }, "label-Code-Review": { "label": "Code-Review", "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW", "min": -2, "max": 2 }, "global:Project-Owners": { "action": "ALLOW", "min": -2, "max": 2 } } }, "read": { "exclusive": true, "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" }, "global:Project-Owners": { "action": "ALLOW" } } }, "push": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" }, "global:Project-Owners": { "action": "ALLOW" } } } } }, "refs/for/refs/*": { "permissions": { "pushMerge": { "rules": { "global:Registered-Users": { "action": "ALLOW" } } }, "push": { "rules": { "global:Registered-Users": { "action": "ALLOW" } } } } }, "refs/tags/*": { "permissions": { "pushSignedTag": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" }, "global:Project-Owners": { "action": "ALLOW" } } }, "pushTag": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" }, "global:Project-Owners": { "action": "ALLOW" } } } } }, "refs/heads/*": { "permissions": { "forgeCommitter": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" }, "global:Project-Owners": { "action": "ALLOW" } } }, "forgeAuthor": { "rules": { "global:Registered-Users": { "action": "ALLOW" } } }, "submit": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" }, "global:Project-Owners": { "action": "ALLOW" } } }, "editTopicName": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW", "force": true }, "global:Project-Owners": { "action": "ALLOW", "force": true } } }, "label-Code-Review": { "label": "Code-Review", "rules": { "global:Registered-Users": { "action": "ALLOW", "min": -1, "max": 1 }, "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW", "min": -2, "max": 2 }, "global:Project-Owners": { "action": "ALLOW", "min": -2, "max": 2 } } }, "create": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" }, "global:Project-Owners": { "action": "ALLOW" } } }, "push": { "rules": { "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" }, "global:Project-Owners": { "action": "ALLOW" } } } } }, "refs/*": { "permissions": { "read": { "rules": { "global:Anonymous-Users": { "action": "ALLOW" }, "53a4f647a89ea57992571187d8025f830625192a": { "action": "ALLOW" } } } } } }, "is_owner": true, "owner_of": [ "GLOBAL_CAPABILITIES", "refs/meta/config", "refs/for/refs/*", "refs/tags/*", "refs/heads/*", "refs/*" ], "can_upload": true, "can_add": true, "config_visible": true }, "MyProject": { "revision": "61157ed63e14d261b6dca40650472a9b0bd88474", "inherits_from": { "id": "All-Projects", "name": "All-Projects", "description": "Access inherited by all other projects." }, "local": {}, "is_owner": true, "owner_of": [ "refs/*" ], "can_upload": true, "can_add": true, "config_visible": true } }
JSON Entities
AccessSectionInfo
The AccessSectionInfo
describes the access rights that are assigned
on a ref.
Field Name | Description | |
---|---|---|
|
The permissions assigned on the ref of this access section as a map that maps the permission names to PermissionInfo entities. |
PermissionInfo
The PermissionInfo
entity contains information about an assigned
permission.
Field Name | Description | |
---|---|---|
|
optional |
The name of the label. Not set if it’s not a label permission. |
|
not set if |
Whether this permission is assigned exclusively. |
|
The rules assigned for this permission as a map that maps the UUIDs of the groups for which the permission are assigned to PermissionRuleInfo entities. |
PermissionRuleInfo
The PermissionRuleInfo
entity contains information about a permission
rule that is assigned to group.
Field Name | Description | |
---|---|---|
|
The action of this rule. For normal permissions this can be |
|
|
not set if |
Whether the force flag is set. |
|
not set if range if empty (from |
The min value of the permission range. |
|
not set if range if empty (from |
The max value of the permission range. |
ProjectAccessInfo
The ProjectAccessInfo
entity contains information about the access
rights for a project.
Field Name | Description | |
---|---|---|
|
The revision of the |
|
|
not set for the |
The parent project from which permissions are inherited as a ProjectInfo entity. |
|
The local access rights of the project as a map that maps the refs to AccessSectionInfo entities. |
|
|
not set if |
Whether the calling user owns this project. |
|
The list of refs owned by the calling user. |
|
|
not set if |
Whether the calling user can upload to any ref. |
|
not set if |
Whether the calling user can add any ref. |
|
not set if |
Whether the calling user can see the |
Part of Gerrit Code Review