Cloud
Jira Cloud platform / Reference / REST API v3

Project permission schemes

This resource represents permission schemes for a project. Use this resource to:

  • get details of a project's issue security levels available to the calling user.
  • get the permission scheme associated with the project or assign different permission scheme to the project.
  • get details of a project's issue security scheme.

See Managing project permissions for more information about permission schemes.

GET

Get project issue security scheme

Returns the issue security scheme associated with the project.

Permissions required: Administer Jira global permission or the Administer Projects project permission.

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:read:jira-work
Granular:read:issue-security-level:jira, read:issue-security-scheme:jira

Connect app scope requiredREAD

Request

Path parameters

projectKeyOrId

string

Required

Responses

Returned if the request is successful.

application/json

SecurityScheme

Details about a security scheme.

GET/rest/api/3/project/{projectKeyOrId}/issuesecuritylevelscheme
1 2 3 4 5 6 7 8 9 10 11 12 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/project/{projectKeyOrId}/issuesecuritylevelscheme`, { headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 { "defaultSecurityLevelId": 10021, "description": "Description for the default issue security scheme", "id": 10000, "levels": [ { "description": "Only the reporter and internal staff can see this issue.", "id": "10021", "name": "Reporter Only", "self": "https://your-domain.atlassian.net/rest/api/3/securitylevel/10021" } ], "name": "Default Issue Security Scheme", "self": "https://your-domain.atlassian.net/rest/api/3/issuesecurityschemes/10000" }
GET

Get assigned permission scheme

Gets the permission scheme associated with the project.

Permissions required: Administer Jira global permission or Administer projects project permission.

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:read:jira-work
Granular:read:application-role:jira, read:field:jira, read:group:jira, read:permission-scheme:jira, read:permission:jira ...(Show more)

Connect app scope requiredREAD

Request

Path parameters

projectKeyOrId

string

Required

Query parameters

expand

string

Responses

Returned if the request is successful.

application/json

PermissionScheme

Details of a permission scheme.

GET/rest/api/3/project/{projectKeyOrId}/permissionscheme
1 2 3 4 5 6 7 8 9 10 11 12 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/project/{projectKeyOrId}/permissionscheme`, { headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 { "description": "description", "id": 10000, "name": "Example permission scheme", "self": "https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000" }
PUT

Assign permission scheme

Assigns a permission scheme with a project. See Managing project permissions for more information about permission schemes.

Permissions required: Administer Jira global permission

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:manage:jira-project
Granular:read:application-role:jira, read:field:jira, read:group:jira, read:permission-scheme:jira, read:permission:jira ...(Show more)

Connect app scope requiredPROJECT_ADMIN

Request

Path parameters

projectKeyOrId

string

Required

Query parameters

expand

string

Request bodyapplication/json

id

integer

Required

Responses

Returned if the request is successful.

application/json

PermissionScheme

Details of a permission scheme.

PUT/rest/api/3/project/{projectKeyOrId}/permissionscheme
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; var bodyData = `{ "id": 10000 }`; const response = await api.asUser().requestJira(route`/rest/api/3/project/{projectKeyOrId}/permissionscheme`, { method: 'PUT', headers: { 'Accept': 'application/json', 'Content-Type': 'application/json' }, body: bodyData }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 { "description": "description", "id": 10000, "name": "Example permission scheme", "self": "https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000" }
GET

Get project issue security levels

Returns all issue security levels for the project that the user has access to.

This operation can be accessed anonymously.

Permissions required: Browse projects global permission for the project, however, issue security levels are only returned for authenticated user with Set Issue Security global permission for the project.

Data Security Policy: Exempt from app access rules
Scopes
ClassicRECOMMENDED:read:jira-work
Granular:read:issue-security-level:jira

Connect app scope requiredREAD

Request

Path parameters

projectKeyOrId

string

Required

Responses

Returned if the request is successful.

application/json

ProjectIssueSecurityLevels

List of issue level security items in a project.

GET/rest/api/3/project/{projectKeyOrId}/securitylevel
1 2 3 4 5 6 7 8 9 10 11 12 // This sample uses Atlassian Forge // https://developer.atlassian.com/platform/forge/ import api, { route } from "@forge/api"; const response = await api.asUser().requestJira(route`/rest/api/3/project/{projectKeyOrId}/securitylevel`, { headers: { 'Accept': 'application/json' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json());
200Response
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 { "levels": [ { "description": "Only the reporter and internal staff can see this issue.", "id": "100000", "name": "Reporter Only", "self": "https://your-domain.atlassian.net/rest/api/3/securitylevel/100000" }, { "description": "Only internal staff can see this issue.", "id": "100001", "name": "Staff Only", "self": "https://your-domain.atlassian.net/rest/api/3/securitylevel/100001" } ] }

Rate this page: