Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/jira-permissions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
contact:
email: ecosystem@atlassian.com
description: Jira Cloud platform REST API documentation
license:
name: Apache 2.0
url: http://www.apache.org/licenses/LICENSE-2.0.html
termsOfService: https://developer.atlassian.com/platform/marketplace/atlassian-developer-terms/
title: Jira Cloud platform REST Permissions API
version: 1001.0.0-SNAPSHOT-82b018affa468e58f284fbe4df33536469d757df
servers:
- url: https://your-domain.atlassian.net
tags:
- description: This resource represents permissions. Use it to obtain details of all permissions and determine whether the user has certain permissions.
name: Permissions
paths:
/rest/api/3/mypermissions:
get:
deprecated: false
description: 'Returns a list of permissions indicating which permissions the user has. Details of the user''s permissions can be obtained in a global, project, issue or comment context.
The user is reported as having a project permission:
* in the global context, if the user has the project permission in any project.
* for a project, where the project permission is determined using issue data, if the user meets the permission''s criteria for any issue in the project. Otherwise, if the user has the project permission in the project.
* for an issue, where a project permission is determined using issue data, if the user has the permission in the issue. Otherwise, if the user has the project permission in the project containing the issue.
* for a comment, where the user has both the permission to browse the comment and the project permission for the comment''s parent issue. Only the BROWSE\_PROJECTS permission is supported. If a `commentId` is provided whose `permissions` does not equal BROWSE\_PROJECTS, a 400 error will be returned.
This means that users may be shown as having an issue permission (such as EDIT\_ISSUES) in the global context or a project context but may not have the permission for any or all issues. For example, if Reporters have the EDIT\_ISSUES permission a user would be shown as having this permission in the global context or the context of a project, because any user can be a reporter. However, if they are not the user who reported the issue queried they would not have EDIT\_ISSUES permission for that issue.
For Jira Service Management project permissions, this will be evaluated similarly to a user in the customer portal. For example, if the BROWSE\_PROJECTS permission is granted to Service Project Customer - Portal Access, any users with access to the customer portal will have the BROWSE\_PROJECTS permission.
Global permissions are unaffected by context.
This operation can be accessed anonymously.
**Permissions required:** None.'
operationId: getMyPermissions
parameters:
- description: The key of project. Ignored if `projectId` is provided.
in: query
name: projectKey
schema:
type: string
- description: The ID of project.
in: query
name: projectId
schema:
type: string
- description: The key of the issue. Ignored if `issueId` is provided.
in: query
name: issueKey
schema:
type: string
- description: The ID of the issue.
in: query
name: issueId
schema:
type: string
- description: A list of permission keys. (Required) This parameter accepts a comma-separated list. To get the list of available permissions, use [Get all permissions](#api-rest-api-3-permissions-get).
in: query
name: permissions
schema:
example: BROWSE_PROJECTS,EDIT_ISSUES
type: string
x-changes:
- announced: '2018-08-01'
details: https://developer.atlassian.com/cloud/jira/platform/change-notice-get-my-permissions-requires-permissions-query-parameter/
effective: '2019-02-01'
type: required
x-showInExample: 'true'
- in: query
name: projectUuid
schema:
type: string
- in: query
name: projectConfigurationUuid
schema:
type: string
- description: The ID of the comment.
in: query
name: commentId
schema:
type: string
responses:
'200':
content:
application/json:
example: '{"permissions":{"EDIT_ISSUES":{"description":"Ability to edit issues.","havePermission":true,"id":"12","key":"EDIT_ISSUES","name":"Edit Issues","type":"PROJECT"}}}'
schema:
$ref: '#/components/schemas/Permissions'
description: Returned if the request is successful.
'400':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorCollection'
description: Returned if `permissions` is empty, contains an invalid key, or does not equal BROWSE\_PROJECTS when commentId is provided.
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorCollection'
description: Returned if the authentication credentials are incorrect or missing.
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorCollection'
description: Returned if the project or issue is not found or the user does not have permission to view the project or issue.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Get my permissions
tags:
- Permissions
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:permission:jira
state: Beta
x-atlassian-connect-scope: READ
/rest/api/3/permissions:
get:
deprecated: false
description: 'Returns all permissions, including:
* global permissions.
* project permissions.
* global permissions added by plugins.
This operation can be accessed anonymously.
**Permissions required:** None.'
operationId: getAllPermissions
parameters: []
responses:
'200':
content:
application/json:
example: '{"permissions":{"BULK_CHANGE":{"description":"Ability to modify a collection of issues at once. For example, resolve multiple issues in one step.","key":"BULK_CHANGE","name":"Bulk Change","type":"GLOBAL"}}}'
schema:
$ref: '#/components/schemas/Permissions'
description: Returned if the request is successful.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the user does not have the necessary permission.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
- {}
summary: Get all permissions
tags:
- Permissions
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- read:permission:jira
state: Beta
x-atlassian-connect-scope: ADMIN
/rest/api/3/permissions/check:
post:
deprecated: false
description: 'Returns:
* for a list of global permissions, the global permissions granted to a user.
* for a list of project permissions and lists of projects and issues, for each project permission a list of the projects and issues a user can access or manipulate.
If no account ID is provided, the operation returns details for the logged in user.
Note that:
* Invalid project and issue IDs are ignored.
* A maximum of 1000 projects and 1000 issues can be checked.
* Null values in `globalPermissions`, `projectPermissions`, `projectPermissions.projects`, and `projectPermissions.issues` are ignored.
* Empty strings in `projectPermissions.permissions` are ignored.
**Deprecation notice:** The required OAuth 2.0 scopes will be updated on June 15, 2024.
* **Classic**: `read:jira-work`
* **Granular**: `read:permission:jira`
This operation can be accessed anonymously.
**Permissions required:** *Administer Jira* global permission to check the permissions for other users, otherwise none. However, Connect apps can make a call from the app server to the product to obtain permission details for any user, without admin permission. This Connect app ability doesn''t apply to calls made using AP.request() in a browser.'
operationId: getBulkPermissions
parameters: []
requestBody:
content:
application/json:
example:
accountId: 5b10a2844c20165700ede21g
globalPermissions:
- ADMINISTER
projectPermissions:
- issues:
- 10010
- 10011
- 10012
- 10013
- 10014
permissions:
- EDIT_ISSUES
projects:
- 10001
schema:
$ref: '#/components/schemas/BulkPermissionsRequestBean'
description: Details of the permissions to check.
required: true
responses:
'200':
content:
application/json:
example: '{"globalPermissions":["ADMINISTER"],"projectPermissions":[{"issues":[10010,10013,10014],"permission":"EDIT_ISSUES","projects":[10001]}]}'
schema:
$ref: '#/components/schemas/BulkPermissionGrants'
description: Returned if the request is successful.
'400':
content:
application/json:
example: '{"errorMessages":[],"errors":{"PERMISSION_123":"Unrecognized permission"}}'
schema:
$ref: '#/components/schemas/ErrorCollection'
description: "Returned if:\n\n * `projectPermissions` is provided without at least one project permission being provided.\n * an invalid global permission is provided in the global permissions list.\n * an invalid project permission is provided in the project permissions list.\n * more than 1000 valid project IDs or more than 1000 valid issue IDs are provided.\n * an invalid account ID is provided."
'403':
content:
application/json:
example: '{"errorMessages":["Only Jira administrators can perform this operation."],"errors":{}}'
schema:
$ref: '#/components/schemas/ErrorCollection'
description: Returned if the user does not have the necessary permission.
security:
- basicAuth: []
- OAuth2: []
- {}
summary: Get bulk permissions
tags:
- Permissions
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes: []
state: Current
- scheme: OAuth2
scopes:
- read:permission:jira
state: Beta
x-atlassian-connect-scope: READ
/rest/api/3/permissions/project:
post:
deprecated: false
description: 'Returns all the projects where the user is granted a list of project permissions.
This operation can be accessed anonymously.
**Permissions required:** None.'
operationId: getPermittedProjects
parameters: []
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PermissionsKeysBean'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PermittedProjects'
description: Returned if the request is successful.
'400':
description: Returned if a project permission is not found.
'401':
description: Returned if the authentication credentials are incorrect or missing.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Get permitted projects
tags:
- Permissions
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:permission:jira
- read:project:jira
state: Beta
x-atlassian-connect-scope: READ
components:
schemas:
Permissions:
additionalProperties: false
description: Details about permissions.
properties:
permissions:
additionalProperties:
$ref: '#/components/schemas/UserPermission'
description: List of permissions.
readOnly: true
type: object
type: object
ErrorCollection:
additionalProperties: false
description: Error messages from an operation.
properties:
errorMessages:
description: The list of error messages produced by this operation. For example, "input parameter 'key' must be provided"
items:
type: string
type: array
errors:
additionalProperties:
type: string
description: 'The list of errors by parameter returned by the operation. For example,"projectKey": "Project keys must start with an uppercase letter, followed by one or more uppercase alphanumeric characters."'
type: object
status:
format: int32
type: integer
type: object
BulkPermissionGrants:
additionalProperties: false
description: Details of global and project permissions granted to the user.
properties:
globalPermissions:
description: List of permissions granted to the user.
items:
type: string
type: array
uniqueItems: true
projectPermissions:
description: List of project permissions and the projects and issues those permissions provide access to.
items:
$ref: '#/components/schemas/BulkProjectPermissionGrants'
type: array
uniqueItems: true
required:
- globalPermissions
- projectPermissions
type: object
PermittedProjects:
additionalProperties: false
description: A list of projects in which a user is granted permissions.
properties:
projects:
description: A list of projects.
items:
$ref: '#/components/schemas/ProjectIdentifierBean'
readOnly: true
type: array
type: object
BulkPermissionsRequestBean:
additionalProperties: false
description: Details of global permissions to look up and project permissions with associated projects and issues to look up.
properties:
accountId:
description: The account ID of a user.
type: string
globalPermissions:
description: Global permissions to look up.
items:
type: string
type: array
uniqueItems: true
projectPermissions:
description: Project permissions with associated projects and issues to look up.
items:
$ref: '#/components/schemas/BulkProjectPermissions'
type: array
uniqueItems: true
type: object
BulkProjectPermissions:
additionalProperties: false
description: Details of project permissions and associated issues and projects to look up.
properties:
issues:
description: List of issue IDs.
items:
format: int64
type: integer
type: array
uniqueItems: true
permissions:
description: List of project permissions.
items:
type: string
type: array
uniqueItems: true
projects:
description: List of project IDs.
items:
format: int64
type: integer
type: array
uniqueItems: true
required:
- permissions
type: object
ProjectIdentifierBean:
additionalProperties: false
description: The identifiers for a project.
properties:
id:
description: The ID of the project.
format: int64
readOnly: true
type: integer
key:
description: The key of the project.
readOnly: true
type: string
type: object
UserPermission:
additionalProperties: true
description: Details of a permission and its availability to a user.
properties:
deprecatedKey:
description: Indicate whether the permission key is deprecated. Note that deprecated keys cannot be used in the `permissions parameter of Get my permissions. Deprecated keys are not returned by Get all permissions.`
type: boolean
description:
description: The description of the permission.
type: string
havePermission:
description: Whether the permission is available to the user in the queried context.
type: boolean
id:
description: The ID of the permission. Either `id` or `key` must be specified. Use [Get all permissions](#api-rest-api-3-permissions-get) to get the list of permissions.
type: string
key:
description: The key of the permission. Either `id` or `key` must be specified. Use [Get all permissions](#api-rest-api-3-permissions-get) to get the list of permissions.
type: string
name:
description: The name of the permission.
type: string
type:
description: The type of the permission.
enum:
- GLOBAL
- PROJECT
type: string
type: object
BulkProjectPermissionGrants:
additionalProperties: false
description: List of project permissions and the projects and issues those permissions grant access to.
properties:
issues:
description: IDs of the issues the user has the permission for.
items:
format: int64
type: integer
type: array
uniqueItems: true
permission:
description: A project permission,
type: string
projects:
description: IDs of the projects the user has the permission for.
items:
format: int64
type: integer
type: array
uniqueItems: true
required:
- issues
- permission
- projects
type: object
PermissionsKeysBean:
additionalProperties: false
properties:
permissions:
description: A list of permission keys.
items:
type: string
type: array
required:
- permissions
type: object
securitySchemes:
OAuth2:
description: OAuth2 scopes for Jira
flows:
authorizationCode:
authorizationUrl: https://auth.atlassian.com/authorize
scopes:
delete:async-task:jira: Delete asynchronous task.
delete:attachment:jira: Delete issue attachments.
delete:avatar:jira: Delete system and custom avatars.
delete:comment.property:jira: Delete issue comment properties.
delete:comment:jira: Delete issue comments.
delete:dashboard.property:jira: Delete dashboard properties.
delete:dashboard:jira: Delete dashboards.
delete:field-configuration-scheme:jira: Delete field configuration schemes.
delete:field-configuration:jira: Delete field configurations.
delete:field.option:jira: Delete field options.
delete:field:jira: Delete fields.
delete:filter.column:jira: Delete filter columns.
delete:filter:jira: Delete filters.
delete:group:jira: Delete user groups.
delete:issue-link-type:jira: Delete issue link types.
delete:issue-link:jira: Delete issue links.
delete:issue-type-scheme:jira: Delete issue type schemes.
delete:issue-type-screen-scheme:jira: Delete issue type screen schemes.
delete:issue-type.property:jira: Delete issue type properties.
delete:issue-type:jira: Delete issue types.
delete:issue-worklog.property:jira: Delete issue worklog properties.
delete:issue-worklog:jira: Delete issue worklogs.
delete:issue.property:jira: Delete issue properties.
delete:issue.remote-link:jira: Delete issue remote links.
delete:issue:jira: Delete issues.
delete:permission-scheme:jira: Delete permission schemes.
delete:permission:jira: Delete permissions.
delete:project-category:jira: Delete project categories.
delete:project-role:jira: Delete project roles.
delete:project-version:jira: Delete project versions.
delete:project.avatar:jira: Delete project avatars.
delete:project.component:jira: Delete project components.
delete:project.property:jira: Delete project properties.
delete:project:jira: Delete projects and their details, such as issue types, project lead, and avatars.
delete:screen-scheme:jira: Delete screen schemes.
delete:screen-tab:jira: Delete screen tabs.
delete:screen:jira: Delete screens.
delete:screenable-field:jira: Delete screenable fields.
delete:user-configuration:jira: Delete user configurations.
delete:user.property:jira: Delete user properties.
delete:webhook:jira: Delete webhooks.
delete:workflow-scheme:jira: Delete workflow schemes.
delete:workflow.property:jira: Delete workflow properties.
delete:workflow:jira: Delete workflows.
manage:jira-configuration: Configure Jira settings that require the Jira administrators permission, for example, create projects and custom fields, view workflows, manage issue link types.
manage:jira-project: Create and edit project settings and create new project-level objects, for example, versions, components.
manage:jira-webhook: Manage Jira webhooks. Enables an OAuth app to register and unregister dynamic webhooks in Jira. It also provides for fetching of registered webhooks.
read:app-data:jira: Read app data.
read:application-role:jira: View application roles.
read:attachment:jira: View issue attachments.
read:audit-log:jira: View audit logs.
read:avatar:jira: View system and custom avatars.
read:comment.property:jira: View issue comment properties.
read:comment:jira: View issue comments.
read:custom-field-contextual-configuration:jira: Read custom field contextual configurations.
read:dashboard.property:jira: View dashboard properties.
read:dashboard:jira: View dashboards.
read:email-address:jira: View email addresses of all users regardless of the user's profile visibility settings.
read:field-configuration-scheme:jira: View field configuration schemes.
read:field-configuration:jira: Read field configurations.
read:field.default-value:jira: View field default values.
read:field.option:jira: View field options.
read:field.options:jira: Read field options.
read:field:jira: View fields.
read:filter.column:jira: View filter columns.
read:filter.default-share-scope:jira: View filter default share scopes.
read:filter:jira: View filters.
read:group:jira: View user groups.
read:instance-configuration:jira: View instance configurations.
read:issue-details:jira: View issue details.
read:issue-event:jira: Read issue events.
read:issue-field-values:jira: View issue field valueses.
read:issue-link-type:jira: View issue link types.
read:issue-link:jira: View issue links.
read:issue-meta:jira: View issue meta.
read:issue-security-level:jira: View issue security levels.
read:issue-security-scheme:jira: View issue security schemes.
read:issue-status:jira: View issue statuses.
read:issue-type-hierarchy:jira: Read issue type hierarchies.
read:issue-type-scheme:jira: View issue type schemes.
read:issue-type-screen-scheme:jira: View issue type screen schemes.
read:issue-type.property:jira: View issue type properties.
read:issue-type:jira: View issue types.
read:issue-worklog.property:jira: View issue worklog properties.
read:issue-worklog:jira: View issue worklogs.
read:issue.changelog:jira: View issue changelogs.
read:issue.property:jira: View issue properties.
read:issue.remote-link:jira: View issue remote links.
read:issue.time-tracking:jira: View issue time trackings.
read:issue.transition:jira: View issue transitions.
read:issue.vote:jira: View issue votes.
read:issue.votes:jira: View issue voteses.
read:issue.watcher:jira: View issue watchers.
read:issue:jira: View issues.
read:jira-expressions:jira: View jira expressions.
read:jira-user: View user information in Jira that you have access to, including usernames, email addresses, and avatars.
read:jira-work: Read project and issue data. Search for issues and objects associated with issues (such as attachments and worklogs).
read:jql:jira: View JQL.
read:label:jira: View labels.
read:license:jira: View licenses.
read:notification-scheme:jira: View notification schemes.
read:permission-scheme:jira: View permission schemes.
read:permission:jira: View permissions.
read:priority:jira: View priorities.
read:project-category:jira: View project categories.
read:project-role:jira: View project roles.
read:project-type:jira: View project types.
read:project-version:jira: View project versions.
read:project.avatar:jira: Read project avatars.
read:project.component:jira: View project components.
read:project.email:jira: View project emails.
read:project.feature:jira: Read project features.
read:project.property:jira: View project properties.
read:project:jira: View projects.
read:resolution:jira: View resolutions.
read:role:jira: View roles.
read:screen-field:jira: View screen fields.
read:screen-scheme:jira: View screen schemes.
read:screen-tab:jira: View screen tabs.
read:screen:jira: View screens.
read:screenable-field:jira: View screenable fields.
read:status:jira: View statuses.
read:user-configuration:jira: View user configurations.
read:user.columns:jira: View user columnses.
read:user.property:jira: View user properties.
read:user:jira: View users.
read:webhook:jira: View webhooks.
read:workflow-scheme:jira: View workflow schemes.
read:workflow.property:jira: View workflow properties.
read:workflow:jira: View workflows.
send:notification:jira: Send notifications.
validate:jql:jira: Validate JQL.
write:app-data:jira: Write app data.
write:attachment:jira: Create and update issue attachments.
write:avatar:jira: Create and update system and custom avatars.
write:comment.property:jira: Create and update issue comment properties.
write:comment:jira: Create and update issue comments.
write:custom-field-contextual-configuration:jira: Save custom field contextual configurations.
write:dashboard.property:jira: Create and update dashboard properties.
write:dashboard:jira: Create and update dashboards.
write:field-configuration-scheme:jira: Create and update field configuration schemes.
write:field-configuration:jira: Save field configurations.
write:field.default-value:jira: Create and update field default values.
write:field.option:jira: Create and update field options.
write:field:jira: Create and update fields.
write:filter.column:jira: Create and update filter columns.
write:filter.default-share-scope:jira: Create and update filter default share scopes.
write:filter:jira: Create and update filters.
write:group:jira: Create and update user groups.
write:instance-configuration:jira: Create and update instance configurations.
write:issue-link-type:jira: Create and update issue link types.
write:issue-link:jira: Create and update issue links.
write:issue-type-scheme:jira: Create and update issue type schemes.
write:issue-type-screen-scheme:jira: Create and update issue type screen schemes.
write:issue-type.property:jira: Create and update issue type properties.
write:issue-type:jira: Create and update issue types.
write:issue-worklog.property:jira: Create and update issue worklog properties.
write:issue-worklog:jira: Create and update issue worklogs.
write:issue.property:jira: Create and update issue properties.
write:issue.remote-link:jira: Create and update issue remote links.
write:issue.time-tracking:jira: Create and update issue time trackings.
write:issue.vote:jira: Create and update issue votes.
write:issue.watcher:jira: Create and update issue watchers.
write:issue:jira: Create and update issues.
write:jira-work: Create and edit issues in Jira, post comments, create worklogs, and delete issues.
write:permission-scheme:jira: Create and update permission schemes.
write:permission:jira: Create and update permissions.
write:project-category:jira: Create and update project categories.
write:project-role:jira: Create and update project roles.
write:project-version:jira: Create and update project versions.
write:project.avatar:jira: Create and update project avatars.
write:project.component:jira: Create and update project components.
write:project.email:jira: Create and update project emails.
write:project.feature:jira: Save project features.
write:project.property:jira: Create and update project properties.
write:project:jira: Create and update projects.
write:screen-scheme:jira: Create and update screen schemes.
write:screen-tab:jira: Create and update screen tabs.
write:screen:jira: Create and update screens.
write:screenable-field:jira: Create and update screenable fields.
write:user-configuration:jira: Create and update user configurations.
write:user.property:jira: Create and update user properties.
write:webhook:jira: Create and update webhooks.
write:workflow-scheme:jira: Create and update workflow schemes.
write:workflow.property:jira: Create and update workflow properties.
write:workflow:jira: Create and update workflows.
tokenUrl: https://auth.atlassian.com/oauth/token
type: oauth2
basicAuth:
description: You can access this resource via basic auth.
scheme: basic
type: http
externalDocs:
description: Find out more about Atlassian products and services.
url: http://www.atlassian.com
x-atlassian-narrative:
documents:
# --- truncated at 32 KB (45 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/jira/refs/heads/main/openapi/jira-permissions-api-openapi.yml