Every API here is available over the APIs.io API and to AI agents over MCP.
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: http://atlassian.com/terms/
title: Atlassian The Jira Cloud platform REST UI Modifications…
version: 1001.0.0-SNAPSHOT-67b5c6e5f3598d7ec1649016d026468ab2838a77
servers:
- url: https://your-domain.atlassian.net
tags:
- description: 'UI modifications is a feature available for **Forge apps only**. It enables Forge apps to control how selected Jira fields behave on the following views: global issue create, issue view. For example: hide specific fields, set them as required, etc.'
name: UI Modifications (Apps)
paths:
/rest/api/3/uiModifications:
get:
deprecated: false
description: 'Gets UI modifications. UI modifications can only be retrieved by Forge apps.
**Permissions required:** None.'
operationId: atlassianGetuimodifications
parameters:
- description: The index of the first item to return in a page of results (page offset).
in: query
name: startAt
schema:
default: 0
format: int64
type: integer
- description: The maximum number of items to return per page.
in: query
name: maxResults
schema:
default: 50
format: int32
type: integer
- description: "Use expand to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n * `data` Returns UI modification data.\n * `contexts` Returns UI modification contexts."
in: query
name: expand
schema:
type: string
responses:
'200':
content:
application/json:
example: '{"isLast":true,"maxResults":100,"startAt":0,"total":3,"values":[{"id":"d7dbda8a-6239-4b63-8e13-a5ef975c8e61","name":"Reveal Story Points","description":"Reveals Story Points field when any Sprint is selected.","self":"https://api.atlassian.com/ex/jira/{cloudid}/rest/api/2/uiModifications/d7dbda8a-6239-4b63-8e13-a5ef975c8e61","data":"{field: ''Story Points'', config: {hidden: false}}","contexts":[{"id":"1533537a-bda3-4ac6-8481-846128cd9ef4","projectId":"10000","issueTypeId":"10000","viewType":"GIC","isAvailable":true},{"id":"c016fefa-6eb3-40c9-8596-4c4ef273e67c","projectId":"10000","issueTypeId":"10001","viewType":"IssueView","isAvailable":true}]},{"id":"e4fe8db5-f82f-416b-a3aa-b260b55da577","name":"Set Assignee","description":"Sets the Assignee field automatically.","self":"https://api.atlassian.com/ex/jira/{cloudid}/rest/api/2/uiModifications/e4fe8db5-f82f-416b-a3aa-b260b55da577","contexts":[{"id":"8b3740f9-8780-4958-8228-69dcfbda11d9","projectId":"10000","issueTypeId":"10000","viewType":"GIC","isAvailable":true}]},{"id":"1453f993-79ce-4389-a36d-eb72d5c85dd6","name":"Hide Labels","description":"Hides Labels if any component is provided.","self":"https://api.atlassian.com/ex/jira/{cloudid}/rest/api/2/uiModifications/1453f993-79ce-4389-a36d-eb72d5c85dd6","contexts":[]},{"id":"d3f4097e-8d8e-451e-9fb6-27c3c8c3bfff","name":"Wildcard example","description":"This context is applied to all issue types","self":"https://api.atlassian.com/ex/jira/{cloudid}/rest/api/2/uiModifications/d3f4097e-8d8e-451e-9fb6-27c3c8c3bfff","contexts":[{"id":"521f2181-5d5e-46ea-9fc9-871bbf245b8b","projectId":"10000","issueTypeId":null,"viewType":"GIC","isAvailable":true}]}]}'
schema:
$ref: '#/components/schemas/PageBeanUiModificationDetails'
description: Returned if the request is successful.
'400':
description: Returned if the request is not valid.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the request is not from a Forge app.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
summary: Atlassian Get Ui Modifications
tags:
- UI Modifications (Apps)
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-connect-scope: NONE
post:
deprecated: false
description: 'Creates a UI modification. UI modification can only be created by Forge apps.
Each app can define up to 3000 UI modifications. Each UI modification can define up to 1000 contexts. The same context can be assigned to maximum 100 UI modifications.
**Permissions required:**
* *None* if the UI modification is created without contexts.
* *Browse projects* project permission for one or more projects, if the UI modification is created with contexts.'
operationId: atlassianCreateuimodification
parameters: []
requestBody:
content:
application/json:
example:
contexts:
- issueTypeId: '10000'
projectId: '10000'
viewType: GIC
- issueTypeId: '10001'
projectId: '10000'
viewType: IssueView
- issueTypeId: '10002'
projectId: '10000'
viewType: null
data: '{field: ''Story Points'', config: {hidden: false}}'
description: Reveals Story Points field when any Sprint is selected.
name: Reveal Story Points
schema:
$ref: '#/components/schemas/CreateUiModificationDetails'
description: Details of the UI modification.
required: true
responses:
'201':
content:
application/json:
example: '{"id":"d7dbda8a-6239-4b63-8e13-a5ef975c8e61","self":"https://api.atlassian.com/ex/jira/{cloudid}/rest/api/2/uiModifications/d7dbda8a-6239-4b63-8e13-a5ef975c8e61"}'
schema:
$ref: '#/components/schemas/UiModificationIdentifiers'
description: Returned if the UI modification is created.
'400':
description: Returned if the request is not valid.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the request is not from a Forge app.
'404':
content:
application/json:
example: '{"details":{"issueTypesNotFound":{"10001":["10000","10001"]},"projectNotFound":["10000"]},"errorMessages":["Project with ID ''10000'' was not found.","Project with ID ''10001''. The following issue types were not found: [10000, 10001]"],"errors":{}}'
schema:
$ref: '#/components/schemas/DetailedErrorCollection'
description: Returned if a project or an issue type in the context are not found.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
summary: Atlassian Create Ui Modification
tags:
- UI Modifications (Apps)
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-connect-scope: NONE
/rest/api/3/uiModifications/{uiModificationId}:
delete:
deprecated: false
description: 'Deletes a UI modification. All the contexts that belong to the UI modification are deleted too. UI modification can only be deleted by Forge apps.
**Permissions required:** None.'
operationId: atlassianDeleteuimodification
parameters:
- description: The ID of the UI modification.
in: path
name: uiModificationId
required: true
schema:
type: string
responses:
'204':
content:
application/json:
schema: {}
description: Returned if the UI modification is deleted.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the request is not from a Forge app.
'404':
description: Returned if the UI modification is not found.
security:
- basicAuth: []
- OAuth2: []
summary: Atlassian Delete Ui Modification
tags:
- UI Modifications (Apps)
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-connect-scope: NONE
put:
deprecated: false
description: 'Updates a UI modification. UI modification can only be updated by Forge apps.
Each UI modification can define up to 1000 contexts. The same context can be assigned to maximum 100 UI modifications.
**Permissions required:**
* *None* if the UI modification is created without contexts.
* *Browse projects* project permission for one or more projects, if the UI modification is created with contexts.'
operationId: atlassianUpdateuimodification
parameters:
- description: The ID of the UI modification.
in: path
name: uiModificationId
required: true
schema:
type: string
requestBody:
content:
application/json:
example:
contexts:
- issueTypeId: '10000'
projectId: '10000'
viewType: GIC
- issueTypeId: '10001'
projectId: '10000'
viewType: IssueView
data: '{field: ''Story Points'', config: {hidden: true}}'
name: Updated Reveal Story Points
schema:
$ref: '#/components/schemas/UpdateUiModificationDetails'
description: Details of the UI modification.
required: true
responses:
'204':
content:
application/json:
schema: {}
description: Returned if the UI modification is updated.
'400':
description: Returned if the request is not valid.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the request is not from a Forge app.
'404':
content:
application/json:
example: '{"details":{"issueTypesNotFound":{"10001":["10000","10001"]},"projectNotFound":["10000"]},"errorMessages":["Project with ID ''10000'' was not found.","Project with ID ''10001''. The following issue types were not found: [10000, 10001]"],"errors":{}}'
schema:
$ref: '#/components/schemas/DetailedErrorCollection'
description: Returned if the UI modification, a project or an issue type in the context are not found.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
summary: Atlassian Update Ui Modification
tags:
- UI Modifications (Apps)
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-connect-scope: NONE
components:
schemas:
UiModificationIdentifiers:
additionalProperties: false
description: Identifiers for a UI modification.
properties:
id:
description: The ID of the UI modification.
readOnly: true
type: string
self:
description: The URL of the UI modification.
readOnly: true
type: string
required:
- id
- self
type: object
DetailedErrorCollection:
additionalProperties: false
properties:
details:
additionalProperties: {}
description: Map of objects representing additional details for an error
type: object
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
type: object
UpdateUiModificationDetails:
additionalProperties: false
description: The details of a UI modification.
properties:
contexts:
description: List of contexts of the UI modification. The maximum number of contexts is 1000. If provided, replaces all existing contexts.
items:
$ref: '#/components/schemas/UiModificationContextDetails'
type: array
writeOnly: true
data:
description: The data of the UI modification. The maximum size of the data is 50000 characters.
type: string
writeOnly: true
description:
description: The description of the UI modification. The maximum length is 255 characters.
type: string
writeOnly: true
name:
description: The name of the UI modification. The maximum length is 255 characters.
type: string
writeOnly: true
type: object
UiModificationContextDetails:
additionalProperties: false
description: The details of a UI modification's context, which define where to activate the UI modification.
properties:
id:
description: The ID of the UI modification context.
readOnly: true
type: string
isAvailable:
description: Whether a context is available. For example, when a project is deleted the context becomes unavailable.
readOnly: true
type: boolean
issueTypeId:
description: The issue type ID of the context. Null is treated as a wildcard, meaning the UI modification will be applied to all issue types. Each UI modification context can have a maximum of one wildcard.
type: string
projectId:
description: The project ID of the context. Null is treated as a wildcard, meaning the UI modification will be applied to all projects. Each UI modification context can have a maximum of one wildcard.
type: string
viewType:
description: The view type of the context. Only `GIC`(Global Issue Create) and `IssueView` are supported. Null is treated as a wildcard, meaning the UI modification will be applied to all view types. Each UI modification context can have a maximum of one wildcard.
enum:
- GIC
- IssueView
type: string
type: object
writeOnly: true
UiModificationDetails:
additionalProperties: false
description: The details of a UI modification.
properties:
contexts:
description: List of contexts of the UI modification. The maximum number of contexts is 1000.
items:
$ref: '#/components/schemas/UiModificationContextDetails'
readOnly: true
type: array
data:
description: The data of the UI modification. The maximum size of the data is 50000 characters.
readOnly: true
type: string
description:
description: The description of the UI modification. The maximum length is 255 characters.
readOnly: true
type: string
id:
description: The ID of the UI modification.
readOnly: true
type: string
name:
description: The name of the UI modification. The maximum length is 255 characters.
readOnly: true
type: string
self:
description: The URL of the UI modification.
readOnly: true
type: string
required:
- id
- name
- self
type: object
CreateUiModificationDetails:
additionalProperties: false
description: The details of a UI modification.
properties:
contexts:
description: List of contexts of the UI modification. The maximum number of contexts is 1000.
items:
$ref: '#/components/schemas/UiModificationContextDetails'
type: array
writeOnly: true
data:
description: The data of the UI modification. The maximum size of the data is 50000 characters.
type: string
writeOnly: true
description:
description: The description of the UI modification. The maximum length is 255 characters.
type: string
writeOnly: true
name:
description: The name of the UI modification. The maximum length is 255 characters.
type: string
writeOnly: true
required:
- name
type: object
PageBeanUiModificationDetails:
additionalProperties: false
description: A page of items.
properties:
isLast:
description: Whether this is the last page.
readOnly: true
type: boolean
maxResults:
description: The maximum number of items that could be returned.
format: int32
readOnly: true
type: integer
nextPage:
description: If there is another page of results, the URL of the next page.
format: uri
readOnly: true
type: string
self:
description: The URL of the page.
format: uri
readOnly: true
type: string
startAt:
description: The index of the first item returned.
format: int64
readOnly: true
type: integer
total:
description: The number of items returned.
format: int64
readOnly: true
type: integer
values:
description: The list of items.
items:
$ref: '#/components/schemas/UiModificationDetails'
readOnly: true
type: array
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: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: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: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:
- anchor: about
body: "The Jira REST API enables you to interact with Jira programmatically. Use this API to \n[build apps](https://developer.atlassian.com/cloud/jira/platform/integrating-with-jira-cloud/), script interactions with \nJira, or develop any other type of integration. This page documents the REST resources available in Jira Cloud, including \nthe HTTP response codes and example requests and responses."
title: About
- anchor: version
body: "This documentation is for **version 3** of the Jira Cloud platform REST API, which is the latest version\nbut is in **beta**. [Version 2](https://developer.atlassian.com/cloud/jira/platform/rest/v2/) and \nversion 3 of the API offer the same collection of operations. However, version 3 provides support for \nthe [Atlassian Document Format](https://developer.atlassian.com/cloud/jira/platform/apis/document/structure/) \n(ADF) in: \n- `body` in comments, including where comments are used in issue, issue link, and transition resources.\n- `comment` in worklogs.\n- `description` and `environment` fields in issues.\n- `textarea` type custom fields (multi-line text fields) in issues. Single line custom fields \n (`textfield`) accept a string and don't handle Atlassian Document Format content.\n\nHowever, these new features are under development and may change.\n"
title: Version
# --- truncated at 32 KB (43 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/atlassian/refs/heads/main/openapi/atlassian-ui-modifications-apps-api-openapi.yml