openapi: 3.0.1 servers: - url: https://your-domain.atlassian.net x-hasEquivalentPaths: true info: contact: email: ecosystem@atlassian.com x-twitter: Atlassian 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: The Jira Cloud platform REST API version: 1001.0.0-SNAPSHOT x-apisguru-categories: - developer_tools x-logo: url: https://twitter.com/Atlassian/profile_image?size=original x-origin: - format: openapi url: https://developer.atlassian.com/cloud/jira/platform/swagger-v3.v3.json version: "3.0" x-providerName: atlassian.com x-serviceName: jira externalDocs: description: Find out more about Atlassian products and services. url: http://www.atlassian.com tags: - description: This resource represents an announcement banner. Use it to retrieve and update banner configuration. name: Announcement banner - description: This resource represents application roles. Use it to get details of an application role or all application roles. name: Application roles - description: This resource represents audits that record activities undertaken in Jira. Use it to get a list of audit records. name: Audit records - description: This resource represents system and custom avatars. Use it to obtain the details of system or custom avatars, add and remove avatars from a project or issue type, and obtain avatar images. name: Avatars - description: This resource represents dashboards. Use it to obtain the details of dashboards as well as get, create, update, or remove item properties and gadgets from dashboards. name: Dashboards - description: This resource represents [filters](https://confluence.atlassian.com/x/eQiiLQ). Use it to get, create, update, or delete filters. Also use it to configure the columns for a filter and set favorite filters. name: Filters - description: This resource represents options for sharing [filters](#api-group-Filters). Use it to get share scopes as well as add and remove share scopes from filters. name: Filter sharing - description: This resource represents a list of users and a list of groups. Use it to obtain the details to populate user and group picker suggestions list. name: Group and user picker - description: This resource represents groups of users. Use it to get, create, find, and delete groups as well as add and remove users from groups. (\[WARNING\] The standard Atlassian group names are default names only and can be edited or deleted. For example, an admin or Atlassian support could delete the default group jira-software-users or rename it to jsw-users at any point. See https://support.atlassian.com/user-management/docs/create-and-update-groups/ for details.) name: Groups - description: This resource represents information about the Jira instance. Use it to get license details. name: Instance information - description: |- This resource represents Jira issues. Use it to: * create or edit issues, individually or in bulk. * retrieve metadata about the options for creating or editing issues. * delete an issue. * assign a user to an issue. * get issue changelogs. * send notifications about an issue. * get details of the transitions available for an issue. * transition an issue. name: Issues - description: "UI modifications is an experimental feature available for **Forge apps only**. It enables Forge apps to control how selected Jira fields behave on global create issue dialog. For example: hide specific fields, set them as required, etc." name: UI modifications (apps) - description: This resource represents issue attachments and the attachment settings for Jira. Use it to get the metadata for an attachment, delete an attachment, and view the metadata for the contents of an attachment. Also, use it to get the attachment settings for Jira. name: Issue attachments - description: |- This resource represents issue comments. Use it to: * get, create, update, and delete a comment from an issue. * get all comments from issue. * get a list of comments by comment ID. name: Issue comments - description: This resource represents [issue comment](#api-group-Issue-comments) properties, which provides for storing custom data against an issue comment. Use is to get, set, and delete issue comment properties as well as obtain the keys of all properties on a comment. Comment properties are a type of [entity property](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/). name: Issue comment properties - description: This resource represents issue fields, both system and custom fields. Use it to get fields, field configurations, and create custom fields. name: Issue fields - description: This resource represents issue field configurations. Use it to get, set, and delete field configurations and field configuration schemes. name: Issue field configurations - description: |- This resource represents issue custom field contexts. Use it to: * get, create, update, and delete custom field contexts. * get context to issue types and projects mappings. * get custom field contexts for projects and issue types. * assign custom field contexts to projects. * remove custom field contexts from projects. * add issue types to custom field contexts. name: Issue custom field contexts - description: |- This resource represents custom issue field select list options created in Jira or using the REST API. This resource supports the following field types: * Checkboxes. * Radio Buttons. * Select List (single choice). * Select List (multiple choices). * Select List (cascading). See [Issue custom field options (apps)](#api-group-Issue-custom-field-options--apps-) to manipulate custom issue field select list options created by a Connect app. Use it to retrieve, create, update, order, and delete custom field options. name: Issue custom field options - description: |- This resource represents custom issue field select list options created by a Connect app. See [Issue custom field options](#api-group-Issue-custom-field-options) to manipulate options created in Jira or using the REST API. A select list issue field is a type of [issue field](https://developer.atlassian.com/cloud/jira/platform/modules/issue-field/) that enables a user to select an option from a list. Use it to add, remove, and update the options of a select list issue field. name: Issue custom field options (apps) - description: This resource represents the values of custom fields added by [Forge apps](https://developer.atlassian.com/platform/forge/). Use it to update the value of a custom field on issues. name: Issue custom field values (apps) - description: This resource represents configurations stored against a custom field context by a [Forge app](https://developer.atlassian.com/platform/forge/). Configurations are information used by the Forge app at runtime to determine how to handle or process the data in a custom field in a given context. Use this resource to set and read configurations. name: Issue custom field configuration (apps) - description: |- This resource represents links between issues. Use it to get, create, and delete links between issues. To use it, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled. name: Issue links - description: |- This resource represents [issue link](#api-group-Issue-links) types. Use it to get, create, update, and delete link issue types as well as get lists of all link issue types. To use it, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled. name: Issue link types - description: This resource represents issue navigator settings. Use it to get and set issue navigator default columns. name: Issue navigator settings - description: |- This resource represents notification schemes, lists of events and the recipients who will receive notifications for those events. Use it to get details of a notification scheme and a list of notification schemes. ### About notification schemes ### A notification scheme is a list of events and recipients who will receive notifications for those events. The list is contained within the `notificationSchemeEvents` object and contains pairs of `events` and `notifications`: * `event` Identifies the type of event. The events can be [Jira system events](https://support.atlassian.com/jira-cloud-administration/docs/configure-notification-schemes/) (see the *Events* section) or [custom events](https://support.atlassian.com/jira-cloud-administration/docs/add-a-custom-event/). * `notifications` Identifies the [recipients](https://confluence.atlassian.com/x/8YdKLg#Creatinganotificationscheme-recipientsRecipients) of notifications for each event. Recipients can be any of the following types: * `CurrentAssignee` * `Reporter` * `CurrentUser` * `ProjectLead` * `ComponentLead` * `User` (the `parameter` is the user key) * `Group` (the `parameter` is the group name) * `ProjectRole` (the `parameter` is the project role ID) * `EmailAddress` * `AllWatchers` * `UserCustomField` (the `parameter` is the ID of the custom field) * `GroupCustomField`(the `parameter` is the ID of the custom field) name: Issue notification schemes - description: This resource represents issue priorities. Use it to get, create and update issue priorities and details for individual issue priorities. name: Issue priorities - description: This resource represents [issue](#api-group-Issues) properties, which provides for storing custom data against an issue. Use it to get, set, and delete issue properties as well as obtain details of all properties on an issue. Operations to bulk update and delete issue properties are also provided. Issue properties are a type of [entity property](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/). name: Issue properties - description: This resource represents remote issue links, a way of linking Jira to information in other systems. Use it to get, create, update, and delete remote issue links either by ID or global ID. The global ID provides a way of accessing remote issue links using information about the item's remote system host and remote system identifier. name: Issue remote links - description: This resource represents issue resolution values. Use it to obtain a list of all issue resolution values and the details of individual resolution values. name: Issue resolutions - description: This resource represents various ways to search for issues. Use it to search for issues with a JQL query and find issues to populate an issue picker. name: Issue search - description: This resource represents issue security levels. Use it to obtain the details of any issue security level. For more information about issue security levels, see [Configuring issue-level security](https://confluence.atlassian.com/x/J4lKLg). name: Issue security level - description: |- This resource represents issue security schemes. Use it to get an issue security scheme or a list of issue security schemes. Issue security schemes control which users or groups of users can view an issue. When an issue security scheme is associated with a project, its security levels can be applied to issues in that project. Sub-tasks also inherit the security level of their parent issue. name: Issue security schemes - description: |- This resource represents issue security schemes, issue security levels, and issue security level members. Use it to get, create, update, and delete issue security schemes or issue security scheme details. Note that only company-managed (classic) projects are supported. ### About issue security schemes ### Issue security schemes control which users or groups of users can view an issue. An issue security scheme is made up of multiple security levels. Each level can have users or groups of users assigned to it. The following are valid security level members: * Individual users * Groups of users * Project roles * Issue roles * "Anyone", for example to allow anonymous access * A (multi-)user or (multi-)group picker custom field name: Issue security scheme - description: |- This resource represents issues types. Use it to: * get, create, update, and delete issue types. * get all issue types for a user. * get alternative issue types. * set an avatar for an issue type. name: Issue types - description: |- This resource represents issue type schemes in classic projects. Use it to: * get issue type schemes and a list of the projects that use them. * associate issue type schemes with projects. * add issue types to issue type schemes. * delete issue types from issue type schemes. * create, update, and delete issue type schemes. * change the order of issue types in issue type schemes. name: Issue type schemes - description: |- This resource represents issue type screen schemes. Use it to: * get issue type screen schemes and a list of the projects that use them. * create issue type screen schemes. * update issue type screen schemes. * delete issue type screen schemes. * associate issue type screen schemes with projects. * append issue type to screen scheme mappings to issue type screen schemes. * remove issue type to screen scheme mappings from issue type screen schemes. * update default screen scheme of issue type screen scheme. name: Issue type screen schemes - description: This resource represents [issue type](#api-group-Issue-types) properties, which provides for storing custom data against an issue type. Use it to get, create, and delete issue type properties as well as obtain the keys of all properties on a issues type. Issue type properties are a type of [entity property](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/). name: Issue type properties - description: This resource represents votes cast by users on an issue. Use it to get details of votes on an issue as well as cast and withdrawal votes. name: Issue votes - description: This resource represents users watching an issue. Use it to get details of users watching an issue as well as start and stop a user watching an issue. name: Issue watchers - description: |- This resource represents issue worklogs. Use it to: * get, create, update, and delete worklogs. * obtain lists of updated or deleted worklogs. name: Issue worklogs - description: This resource represents [issue worklog](#api-group-Issue-worklogs) properties, which provides for storing custom data against an issue worklog. Use it to get, create, and delete issue worklog properties as well as obtain the keys of all properties on a issue worklog. Issue worklog properties are a type of [entity property](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/). name: Issue worklog properties - description: This resource is a collection of operations for [Jira expressions](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/). name: Jira expressions - description: This resource represents various settings in Jira. Use it to get and update Jira settings and properties. name: Jira settings - description: |- This resource represents JQL search auto-complete details. Use it to obtain JQL search auto-complete data and suggestions for use in programmatic construction of queries or custom query builders. It also provides operations to: * convert one or more JQL queries with user identifiers (username or user key) to equivalent JQL queries with account IDs. * convert readable details in one or more JQL queries to IDs where a user doesn't have permission to view the entity whose details are readable. name: JQL - description: This resource represents JQL function's precomputations. Precomputation is a mapping between custom function call and JQL fragment returned by this function. Use it to get and update precomputations. name: JQL functions (apps) - description: This resource represents available labels. Use it to get available labels for the global label field. name: Labels - description: This resource represents license metrics. Use it to get available metrics for Jira licences. name: License metrics - description: This resource represents information about the current user, such as basic details, group membership, application roles, preferences, and locale. Use it to get, create, update, and delete (restore default) values of the user's preferences and locale. name: Myself - description: This resource represents permissions. Use it to obtain details of all permissions and determine whether the user has certain permissions. name: Permissions - description: This resource represents permission schemes. Use it to get, create, update, and delete permission schemes as well as get, create, update, and delete details of the permissions granted in those schemes. name: Permission schemes - description: This resource represents projects. Use it to get, create, update, and delete projects. Also get statuses available to a project, a project's notification schemes, and update a project's type. name: Projects - description: This resource represents avatars associated with a project. Use it to get, load, set, and remove project avatars. name: Project avatars - description: This resource represents project categories. Use it to create, update, and delete project categories as well as obtain a list of all project categories and details of individual categories. For more information on managing project categories, see [Adding, assigning, and deleting project categories](https://confluence.atlassian.com/x/-A5WMg). name: Project categories - description: This resource represents project components. Use it to get, create, update, and delete project components. Also get components for project and get a count of issues by component. name: Project components - description: This resource represents the email address used to send a project's notifications. Use it to get and set the [project's sender email address](https://confluence.atlassian.com/x/dolKLg). name: Project email - description: This resource represents project features. Use it to get the list of features for a project and modify the state of a feature. The project feature endpoint is available only for Jira Software, both for team- and company-managed projects. name: Project features - description: This resource provides validation for project keys and names. name: Project key and name validation - description: |- 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](https://confluence.atlassian.com/x/yodKLg) for more information about permission schemes. name: Project permission schemes - description: This resource represents [project](#api-group-Projects) properties, which provides for storing custom data against a project. Use it to get, create, and delete project properties as well as get a list of property keys for a project. Project properties are a type of [entity property](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/). name: Project properties - description: This resource represents the roles that users can play in projects. Use this resource to get, create, update, and delete project roles. name: Project roles - description: This resource represents the users assigned to [project roles](#api-group-Issue-comments). Use it to get, add, and remove default users from project roles. Also use it to add and remove users from a project role associated with a project. name: Project role actors - description: This resource represents project types. Use it to obtain a list of all project types, a list of project types accessible to the calling user, and details of a project type. name: Project types - description: This resource represents project versions. Use it to get, get lists of, create, update, move, merge, and delete project versions. This resource also provides counts of issues by version. name: Project versions - description: |- This resource represents the screens used to record issue details. Use it to: * get details of all screens. * get details of all the fields available for use on screens. * create screens. * delete screens. * update screens. * add a field to the default screen. name: Screens - description: This resource represents the screen tabs used to record issue details. Use it to get, create, update, move, and delete screen tabs. name: Screen tabs - description: This resource represents the screen tab fields used to record issue details. Use it to get, add, move, and remove fields from screen tabs. name: Screen tab fields - description: This resource represents screen schemes in classic projects. Use it to get, create, update, and delete screen schemes. name: Screen schemes - description: This resource provides information about the Jira instance. name: Server info - description: This resource represents statuses. Use it to search, get, create, delete, and change statuses. name: Status - description: This resource represents a [long-running asynchronous tasks](#async-operations). Use it to obtain details about the progress of a long-running task or cancel a long-running task. name: Tasks - description: This resource represents time tracking and time tracking providers. Use it to get and set the time tracking provider, get and set the time tracking options, and disable time tracking. name: Time tracking - description: |- This resource represent users. Use it to: * get, get a list of, create, and delete users. * get, set, and reset a user's default issue table columns. * get a list of the groups the user belongs to. * get a list of user account IDs for a list of usernames or user keys. name: Users - description: |- This resource represents [user](#api-group-Users) properties and provides for storing custom data against a user. Use it to get, create, and delete user properties as well as get a list of property keys for a user. This resourse is designed for integrations and apps to store per-user data and settings. This enables data used to customized the user experience to be kept in the Jira Cloud instance's database. User properties are a type of [entity property](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/). This resource does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira. name: User properties - description: This resource represents various ways to search for and find users. Use it to obtain list of users including users assignable to projects and issues, users with permissions, user lists for pickup fields, and user lists generated using structured queries. Note that the operations in this resource only return users found within the first 1000 users. name: User search - description: This resource represents webhooks. Webhooks are calls sent to a URL when an event occurs in Jira for issues specified by a JQL query. Only Connect and OAuth 2.0 apps can register and manage webhooks. For more information, see [Webhooks](https://developer.atlassian.com/cloud/jira/platform/webhooks/#registering-a-webhook-via-the-jira-rest-api-for-connect-apps). name: Webhooks - description: |- This resource represents workflows. Use it to: * get workflows. * create workflows. * delete inactive workflows. name: Workflows - description: This resource represents workflow transition rules. Workflow transition rules define a Connect or a Forge app routine, such as a [workflow post functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/) that is executed in association with the workflow. Use it to read and modify configuration of workflow transition rules. name: Workflow transition rules - description: |- This resource represents workflow schemes. Use it to manage workflow schemes and the workflow scheme's workflows and issue types. A workflow scheme maps issue types to workflows. A workflow scheme can be associated with one or more projects, which enables the projects to use the workflow-issue type mappings. Active workflow schemes (workflow schemes that are used by projects) cannot be edited. When an active workflow scheme is edited, a draft copy of the scheme is created. The draft workflow scheme is then be edited and published (replacing the active scheme). See [Configuring workflow schemes](https://confluence.atlassian.com/x/tohKLg) for more information. name: Workflow schemes - description: |- This resource represents the associations between workflow schemes and projects. For more information, see [Managing your workflows](https://confluence.atlassian.com/x/q4hKLg). name: Workflow scheme project associations - description: |- This resource represents draft workflow schemes. Use it to manage drafts of workflow schemes. A workflow scheme maps issue types to workflows. A workflow scheme can be associated with one or more projects, which enables the projects to use the workflow-issue type mappings. Active workflow schemes (workflow schemes that are used by projects) cannot be edited. Editing an active workflow scheme creates a draft copy of the scheme. The draft workflow scheme can then be edited and published (replacing the active scheme). See [Configuring workflow schemes](https://confluence.atlassian.com/x/tohKLg) for more information. name: Workflow scheme drafts - description: This resource represents issue workflow statuses. Use it to obtain a list of all statuses associated with workflows and the details of a status. name: Workflow statuses - description: This resource represents status categories. Use it to obtain a list of all status categories and the details of a category. Status categories provided a mechanism for categorizing [statuses](#api-group-Workflow-statuses). name: Workflow status categories - description: This resource represents workflow transition properties, which provides for storing custom data against a workflow transition. Use it to get, create, and delete workflow transition properties as well as get a list of property keys for a workflow transition. Workflow transition properties are a type of [entity property](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/). name: Workflow transition properties - description: |- This resource represents app properties. Use it to store arbitrary data for your [Connect app](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps). name: App properties - description: |- This resource represents [modules registered dynamically](https://developer.atlassian.com/cloud/jira/platform/dynamic-modules/) by [Connect apps](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps). name: Dynamic modules - description: |- This resource supports [app migrations](https://developer.atlassian.com/platform/app-migration/). Use it to: - [to request migrated workflow rules details](https://developer.atlassian.com/platform/app-migration/tutorials/migration-app-workflow-rules/). - [perform bulk updates of entity properties](https://developer.atlassian.com/platform/app-migration/tutorials/entity-properties-bulk-api/). - [perform bulk updates of issue custom field values](https://developer.atlassian.com/platform/app-migration/tutorials/migrating-app-custom-fields/). name: App migration paths: /rest/api/3/announcementBanner: get: deprecated: false description: |- Returns the current announcement banner configuration. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getBanner parameters: [] responses: "200": content: application/json: example: '{"message":"This is a public, enabled, non-dismissible banner, set using the API","isDismissible":false,"isEnabled":true,"hashId":"9HN2FJK9DM8BHRWERVW3RRTGDJ4G4D5C","visibility":"public"}' schema: $ref: "#/components/schemas/AnnouncementBannerConfiguration" description: Returned if the request is successful. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '"Only admins can read banner configuration."' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get announcement banner configuration tags: - Announcement banner x-atlassian-connect-scope: ADMIN x-experimental: true put: deprecated: false description: |- Updates the announcement banner configuration. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setBanner parameters: [] requestBody: content: application/json: example: isDismissible: false isEnabled: true message: This is a public, enabled, non-dismissible banner, set using the API visibility: public schema: $ref: "#/components/schemas/AnnouncementBannerConfigurationUpdate" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '"Banner message cannot be null."' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if an invalid parameter is passed. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '"Only admins can update banner configuration."' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update announcement banner configuration tags: - Announcement banner x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/app/field/value: post: deprecated: false description: |- Updates the value of one or more custom fields on one or more issues. Combinations of custom field and issue should be unique within the request. Custom fields can only be updated by the Forge app that created them. **[Permissions](#permissions) required:** Only the app that created the custom field can update its values with this operation. operationId: updateMultipleCustomFieldValues parameters: - description: Whether to generate a changelog for this update. in: query name: generateChangelog schema: default: true type: boolean requestBody: content: application/json: example: updates: - customField: customfield_10010 issueIds: - 10010 - 10011 value: new value - customField: customfield_10011 issueIds: - 10010 value: 1000 schema: $ref: "#/components/schemas/MultipleCustomFieldValuesUpdateDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the request is invalid. "403": description: Returned if the request is not authenticated as the app that provided all the fields. "404": description: Returned if any field is not found. security: - basicAuth: [] - OAuth2: [] summary: Update custom fields tags: - Issue custom field values (apps) x-atlassian-connect-scope: INACCESSIBLE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: [] state: Beta x-experimental: true "/rest/api/3/app/field/{fieldIdOrKey}/context/configuration": get: deprecated: false description: |- Returns a [paginated](#pagination) list of configurations for a custom field created by a [Forge app](https://developer.atlassian.com/platform/forge/). The result can be filtered by one of these criteria: * `id`. * `fieldContextId`. * `issueId`. * `projectKeyOrId` and `issueTypeId`. Otherwise, all configurations are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). Jira permissions are not required for the Forge app that created the custom field. operationId: getCustomFieldConfiguration parameters: - description: The ID or key of the custom field, for example `customfield_10000`. in: path name: fieldIdOrKey required: true schema: type: string - description: "The list of configuration IDs. To include multiple configurations, separate IDs with an ampersand: `id=10000&id=10001`. Can't be provided with `fieldContextId`, `issueId`, `projectKeyOrId`, or `issueTypeId`." in: query name: id schema: items: format: int64 type: integer type: array uniqueItems: true - description: "The list of field context IDs. To include multiple field contexts, separate IDs with an ampersand: `fieldContextId=10000&fieldContextId=10001`. Can't be provided with `id`, `issueId`, `projectKeyOrId`, or `issueTypeId`." in: query name: fieldContextId schema: items: format: int64 type: integer type: array uniqueItems: true - description: The ID of the issue to filter results by. If the issue doesn't exist, an empty list is returned. Can't be provided with `projectKeyOrId`, or `issueTypeId`. in: query name: issueId schema: format: int64 type: integer - description: The ID or key of the project to filter results by. Must be provided with `issueTypeId`. Can't be provided with `issueId`. in: query name: projectKeyOrId schema: type: string - description: The ID of the issue type to filter results by. Must be provided with `projectKeyOrId`. Can't be provided with `issueId`. in: query name: issueTypeId schema: type: string - 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: 100 format: int32 type: integer responses: "200": content: application/json: example: '{"maxResults":1000,"startAt":0,"total":2,"isLast":true,"values":[{"id":"10000","fieldContextId":"10010"},{"id":"10001","fieldContextId":"10011","configuration":{"minValue":0,"maxValue":10000},"schema":{"properties":{"amount":{"type":"number"},"currency":{"type":"string"}},"required":["amount","currency"]}}]}' schema: $ref: "#/components/schemas/PageBeanContextualConfiguration" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user is not a Jira admin or the request is not authenticated as from the app that provided the field. "404": description: Returned if the custom field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get custom field configurations tags: - Issue custom field configuration (apps) x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:custom-field-contextual-configuration:jira state: Beta x-experimental: true put: deprecated: false description: |- Update the configuration for contexts of a custom field created by a [Forge app](https://developer.atlassian.com/platform/forge/). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). Jira permissions are not required for the Forge app that created the custom field. operationId: updateCustomFieldConfiguration parameters: - description: The ID or key of the custom field, for example `customfield_10000`. in: path name: fieldIdOrKey required: true schema: type: string requestBody: content: application/json: example: configurations: - id: "10000" - configuration: maxValue: 10000 minValue: 0 id: "10001" schema: properties: amount: type: number currency: type: string required: - amount - currency schema: $ref: "#/components/schemas/CustomFieldConfigurations" required: true responses: "200": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user is not a Jira admin or the request is not authenticated as from the app that provided the field. "404": description: Returned if the custom field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update custom field configurations tags: - Issue custom field configuration (apps) x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:custom-field-contextual-configuration:jira state: Beta x-experimental: true "/rest/api/3/app/field/{fieldIdOrKey}/value": put: deprecated: false description: |- Updates the value of a custom field on one or more issues. Custom fields can only be updated by the Forge app that created them. **[Permissions](#permissions) required:** Only the app that created the custom field can update its values with this operation. operationId: updateCustomFieldValue parameters: - description: The ID or key of the custom field. For example, `customfield_10010`. in: path name: fieldIdOrKey required: true schema: type: string - description: Whether to generate a changelog for this update. in: query name: generateChangelog schema: default: true type: boolean requestBody: content: application/json: example: updates: - issueIds: - 10010 value: new value schema: $ref: "#/components/schemas/CustomFieldValueUpdateDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the request is invalid. "403": description: Returned if the request is not authenticated as the app that provided the field. "404": description: Returned if the field is not found. security: - basicAuth: [] - OAuth2: [] summary: Update custom field value tags: - Issue custom field values (apps) x-atlassian-connect-scope: INACCESSIBLE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: [] state: Beta x-experimental: true /rest/api/3/application-properties: get: deprecated: false description: |- Returns all application properties or an application property. If you specify a value for the `key` parameter, then an application property is returned as an object (not in an array). Otherwise, an array of all editable application properties is returned. See [Set application property](#api-rest-api-3-application-properties-id-put) for descriptions of editable properties. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getApplicationProperty parameters: - description: The key of the application property. in: query name: key schema: type: string - description: The permission level of all items being returned in the list. in: query name: permissionLevel schema: type: string - description: When a `key` isn't provided, this filters the list of results by the application property `key` using a regular expression. For example, using `jira.lf.*` will return all application properties with keys that start with *jira.lf.*. in: query name: keyFilter schema: type: string responses: "200": content: application/json: example: '[{"id":"jira.home","key":"jira.home","value":"/var/jira/jira-home","name":"jira.home","desc":"Jira home directory","type":"string","defaultValue":""},{"id":"jira.clone.prefix","key":"jira.clone.prefix","value":"CLONE -","name":"The prefix added to the Summary field of cloned issues","type":"string","defaultValue":"CLONE -"}]' schema: items: $ref: "#/components/schemas/ApplicationProperty" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the application property is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get application property tags: - Jira settings x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:instance-configuration:jira state: Beta /rest/api/3/application-properties/advanced-settings: get: deprecated: false description: |- Returns the application properties that are accessible on the *Advanced Settings* page. To navigate to the *Advanced Settings* page in Jira, choose the Jira icon > **Jira settings** > **System**, **General Configuration** and then click **Advanced Settings** (in the upper right). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAdvancedSettings parameters: [] responses: "200": content: application/json: example: '[{"id":"jira.home","key":"jira.home","value":"/var/jira/jira-home","name":"jira.home","desc":"Jira home directory","type":"string","defaultValue":""},{"id":"jira.clone.prefix","key":"jira.clone.prefix","value":"CLONE -","name":"The prefix added to the Summary field of cloned issues","type":"string","defaultValue":"CLONE -"}]' schema: items: $ref: "#/components/schemas/ApplicationProperty" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user is not an administrator. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get advanced settings tags: - Jira settings x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:instance-configuration:jira state: Beta "/rest/api/3/application-properties/{id}": put: deprecated: false description: |- Changes the value of an application property. For example, you can change the value of the `jira.clone.prefix` from its default value of *CLONE -* to *Clone -* if you prefer sentence case capitalization. Editable properties are described below along with their default values. #### Advanced settings #### The advanced settings below are also accessible in [Jira](https://confluence.atlassian.com/x/vYXKM). | Key | Description | Default value | | -- | -- | -- | | `jira.clone.prefix` | The string of text prefixed to the title of a cloned issue. | `CLONE -` | | `jira.date.picker.java.format` | The date format for the Java (server-side) generated dates. This must be the same as the `jira.date.picker.javascript.format` format setting. | `d/MMM/yy` | | `jira.date.picker.javascript.format` | The date format for the JavaScript (client-side) generated dates. This must be the same as the `jira.date.picker.java.format` format setting. | `%e/%b/%y` | | `jira.date.time.picker.java.format` | The date format for the Java (server-side) generated date times. This must be the same as the `jira.date.time.picker.javascript.format` format setting. | `dd/MMM/yy h:mm a` | | `jira.date.time.picker.javascript.format` | The date format for the JavaScript (client-side) generated date times. This must be the same as the `jira.date.time.picker.java.format` format setting. | `%e/%b/%y %I:%M %p` | | `jira.issue.actions.order` | The default order of actions (such as *Comments* or *Change history*) displayed on the issue view. | `asc` | | `jira.table.cols.subtasks` | The columns to show while viewing subtask issues in a table. For example, a list of subtasks on an issue. | `issuetype, status, assignee, progress` | | `jira.view.issue.links.sort.order` | The sort order of the list of issue links on the issue view. | `type, status, priority` | | `jira.comment.collapsing.minimum.hidden` | The minimum number of comments required for comment collapsing to occur. A value of `0` disables comment collapsing. | `4` | | `jira.newsletter.tip.delay.days` | The number of days before a prompt to sign up to the Jira Insiders newsletter is shown. A value of `-1` disables this feature. | `7` | #### Look and feel #### The settings listed below adjust the [look and feel](https://confluence.atlassian.com/x/VwCLLg). | Key | Description | Default value | | -- | -- | -- | | `jira.lf.date.time` | The [ time format](https://docs.oracle.com/javase/6/docs/api/index.html?java/text/SimpleDateFormat.html). | `h:mm a` | | `jira.lf.date.day` | The [ day format](https://docs.oracle.com/javase/6/docs/api/index.html?java/text/SimpleDateFormat.html). | `EEEE h:mm a` | | `jira.lf.date.complete` | The [ date and time format](https://docs.oracle.com/javase/6/docs/api/index.html?java/text/SimpleDateFormat.html). | `dd/MMM/yy h:mm a` | | `jira.lf.date.dmy` | The [ date format](https://docs.oracle.com/javase/6/docs/api/index.html?java/text/SimpleDateFormat.html). | `dd/MMM/yy` | | `jira.date.time.picker.use.iso8061` | When enabled, sets Monday as the first day of the week in the date picker, as specified by the ISO8601 standard. | `false` | | `jira.lf.logo.url` | The URL of the logo image file. | `/images/icon-jira-logo.png` | | `jira.lf.logo.show.application.title` | Controls the visibility of the application title on the sidebar. | `false` | | `jira.lf.favicon.url` | The URL of the favicon. | `/favicon.ico` | | `jira.lf.favicon.hires.url` | The URL of the high-resolution favicon. | `/images/64jira.png` | | `jira.lf.navigation.bgcolour` | The background color of the sidebar. | `#0747A6` | | `jira.lf.navigation.highlightcolour` | The color of the text and logo of the sidebar. | `#DEEBFF` | | `jira.lf.hero.button.base.bg.colour` | The background color of the hero button. | `#3b7fc4` | | `jira.title` | The text for the application title. The application title can also be set in *General settings*. | `Jira` | | `jira.option.globalsharing` | Whether filters and dashboards can be shared with anyone signed into Jira. | `true` | | `xflow.product.suggestions.enabled` | Whether to expose product suggestions for other Atlassian products within Jira. | `true` | #### Other settings #### | Key | Description | Default value | | -- | -- | -- | | `jira.issuenav.criteria.autoupdate` | Whether instant updates to search criteria is active. | `true` | *Note: Be careful when changing [application properties and advanced settings](https://confluence.atlassian.com/x/vYXKM).* **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setApplicationProperty parameters: - description: The key of the application property to update. in: path name: id required: true schema: type: string requestBody: content: application/json: example: id: jira.home value: /var/jira/jira-home schema: $ref: "#/components/schemas/SimpleApplicationPropertyBean" required: true responses: "200": content: application/json: schema: $ref: "#/components/schemas/ApplicationProperty" description: Returned if the request is successful. "400": description: Returned if the data type of the `value` does not match the application property's data type. For example, a string is provided instead of an integer. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to edit the property. "404": description: Returned if the property is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set application property tags: - Jira settings x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:instance-configuration:jira - read:instance-configuration:jira state: Beta /rest/api/3/applicationrole: get: deprecated: false description: |- Returns all application roles. In Jira, application roles are managed using the [Application access configuration](https://confluence.atlassian.com/x/3YxjL) page. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllApplicationRoles parameters: [] responses: "200": content: application/json: example: '[{"key":"jira-software","groups":["jira-software-users","jira-testers"],"groupDetails":[{"name":"jira-software-users","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"},{"name":"jira-testers","groupId":"42c8955c-63d7-42c8-9520-63d7aca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=42c8955c-63d7-42c8-9520-63d7aca0625"}],"name":"Jira Software","defaultGroups":["jira-software-users"],"defaultGroupsDetails":[{"name":"jira-software-users","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"}],"selectedByDefault":false,"defined":false,"numberOfSeats":10,"remainingSeats":5,"userCount":5,"userCountDescription":"5 developers","hasUnlimitedSeats":false,"platform":false},{"key":"jira-core","groups":["jira-core-users"],"groupDetails":[{"name":"jira-core-users","groupId":"92d01dca0625-42c8-42c8-9520-276f955c","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=92d01dca0625-42c8-42c8-9520-276f955c"}],"name":"Jira Core","defaultGroups":["jira-core-users"],"defaultGroupsDetails":[{"name":"jira-core-users","groupId":"92d01dca0625-42c8-42c8-9520-276f955c","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=92d01dca0625-42c8-42c8-9520-276f955c"}],"selectedByDefault":false,"defined":false,"numberOfSeats":1,"remainingSeats":1,"userCount":0,"userCountDescription":"0 users","hasUnlimitedSeats":false,"platform":true}]' schema: items: $ref: "#/components/schemas/ApplicationRole" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user is not an administrator. security: - basicAuth: [] summary: Get all application roles tags: - Application roles x-atlassian-connect-scope: INACCESSIBLE "/rest/api/3/applicationrole/{key}": get: deprecated: false description: |- Returns an application role. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getApplicationRole parameters: - description: The key of the application role. Use the [Get all application roles](#api-rest-api-3-applicationrole-get) operation to get the key for each application role. in: path name: key required: true schema: example: jira-software type: string x-showInExample: "true" responses: "200": content: application/json: example: '{"key":"jira-software","groups":["jira-software-users","jira-testers"],"groupDetails":[{"name":"jira-software-users","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"},{"name":"jira-testers","groupId":"42c8955c-63d7-42c8-9520-63d7aca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=42c8955c-63d7-42c8-9520-63d7aca0625"}],"name":"Jira Software","defaultGroups":["jira-software-users"],"defaultGroupsDetails":[{"name":"jira-software-users","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"}],"selectedByDefault":false,"defined":false,"numberOfSeats":10,"remainingSeats":5,"userCount":5,"userCountDescription":"5 developers","hasUnlimitedSeats":false,"platform":false}' schema: $ref: "#/components/schemas/ApplicationRole" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user is not an administrator. "404": description: Returned if the role is not found. security: - basicAuth: [] summary: Get application role tags: - Application roles x-atlassian-connect-scope: INACCESSIBLE "/rest/api/3/attachment/content/{id}": get: deprecated: false description: |- Returns the contents of an attachment. A `Range` header can be set to define a range of bytes within the attachment to download. See the [HTTP Range header standard](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Range) for details. To return a thumbnail of the attachment, use [Get attachment thumbnail](#api-rest-api-3-attachment-thumbnail-id-get). This operation can be accessed anonymously. **[Permissions](#permissions) required:** For the issue containing the attachment: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getAttachmentContent parameters: - description: The ID of the attachment. in: path name: id required: true schema: type: string - description: Whether a redirect is provided for the attachment download. Clients that do not automatically follow redirects can set this to `false` to avoid making multiple requests to download the attachment. in: query name: redirect schema: default: true type: boolean responses: "200": content: application/json: schema: type: object description: Returned if the request is successful when `redirect` is set to `false`. "206": description: Returned if the request is successful when a `Range` header is provided and `redirect` is set to `false`. "303": description: Returned if the request is successful. See the `Location` header for the download URL. "400": description: Returned if the range supplied in the `Range` header is malformed. "401": description: Returned if the authentication credentials are incorrect. "403": description: The user does not have the necessary permission. "404": description: |- Returned if: * the attachment is not found. * attachments are disabled in the Jira settings. "416": description: Returned if the server is unable to satisfy the range of bytes provided. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get attachment content tags: - Issue attachments x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:attachment:jira state: Beta /rest/api/3/attachment/meta: get: deprecated: false description: |- Returns the attachment settings, that is, whether attachments are enabled and the maximum attachment size allowed. Note that there are also [project permissions](https://confluence.atlassian.com/x/yodKLg) that restrict whether users can create and delete attachments. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getAttachmentMeta parameters: [] responses: "200": content: application/json: example: '{"enabled":true,"uploadLimit":1000000}' schema: $ref: "#/components/schemas/AttachmentSettings" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get Jira attachment settings tags: - Issue attachments x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:instance-configuration:jira state: Beta "/rest/api/3/attachment/thumbnail/{id}": get: deprecated: false description: |- Returns the thumbnail of an attachment. To return the attachment contents, use [Get attachment content](#api-rest-api-3-attachment-content-id-get). This operation can be accessed anonymously. **[Permissions](#permissions) required:** For the issue containing the attachment: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getAttachmentThumbnail parameters: - description: The ID of the attachment. in: path name: id required: true schema: type: string - description: Whether a redirect is provided for the attachment download. Clients that do not automatically follow redirects can set this to `false` to avoid making multiple requests to download the attachment. in: query name: redirect schema: default: true type: boolean - description: Whether a default thumbnail is returned when the requested thumbnail is not found. in: query name: fallbackToDefault schema: default: true type: boolean - description: The maximum width to scale the thumbnail to. in: query name: width schema: format: int32 type: integer - description: The maximum height to scale the thumbnail to. in: query name: height schema: format: int32 type: integer responses: "200": content: application/json: schema: type: object description: Returned if the request is successful when `redirect` is set to `false`. "303": description: Returned if the request is successful. See the `Location` header for the download URL. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect. "403": description: The user does not have the necessary permission. "404": description: |- Returned if: * the attachment is not found. * attachments are disabled in the Jira settings. * `fallbackToDefault` is `false` and the request thumbnail cannot be downloaded. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get attachment thumbnail tags: - Issue attachments x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:attachment:jira state: Beta "/rest/api/3/attachment/{id}": delete: deprecated: false description: |- Deletes an attachment from an issue. This operation can be accessed anonymously. **[Permissions](#permissions) required:** For the project holding the issue containing the attachment: * *Delete own attachments* [project permission](https://confluence.atlassian.com/x/yodKLg) to delete an attachment created by the calling user. * *Delete all attachments* [project permission](https://confluence.atlassian.com/x/yodKLg) to delete an attachment created by any user. operationId: removeAttachment parameters: - description: The ID of the attachment. in: path name: id required: true schema: type: string responses: "204": description: Returned if the request is successful. "403": description: Returned if the user does not have the necessary permission. "404": description: |- Returned if: * the attachment is not found. * attachments are disabled in the Jira settings. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete attachment tags: - Issue attachments x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:attachment:jira state: Beta get: deprecated: false description: |- Returns the metadata for an attachment. Note that the attachment itself is not returned. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getAttachment parameters: - description: The ID of the attachment. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/attachments/10000","filename":"picture.jpg","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"created":"2023-04-21T12:39:27.600+0000","size":23123,"mimeType":"image/jpeg","content":"https://your-domain.atlassian.net/jira/rest/api/3/attachment/content/10000","thumbnail":"https://your-domain.atlassian.net/jira/rest/api/3/attachment/thumbnail/10000"}' schema: $ref: "#/components/schemas/AttachmentMetadata" 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. "404": description: |- Returned if: * the attachment is not found. * attachments are disabled in the Jira settings. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get attachment metadata tags: - Issue attachments x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:attachment:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta "/rest/api/3/attachment/{id}/expand/human": get: deprecated: false description: |- Returns the metadata for the contents of an attachment, if it is an archive, and metadata for the attachment itself. For example, if the attachment is a ZIP archive, then information about the files in the archive is returned and metadata for the ZIP archive. Currently, only the ZIP archive format is supported. Use this operation to retrieve data that is presented to the user, as this operation returns the metadata for the attachment itself, such as the attachment's ID and name. Otherwise, use [ Get contents metadata for an expanded attachment](#api-rest-api-3-attachment-id-expand-raw-get), which only returns the metadata for the attachment's contents. This operation can be accessed anonymously. **[Permissions](#permissions) required:** For the issue containing the attachment: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: expandAttachmentForHumans parameters: - description: The ID of the attachment. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"id":7237823,"name":"images.zip","entries":[{"path":"MG00N067.JPG","index":0,"size":"119 kB","mediaType":"image/jpeg","label":"MG00N067.JPG"},{"path":"Allegro from Duet in C Major.mp3","index":1,"size":"1.36 MB","mediaType":"audio/mpeg","label":"Allegro from Duet in C Major.mp3"},{"path":"long/path/thanks/to/lots/of/subdirectories/inside/making/it/quite/hard/to/reach/the/leaf.txt","index":2,"size":"0.0 k","mediaType":"text/plain","label":"long/path/thanks/to/.../reach/the/leaf.txt"}],"totalEntryCount":39,"mediaType":"application/zip"}' schema: $ref: "#/components/schemas/AttachmentArchiveMetadataReadable" description: Returned if the request is successful. If an empty list is returned in the response, the attachment is empty, corrupt, or not an archive. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: The user does not have the necessary permission. "404": description: |- Returned if: * the attachment is not found. * attachments are disabled in the Jira settings. "409": description: Returned if the attachment is an archive, but not a supported archive format. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get all metadata for an expanded attachment tags: - Issue attachments x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:attachment:jira state: Beta x-experimental: true "/rest/api/3/attachment/{id}/expand/raw": get: deprecated: false description: |- Returns the metadata for the contents of an attachment, if it is an archive. For example, if the attachment is a ZIP archive, then information about the files in the archive is returned. Currently, only the ZIP archive format is supported. Use this operation if you are processing the data without presenting it to the user, as this operation only returns the metadata for the contents of the attachment. Otherwise, to retrieve data to present to the user, use [ Get all metadata for an expanded attachment](#api-rest-api-3-attachment-id-expand-human-get) which also returns the metadata for the attachment itself, such as the attachment's ID and name. This operation can be accessed anonymously. **[Permissions](#permissions) required:** For the issue containing the attachment: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: expandAttachmentForMachines parameters: - description: The ID of the attachment. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"entries":[{"entryIndex":0,"name":"Allegro from Duet in C Major.mp3","size":1430174,"mediaType":"audio/mpeg"},{"entryIndex":1,"name":"lrm.rtf","size":331,"mediaType":"text/rtf"}],"totalEntryCount":24}' schema: $ref: "#/components/schemas/AttachmentArchiveImpl" description: Returned if the request is successful. If an empty list is returned in the response, the attachment is empty, corrupt, or not an archive. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: The user does not have the necessary permission. "404": description: |- Returned if: * the attachment is not found. * attachments are disabled in the Jira settings. "409": description: Returned if the attachment is an archive, but not a supported archive format. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get contents metadata for an expanded attachment tags: - Issue attachments x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:attachment:jira state: Beta x-experimental: true /rest/api/3/auditing/record: get: deprecated: false description: |- Returns a list of audit records. The list can be filtered to include items: * where each item in `filter` has at least one match in any of these fields: * `summary` * `category` * `eventSource` * `objectItem.name` If the object is a user, account ID is available to filter. * `objectItem.parentName` * `objectItem.typeName` * `changedValues.changedFrom` * `changedValues.changedTo` * `remoteAddress` For example, if `filter` contains *man ed*, an audit record containing `summary": "User added to group"` and `"category": "group management"` is returned. * created on or after a date and time. * created or or before a date and time. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAuditRecords parameters: - description: The number of records to skip before returning the first result. in: query name: offset schema: default: 0 format: int32 type: integer - description: The maximum number of results to return. in: query name: limit schema: default: 1000 format: int32 type: integer - description: The strings to match with audit field content, space separated. in: query name: filter schema: type: string - description: The date and time on or after which returned audit records must have been created. If `to` is provided `from` must be before `to` or no audit records are returned. in: query name: from schema: format: date-time type: string - description: The date and time on or before which returned audit results must have been created. If `from` is provided `to` must be after `from` or no audit records are returned. in: query name: to schema: format: date-time type: string responses: "200": content: application/json: example: '{"offset":0,"limit":1000,"total":1,"records":[{"id":1,"summary":"User created","remoteAddress":"192.168.1.1","authorKey":"administrator","authorAccountId":"5ab8f18d741e9c2c7e9d4538","created":"2014-03-19T18:45:42.967+0000","category":"user management","eventSource":"Jira Connect Plugin","description":"Optional description","objectItem":{"id":"user","name":"user","typeName":"USER","parentId":"1","parentName":"Jira Internal Directory"},"changedValues":[{"fieldName":"email","changedFrom":"user@atlassian.com","changedTo":"newuser@atlassian.com"}],"associatedItems":[{"id":"jira-software-users","name":"jira-software-users","typeName":"GROUP","parentId":"1","parentName":"Jira Internal Directory"}]}]}' schema: $ref: "#/components/schemas/AuditRecords" 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 required permissions. * all Jira products are on free plans. Audit logs are available when at least one Jira product is on a paid plan. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get audit records tags: - Audit records x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:audit-log:jira - read:user:jira state: Beta "/rest/api/3/avatar/{type}/system": get: deprecated: false description: |- Returns a list of system avatar details by owner type, where the owner types are issue type, project, or user. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getAllSystemAvatars parameters: - description: The avatar type. in: path name: type required: true schema: enum: - issuetype - project - user example: project type: string x-showInExample: "true" responses: "200": content: application/json: example: '{"system":[{"id":"1000","isSystemAvatar":true,"isSelected":false,"isDeletable":false,"urls":{"16x16":"/secure/useravatar?size=xsmall&avatarId=10040&avatarType=project","24x24":"/secure/useravatar?size=small&avatarId=10040&avatarType=project","32x32":"/secure/useravatar?size=medium&avatarId=10040&avatarType=project","48x48":"/secure/useravatar?avatarId=10040&avatarType=project"}}]}' schema: $ref: "#/components/schemas/SystemAvatars" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "500": description: Returned if an error occurs while retrieving the list of avatars. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Get system avatars by type tags: - Avatars x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:avatar:jira state: Beta /rest/api/3/comment/list: post: deprecated: false description: |- Returns a [paginated](#pagination) list of comments specified by a list of comment IDs. This operation can be accessed anonymously. **[Permissions](#permissions) required:** Comments are returned where the user: * has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the comment. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the comment has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: getCommentsByIds parameters: - description: |- Use [expand](#expansion) to include additional information about comments in the response. This parameter accepts a comma-separated list. Expand options include: * `renderedBody` Returns the comment body rendered in HTML. * `properties` Returns the comment's properties. in: query name: expand schema: type: string requestBody: content: application/json: example: ids: - 1 - 2 - 5 - 10 schema: $ref: "#/components/schemas/IssueCommentListRequestBean" description: The list of comment IDs. required: true responses: "200": content: application/json: example: '{"maxResults":1048576,"startAt":0,"total":1,"isLast":true,"values":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/comment/10000","id":"10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper."}]}]},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"created":"2021-01-17T12:34:00.000+0000","updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"role","value":"Administrators","identifier":"Administrators"}}]}' schema: $ref: "#/components/schemas/PageBeanComment" description: Returned if the request is successful. "400": description: Returned if the request contains more than 1000 IDs or is empty. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get comments by IDs tags: - Issue comments x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - delete:comment.property:jira - read:avatar:jira - read:comment:jira - read:group:jira - read:project-role:jira - read:user:jira - read:comment.property:jira - read:project:jira state: Beta "/rest/api/3/comment/{commentId}/properties": get: deprecated: false description: |- Returns the keys of all the properties of a comment. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the comment has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: getCommentPropertyKeys parameters: - description: The ID of the comment. in: path name: commentId required: true schema: type: string responses: "200": content: application/json: example: '{"keys":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support","key":"issue.support"}]}' schema: $ref: "#/components/schemas/PropertyKeys" description: Returned if the request is successful. "400": description: Returned if the comment ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the comment is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get comment property keys tags: - Issue comment properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:comment.property:jira - read:dashboard.property:jira - read:issue-type.property:jira - read:issue-worklog.property:jira - read:issue.property:jira - read:project.property:jira - read:user.property:jira - read:workflow.property:jira state: Beta "/rest/api/3/comment/{commentId}/properties/{propertyKey}": delete: deprecated: false description: |- Deletes a comment property. **[Permissions](#permissions) required:** either of: * *Edit All Comments* [project permission](https://confluence.atlassian.com/x/yodKLg) to delete a property from any comment. * *Edit Own Comments* [project permission](https://confluence.atlassian.com/x/yodKLg) to delete a property from a comment created by the user. Also, when the visibility of a comment is restricted to a role or group the user must be a member of that role or group. operationId: deleteCommentProperty parameters: - description: The ID of the comment. in: path name: commentId required: true schema: type: string - description: The key of the property. in: path name: propertyKey required: true schema: type: string responses: "204": description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the comment or the property is not found or the user has the necessary project permissions but isn't a member of the role or group visibility of the comment is restricted to. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete comment property tags: - Issue comment properties x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:comment.property:jira state: Beta get: deprecated: false description: |- Returns the value of a comment property. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the comment has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: getCommentProperty parameters: - description: The ID of the comment. in: path name: commentId required: true schema: type: string - description: The key of the property. in: path name: propertyKey required: true schema: type: string responses: "200": content: application/json: example: '{"key":"issue.support","value":{"system.conversation.id":"b1bf38be-5e94-4b40-a3b8-9278735ee1e6","system.support.time":"1m"}}' schema: $ref: "#/components/schemas/EntityProperty" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the comment or the property is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get comment property tags: - Issue comment properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:comment.property:jira state: Beta put: deprecated: false description: |- Creates or updates the value of a property for a comment. Use this resource to store custom data against a comment. The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The maximum length is 32768 characters. **[Permissions](#permissions) required:** either of: * *Edit All Comments* [project permission](https://confluence.atlassian.com/x/yodKLg) to create or update the value of a property on any comment. * *Edit Own Comments* [project permission](https://confluence.atlassian.com/x/yodKLg) to create or update the value of a property on a comment created by the user. Also, when the visibility of a comment is restricted to a role or group the user must be a member of that role or group. operationId: setCommentProperty parameters: - description: The ID of the comment. in: path name: commentId required: true schema: type: string - description: The key of the property. The maximum length is 255 characters. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: schema: {} required: true responses: "200": content: application/json: schema: {} description: Returned if the comment property is updated. "201": content: application/json: schema: {} description: Returned if the comment property is created. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the comment is not found. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Set comment property tags: - Issue comment properties x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:comment.property:jira state: Beta /rest/api/3/component: post: deprecated: false description: |- Creates a component. Use components to provide containers for issues within a project. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project in which the component is created or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createComponent parameters: [] requestBody: content: application/json: example: assigneeType: PROJECT_LEAD description: This is a Jira component isAssigneeTypeValid: false leadAccountId: 5b10a2844c20165700ede21g name: Component 1 project: HSP schema: $ref: "#/components/schemas/ProjectComponent" required: true responses: "201": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10000","name":"Component 1","description":"This is a Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"HSP","projectId":10000}' schema: $ref: "#/components/schemas/ProjectComponent" description: Returned if the request is successful. "400": description: |- Returned if: * the user is not found. * `name` is not provided. * `name` is over 255 characters in length. * `projectId` is not provided. * `assigneeType` is an invalid value. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to manage the project containing the component or does not have permission to administer Jira. "404": description: Returned if the project is not found or the user does not have permission to browse the project containing the component. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Create component tags: - Project components x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:project:jira - read:user:jira - write:project.component:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:project.component:jira state: Beta "/rest/api/3/component/{id}": delete: deprecated: false description: |- Deletes a component. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the component or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteComponent parameters: - description: The ID of the component. in: path name: id required: true schema: type: string - description: The ID of the component to replace the deleted component. If this value is null no replacement is made. in: query name: moveIssuesTo schema: type: string responses: "204": 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 permission to manage the project containing the component or does not have permission to administer Jira. "404": description: |- Returned if: * the component is not found. * the replacement component is not found. * the user does not have permission to browse the project containing the component. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Delete component tags: - Project components x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:project.component:jira state: Beta get: deprecated: false description: |- Returns a component. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for project containing the component. operationId: getComponent parameters: - description: The ID of the component. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10000","name":"Component 1","description":"This is a Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"HSP","projectId":10000}' schema: $ref: "#/components/schemas/ProjectComponent" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the component is not found or the user does not have permission to browse the project containing the component. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get component tags: - Project components x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project:jira - read:project.component:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta put: deprecated: false description: |- Updates a component. Any fields included in the request are overwritten. If `leadAccountId` is an empty string ("") the component lead is removed. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the component or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateComponent parameters: - description: The ID of the component. in: path name: id required: true schema: type: string requestBody: content: application/json: example: assigneeType: PROJECT_LEAD description: This is a Jira component isAssigneeTypeValid: false leadAccountId: 5b10a2844c20165700ede21g name: Component 1 schema: $ref: "#/components/schemas/ProjectComponent" required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10000","name":"Component 1","description":"This is a Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"HSP","projectId":10000}' schema: $ref: "#/components/schemas/ProjectComponent" description: Returned if the request is successful. "400": description: |- Returned if: * the user is not found. * `assigneeType` is an invalid value. * `name` is over 255 characters in length. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to manage the project containing the component or does not have permission to administer Jira. "404": description: Returned if the component is not found or the user does not have permission to browse the project containing the component. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Update component tags: - Project components x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:project:jira - read:user:jira - write:project.component:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:project.component:jira state: Beta "/rest/api/3/component/{id}/relatedIssueCounts": get: deprecated: false description: |- Returns the counts of issues assigned to the component. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getComponentRelatedIssues parameters: - description: The ID of the component. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","issueCount":23}' schema: $ref: "#/components/schemas/ComponentIssuesCount" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the component is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get component issues count tags: - Project components x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: [] state: Beta /rest/api/3/configuration: get: deprecated: false description: |- Returns the [global settings](https://confluence.atlassian.com/x/qYXKM) in Jira. These settings determine whether optional features (for example, subtasks, time tracking, and others) are enabled. If time tracking is enabled, this operation also returns the time tracking configuration. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getConfiguration parameters: [] responses: "200": content: application/json: example: '{"votingEnabled":true,"watchingEnabled":true,"unassignedIssuesAllowed":false,"subTasksEnabled":false,"issueLinkingEnabled":true,"timeTrackingEnabled":true,"attachmentsEnabled":true,"timeTrackingConfiguration":{"workingHoursPerDay":8.0,"workingDaysPerWeek":5.0,"timeFormat":"pretty","defaultUnit":"day"}}' schema: $ref: "#/components/schemas/Configuration" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Get global settings tags: - Jira settings x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:instance-configuration:jira - read:issue.time-tracking:jira state: Beta /rest/api/3/configuration/timetracking: get: deprecated: false description: |- Returns the time tracking provider that is currently selected. Note that if time tracking is disabled, then a successful but empty response is returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getSelectedTimeTrackingImplementation parameters: [] responses: "200": content: application/json: example: '{"key":"Jira","name":"JIRA provided time tracking","url":"/example/config/url"}' schema: $ref: "#/components/schemas/TimeTrackingProvider" description: Returned if the request is successful and time tracking is enabled. "204": content: application/json: schema: {} description: Returned if the request is successful but time tracking is disabled. "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 selected time tracking provider tags: - Time tracking x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue.time-tracking:jira state: Beta put: deprecated: false description: |- Selects a time tracking provider. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: selectTimeTrackingImplementation parameters: [] requestBody: content: application/json: example: key: Jira schema: $ref: "#/components/schemas/TimeTrackingProvider" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the time tracking provider is not found. "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: Select time tracking provider tags: - Time tracking x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue.time-tracking:jira state: Beta /rest/api/3/configuration/timetracking/list: get: deprecated: false description: |- Returns all time tracking providers. By default, Jira only has one time tracking provider: *JIRA provided time tracking*. However, you can install other time tracking providers via apps from the Atlassian Marketplace. For more information on time tracking providers, see the documentation for the [ Time Tracking Provider](https://developer.atlassian.com/cloud/jira/platform/modules/time-tracking-provider/) module. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAvailableTimeTrackingImplementations parameters: [] responses: "200": content: application/json: example: '[{"key":"Jira","name":"JIRA provided time tracking","url":"/example/config/url"}]' schema: items: $ref: "#/components/schemas/TimeTrackingProvider" type: array 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 time tracking providers tags: - Time tracking x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue.time-tracking:jira state: Beta /rest/api/3/configuration/timetracking/options: get: deprecated: false description: |- Returns the time tracking settings. This includes settings such as the time format, default time unit, and others. For more information, see [Configuring time tracking](https://confluence.atlassian.com/x/qoXKM). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getSharedTimeTrackingConfiguration parameters: [] responses: "200": content: application/json: example: '{"workingHoursPerDay":7.6,"workingDaysPerWeek":5.5,"timeFormat":"pretty","defaultUnit":"hour"}' schema: $ref: "#/components/schemas/TimeTrackingConfiguration" 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 time tracking settings tags: - Time tracking x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue.time-tracking:jira state: Beta put: deprecated: false description: |- Sets the time tracking settings. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setSharedTimeTrackingConfiguration parameters: [] requestBody: content: application/json: example: defaultUnit: hour timeFormat: pretty workingDaysPerWeek: 5.5 workingHoursPerDay: 7.6 schema: $ref: "#/components/schemas/TimeTrackingConfiguration" required: true responses: "200": content: application/json: example: '{"workingHoursPerDay":7.6,"workingDaysPerWeek":5.5,"timeFormat":"pretty","defaultUnit":"hour"}' schema: $ref: "#/components/schemas/TimeTrackingConfiguration" description: Returned if the request is successful. "400": description: Returned if the request object is invalid. "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: Set time tracking settings tags: - Time tracking x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue.time-tracking:jira - read:issue.time-tracking:jira state: Beta "/rest/api/3/customFieldOption/{id}": get: deprecated: false description: |- Returns a custom field option. For example, an option in a select list. Note that this operation **only works for issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource**, it cannot be used with issue field select list options created by Connect apps. This operation can be accessed anonymously. **[Permissions](#permissions) required:** The custom field option is returned as follows: * if the user has the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). * if the user has the *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for at least one project the custom field is used in, and the field is visible in at least one layout the user has permission to view. operationId: getCustomFieldOption parameters: - description: The ID of the custom field option. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/customFieldOption/10000","value":"To Do"}' schema: $ref: "#/components/schemas/CustomFieldOption" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the custom field option is not found. * the user does not have permission to view the custom field. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get custom field option tags: - Issue custom field options x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field:jira - read:field.option:jira state: Beta /rest/api/3/dashboard: get: deprecated: false description: |- Returns a list of dashboards owned by or shared with the user. The list may be filtered to include only favorite or owned dashboards. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getAllDashboards parameters: - description: |- The filter applied to the list of dashboards. Valid values are: * `favourite` Returns dashboards the user has marked as favorite. * `my` Returns dashboards owned by the user. in: query name: filter schema: enum: - my - favourite type: string - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return per page. in: query name: maxResults schema: default: 20 format: int32 type: integer responses: "200": content: application/json: example: '{"startAt":10,"maxResults":10,"total":143,"prev":"https://your-domain.atlassian.net/rest/api/3/dashboard?startAt=0","next":"https://your-domain.atlassian.net/rest/api/3/dashboard?startAt=10","dashboards":[{"id":"10000","isFavourite":false,"name":"System Dashboard","popularity":1,"self":"https://your-domain.atlassian.net/rest/api/3/dashboard/10000","sharePermissions":[{"type":"global"}],"view":"https://your-domain.atlassian.net/secure/Dashboard.jspa?selectPageId=10000"},{"id":"20000","isFavourite":true,"name":"Build Engineering","owner":{"key":"Mia","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","name":"mia","displayName":"Mia Krystof","avatarUrls":{"16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32","48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48"}},"popularity":1,"self":"https://your-domain.atlassian.net/rest/api/3/dashboard/20000","sharePermissions":[{"id":10105,"type":"group","group":{"name":"administrators","self":"https://your-domain.atlassian.net/rest/api/3/group?groupname=administrators"}}],"view":"https://your-domain.atlassian.net/secure/Dashboard.jspa?selectPageId=20000"}]}' schema: $ref: "#/components/schemas/PageOfDashboards" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get all dashboards tags: - Dashboards x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta post: deprecated: false description: |- Creates a dashboard. **[Permissions](#permissions) required:** None. operationId: createDashboard parameters: [] requestBody: content: application/json: example: description: A dashboard to help auditors identify sample of issues to check. editPermissions: [] name: Auditors dashboard sharePermissions: - type: global schema: $ref: "#/components/schemas/DashboardDetails" description: Dashboard details. required: true responses: "200": content: application/json: example: '{"id":"10000","isFavourite":false,"name":"System Dashboard","popularity":1,"self":"https://your-domain.atlassian.net/rest/api/3/dashboard/10000","sharePermissions":[{"type":"global"}],"view":"https://your-domain.atlassian.net/secure/Dashboard.jspa?selectPageId=10000"}' schema: $ref: "#/components/schemas/Dashboard" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is not valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Create dashboard tags: - Dashboards x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - write:dashboard:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta x-experimental: true /rest/api/3/dashboard/gadgets: get: deprecated: false description: |- Gets a list of all available gadgets that can be added to all dashboards. **[Permissions](#permissions) required:** None. operationId: getAllAvailableDashboardGadgets parameters: [] responses: "200": content: application/json: example: '{"gadgets":[{"moduleKey":"com.atlassian.plugins.atlassian-connect-plugin:com.atlassian.connect.node.sample-addon__sample-dashboard-item","title":"Issue statistics"},{"uri":"rest/gadgets/1.0/g/com.atlassian.streams.streams-jira-plugin:activitystream-gadget/gadgets/activitystream-gadget.xml","title":"Activity Stream"}]}' schema: $ref: "#/components/schemas/AvailableDashboardGadgetsResponse" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: 400 response "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get available gadgets tags: - Dashboards x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard:jira state: Beta x-experimental: true /rest/api/3/dashboard/search: get: deprecated: false description: |- Returns a [paginated](#pagination) list of dashboards. This operation is similar to [Get dashboards](#api-rest-api-3-dashboard-get) except that the results can be refined to include dashboards that have specific attributes. For example, dashboards with a particular name. When multiple attributes are specified only filters matching all attributes are returned. This operation can be accessed anonymously. **[Permissions](#permissions) required:** The following dashboards that match the query parameters are returned: * Dashboards owned by the user. Not returned for anonymous users. * Dashboards shared with a group that the user is a member of. Not returned for anonymous users. * Dashboards shared with a private project that the user can browse. Not returned for anonymous users. * Dashboards shared with a public project. * Dashboards shared with the public. operationId: getDashboardsPaginated parameters: - description: String used to perform a case-insensitive partial match with `name`. in: query name: dashboardName schema: type: string - description: User account ID used to return dashboards with the matching `owner.accountId`. This parameter cannot be used with the `owner` parameter. in: query name: accountId schema: maxLength: 128 type: string - description: This parameter is deprecated because of privacy changes. Use `accountId` instead. See the [migration guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. User name used to return dashboards with the matching `owner.name`. This parameter cannot be used with the `accountId` parameter. in: query name: owner schema: type: string - description: As a group's name can change, use of `groupId` is recommended. Group name used to return dashboards that are shared with a group that matches `sharePermissions.group.name`. This parameter cannot be used with the `groupId` parameter. in: query name: groupname schema: type: string - description: Group ID used to return dashboards that are shared with a group that matches `sharePermissions.group.groupId`. This parameter cannot be used with the `groupname` parameter. in: query name: groupId schema: type: string - description: Project ID used to returns dashboards that are shared with a project that matches `sharePermissions.project.id`. in: query name: projectId schema: format: int64 type: integer - description: |- [Order](#ordering) the results by a field: * `description` Sorts by dashboard description. Note that this sort works independently of whether the expand to display the description field is in use. * `favourite_count` Sorts by dashboard popularity. * `id` Sorts by dashboard ID. * `is_favourite` Sorts by whether the dashboard is marked as a favorite. * `name` Sorts by dashboard name. * `owner` Sorts by dashboard owner name. in: query name: orderBy schema: default: name enum: - description - -description - +description - favorite_count - -favorite_count - +favorite_count - id - -id - +id - is_favorite - -is_favorite - +is_favorite - name - -name - +name - owner - -owner - +owner type: string - 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: The status to filter by. It may be active, archived or deleted. in: query name: status schema: default: active enum: - active - archived - deleted type: string - description: |- Use [expand](#expansion) to include additional information about dashboard in the response. This parameter accepts a comma-separated list. Expand options include: * `description` Returns the description of the dashboard. * `owner` Returns the owner of the dashboard. * `viewUrl` Returns the URL that is used to view the dashboard. * `favourite` Returns `isFavourite`, an indicator of whether the user has set the dashboard as a favorite. * `favouritedCount` Returns `popularity`, a count of how many users have set this dashboard as a favorite. * `sharePermissions` Returns details of the share permissions defined for the dashboard. * `editPermissions` Returns details of the edit permissions defined for the dashboard. * `isWritable` Returns whether the current user has permission to edit the dashboard. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/dashboard/search?expand=owner&maxResults=50&startAt=0","maxResults":100,"startAt":0,"total":2,"isLast":true,"values":[{"description":"Testing program","id":"1","isFavourite":true,"name":"Testing","owner":{"self":"https://your-domain.atlassian.net/user?accountId=5b10a2844c20165700ede21g","displayName":"Mia","active":true,"accountId":"5b10a2844c20165700ede21g","avatarUrls":{"16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32","48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48"}},"popularity":1,"self":"https://your-domain.atlassian.net/rest/api/3/dashboard/1","sharePermissions":[{"type":"global"}],"view":"https://your-domain.atlassian.net/Dashboard.jspa?selectPageId=1"},{"description":"Quantum initiative","id":"2","isFavourite":false,"name":"Quantum ","owner":{"self":"https://your-domain.atlassian.net/user?accountId=5b10a2844c20165700ede21g","displayName":"Mia","active":true,"accountId":"5b10a2844c20165700ede21g","avatarUrls":{"16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32","48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48"}},"popularity":0,"self":"https://your-domain.atlassian.net/rest/api/3/dashboard/2","sharePermissions":[{"type":"loggedin"}],"view":"https://your-domain.atlassian.net/Dashboard.jspa?selectPageId=2"}]}' schema: $ref: "#/components/schemas/PageBeanDashboard" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: |- Returned if: * `orderBy` is invalid. * `expand` includes an invalid value. * `accountId` and `owner` are provided. * `groupname` and `groupId` are provided. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: 401 response security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Search for dashboards tags: - Dashboards x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta "/rest/api/3/dashboard/{dashboardId}/gadget": get: deprecated: false description: |- Returns a list of dashboard gadgets on a dashboard. This operation returns: * Gadgets from a list of IDs, when `id` is set. * Gadgets with a module key, when `moduleKey` is set. * Gadgets from a list of URIs, when `uri` is set. * All gadgets, when no other parameters are set. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getAllGadgets parameters: - description: The ID of the dashboard. in: path name: dashboardId required: true schema: format: int64 type: integer - description: "The list of gadgets module keys. To include multiple module keys, separate module keys with ampersand: `moduleKey=key:one&moduleKey=key:two`." in: query name: moduleKey schema: items: type: string type: array - description: "The list of gadgets URIs. To include multiple URIs, separate URIs with ampersand: `uri=/rest/example/uri/1&uri=/rest/example/uri/2`." in: query name: uri schema: items: type: string type: array - description: "The list of gadgets IDs. To include multiple IDs, separate IDs with ampersand: `gadgetId=10000&gadgetId=10001`." in: query name: gadgetId schema: items: format: int64 type: integer type: array responses: "200": content: application/json: example: '{"gadgets":[{"id":10001,"moduleKey":"com.atlassian.plugins.atlassian-connect-plugin:com.atlassian.connect.node.sample-addon__sample-dashboard-item","color":"blue","position":{"row":0,"column":0},"title":"Issue statistics"},{"id":10002,"moduleKey":"com.atlassian.plugins.atlassian-connect-plugin:com.atlassian.connect.node.sample-addon__sample-dashboard-graph","color":"red","position":{"row":1,"column":0},"title":"Activity stream"},{"id":10003,"moduleKey":"com.atlassian.plugins.atlassian-connect-plugin:com.atlassian.connect.node.sample-addon__sample-dashboard-item","color":"yellow","position":{"row":0,"column":1},"title":"Bubble chart"}]}' schema: $ref: "#/components/schemas/DashboardGadgetResponse" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. "404": content: application/json: example: "{\"errorMessages\":[\"The dashboard you requested either does not exist or you don't have the required permissions to perform this action.\"],\"errors\":{}}" schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the dashboard is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get gadgets tags: - Dashboards x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard:jira state: Beta x-experimental: true post: deprecated: false description: |- Adds a gadget to a dashboard. **[Permissions](#permissions) required:** None. operationId: addGadget parameters: - description: The ID of the dashboard. in: path name: dashboardId required: true schema: format: int64 type: integer requestBody: content: application/json: example: color: blue ignoreUriAndModuleKeyValidation: false moduleKey: com.atlassian.plugins.atlassian-connect-plugin:com.atlassian.connect.node.sample-addon__sample-dashboard-item position: column: 1 row: 0 title: Issue statistics schema: $ref: "#/components/schemas/DashboardGadgetSettings" required: true responses: "200": content: application/json: example: '{"id":10001,"moduleKey":"com.atlassian.plugins.atlassian-connect-plugin:com.atlassian.connect.node.sample-addon__sample-dashboard-item","color":"blue","position":{"row":0,"column":1},"title":"Issue statistics"}' schema: $ref: "#/components/schemas/DashboardGadget" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["Cannot add another gadget. The maximum number of gadgets the dashboard can hold has been reached."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": content: application/json: example: "{\"errorMessages\":[\"The dashboard you requested either does not exist or you don't have the required permissions to perform this action.\"],\"errors\":{}}" schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the dashboard is not found. security: - basicAuth: [] - OAuth2: - write:jira-work - read:jira-work summary: Add gadget to dashboard tags: - Dashboards x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work - read:jira-work state: Current - scheme: OAuth2 scopes: - write:dashboard:jira - read:dashboard:jira state: Beta x-experimental: true "/rest/api/3/dashboard/{dashboardId}/gadget/{gadgetId}": delete: deprecated: false description: |- Removes a dashboard gadget from a dashboard. When a gadget is removed from a dashboard, other gadgets in the same column are moved up to fill the emptied position. **[Permissions](#permissions) required:** None. operationId: removeGadget parameters: - description: The ID of the dashboard. in: path name: dashboardId required: true schema: format: int64 type: integer - description: The ID of the gadget. in: path name: gadgetId required: true schema: format: int64 type: integer responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": content: application/json: example: '{"errorMessages":["The dashboard gadget was not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the gadget or the dashboard is not found. security: - basicAuth: [] - OAuth2: - write:jira-work summary: Remove gadget from dashboard tags: - Dashboards x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:dashboard:jira state: Beta x-experimental: true put: deprecated: false description: |- Changes the title, position, and color of the gadget on a dashboard. **[Permissions](#permissions) required:** None. operationId: updateGadget parameters: - description: The ID of the dashboard. in: path name: dashboardId required: true schema: format: int64 type: integer - description: The ID of the gadget. in: path name: gadgetId required: true schema: format: int64 type: integer requestBody: content: application/json: example: color: red position: column: 1 row: 1 title: My new gadget title schema: $ref: "#/components/schemas/DashboardGadgetUpdateRequest" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The gadget cannot be placed in the selected row. The selected row does not exist on the dashboard."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect. "404": content: application/json: example: "{\"errorMessages\":[\"The dashboard you requested either does not exist or you don't have the required permissions to perform this action.\"],\"errors\":{}}" schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the gadget or the dashboard is not found. security: - basicAuth: [] - OAuth2: - write:jira-work summary: Update gadget on dashboard tags: - Dashboards x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:dashboard:jira state: Beta x-experimental: true "/rest/api/3/dashboard/{dashboardId}/items/{itemId}/properties": get: deprecated: false description: |- Returns the keys of all properties for a dashboard item. This operation can be accessed anonymously. **[Permissions](#permissions) required:** The user must be the owner of the dashboard or have the dashboard shared with them. Note, users with the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) are considered owners of the System dashboard. The System dashboard is considered to be shared with all other users, and is accessible to anonymous users when Jira’s anonymous access is permitted. operationId: getDashboardItemPropertyKeys parameters: - description: The ID of the dashboard. in: path name: dashboardId required: true schema: type: string - description: The ID of the dashboard item. in: path name: itemId required: true schema: type: string responses: "200": content: application/json: example: '{"keys":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support","key":"issue.support"}]}' schema: $ref: "#/components/schemas/PropertyKeys" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the dashboard or dashboard item is not found, or the dashboard is not owned by or shared with the user. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get dashboard item property keys tags: - Dashboards x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard.property:jira - read:comment.property:jira - read:issue-type.property:jira - read:issue-worklog.property:jira - read:issue.property:jira - read:project.property:jira - read:user.property:jira - read:workflow.property:jira state: Beta "/rest/api/3/dashboard/{dashboardId}/items/{itemId}/properties/{propertyKey}": delete: deprecated: false description: |- Deletes a dashboard item property. This operation can be accessed anonymously. **[Permissions](#permissions) required:** The user must be the owner of the dashboard. Note, users with the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) are considered owners of the System dashboard. operationId: deleteDashboardItemProperty parameters: - description: The ID of the dashboard. in: path name: dashboardId required: true schema: type: string - description: The ID of the dashboard item. in: path name: itemId required: true schema: type: string - description: The key of the dashboard item property. in: path name: propertyKey required: true schema: type: string responses: "204": description: Returned if the dashboard item property is deleted. "400": description: Returned if the dashboard or dashboard item ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user is not the owner of the dashboard. "404": description: Returned if the dashboard item is not found or the dashboard is not shared with the user. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete dashboard item property tags: - Dashboards x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:dashboard.property:jira state: Beta get: deprecated: false description: |- Returns the key and value of a dashboard item property. A dashboard item enables an app to add user-specific information to a user dashboard. Dashboard items are exposed to users as gadgets that users can add to their dashboards. For more information on how users do this, see [Adding and customizing gadgets](https://confluence.atlassian.com/x/7AeiLQ). When an app creates a dashboard item it registers a callback to receive the dashboard item ID. The callback fires whenever the item is rendered or, where the item is configurable, the user edits the item. The app then uses this resource to store the item's content or configuration details. For more information on working with dashboard items, see [ Building a dashboard item for a JIRA Connect add-on](https://developer.atlassian.com/server/jira/platform/guide-building-a-dashboard-item-for-a-jira-connect-add-on-33746254/) and the [Dashboard Item](https://developer.atlassian.com/cloud/jira/platform/modules/dashboard-item/) documentation. There is no resource to set or get dashboard items. This operation can be accessed anonymously. **[Permissions](#permissions) required:** The user must be the owner of the dashboard or have the dashboard shared with them. Note, users with the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) are considered owners of the System dashboard. The System dashboard is considered to be shared with all other users, and is accessible to anonymous users when Jira’s anonymous access is permitted. operationId: getDashboardItemProperty parameters: - description: The ID of the dashboard. in: path name: dashboardId required: true schema: type: string - description: The ID of the dashboard item. in: path name: itemId required: true schema: type: string - description: The key of the dashboard item property. in: path name: propertyKey required: true schema: type: string responses: "200": content: application/json: example: '{"key":"issue.support","value":{"system.conversation.id":"b1bf38be-5e94-4b40-a3b8-9278735ee1e6","system.support.time":"1m"}}' schema: $ref: "#/components/schemas/EntityProperty" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the dashboard, the dashboard item, or dashboard item property is not found, or the dashboard is not owned by or shared with the user. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get dashboard item property tags: - Dashboards x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard.property:jira state: Beta put: deprecated: false description: |- Sets the value of a dashboard item property. Use this resource in apps to store custom data against a dashboard item. A dashboard item enables an app to add user-specific information to a user dashboard. Dashboard items are exposed to users as gadgets that users can add to their dashboards. For more information on how users do this, see [Adding and customizing gadgets](https://confluence.atlassian.com/x/7AeiLQ). When an app creates a dashboard item it registers a callback to receive the dashboard item ID. The callback fires whenever the item is rendered or, where the item is configurable, the user edits the item. The app then uses this resource to store the item's content or configuration details. For more information on working with dashboard items, see [ Building a dashboard item for a JIRA Connect add-on](https://developer.atlassian.com/server/jira/platform/guide-building-a-dashboard-item-for-a-jira-connect-add-on-33746254/) and the [Dashboard Item](https://developer.atlassian.com/cloud/jira/platform/modules/dashboard-item/) documentation. There is no resource to set or get dashboard items. The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The maximum length is 32768 characters. This operation can be accessed anonymously. **[Permissions](#permissions) required:** The user must be the owner of the dashboard. Note, users with the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) are considered owners of the System dashboard. operationId: setDashboardItemProperty parameters: - description: The ID of the dashboard. in: path name: dashboardId required: true schema: type: string - description: The ID of the dashboard item. in: path name: itemId required: true schema: type: string - description: The key of the dashboard item property. The maximum length is 255 characters. For dashboard items with a spec URI and no complete module key, if the provided propertyKey is equal to "config", the request body's JSON must be an object with all keys and values as strings. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: example: number: 5 string: string-value schema: {} required: true responses: "200": content: application/json: schema: {} description: Returned if the dashboard item property is updated. "201": content: application/json: schema: {} description: Returned if the dashboard item property is created. "400": content: application/json: example: '{"errorMessages":["The JSON data provided for the property has too many levels. It must be an object with all keys and values as strings."],"errors":{}}' description: |- Returned if: * Request is invalid * Or if all of these conditions are met in the request: * The dashboard item has a spec URI and no complete module key * The value of propertyKey is equal to "config" * The request body contains a JSON object whose keys and values are not strings. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user is not the owner of the dashboard. "404": description: Returned if the dashboard item is not found or the dashboard is not shared with the user. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Set dashboard item property tags: - Dashboards x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:dashboard.property:jira state: Beta "/rest/api/3/dashboard/{id}": delete: deprecated: false description: |- Deletes a dashboard. **[Permissions](#permissions) required:** None The dashboard to be deleted must be owned by the user. operationId: deleteDashboard parameters: - description: The ID of the dashboard. in: path name: id required: true schema: type: string responses: "204": description: Returned if the dashboard is deleted. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: 400 response "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete dashboard tags: - Dashboards x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:dashboard:jira state: Beta x-experimental: true get: deprecated: false description: |- Returns a dashboard. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. However, to get a dashboard, the dashboard must be shared with the user or the user must own it. Note, users with the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) are considered owners of the System dashboard. The System dashboard is considered to be shared with all other users. operationId: getDashboard parameters: - description: The ID of the dashboard. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"id":"10000","isFavourite":false,"name":"System Dashboard","popularity":1,"self":"https://your-domain.atlassian.net/rest/api/3/dashboard/10000","sharePermissions":[{"type":"global"}],"view":"https://your-domain.atlassian.net/secure/Dashboard.jspa?selectPageId=10000"}' schema: $ref: "#/components/schemas/Dashboard" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: 400 response "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the dashboard is not found or the dashboard is not owned by or shared with the user. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get dashboard tags: - Dashboards x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta put: deprecated: false description: |- Updates a dashboard, replacing all the dashboard details with those provided. **[Permissions](#permissions) required:** None The dashboard to be updated must be owned by the user. operationId: updateDashboard parameters: - description: The ID of the dashboard to update. in: path name: id required: true schema: type: string requestBody: content: application/json: example: description: A dashboard to help auditors identify sample of issues to check. editPermissions: [] name: Auditors dashboard sharePermissions: - type: global schema: $ref: "#/components/schemas/DashboardDetails" description: Replacement dashboard details. required: true responses: "200": content: application/json: example: '{"id":"10000","isFavourite":false,"name":"System Dashboard","popularity":1,"self":"https://your-domain.atlassian.net/rest/api/3/dashboard/10000","sharePermissions":[{"type":"global"}],"view":"https://your-domain.atlassian.net/secure/Dashboard.jspa?selectPageId=10000"}' schema: $ref: "#/components/schemas/Dashboard" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is not valid. "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 dashboard is not found or the dashboard is not owned by the user. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Update dashboard tags: - Dashboards x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - write:dashboard:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta x-experimental: true "/rest/api/3/dashboard/{id}/copy": post: deprecated: false description: |- Copies a dashboard. Any values provided in the `dashboard` parameter replace those in the copied dashboard. **[Permissions](#permissions) required:** None The dashboard to be copied must be owned by or shared with the user. operationId: copyDashboard parameters: - in: path name: id required: true schema: type: string requestBody: content: application/json: example: description: A dashboard to help auditors identify sample of issues to check. editPermissions: [] name: Auditors dashboard sharePermissions: - type: global schema: $ref: "#/components/schemas/DashboardDetails" description: Dashboard details. required: true responses: "200": content: application/json: example: '{"id":"10000","isFavourite":false,"name":"System Dashboard","popularity":1,"self":"https://your-domain.atlassian.net/rest/api/3/dashboard/10000","sharePermissions":[{"type":"global"}],"view":"https://your-domain.atlassian.net/secure/Dashboard.jspa?selectPageId=10000"}' schema: $ref: "#/components/schemas/Dashboard" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is not valid. "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 dashboard is not found or the dashboard is not owned by or shared with the user. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Copy dashboard tags: - Dashboards x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:dashboard:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - write:dashboard:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta x-experimental: true /rest/api/3/events: get: deprecated: false description: |- Returns all issue events. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getEvents parameters: [] responses: "200": content: application/json: example: '[{"id":1,"name":"Issue Created"},{"id":2,"name":"Issue Updated"}]' schema: items: $ref: "#/components/schemas/IssueEvent" type: array 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 permission to complete this request. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get events tags: - Issues x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-event:jira state: Beta x-experimental: true /rest/api/3/expression/analyse: post: deprecated: false description: |- Analyses and validates Jira expressions. As an experimental feature, this operation can also attempt to type-check the expressions. Learn more about Jira expressions in the [documentation](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/). **[Permissions](#permissions) required**: None. operationId: analyseExpression parameters: - description: |- The check to perform: * `syntax` Each expression's syntax is checked to ensure the expression can be parsed. Also, syntactic limits are validated. For example, the expression's length. * `type` EXPERIMENTAL. Each expression is type checked and the final type of the expression inferred. Any type errors that would result in the expression failure at runtime are reported. For example, accessing properties that don't exist or passing the wrong number of arguments to functions. Also performs the syntax check. * `complexity` EXPERIMENTAL. Determines the formulae for how many [expensive operations](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#expensive-operations) each expression may execute. in: query name: check schema: default: syntax enum: - syntax - type - complexity type: string requestBody: content: application/json: example: contextVariables: listOfStrings: List record: "{ a: Number, b: String }" value: User expressions: - issues.map(issue => issue.properties['property_key']) schema: $ref: "#/components/schemas/JiraExpressionForAnalysis" description: The Jira expressions to analyse. required: true responses: "200": content: application/json: example: "{\"results\":[{\"expression\":\"analysed expression\",\"errors\":[{\"line\":1,\"column\":4,\"message\":\"!, -, typeof, (, IDENTIFIER, null, true, false, NUMBER, STRING, TEMPLATE_LITERAL, new, [ or { expected, > encountered.\",\"type\":\"syntax\"},{\"message\":\"Jira expression is too long (1040), limit: 1000 characters\",\"type\":\"other\"},{\"message\":\"Jira expression has too many nodes (150), limit: 100 leaves\",\"type\":\"other\"}],\"valid\":false},{\"expression\":\"issues.map(i => {idAndKey: [i.id, i.key], summary: i.summary, comments: i.comments})\",\"valid\":true,\"type\":\"List<{idAndKey: [Number, String], summary: String, comments: List}>\",\"complexity\":{\"expensiveOperations\":\"N\",\"variables\":{\"N\":\"issues\"}}},{\"expression\":\"issues.map(i => i.id > '0')\",\"errors\":[{\"expression\":\"i.id > 0\",\"message\":\"Can't compare Number to String.\",\"type\":\"type\"}],\"valid\":false,\"type\":\"TypeError\"}]}" schema: $ref: "#/components/schemas/JiraExpressionsAnalysis" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: 400 response "401": description: Returned if the authentication credentials are incorrect or missing. "404": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: 404 response security: - basicAuth: [] - OAuth2: - read:jira-work - read:jira-user - {} summary: Analyse Jira expression tags: - Jira expressions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work - read:jira-user state: Current - scheme: OAuth2 scopes: - read:field:jira - read:jira-expressions:jira state: Beta /rest/api/3/expression/eval: post: deprecated: false description: |- Evaluates a Jira expression and returns its value. This resource can be used to test Jira expressions that you plan to use elsewhere, or to fetch data in a flexible way. Consult the [Jira expressions documentation](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/) for more details. #### Context variables #### The following context variables are available to Jira expressions evaluated by this resource. Their presence depends on various factors; usually you need to manually request them in the context object sent in the payload, but some of them are added automatically under certain conditions. * `user` ([User](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#user)): The current user. Always available and equal to `null` if the request is anonymous. * `app` ([App](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#app)): The [Connect app](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) that made the request. Available only for authenticated requests made by Connect Apps (read more here: [Authentication for Connect apps](https://developer.atlassian.com/cloud/jira/platform/security-for-connect-apps/)). * `issue` ([Issue](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#issue)): The current issue. Available only when the issue is provided in the request context object. * `issues` ([List](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#list) of [Issues](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#issue)): A collection of issues matching a JQL query. Available only when JQL is provided in the request context object. * `project` ([Project](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#project)): The current project. Available only when the project is provided in the request context object. * `sprint` ([Sprint](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#sprint)): The current sprint. Available only when the sprint is provided in the request context object. * `board` ([Board](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#board)): The current board. Available only when the board is provided in the request context object. * `serviceDesk` ([ServiceDesk](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#servicedesk)): The current service desk. Available only when the service desk is provided in the request context object. * `customerRequest` ([CustomerRequest](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#customerrequest)): The current customer request. Available only when the customer request is provided in the request context object. Also, custom context variables can be passed in the request with their types. Those variables can be accessed by key in the Jira expression. These variable types are available for use in a custom context: * `user`: A [user](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#user) specified as an Atlassian account ID. * `issue`: An [issue](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#issue) specified by ID or key. All the fields of the issue object are available in the Jira expression. * `json`: A JSON object containing custom content. * `list`: A JSON list of `user`, `issue`, or `json` variable types. This operation can be accessed anonymously. **[Permissions](#permissions) required**: None. However, an expression may return different results for different users depending on their permissions. For example, different users may see different comments on the same issue. Permission to access Jira Software is required to access Jira Software context variables (`board` and `sprint`) or fields (for example, `issue.sprint`). operationId: evaluateJiraExpression parameters: - description: Use [expand](#expansion) to include additional information in the response. This parameter accepts `meta.complexity` that returns information about the expression complexity. For example, the number of expensive operations used by the expression and how close the expression is to reaching the [complexity limit](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#restrictions). Useful when designing and debugging your expressions. in: query name: expand schema: type: string requestBody: content: application/json: example: context: board: 10100 custom: config: type: json value: userId: "10002" issuesList: - key: ACJIRA-1471 type: issue - id: 100001 type: issue myUser: accountId: "100001" type: user nullField: type: json customerRequest: 1450 issue: key: ACJIRA-1470 issues: jql: maxResults: 100 query: project = HSP startAt: 0 validation: strict project: key: ACJIRA serviceDesk: 10023 sprint: 10001 expression: "{ key: issue.key, type: issue.issueType.name, links: issue.links.map(link => link.linkedIssue.id), listCustomVariable: issuesList.includes(issue), customVariables: myUser.accountId == config.userId}" schema: $ref: "#/components/schemas/JiraExpressionEvalRequestBean" description: The Jira expression and the evaluation context. required: true responses: "200": content: application/json: example: "{\"value\":\"The expression's result. This value can be any JSON, not necessarily a String\",\"meta\":{\"complexity\":{\"steps\":{\"value\":1,\"limit\":10000},\"expensiveOperations\":{\"value\":3,\"limit\":10},\"beans\":{\"value\":0,\"limit\":1000},\"primitiveValues\":{\"value\":1,\"limit\":10000}},\"issues\":{\"jql\":{\"startAt\":0,\"maxResults\":1000,\"count\":140,\"totalCount\":140,\"validationWarnings\":[\"There is a problem with the JQL query.\"]}}}}" schema: $ref: "#/components/schemas/JiraExpressionResult" description: Returned if the evaluation results in a value. The result is a JSON primitive value, list, or object. "400": content: application/json: example: "{\"errorMessages\":[\"Evaluation failed: \\\"issue['a' + 'b']\\\" - Unrecognized property of `issue`: \\\"ab\\\" ('a' + 'b'). Available properties of type 'Issue' are: 'assignee', 'comments', 'description', 'id', 'issueType', 'key', 'priority', 'project', 'properties', 'reporter', 'status', 'summary'\"],\"errors\":{}}" schema: $ref: "#/components/schemas/ErrorCollection" description: |- Returned if: * the request is invalid, that is: * invalid data is provided, such as a request including issue ID and key. * the expression is invalid and can not be parsed. * evaluation fails at runtime. This may happen for various reasons. For example, accessing a property on a null object (such as the expression `issue.id` where `issue` is `null`). In this case an error message is provided. "401": description: Returned if the authentication credentials are incorrect or missing. "404": content: application/json: example: '{"errorMessages":["Issue does not exist or you do not have permission to see it."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if any object provided in the request context is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - read:jira-user - {} summary: Evaluate Jira expression tags: - Jira expressions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work - read:jira-user state: Current - scheme: OAuth2 scopes: - read:jira-expressions:jira state: Beta /rest/api/3/field: get: deprecated: false description: |- Returns system and custom issue fields according to the following rules: * Fields that cannot be added to the issue navigator are always returned. * Fields that cannot be placed on an issue screen are always returned. * Fields that depend on global Jira settings are only returned if the setting is enabled. That is, timetracking fields, subtasks, votes, and watches. * For all other fields, this operation only returns the fields that the user has permission to view (that is, the field is used in at least one project that the user has *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.) This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getFields parameters: [] responses: "200": content: application/json: example: '[{"id":"description","name":"Description","custom":false,"orderable":true,"navigable":true,"searchable":true,"clauseNames":["description"],"schema":{"type":"string","system":"description"}},{"id":"summary","key":"summary","name":"Summary","custom":false,"orderable":true,"navigable":true,"searchable":true,"clauseNames":["summary"],"schema":{"type":"string","system":"summary"}}]' schema: items: $ref: "#/components/schemas/FieldDetails" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get fields tags: - Issue fields x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field:jira - read:avatar:jira - read:project-category:jira - read:project:jira - read:field-configuration:jira state: Beta post: deprecated: false description: |- Creates a custom field. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createCustomField parameters: [] requestBody: content: application/json: example: description: Custom field for picking groups name: New custom field searcherKey: com.atlassian.jira.plugin.system.customfieldtypes:grouppickersearcher type: com.atlassian.jira.plugin.system.customfieldtypes:grouppicker schema: $ref: "#/components/schemas/CustomFieldDefinitionJsonBean" description: Definition of the custom field to be created required: true responses: "201": content: application/json: example: '{"id":"customfield_10101","key":"customfield_10101","name":"New custom field","untranslatedName":"New custom field","custom":true,"orderable":true,"navigable":true,"searchable":true,"clauseNames":["cf[10101]","New custom field"],"schema":{"type":"project","custom":"com.atlassian.jira.plugin.system.customfieldtypes:project","customId":10101}}' schema: $ref: "#/components/schemas/FieldDetails" description: Returned if the custom field is created. "400": description: |- Returned if: * the user does not have permission to create custom fields. * any of the request object properties have invalid or missing values. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Create custom field tags: - Issue fields x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field:jira - read:avatar:jira - read:field:jira - read:project-category:jira - read:project:jira - read:field-configuration:jira state: Beta /rest/api/3/field/search: get: deprecated: false description: |- Returns a [paginated](#pagination) list of fields for Classic Jira projects. The list can include: * all fields * specific fields, by defining `id` * fields that contain a string in the field name or description, by defining `query` * specific fields that contain a string in the field name or description, by defining `id` and `query` Only custom fields can be queried, `type` must be set to `custom`. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getFieldsPaginated 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: The type of fields to search. in: query name: type schema: items: enum: - custom - system type: string type: array - description: The IDs of the custom fields to return or, where `query` is specified, filter. in: query name: id schema: items: type: string type: array uniqueItems: true - description: String used to perform a case-insensitive partial match with field names or descriptions. in: query name: query schema: type: string - description: |- [Order](#ordering) the results by a field: * `contextsCount` sorts by the number of contexts related to a field * `lastUsed` sorts by the date when the value of the field last changed * `name` sorts by the field name * `screensCount` sorts by the number of screens related to a field in: query name: orderBy schema: enum: - contextsCount - -contextsCount - +contextsCount - lastUsed - -lastUsed - +lastUsed - name - -name - +name - screensCount - -screensCount - +screensCount - projectsCount - -projectsCount - +projectsCount type: string - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `key` returns the key for each field * `lastUsed` returns the date when the value of the field last changed * `screensCount` returns the number of screens related to a field * `contextsCount` returns the number of contexts related to a field * `isLocked` returns information about whether the field is [locked](https://confluence.atlassian.com/x/ZSN7Og) * `searcherKey` returns the searcher key for each custom field in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":2,"isLast":false,"values":[{"id":"customfield_10000","name":"Approvers","schema":{"type":"array","items":"user","custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker","customId":10000},"description":"Contains users needed for approval. This custom field was created by Jira Service Desk.","key":"customfield_10000","isLocked":true,"searcherKey":"com.atlassian.jira.plugin.system.customfieldtypes:userpickergroupsearcher","screensCount":2,"contextsCount":2,"lastUsed":{"type":"TRACKED","value":"2019-09-12T10:10:00.232+0000"}},{"id":"customfield_10001","name":"Change reason","schema":{"type":"option","custom":"com.atlassian.jira.plugin.system.customfieldtypes:select","customId":10001},"description":"Choose the reason for the change request","key":"customfield_10001","isLocked":false,"searcherKey":"com.atlassian.jira.plugin.system.customfieldtypes:multiselectsearcher","screensCount":2,"contextsCount":2,"projectsCount":2,"lastUsed":{"type":"NOT_TRACKED"}}]}' schema: $ref: "#/components/schemas/PageBeanField" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["Only custom fields can be queried."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access fields."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get fields paginated tags: - Issue fields x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field:jira - read:field-configuration:jira state: Beta x-experimental: true /rest/api/3/field/search/trashed: get: deprecated: false description: |- Returns a [paginated](#pagination) list of fields in the trash. The list may be restricted to fields whose field name or description partially match a string. Only custom fields can be queried, `type` must be set to `custom`. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getTrashedFieldsPaginated 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 - in: query name: id schema: items: type: string type: array uniqueItems: true - description: String used to perform a case-insensitive partial match with field names or descriptions. in: query name: query schema: type: string - in: query name: expand schema: enum: - name - -name - +name - trashDate - -trashDate - +trashDate - plannedDeletionDate - -plannedDeletionDate - +plannedDeletionDate - projectsCount - -projectsCount - +projectsCount type: string - description: |- [Order](#ordering) the results by a field: * `name` sorts by the field name * `trashDate` sorts by the date the field was moved to the trash * `plannedDeletionDate` sorts by the planned deletion date in: query name: orderBy schema: type: string responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":1,"isLast":false,"values":[{"id":"customfield_10000","name":"Approvers","schema":{"type":"array","custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiuserpicker","customId":10003},"description":"Contains users needed for approval. This custom field was created by Jira Service Desk.","key":"customfield_10003","trashedDate":"2019-09-12T10:10:00.233+0000","trashedBy":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney"},"plannedDeletionDate":"2019-09-30T10:10:00.233+0000"}]}' schema: $ref: "#/components/schemas/PageBeanField" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["Only custom fields can be queried."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access fields."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get fields in trash paginated tags: - Issue fields x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field:jira - read:field-configuration:jira - read:user:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}": put: deprecated: false description: |- Updates a custom field. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateCustomField parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string requestBody: content: application/json: example: description: Select the manager and the corresponding employee. name: Managers and employees list searcherKey: com.atlassian.jira.plugin.system.customfieldtypes:cascadingselectsearcher schema: $ref: "#/components/schemas/UpdateCustomFieldDetails" description: The custom field update details. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["searcherKey is invalid for the field type."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can edit custom fields."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The custom field was not found."],"errors":{}}' description: Returned if the custom field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update custom field tags: - Issue fields x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context": get: deprecated: false description: |- Returns a [paginated](#pagination) list of [ contexts](https://confluence.atlassian.com/adminjiracloud/what-are-custom-field-contexts-991923859.html) for a custom field. Contexts can be returned as follows: * With no other parameters set, all contexts. * By defining `id` only, all contexts from the list of IDs. * By defining `isAnyIssueType`, limit the list of contexts returned to either those that apply to all issue types (true) or those that apply to only a subset of issue types (false) * By defining `isGlobalContext`, limit the list of contexts return to either those that apply to all projects (global contexts) (true) or those that apply to only a subset of projects (false). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getContextsForField parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: Whether to return contexts that apply to all issue types. in: query name: isAnyIssueType schema: type: boolean - description: Whether to return contexts that apply to all projects. in: query name: isGlobalContext schema: type: boolean - description: "The list of context IDs. To include multiple contexts, separate IDs with ampersand: `contextId=10000&contextId=10001`." in: query name: contextId schema: items: format: int64 type: integer type: array uniqueItems: true - 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 responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":2,"isLast":true,"values":[{"id":"10025","name":"Bug fields context","description":"A context used to define the custom field options for bugs.","isGlobalContext":true,"isAnyIssueType":false},{"id":"10026","name":"Task fields context","description":"A context used to define the custom field options for tasks.","isGlobalContext":false,"isAnyIssueType":false}]}' schema: $ref: "#/components/schemas/PageBeanCustomFieldContext" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The custom field was not found."],"errors":{}}' description: Returned if the custom field was not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get custom field contexts tags: - Issue custom field contexts x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field:jira - read:custom-field-contextual-configuration:jira state: Beta x-experimental: true post: deprecated: false description: |- Creates a custom field context. If `projectIds` is empty, a global context is created. A global context is one that applies to all project. If `issueTypeIds` is empty, the context applies to all issue types. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createCustomFieldContext parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string requestBody: content: application/json: example: description: A context used to define the custom field options for bugs. issueTypeIds: - "10010" name: Bug fields context projectIds: [] schema: $ref: "#/components/schemas/CreateCustomFieldContext" required: true responses: "201": content: application/json: example: '{"id":"10025","name":"Bug fields context","description":"A context used to define the custom field options for bugs.","projectIds":[],"issueTypeIds":["10010"]}' schema: $ref: "#/components/schemas/CreateCustomFieldContext" description: Returned if the custom field context is created. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the field, project, or issue type is not found. "409": content: application/json: example: '{"errorMessages":["Sub-tasks are disabled in Jira. At least one of the issue types is a sub-task."],"errors":{}}' description: Returned if the issue type is a sub-task, but sub-tasks are disabled in Jira settings. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create custom field context tags: - Issue custom field contexts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field:jira - write:field:jira - read:custom-field-contextual-configuration:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/defaultValue": get: deprecated: false description: |- Returns a [paginated](#pagination) list of defaults for a custom field. The results can be filtered by `contextId`, otherwise all values are returned. If no defaults are set for a context, nothing is returned. The returned object depends on type of the custom field: * `CustomFieldContextDefaultValueDate` (type `datepicker`) for date fields. * `CustomFieldContextDefaultValueDateTime` (type `datetimepicker`) for date-time fields. * `CustomFieldContextDefaultValueSingleOption` (type `option.single`) for single choice select lists and radio buttons. * `CustomFieldContextDefaultValueMultipleOption` (type `option.multiple`) for multiple choice select lists and checkboxes. * `CustomFieldContextDefaultValueCascadingOption` (type `option.cascading`) for cascading select lists. * `CustomFieldContextSingleUserPickerDefaults` (type `single.user.select`) for single users. * `CustomFieldContextDefaultValueMultiUserPicker` (type `multi.user.select`) for user lists. * `CustomFieldContextDefaultValueSingleGroupPicker` (type `grouppicker.single`) for single choice group pickers. * `CustomFieldContextDefaultValueMultipleGroupPicker` (type `grouppicker.multiple`) for multiple choice group pickers. * `CustomFieldContextDefaultValueURL` (type `url`) for URLs. * `CustomFieldContextDefaultValueProject` (type `project`) for project pickers. * `CustomFieldContextDefaultValueFloat` (type `float`) for floats (floating-point numbers). * `CustomFieldContextDefaultValueLabels` (type `labels`) for labels. * `CustomFieldContextDefaultValueTextField` (type `textfield`) for text fields. * `CustomFieldContextDefaultValueTextArea` (type `textarea`) for text area fields. * `CustomFieldContextDefaultValueReadOnly` (type `readonly`) for read only (text) fields. * `CustomFieldContextDefaultValueMultipleVersion` (type `version.multiple`) for single choice version pickers. * `CustomFieldContextDefaultValueSingleVersion` (type `version.single`) for multiple choice version pickers. Forge custom fields [types](https://developer.atlassian.com/platform/forge/manifest-reference/modules/jira-custom-field-type/#data-types) are also supported, returning: * `CustomFieldContextDefaultValueForgeStringFieldBean` (type `forge.string`) for Forge string fields. * `CustomFieldContextDefaultValueForgeMultiStringFieldBean` (type `forge.string.list`) for Forge string collection fields. * `CustomFieldContextDefaultValueForgeObjectFieldBean` (type `forge.object`) for Forge object fields. * `CustomFieldContextDefaultValueForgeDateTimeFieldBean` (type `forge.datetime`) for Forge date-time fields. * `CustomFieldContextDefaultValueForgeGroupFieldBean` (type `forge.group`) for Forge group fields. * `CustomFieldContextDefaultValueForgeMultiGroupFieldBean` (type `forge.group.list`) for Forge group collection fields. * `CustomFieldContextDefaultValueForgeNumberFieldBean` (type `forge.number`) for Forge number fields. * `CustomFieldContextDefaultValueForgeUserFieldBean` (type `forge.user`) for Forge user fields. * `CustomFieldContextDefaultValueForgeMultiUserFieldBean` (type `forge.user.list`) for Forge user collection fields. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getDefaultValues parameters: - description: The ID of the custom field, for example `customfield\_10000`. in: path name: fieldId required: true schema: type: string - description: The IDs of the contexts. in: query name: contextId schema: items: format: int64 type: integer type: array uniqueItems: true - 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 responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":3,"isLast":true,"values":[{"type":"option.single","contextId":"10100","optionId":"10001"},{"type":"option.single","contextId":"10101","optionId":"10003"},{"type":"option.single","contextId":"10103"}]}' schema: $ref: "#/components/schemas/PageBeanCustomFieldContextDefaultValue" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The custom field was not found."],"errors":{}}' description: Returned if the custom field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get custom field contexts default values tags: - Issue custom field contexts x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field.default-value:jira state: Beta x-experimental: true put: deprecated: false description: |- Sets default for contexts of a custom field. Default are defined using these objects: * `CustomFieldContextDefaultValueDate` (type `datepicker`) for date fields. * `CustomFieldContextDefaultValueDateTime` (type `datetimepicker`) for date-time fields. * `CustomFieldContextDefaultValueSingleOption` (type `option.single`) for single choice select lists and radio buttons. * `CustomFieldContextDefaultValueMultipleOption` (type `option.multiple`) for multiple choice select lists and checkboxes. * `CustomFieldContextDefaultValueCascadingOption` (type `option.cascading`) for cascading select lists. * `CustomFieldContextSingleUserPickerDefaults` (type `single.user.select`) for single users. * `CustomFieldContextDefaultValueMultiUserPicker` (type `multi.user.select`) for user lists. * `CustomFieldContextDefaultValueSingleGroupPicker` (type `grouppicker.single`) for single choice group pickers. * `CustomFieldContextDefaultValueMultipleGroupPicker` (type `grouppicker.multiple`) for multiple choice group pickers. * `CustomFieldContextDefaultValueURL` (type `url`) for URLs. * `CustomFieldContextDefaultValueProject` (type `project`) for project pickers. * `CustomFieldContextDefaultValueFloat` (type `float`) for floats (floating-point numbers). * `CustomFieldContextDefaultValueLabels` (type `labels`) for labels. * `CustomFieldContextDefaultValueTextField` (type `textfield`) for text fields. * `CustomFieldContextDefaultValueTextArea` (type `textarea`) for text area fields. * `CustomFieldContextDefaultValueReadOnly` (type `readonly`) for read only (text) fields. * `CustomFieldContextDefaultValueMultipleVersion` (type `version.multiple`) for single choice version pickers. * `CustomFieldContextDefaultValueSingleVersion` (type `version.single`) for multiple choice version pickers. Forge custom fields [types](https://developer.atlassian.com/platform/forge/manifest-reference/modules/jira-custom-field-type/#data-types) are also supported, returning: * `CustomFieldContextDefaultValueForgeStringFieldBean` (type `forge.string`) for Forge string fields. * `CustomFieldContextDefaultValueForgeMultiStringFieldBean` (type `forge.string.list`) for Forge string collection fields. * `CustomFieldContextDefaultValueForgeObjectFieldBean` (type `forge.object`) for Forge object fields. * `CustomFieldContextDefaultValueForgeDateTimeFieldBean` (type `forge.datetime`) for Forge date-time fields. * `CustomFieldContextDefaultValueForgeGroupFieldBean` (type `forge.group`) for Forge group fields. * `CustomFieldContextDefaultValueForgeMultiGroupFieldBean` (type `forge.group.list`) for Forge group collection fields. * `CustomFieldContextDefaultValueForgeNumberFieldBean` (type `forge.number`) for Forge number fields. * `CustomFieldContextDefaultValueForgeUserFieldBean` (type `forge.user`) for Forge user fields. * `CustomFieldContextDefaultValueForgeMultiUserFieldBean` (type `forge.user.list`) for Forge user collection fields. Only one type of default object can be included in a request. To remove a default for a context, set the default parameter to `null`. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setDefaultValues parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string requestBody: content: application/json: example: defaultValues: - contextId: "10100" optionId: "10001" type: option.single - contextId: "10101" optionId: "10003" type: option.single - contextId: "10103" optionId: "10005" type: option.single schema: $ref: "#/components/schemas/CustomFieldContextDefaultValueUpdate" required: true responses: "204": content: application/json: schema: {} description: Returned if operation is successful. "400": content: application/json: example: '{"errorMessages":["All default values in the request must have the same type."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The context was not found."],"errors":{}}' description: Returned if the custom field, a context, an option, or a cascading option is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set custom field contexts default values tags: - Issue custom field contexts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field.default-value:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/issuetypemapping": get: deprecated: false description: |- Returns a [paginated](#pagination) list of context to issue type mappings for a custom field. Mappings are returned for all contexts or a list of contexts. Mappings are ordered first by context ID and then by issue type ID. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueTypeMappingsForContexts parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. To include multiple contexts, provide an ampersand-separated list. For example, `contextId=10001&contextId=10002`. in: query name: contextId schema: items: format: int64 type: integer type: array - 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 responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":3,"isLast":true,"values":[{"contextId":"10001","issueTypeId":"10010"},{"contextId":"10001","issueTypeId":"10011"},{"contextId":"10002","isAnyIssueType":true}]}' schema: $ref: "#/components/schemas/PageBeanIssueTypeToContextMapping" description: Returned if operation is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue types for custom field context tags: - Issue custom field contexts x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/mapping": post: deprecated: false description: |- Returns a [paginated](#pagination) list of project and issue type mappings and, for each mapping, the ID of a [custom field context](https://confluence.atlassian.com/x/k44fOw) that applies to the project and issue type. If there is no custom field context assigned to the project then, if present, the custom field context that applies to all projects is returned if it also applies to the issue type or all issue types. If a custom field context is not found, the returned custom field context ID is `null`. Duplicate project and issue type mappings cannot be provided in the request. The order of the returned values is the same as provided in the request. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getCustomFieldContextsForProjectsAndIssueTypes parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - 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 requestBody: content: application/json: example: mappings: - issueTypeId: "10000" projectId: "10000" - issueTypeId: "10001" projectId: "10000" - issueTypeId: "10002" projectId: "10001" schema: $ref: "#/components/schemas/ProjectIssueTypeMappings" description: The list of project and issue type mappings. required: true responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":3,"isLast":true,"values":[{"projectId":"10000","issueTypeId":"10000","contextId":"10000"},{"projectId":"10000","issueTypeId":"10001","contextId":null},{"projectId":"10001","issueTypeId":"10002","contextId":"10003"}]}' schema: $ref: "#/components/schemas/PageBeanContextForProjectAndIssueType" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["Duplicate project and issue type mappings cannot be provided."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["These projects were not found: 10005."],"errors":{}}' description: Returned if the custom field, project, or issue type is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get custom field contexts for projects and issue types tags: - Issue custom field contexts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/projectmapping": get: deprecated: false description: |- Returns a [paginated](#pagination) list of context to project mappings for a custom field. The result can be filtered by `contextId`. Otherwise, all mappings are returned. Invalid IDs are ignored. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getProjectContextMapping parameters: - description: The ID of the custom field, for example `customfield\_10000`. in: path name: fieldId required: true schema: type: string - description: "The list of context IDs. To include multiple context, separate IDs with ampersand: `contextId=10000&contextId=10001`." in: query name: contextId schema: items: format: int64 type: integer type: array uniqueItems: true - 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 responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":2,"isLast":true,"values":[{"contextId":"10025","projectId":"10001"},{"contextId":"10026","isGlobalContext":true}]}' schema: $ref: "#/components/schemas/PageBeanCustomFieldContextProjectMapping" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The custom field was not found."],"errors":{}}' description: Returned if the custom field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get project mappings for custom field context tags: - Issue custom field contexts x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/{contextId}": delete: deprecated: false description: |- Deletes a [ custom field context](https://confluence.atlassian.com/adminjiracloud/what-are-custom-field-contexts-991923859.html). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteCustomFieldContext parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer responses: "204": content: application/json: schema: {} description: Returned if the context is deleted. "400": content: application/json: example: '{"errorMessages":["The contextId has to be provided."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The context was not found."],"errors":{}}' description: Returned if the custom field or the context is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete custom field context tags: - Issue custom field contexts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:field:jira state: Beta x-experimental: true put: deprecated: false description: |- Updates a [ custom field context](https://confluence.atlassian.com/adminjiracloud/what-are-custom-field-contexts-991923859.html). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateCustomFieldContext parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer requestBody: content: application/json: example: description: A context used to define the custom field options for bugs. name: Bug fields context schema: $ref: "#/components/schemas/CustomFieldContextUpdateDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the context is updated. "400": content: application/json: example: '{"errorMessages":["The contextId has to be provided."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The context was not found."],"errors":{}}' description: Returned if the custom field or the context is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update custom field context tags: - Issue custom field contexts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/{contextId}/issuetype": put: deprecated: false description: |- Adds issue types to a custom field context, appending the issue types to the issue types list. A custom field context without any issue types applies to all issue types. Adding issue types to such a custom field context would result in it applying to only the listed issue types. If any of the issue types exists in the custom field context, the operation fails and no issue types are added. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addIssueTypesToContext parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer requestBody: content: application/json: example: issueTypeIds: - "10001" - "10005" - "10006" schema: $ref: "#/components/schemas/IssueTypeIds" required: true responses: "204": content: application/json: schema: {} description: Returned if operation is successful. "400": content: application/json: example: '{"errorMessages":["These issue types are already associated with the context: 10001."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The context was not found."],"errors":{}}' description: Returned if the custom field, context, or one or more issue types are not found. "409": content: application/json: example: '{"errorMessages":["Sub-tasks are disabled in Jira. At least one of the issue types is a sub-task."],"errors":{}}' description: Returned if the issue type is a sub-task, but sub-tasks are disabled in Jira settings. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Add issue types to context tags: - Issue custom field contexts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/{contextId}/issuetype/remove": post: deprecated: false description: |- Removes issue types from a custom field context. A custom field context without any issue types applies to all issue types. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeIssueTypesFromContext parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer requestBody: content: application/json: example: issueTypeIds: - "10001" - "10005" - "10006" schema: $ref: "#/components/schemas/IssueTypeIds" required: true responses: "204": content: application/json: schema: {} description: Returned if operation is successful. "400": content: application/json: example: '{"errorMessages":["These issue types are not associated with the context: 10002."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The context was not found."],"errors":{}}' description: Returned if the custom field, context, or one or more issue types are not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove issue types from context tags: - Issue custom field contexts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/{contextId}/option": get: deprecated: false description: |- Returns a [paginated](#pagination) list of all custom field option for a context. Options are returned first then cascading options, in the order they display in Jira. This operation works for custom field options created in Jira or the operations from this resource. **To work with issue field select list options created for Connect apps use the [Issue custom field options (apps)](#api-group-issue-custom-field-options--apps-) operations.** **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getOptionsForContext parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer - description: The ID of the option. in: query name: optionId schema: format: int64 type: integer - description: Whether only options are returned. in: query name: onlyOptions schema: default: false type: boolean - 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: 100 format: int32 type: integer responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":4,"isLast":true,"values":[{"id":"10001","value":"New York"},{"id":"10002","value":"Boston","disabled":true},{"id":"10004","value":"Denver"},{"id":"10003","value":"Brooklyn","optionId":"10001"}]}' schema: $ref: "#/components/schemas/PageBeanCustomFieldContextOption" description: Returned if the request is successful. "400": content: application/json: example: "{\"errorMessages\":[\"The custom field doesn't support options.\"],\"errors\":{}}" description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can manage custom field options."],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["The custom field was not found."],"errors":{}}' description: Returned if the custom field is not found or the context doesn't match the custom field. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get custom field options (context) tags: - Issue custom field options x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field.option:jira state: Beta x-experimental: true post: deprecated: false description: |- Creates options and, where the custom select field is of the type Select List (cascading), cascading options for a custom select field. The options are added to a context of the field. The maximum number of options that can be created per request is 1000 and each field can have a maximum of 10000 options. This operation works for custom field options created in Jira or the operations from this resource. **To work with issue field select list options created for Connect apps use the [Issue custom field options (apps)](#api-group-issue-custom-field-options--apps-) operations.** **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createCustomFieldOption parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer requestBody: content: application/json: example: options: - disabled: false value: Scranton - disabled: true optionId: "10000" value: Manhattan - disabled: false value: The Electric City schema: $ref: "#/components/schemas/BulkCustomFieldOptionCreateRequest" required: true responses: "200": content: application/json: example: '{"options":[{"id":"10001","value":"Scranton","disabled":false},{"id":"10002","value":"Manhattan","optionId":"10000","disabled":true},{"id":"10003","value":"The Electric City","disabled":false}]}' schema: $ref: "#/components/schemas/CustomFieldCreatedContextOptionsList" description: Returned if the request is successful. "400": content: application/json: example: "{\"errorMessages\":[\"The custom field doesn't support options.\"],\"errors\":{}}" description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can manage custom field options."],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["The custom field was not found."],"errors":{}}' description: Returned if the custom field is not found or the context doesn't match the custom field. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create custom field options (context) tags: - Issue custom field options x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field.option:jira - write:field.option:jira state: Beta x-experimental: true put: deprecated: false description: |- Updates the options of a custom field. If any of the options are not found, no options are updated. Options where the values in the request match the current values aren't updated and aren't reported in the response. Note that this operation **only works for issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource**, it cannot be used with issue field select list options created by Connect apps. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateCustomFieldOption parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer requestBody: content: application/json: example: options: - disabled: false id: "10001" value: Scranton - disabled: true id: "10002" value: Manhattan - disabled: false id: "10003" value: The Electric City schema: $ref: "#/components/schemas/BulkCustomFieldOptionUpdateRequest" required: true responses: "200": content: application/json: example: '{"options":[{"id":"10001","value":"Scranton","disabled":false},{"id":"10002","value":"Manhattan","disabled":true},{"id":"10003","value":"The Electric City","disabled":false}]}' schema: $ref: "#/components/schemas/CustomFieldUpdatedContextOptionsList" description: Returned if the request is successful. "400": content: application/json: example: "{\"errorMessages\":[\"The custom field doesn't support options.\"],\"errors\":{}}" description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can manage custom field options."],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["The custom field was not found."],"errors":{}}' description: Returned if the field, context, or one or more options is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update custom field options (context) tags: - Issue custom field options x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field.option:jira - write:field.option:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/{contextId}/option/move": put: deprecated: false description: |- Changes the order of custom field options or cascading options in a context. This operation works for custom field options created in Jira or the operations from this resource. **To work with issue field select list options created for Connect apps use the [Issue custom field options (apps)](#api-group-issue-custom-field-options--apps-) operations.** **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: reorderCustomFieldOptions parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer requestBody: content: application/json: example: customFieldOptionIds: - "10001" - "10002" position: First schema: $ref: "#/components/schemas/OrderOfCustomFieldOptions" required: true responses: "204": content: application/json: schema: {} description: Returned if options are reordered. "400": content: application/json: example: "{\"errorMessages\":[\"'after' and 'position' were provided. Only 'after' or 'position' can be specified.\"],\"errors\":{}}" description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can manage custom field options."],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["The custom field was not found."],"errors":{}}' description: Returned if the field, the context, or one or more of the options is not found.. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Reorder custom field options (context) tags: - Issue custom field options x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field.option:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/{contextId}/option/{optionId}": delete: deprecated: false description: |- Deletes a custom field option. Options with cascading options cannot be deleted without deleting the cascading options first. This operation works for custom field options created in Jira or the operations from this resource. **To work with issue field select list options created for Connect apps use the [Issue custom field options (apps)](#api-group-issue-custom-field-options--apps-) operations.** **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteCustomFieldOption parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context from which an option should be deleted. in: path name: contextId required: true schema: format: int64 type: integer - description: The ID of the option to delete. in: path name: optionId required: true schema: format: int64 type: integer responses: "204": description: Returned if the option is deleted. "400": content: application/json: example: "{\"errorMessages\":[\"The custom field doesn't support options.\"],\"errors\":{}}" description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can manage custom field options."],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["The custom field was not found."],"errors":{}}' description: Returned if the field, the context, or the option is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete custom field options (context) tags: - Issue custom field options x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:field.option:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/{contextId}/project": put: deprecated: false description: |- Assigns a custom field context to projects. If any project in the request is assigned to any context of the custom field, the operation fails. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: assignProjectsToCustomFieldContext parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer requestBody: content: application/json: example: projectIds: - "10001" - "10005" - "10006" schema: $ref: "#/components/schemas/ProjectIds" required: true responses: "204": content: application/json: schema: {} description: Returned if operation is successful. "400": content: application/json: example: '{"errorMessages":["The projectIds must not contain duplicates."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The context was not found."],"errors":{}}' description: Returned if the custom field, context, or project is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Assign custom field context to projects tags: - Issue custom field contexts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/context/{contextId}/project/remove": post: deprecated: false description: |- Removes a custom field context from projects. A custom field context without any projects applies to all projects. Removing all projects from a custom field context would result in it applying to all projects. If any project in the request is not assigned to the context, or the operation would result in two global contexts for the field, the operation fails. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeCustomFieldContextFromProjects parameters: - description: The ID of the custom field. in: path name: fieldId required: true schema: type: string - description: The ID of the context. in: path name: contextId required: true schema: format: int64 type: integer requestBody: content: application/json: example: projectIds: - "10001" - "10005" - "10006" schema: $ref: "#/components/schemas/ProjectIds" required: true responses: "204": content: application/json: schema: {} description: Returned if the custom field context is removed from the projects. "400": content: application/json: example: '{"errorMessages":["The projectIds must not contain duplicates."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access custom field contexts."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The context was not found."],"errors":{}}' description: Returned if the custom field, context, or one or more projects are not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove custom field context from projects tags: - Issue custom field contexts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field:jira state: Beta x-experimental: true "/rest/api/3/field/{fieldId}/contexts": get: deprecated: true description: |- Returns a [paginated](#pagination) list of the contexts a field is used in. Deprecated, use [ Get custom field contexts](#api-rest-api-3-field-fieldId-context-get). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getContextsForFieldDeprecated parameters: - description: The ID of the field to return contexts for. in: path name: fieldId required: true schema: type: string - 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: 20 format: int32 type: integer responses: "200": content: application/json: example: '{"maxResults":1,"startAt":0,"total":5,"isLast":false,"values":[{"id":10001,"name":"Default Context"}]}' schema: $ref: "#/components/schemas/PageBeanContext" 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-project - {} summary: Get contexts for a field tags: - Issue fields x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:field:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta "/rest/api/3/field/{fieldId}/screens": get: deprecated: false description: |- Returns a [paginated](#pagination) list of the screens a field is used in. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getScreensForField parameters: - description: The ID of the field to return screens for. in: path name: fieldId required: true schema: type: string - 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: 100 format: int32 type: integer - description: Use [expand](#expansion) to include additional information about screens in the response. This parameter accepts `tab` which returns details about the screen tabs the field is used in. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"maxResults":1,"startAt":0,"total":5,"isLast":false,"values":[{"id":10001,"name":"Default Screen","description":"Provides for the update of all system fields.","tab":{"id":10000,"name":"Fields Tab"}}]}' schema: $ref: "#/components/schemas/PageBeanScreenWithTab" 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-project - {} summary: Get screens for a field tags: - Screens x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:screen:jira - read:avatar:jira - read:project-category:jira - read:project:jira - read:screen-tab:jira state: Beta "/rest/api/3/field/{fieldKey}/option": get: deprecated: false description: |- Returns a [paginated](#pagination) list of all the options of a select list issue field. A select list issue field is a type of [issue field](https://developer.atlassian.com/cloud/jira/platform/modules/issue-field/) that enables a user to select a value from a list of options. Note that this operation **only works for issue field select list options added by Connect apps**, it cannot be used with issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). Jira permissions are not required for the app providing the field. operationId: getAllIssueFieldOptions 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: |- The field key is specified in the following format: **$(app-key)\_\_$(field-key)**. For example, *example-add-on\_\_example-issue-field*. To determine the `fieldKey` value, do one of the following: * open the app's plugin descriptor, then **app-key** is the key at the top and **field-key** is the key in the `jiraIssueFields` module. **app-key** can also be found in the app listing in the Atlassian Universal Plugin Manager. * run [Get fields](#api-rest-api-3-field-get) and in the field details the value is returned in `key`. For example, `"key": "teams-add-on__team-issue-field"` in: path name: fieldKey required: true schema: type: string responses: "200": content: application/json: example: "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/field/fieldKey/option?startAt=0&maxResults=1\",\"nextPage\":\"https://your-domain.atlassian.net/rest/api/3/field/fieldKey/option?startAt=1&maxResults=1\",\"maxResults\":1,\"startAt\":0,\"total\":10,\"isLast\":false,\"values\":[{\"id\":1,\"value\":\"Team 1\",\"properties\":{\"leader\":{\"name\":\"Leader Name\",\"email\":\"lname@example.com\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"},\"config\":{\"scope\":{\"projects\":[],\"projects2\":[{\"id\":1002,\"attributes\":[\"notSelectable\"]},{\"id\":1001,\"attributes\":[\"notSelectable\"]}],\"global\":{}},\"attributes\":[]}}]}" schema: $ref: "#/components/schemas/PageBeanIssueFieldOption" description: Returned if the request is successful. "400": description: Returned if the field is not found or does not support options. "403": description: Returned if the request is not authenticated as a Jira administrator or the app that provided the field. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get all issue field options tags: - Issue custom field options (apps) x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field.option:jira state: Beta post: deprecated: false description: |- Creates an option for a select list issue field. Note that this operation **only works for issue field select list options added by Connect apps**, it cannot be used with issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). Jira permissions are not required for the app providing the field. operationId: createIssueFieldOption parameters: - description: |- The field key is specified in the following format: **$(app-key)\_\_$(field-key)**. For example, *example-add-on\_\_example-issue-field*. To determine the `fieldKey` value, do one of the following: * open the app's plugin descriptor, then **app-key** is the key at the top and **field-key** is the key in the `jiraIssueFields` module. **app-key** can also be found in the app listing in the Atlassian Universal Plugin Manager. * run [Get fields](#api-rest-api-3-field-get) and in the field details the value is returned in `key`. For example, `"key": "teams-add-on__team-issue-field"` in: path name: fieldKey required: true schema: type: string requestBody: content: application/json: example: config: attributes: [] scope: global: {} projects: [] projects2: - attributes: - notSelectable id: 1002 - attributes: - notSelectable id: 1001 properties: description: The team's description founded: 2016-06-06 leader: email: lname@example.com name: Leader Name members: 42 value: Team 1 schema: $ref: "#/components/schemas/IssueFieldOptionCreateBean" required: true responses: "200": content: application/json: example: "{\"id\":1,\"value\":\"Team 1\",\"properties\":{\"leader\":{\"name\":\"Leader Name\",\"email\":\"lname@example.com\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"},\"config\":{\"scope\":{\"projects\":[],\"projects2\":[{\"id\":1002,\"attributes\":[\"notSelectable\"]},{\"id\":1001,\"attributes\":[\"notSelectable\"]}],\"global\":{}},\"attributes\":[]}}" schema: $ref: "#/components/schemas/IssueFieldOption" description: Returned if the request is successful. "400": description: Returned if the option is invalid. "403": description: Returned if the request is not authenticated as a Jira administrator or the app that provided the field. "404": description: Returned if the field is not found or does not support options. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create issue field option tags: - Issue custom field options (apps) x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field.option:jira state: Beta "/rest/api/3/field/{fieldKey}/option/suggestions/edit": get: deprecated: false description: |- Returns a [paginated](#pagination) list of options for a select list issue field that can be viewed and selected by the user. Note that this operation **only works for issue field select list options added by Connect apps**, it cannot be used with issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getSelectableIssueFieldOptions 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: Filters the results to options that are only available in the specified project. in: query name: projectId schema: format: int64 type: integer - description: |- The field key is specified in the following format: **$(app-key)\_\_$(field-key)**. For example, *example-add-on\_\_example-issue-field*. To determine the `fieldKey` value, do one of the following: * open the app's plugin descriptor, then **app-key** is the key at the top and **field-key** is the key in the `jiraIssueFields` module. **app-key** can also be found in the app listing in the Atlassian Universal Plugin Manager. * run [Get fields](#api-rest-api-3-field-get) and in the field details the value is returned in `key`. For example, `"key": "teams-add-on__team-issue-field"` in: path name: fieldKey required: true schema: type: string responses: "200": content: application/json: example: "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/field/fieldKey/option/suggestions?startAt=0&maxResults=1\",\"nextPage\":\"https://your-domain.atlassian.net/rest/api/3/field/fieldKey/option/suggestions?startAt=1&maxResults=1\",\"maxResults\":1,\"startAt\":0,\"total\":10,\"isLast\":false,\"values\":[{\"id\":1,\"value\":\"Team 1\",\"properties\":{\"leader\":{\"name\":\"Leader Name\",\"email\":\"lname@example.com\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"}}]}" schema: $ref: "#/components/schemas/PageBeanIssueFieldOption" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the field is not found or does not support options. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get selectable issue field options tags: - Issue custom field options (apps) x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field.option:jira state: Beta "/rest/api/3/field/{fieldKey}/option/suggestions/search": get: deprecated: false description: |- Returns a [paginated](#pagination) list of options for a select list issue field that can be viewed by the user. Note that this operation **only works for issue field select list options added by Connect apps**, it cannot be used with issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getVisibleIssueFieldOptions 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: format: int32 type: integer - description: Filters the results to options that are only available in the specified project. in: query name: projectId schema: format: int64 type: integer - description: |- The field key is specified in the following format: **$(app-key)\_\_$(field-key)**. For example, *example-add-on\_\_example-issue-field*. To determine the `fieldKey` value, do one of the following: * open the app's plugin descriptor, then **app-key** is the key at the top and **field-key** is the key in the `jiraIssueFields` module. **app-key** can also be found in the app listing in the Atlassian Universal Plugin Manager. * run [Get fields](#api-rest-api-3-field-get) and in the field details the value is returned in `key`. For example, `"key": "teams-add-on__team-issue-field"` in: path name: fieldKey required: true schema: type: string responses: "200": content: application/json: example: "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/field/fieldKey/option/suggestions?startAt=0&maxResults=1\",\"nextPage\":\"https://your-domain.atlassian.net/rest/api/3/field/fieldKey/option/suggestions?startAt=1&maxResults=1\",\"maxResults\":1,\"startAt\":0,\"total\":10,\"isLast\":false,\"values\":[{\"id\":1,\"value\":\"Team 1\",\"properties\":{\"leader\":{\"name\":\"Leader Name\",\"email\":\"lname@example.com\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"}}]}" schema: $ref: "#/components/schemas/PageBeanIssueFieldOption" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the field is not found or does not support options. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get visible issue field options tags: - Issue custom field options (apps) x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field.option:jira state: Beta "/rest/api/3/field/{fieldKey}/option/{optionId}": delete: deprecated: false description: |- Deletes an option from a select list issue field. Note that this operation **only works for issue field select list options added by Connect apps**, it cannot be used with issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). Jira permissions are not required for the app providing the field. operationId: deleteIssueFieldOption parameters: - description: |- The field key is specified in the following format: **$(app-key)\_\_$(field-key)**. For example, *example-add-on\_\_example-issue-field*. To determine the `fieldKey` value, do one of the following: * open the app's plugin descriptor, then **app-key** is the key at the top and **field-key** is the key in the `jiraIssueFields` module. **app-key** can also be found in the app listing in the Atlassian Universal Plugin Manager. * run [Get fields](#api-rest-api-3-field-get) and in the field details the value is returned in `key`. For example, `"key": "teams-add-on__team-issue-field"` in: path name: fieldKey required: true schema: type: string - description: The ID of the option to be deleted. in: path name: optionId required: true schema: format: int64 type: integer responses: "204": content: application/json: schema: {} description: Returned if the field option is deleted. "403": description: Returned if the request is not authenticated as a Jira administrator or the app that provided the field. "404": description: Returned if the field or option is not found. "409": description: Returned if the option is selected for the field in any issue. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete issue field option tags: - Issue custom field options (apps) x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:field.option:jira state: Beta get: deprecated: false description: |- Returns an option from a select list issue field. Note that this operation **only works for issue field select list options added by Connect apps**, it cannot be used with issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). Jira permissions are not required for the app providing the field. operationId: getIssueFieldOption parameters: - description: |- The field key is specified in the following format: **$(app-key)\_\_$(field-key)**. For example, *example-add-on\_\_example-issue-field*. To determine the `fieldKey` value, do one of the following: * open the app's plugin descriptor, then **app-key** is the key at the top and **field-key** is the key in the `jiraIssueFields` module. **app-key** can also be found in the app listing in the Atlassian Universal Plugin Manager. * run [Get fields](#api-rest-api-3-field-get) and in the field details the value is returned in `key`. For example, `"key": "teams-add-on__team-issue-field"` in: path name: fieldKey required: true schema: type: string - description: The ID of the option to be returned. in: path name: optionId required: true schema: format: int64 type: integer responses: "200": content: application/json: example: "{\"id\":1,\"value\":\"Team 1\",\"properties\":{\"leader\":{\"name\":\"Leader Name\",\"email\":\"lname@example.com\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"},\"config\":{\"scope\":{\"projects\":[],\"projects2\":[{\"id\":1002,\"attributes\":[\"notSelectable\"]},{\"id\":1001,\"attributes\":[\"notSelectable\"]}],\"global\":{}},\"attributes\":[]}}" schema: $ref: "#/components/schemas/IssueFieldOption" description: Returned if the requested option is returned. "400": description: Returned if the field is not found or does not support options. "403": description: Returned if the request is not authenticated as a Jira administrator or the app that provided the field. "404": description: Returned if the option is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue field option tags: - Issue custom field options (apps) x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field.option:jira state: Beta put: deprecated: false description: |- Updates or creates an option for a select list issue field. This operation requires that the option ID is provided when creating an option, therefore, the option ID needs to be specified as a path and body parameter. The option ID provided in the path and body must be identical. Note that this operation **only works for issue field select list options added by Connect apps**, it cannot be used with issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). Jira permissions are not required for the app providing the field. operationId: updateIssueFieldOption parameters: - description: |- The field key is specified in the following format: **$(app-key)\_\_$(field-key)**. For example, *example-add-on\_\_example-issue-field*. To determine the `fieldKey` value, do one of the following: * open the app's plugin descriptor, then **app-key** is the key at the top and **field-key** is the key in the `jiraIssueFields` module. **app-key** can also be found in the app listing in the Atlassian Universal Plugin Manager. * run [Get fields](#api-rest-api-3-field-get) and in the field details the value is returned in `key`. For example, `"key": "teams-add-on__team-issue-field"` in: path name: fieldKey required: true schema: type: string - description: The ID of the option to be updated. in: path name: optionId required: true schema: format: int64 type: integer requestBody: content: application/json: example: config: attributes: [] scope: global: {} projects: [] projects2: - attributes: - notSelectable id: 1002 - attributes: - notSelectable id: 1001 id: 1 properties: description: The team's description founded: 2016-06-06 leader: email: lname@example.com name: Leader Name members: 42 value: Team 1 schema: $ref: "#/components/schemas/IssueFieldOption" required: true responses: "200": content: application/json: example: "{\"id\":1,\"value\":\"Team 1\",\"properties\":{\"leader\":{\"name\":\"Leader Name\",\"email\":\"lname@example.com\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"},\"config\":{\"scope\":{\"projects\":[],\"projects2\":[{\"id\":1002,\"attributes\":[\"notSelectable\"]},{\"id\":1001,\"attributes\":[\"notSelectable\"]}],\"global\":{}},\"attributes\":[]}}" schema: $ref: "#/components/schemas/IssueFieldOption" description: Returned if the option is updated or created. "400": description: Returned if the option is invalid, or the *ID* in the request object does not match the *optionId* parameter. "403": description: Returned if the request is not authenticated as a Jira administrator or the app that provided the field. "404": description: Returned if field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update issue field option tags: - Issue custom field options (apps) x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field.option:jira state: Beta "/rest/api/3/field/{fieldKey}/option/{optionId}/issue": delete: deprecated: false description: |- Deselects an issue-field select-list option from all issues where it is selected. A different option can be selected to replace the deselected option. The update can also be limited to a smaller set of issues by using a JQL query. Connect and Forge app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) can override the screen security configuration using `overrideScreenSecurity` and `overrideEditableFlag`. This is an [asynchronous operation](#async). The response object contains a link to the long-running task. Note that this operation **only works for issue field select list options added by Connect apps**, it cannot be used with issue field select list options created in Jira or using operations from the [Issue custom field options](#api-group-Issue-custom-field-options) resource. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). Jira permissions are not required for the app providing the field. operationId: replaceIssueFieldOption parameters: - description: The ID of the option that will replace the currently selected option. in: query name: replaceWith schema: format: int64 type: integer - description: A JQL query that specifies the issues to be updated. For example, *project=10000*. in: query name: jql schema: type: string - description: Whether screen security is overridden to enable hidden fields to be edited. Available to Connect and Forge app users with admin permission. in: query name: overrideScreenSecurity schema: default: false type: boolean - description: Whether screen security is overridden to enable uneditable fields to be edited. Available to Connect and Forge app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). in: query name: overrideEditableFlag schema: default: false type: boolean - description: |- The field key is specified in the following format: **$(app-key)\_\_$(field-key)**. For example, *example-add-on\_\_example-issue-field*. To determine the `fieldKey` value, do one of the following: * open the app's plugin descriptor, then **app-key** is the key at the top and **field-key** is the key in the `jiraIssueFields` module. **app-key** can also be found in the app listing in the Atlassian Universal Plugin Manager. * run [Get fields](#api-rest-api-3-field-get) and in the field details the value is returned in `key`. For example, `"key": "teams-add-on__team-issue-field"` in: path name: fieldKey required: true schema: type: string - description: The ID of the option to be deselected. in: path name: optionId required: true schema: format: int64 type: integer responses: "303": content: application/json: example: "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/task/1\",\"id\":\"1\",\"description\":\"Remove option 1 from issues matched by '*', and replace with option 3\",\"status\":\"COMPLETE\",\"result\":{\"modifiedIssues\":[10001,10010],\"unmodifiedIssues\":[10005],\"errors\":{\"errors\":{},\"errorMessages\":[\"Option 2 cannot be set on issue MKY-5 as it is not in the correct scope\"],\"httpStatusCode\":{\"empty\":false,\"present\":true}}},\"elapsedRuntime\":42}" schema: $ref: "#/components/schemas/TaskProgressBeanRemoveOptionFromIssuesResult" description: Returned if the long-running task to deselect the option is started. "400": description: Returned if the request is not valid. "403": content: application/json: example: '{"errorMessages":["Connect and Forge app users with Administer Jira global permission can override screen security."],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": description: Returned if the field is not found or does not support options, or the options to be replaced are not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Replace issue field option tags: - Issue custom field options (apps) x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field.option:jira - delete:field.option:jira state: Beta "/rest/api/3/field/{id}": delete: deprecated: false description: |- Deletes a custom field. The custom field is deleted whether it is in the trash or not. See [Edit or delete a custom field](https://confluence.atlassian.com/x/Z44fOw) for more information on trashing and deleting custom fields. This operation is [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteCustomField parameters: - description: The ID of a custom field. in: path name: id required: true schema: type: string responses: "303": content: application/json: schema: $ref: "#/components/schemas/TaskProgressBeanObject" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: |- Returned if any of these are true: * The custom field is locked. * The custom field is used in a issue security scheme or a permission scheme. * The custom field ID format is incorrect. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. "404": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the custom field is not found. "409": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if a task to delete the custom field is running. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete custom field tags: - Issue fields x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:field:jira state: Beta x-experimental: true "/rest/api/3/field/{id}/restore": post: deprecated: false description: |- Restores a custom field from trash. See [Edit or delete a custom field](https://confluence.atlassian.com/x/Z44fOw) for more information on trashing and deleting custom fields. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: restoreCustomField parameters: - description: The ID of a custom field. in: path name: id required: true schema: type: string responses: "200": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. "404": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the custom field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Restore custom field from trash tags: - Issue fields x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field:jira state: Beta x-experimental: true "/rest/api/3/field/{id}/trash": post: deprecated: false description: |- Moves a custom field to trash. See [Edit or delete a custom field](https://confluence.atlassian.com/x/Z44fOw) for more information on trashing and deleting custom fields. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: trashCustomField parameters: - description: The ID of a custom field. in: path name: id required: true schema: type: string responses: "200": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. "404": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the custom field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Move custom field to trash tags: - Issue fields x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:field:jira state: Beta x-experimental: true /rest/api/3/fieldconfiguration: get: deprecated: false description: |- Returns a [paginated](#pagination) list of field configurations. The list can be for all field configurations or a subset determined by any combination of these criteria: * a list of field configuration item IDs. * whether the field configuration is a default. * whether the field configuration name or description contains a query string. Only field configurations used in company-managed (classic) projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllFieldConfigurations 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: The list of field configuration IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`. in: query name: id schema: items: format: int64 type: integer type: array uniqueItems: true - description: If *true* returns default field configurations only. in: query name: isDefault schema: default: false type: boolean - description: The query string used to match against field configuration names and descriptions. in: query name: query schema: default: "" type: string responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":2,"isLast":true,"values":[{"id":10000,"name":"Default Field Configuration","description":"The default field configuration description","isDefault":true},{"id":10001,"name":"My Field Configuration","description":"My field configuration description"}]}' schema: $ref: "#/components/schemas/PageBeanFieldConfigurationDetails" 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 field configurations tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field-configuration:jira state: Beta post: deprecated: false description: |- Creates a field configuration. The field configuration is created with the same field properties as the default configuration, with all the fields being optional. This operation can only create configurations for use in company-managed (classic) projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createFieldConfiguration parameters: [] requestBody: content: application/json: example: description: My field configuration description name: My Field Configuration schema: $ref: "#/components/schemas/FieldConfigurationDetails" required: true responses: "200": content: application/json: example: '{"id":10001,"name":"My Field Configuration","description":"My field configuration description"}' schema: $ref: "#/components/schemas/FieldConfiguration" 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 user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create field configuration tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field-configuration:jira - write:field-configuration:jira state: Beta x-experimental: true "/rest/api/3/fieldconfiguration/{id}": delete: deprecated: false description: |- Deletes a field configuration. This operation can only delete configurations used in company-managed (classic) projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteFieldConfiguration parameters: - description: The ID of the field configuration. in: path name: id required: true schema: format: int64 type: integer responses: "204": content: application/json: schema: {} 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 user does not have the necessary permission. "404": description: Returned if the field configuration is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete field configuration tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:field-configuration:jira state: Beta x-experimental: true put: deprecated: false description: |- Updates a field configuration. The name and the description provided in the request override the existing values. This operation can only update configurations used in company-managed (classic) projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateFieldConfiguration parameters: - description: The ID of the field configuration. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: description: A brand new description name: My Modified Field Configuration schema: $ref: "#/components/schemas/FieldConfigurationDetails" required: true responses: "204": content: application/json: schema: {} 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 user does not have the necessary permission. "404": description: Returned if the field configuration is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update field configuration tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field-configuration:jira state: Beta x-experimental: true "/rest/api/3/fieldconfiguration/{id}/fields": get: deprecated: false description: |- Returns a [paginated](#pagination) list of all fields for a configuration. Only the fields from configurations used in company-managed (classic) projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getFieldConfigurationItems parameters: - description: The ID of the field configuration. in: path name: id required: true schema: format: int64 type: integer - 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 responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":2,"isLast":true,"values":[{"id":"environment","description":"For example operating system, software platform and/or hardware specifications (include as appropriate for the issue).","isHidden":false,"isRequired":false},{"id":"description","isHidden":false,"isRequired":false}]}' schema: $ref: "#/components/schemas/PageBeanFieldConfigurationItem" 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. "404": description: Returned if the field configuration is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get field configuration items tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field-configuration:jira state: Beta put: deprecated: false description: |- Updates fields in a field configuration. The properties of the field configuration fields provided override the existing values. This operation can only update field configurations used in company-managed (classic) projects. The operation can set the renderer for text fields to the default text renderer (`text-renderer`) or wiki style renderer (`wiki-renderer`). However, the renderer cannot be updated for fields using the autocomplete renderer (`autocomplete-renderer`). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateFieldConfigurationItems parameters: - description: The ID of the field configuration. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: fieldConfigurationItems: - description: The new description of this item. id: customfield_10012 isHidden: false - id: customfield_10011 isRequired: true - description: Another new description. id: customfield_10010 isHidden: false isRequired: false renderer: wiki-renderer schema: $ref: "#/components/schemas/FieldConfigurationItemsDetails" required: true responses: "204": content: application/json: schema: {} 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 user does not have the necessary permission. "404": description: Returned if the field configuration is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update field configuration items tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field-configuration:jira state: Beta x-experimental: true /rest/api/3/fieldconfigurationscheme: get: deprecated: false description: |- Returns a [paginated](#pagination) list of field configuration schemes. Only field configuration schemes used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllFieldConfigurationSchemes 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: The list of field configuration scheme IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`. in: query name: id schema: items: format: int64 type: integer type: array uniqueItems: true responses: "200": content: application/json: example: '{"maxResults":10,"startAt":0,"total":3,"isLast":true,"values":[{"id":"10000","name":"Field Configuration Scheme for Bugs","description":"This field configuration scheme is for bugs only."},{"id":"10001","name":"Field Configuration Scheme for software related projects","description":"We can use this one for software projects."},{"id":"10002","name":"Field Configuration Scheme for Epics","description":"Use this one for Epic issue type."}]}' schema: $ref: "#/components/schemas/PageBeanFieldConfigurationScheme" 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 user does not have the necessary permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get all field configuration schemes tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field-configuration-scheme:jira state: Beta post: deprecated: false description: |- Creates a field configuration scheme. This operation can only create field configuration schemes used in company-managed (classic) projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createFieldConfigurationScheme parameters: [] requestBody: content: application/json: example: description: We can use this one for software projects. name: Field Configuration Scheme for software related projects schema: $ref: "#/components/schemas/UpdateFieldConfigurationSchemeDetails" description: The details of the field configuration scheme. required: true responses: "201": content: application/json: example: '{"id":"10002","name":"Field Configuration Scheme for software related projects","description":"We can use this one for software projects."}' schema: $ref: "#/components/schemas/FieldConfigurationScheme" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["A field configuration scheme is using this name."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access field configurations."],"errors":{}}' description: Returned if the user does not have the necessary permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create field configuration scheme tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field-configuration-scheme:jira - read:field-configuration-scheme:jira state: Beta x-experimental: true /rest/api/3/fieldconfigurationscheme/mapping: get: deprecated: false description: |- Returns a [paginated](#pagination) list of field configuration issue type items. Only items used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getFieldConfigurationSchemeMappings 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: "The list of field configuration scheme IDs. To include multiple field configuration schemes separate IDs with ampersand: `fieldConfigurationSchemeId=10000&fieldConfigurationSchemeId=10001`." in: query name: fieldConfigurationSchemeId schema: items: example: 10020 format: int64 type: integer maxItems: 50 minItems: 1 type: array uniqueItems: true responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":5,"isLast":true,"values":[{"fieldConfigurationSchemeId":"10020","issueTypeId":"10000","fieldConfigurationId":"10010"},{"fieldConfigurationSchemeId":"10020","issueTypeId":"10001","fieldConfigurationId":"10010"},{"fieldConfigurationSchemeId":"10021","issueTypeId":"10002","fieldConfigurationId":"10000"},{"fieldConfigurationSchemeId":"10022","issueTypeId":"default","fieldConfigurationId":"10011"},{"fieldConfigurationSchemeId":"10023","issueTypeId":"default","fieldConfigurationId":"10000"}]}' schema: $ref: "#/components/schemas/PageBeanFieldConfigurationIssueTypeItem" 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 user does not have the necessary permission. "404": description: Returned if no field configuration schemes are found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get field configuration issue type items tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field-configuration-scheme:jira state: Beta /rest/api/3/fieldconfigurationscheme/project: get: deprecated: false description: |- Returns a [paginated](#pagination) list of field configuration schemes and, for each scheme, a list of the projects that use it. The list is sorted by field configuration scheme ID. The first item contains the list of project IDs assigned to the default field configuration scheme. Only field configuration schemes used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getFieldConfigurationSchemeProjectMapping 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: "The list of project IDs. To include multiple projects, separate IDs with ampersand: `projectId=10000&projectId=10001`." in: query name: projectId required: true schema: items: format: int64 type: integer type: array uniqueItems: true responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":5,"isLast":true,"values":[{"projectIds":["10","11"]},{"fieldConfigurationScheme":{"id":"10002","name":"Field Configuration Scheme for software related projects","description":"We can use this one for software projects."},"projectIds":["12","13","14"]}]}' schema: $ref: "#/components/schemas/PageBeanFieldConfigurationSchemeProjects" 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 user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get field configuration schemes for projects tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field-configuration-scheme:jira state: Beta put: deprecated: false description: |- Assigns a field configuration scheme to a project. If the field configuration scheme ID is `null`, the operation assigns the default field configuration scheme. Field configuration schemes can only be assigned to classic projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: assignFieldConfigurationSchemeToProject parameters: [] requestBody: content: application/json: example: fieldConfigurationSchemeId: "10000" projectId: "10000" schema: $ref: "#/components/schemas/FieldConfigurationSchemeProjectAssociation" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["Only classic projects can have field configuration schemes assigned."],"errors":{}}' description: Returned if the project is not a classic project. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access field configurations."],"errors":{}}' description: Returned if the user does not have the necessary permissions. "404": content: application/json: example: '{"errorMessages":["The project was not found."],"errors":{}}' description: Returned if the project is missing. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Assign field configuration scheme to project tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field-configuration-scheme:jira state: Beta "/rest/api/3/fieldconfigurationscheme/{id}": delete: deprecated: false description: |- Deletes a field configuration scheme. This operation can only delete field configuration schemes used in company-managed (classic) projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteFieldConfigurationScheme parameters: - description: The ID of the field configuration scheme. in: path name: id required: true schema: format: int64 type: integer responses: "204": content: application/json: schema: {} 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 user does not have the necessary permission. "404": description: Returned if the field configuration scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete field configuration scheme tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:field-configuration-scheme:jira state: Beta x-experimental: true put: deprecated: false description: |- Updates a field configuration scheme. This operation can only update field configuration schemes used in company-managed (classic) projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateFieldConfigurationScheme parameters: - description: The ID of the field configuration scheme. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: description: We can use this one for software projects. name: Field Configuration Scheme for software related projects schema: $ref: "#/components/schemas/UpdateFieldConfigurationSchemeDetails" description: The details of the field configuration scheme. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["A field configuration scheme is using this name."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access field configurations."],"errors":{}}' description: Returned if the user does not have the necessary permissions. "404": content: application/json: example: '{"errorMessages":["The field configuration scheme was not found."],"errors":{}}' description: Returned if the field configuration scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update field configuration scheme tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field-configuration-scheme:jira state: Beta x-experimental: true "/rest/api/3/fieldconfigurationscheme/{id}/mapping": put: deprecated: false description: |- Assigns issue types to field configurations on field configuration scheme. This operation can only modify field configuration schemes used in company-managed (classic) projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setFieldConfigurationSchemeMapping parameters: - description: The ID of the field configuration scheme. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: mappings: - fieldConfigurationId: "10000" issueTypeId: default - fieldConfigurationId: "10002" issueTypeId: "10001" - fieldConfigurationId: "10001" issueTypeId: "10002" schema: $ref: "#/components/schemas/AssociateFieldConfigurationsWithIssueTypesRequest" required: true responses: "204": content: application/json: schema: {} 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 user does not have the necessary permission. "404": description: Returned if the field configuration scheme, the field configuration, or the issue type is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Assign issue types to field configurations tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field-configuration-scheme:jira - read:field-configuration-scheme:jira state: Beta x-experimental: true "/rest/api/3/fieldconfigurationscheme/{id}/mapping/delete": post: deprecated: false description: |- Removes issue types from the field configuration scheme. This operation can only modify field configuration schemes used in company-managed (classic) projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeIssueTypesFromGlobalFieldConfigurationScheme parameters: - description: The ID of the field configuration scheme. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: issueTypeIds: - "10000" - "10001" - "10002" schema: $ref: "#/components/schemas/IssueTypeIdsToRemove" description: The issue type IDs to remove. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The issueTypeIds must not contain duplicates."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is not valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access field configurations."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["The field configuration scheme was not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the field configuration scheme or the issue types are not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove issue types from field configuration scheme tags: - Issue field configurations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:field-configuration-scheme:jira state: Beta x-experimental: true /rest/api/3/filter: post: deprecated: false description: |- Creates a filter. The filter is shared according to the [default share scope](#api-rest-api-3-filter-post). The filter is not selected as a favorite. **[Permissions](#permissions) required:** Permission to access Jira. operationId: createFilter parameters: - description: |- Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include: * `sharedUsers` Returns the users that the filter is shared with. This includes users that can browse projects that the filter is shared with. If you don't specify `sharedUsers`, then the `sharedUsers` object is returned but it doesn't list any users. The list of users returned is limited to 1000, to access additional users append `[start-index:end-index]` to the expand request. For example, to access the next 1000 users, use `?expand=sharedUsers[1001:2000]`. * `subscriptions` Returns the users that are subscribed to the filter. If you don't specify `subscriptions`, the `subscriptions` object is returned but it doesn't list any subscriptions. The list of subscriptions returned is limited to 1000, to access additional subscriptions append `[start-index:end-index]` to the expand request. For example, to access the next 1000 subscriptions, use `?expand=subscriptions[1001:2000]`. in: query name: expand schema: type: string - description: "EXPERIMENTAL: Whether share permissions are overridden to enable filters with any share permissions to be created. Available to users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg)." in: query name: overrideSharePermissions schema: default: false type: boolean requestBody: content: application/json: example: description: Lists all open bugs jql: type = Bug and resolution is empty name: All Open Bugs schema: $ref: "#/components/schemas/Filter" description: The filter to create. required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/filter/10000","id":"10000","name":"All Open Bugs","description":"Lists all open bugs","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"type = Bug and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10000","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=type%20%3D%20Bug%20and%20resolutino%20is%20empty","favourite":true,"favouritedCount":0,"sharePermissions":[],"editPermissions":[],"subscriptions":{"size":0,"items":[],"max-results":0,"start-index":0,"end-index":0}}' schema: $ref: "#/components/schemas/Filter" description: Returned if the request is successful. "400": description: Returned if the request object is invalid. For example, the `name` is not unique or the project ID is not specified for a project role share permission. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Create filter tags: - Filters x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:filter:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - write:filter:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta /rest/api/3/filter/defaultShareScope: get: deprecated: false description: |- Returns the default sharing settings for new filters and dashboards for a user. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getDefaultShareScope parameters: [] responses: "200": content: application/json: example: '{"scope":"GLOBAL"}' schema: $ref: "#/components/schemas/DefaultShareScope" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get default share scope tags: - Filter sharing x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:filter.default-share-scope:jira state: Beta put: deprecated: false description: |- Sets the default sharing for new filters and dashboards for a user. **[Permissions](#permissions) required:** Permission to access Jira. operationId: setDefaultShareScope parameters: [] requestBody: content: application/json: example: scope: GLOBAL schema: $ref: "#/components/schemas/DefaultShareScope" required: true responses: "200": content: application/json: example: '{"scope":"GLOBAL"}' schema: $ref: "#/components/schemas/DefaultShareScope" description: Returned if the request is successful. "400": description: Returned if an invalid scope is set. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Set default share scope tags: - Filter sharing x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:filter.default-share-scope:jira - read:filter.default-share-scope:jira state: Beta /rest/api/3/filter/favourite: get: deprecated: false description: |- Returns the visible favorite filters of the user. This operation can be accessed anonymously. **[Permissions](#permissions) required:** A favorite filter is only visible to the user where the filter is: * owned by the user. * shared with a group that the user is a member of. * shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * shared with a public project. * shared with the public. For example, if the user favorites a public filter that is subsequently made private that filter is not returned by this operation. operationId: getFavouriteFilters parameters: - description: |- Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include: * `sharedUsers` Returns the users that the filter is shared with. This includes users that can browse projects that the filter is shared with. If you don't specify `sharedUsers`, then the `sharedUsers` object is returned but it doesn't list any users. The list of users returned is limited to 1000, to access additional users append `[start-index:end-index]` to the expand request. For example, to access the next 1000 users, use `?expand=sharedUsers[1001:2000]`. * `subscriptions` Returns the users that are subscribed to the filter. If you don't specify `subscriptions`, the `subscriptions` object is returned but it doesn't list any subscriptions. The list of subscriptions returned is limited to 1000, to access additional subscriptions append `[start-index:end-index]` to the expand request. For example, to access the next 1000 subscriptions, use `?expand=subscriptions[1001:2000]`. in: query name: expand schema: type: string responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/filter/10000","id":"10000","name":"All Open Bugs","description":"Lists all open bugs","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"type = Bug and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10000","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=type%20%3D%20Bug%20and%20resolutino%20is%20empty","favourite":true,"favouritedCount":0,"sharePermissions":[],"editPermissions":[],"subscriptions":{"size":0,"items":[],"max-results":0,"start-index":0,"end-index":0}},{"self":"https://your-domain.atlassian.net/rest/api/3/filter/10010","id":"10010","name":"My issues","description":"Issues assigned to me","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"assignee = currentUser() and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10010","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=assignee+in+%28currentUser%28%29%29+and+resolution+is+empty","favourite":true,"favouritedCount":0,"sharePermissions":[{"id":10000,"type":"global"},{"id":10010,"type":"project","project":{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}}],"editPermissions":[],"subscriptions":{"size":0,"items":[],"max-results":0,"start-index":0,"end-index":0}}]' schema: items: $ref: "#/components/schemas/Filter" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get favorite filters tags: - Filters x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:filter:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:jql:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira state: Beta /rest/api/3/filter/my: get: deprecated: false description: |- Returns the filters owned by the user. If `includeFavourites` is `true`, the user's visible favorite filters are also returned. **[Permissions](#permissions) required:** Permission to access Jira, however, a favorite filters is only visible to the user where the filter is: * owned by the user. * shared with a group that the user is a member of. * shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * shared with a public project. * shared with the public. For example, if the user favorites a public filter that is subsequently made private that filter is not returned by this operation. operationId: getMyFilters parameters: - description: |- Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include: * `sharedUsers` Returns the users that the filter is shared with. This includes users that can browse projects that the filter is shared with. If you don't specify `sharedUsers`, then the `sharedUsers` object is returned but it doesn't list any users. The list of users returned is limited to 1000, to access additional users append `[start-index:end-index]` to the expand request. For example, to access the next 1000 users, use `?expand=sharedUsers[1001:2000]`. * `subscriptions` Returns the users that are subscribed to the filter. If you don't specify `subscriptions`, the `subscriptions` object is returned but it doesn't list any subscriptions. The list of subscriptions returned is limited to 1000, to access additional subscriptions append `[start-index:end-index]` to the expand request. For example, to access the next 1000 subscriptions, use `?expand=subscriptions[1001:2000]`. in: query name: expand schema: type: string - description: Include the user's favorite filters in the response. in: query name: includeFavourites schema: default: false type: boolean responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/filter/10000","id":"10000","name":"All Open Bugs","description":"Lists all open bugs","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"type = Bug and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10000","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=type%20%3D%20Bug%20and%20resolutino%20is%20empty","favourite":true,"favouritedCount":0,"sharePermissions":[],"editPermissions":[],"subscriptions":{"size":0,"items":[],"max-results":0,"start-index":0,"end-index":0}},{"self":"https://your-domain.atlassian.net/rest/api/3/filter/10010","id":"10010","name":"My issues","description":"Issues assigned to me","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"assignee = currentUser() and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10010","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=assignee+in+%28currentUser%28%29%29+and+resolution+is+empty","favourite":true,"favouritedCount":0,"sharePermissions":[{"id":10000,"type":"global"},{"id":10010,"type":"project","project":{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}}],"editPermissions":[],"subscriptions":{"size":0,"items":[],"max-results":0,"start-index":0,"end-index":0}}]' schema: items: $ref: "#/components/schemas/Filter" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get my filters tags: - Filters x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:filter:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:jql:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira state: Beta /rest/api/3/filter/search: get: deprecated: false description: |- Returns a [paginated](#pagination) list of filters. Use this operation to get: * specific filters, by defining `id` only. * filters that match all of the specified attributes. For example, all filters for a user with a particular word in their name. When multiple attributes are specified only filters matching all attributes are returned. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None, however, only the following filters that match the query parameters are returned: * filters owned by the user. * filters shared with a group that the user is a member of. * filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * filters shared with a public project. * filters shared with the public. operationId: getFiltersPaginated parameters: - description: String used to perform a case-insensitive partial match with `name`. in: query name: filterName schema: type: string - description: User account ID used to return filters with the matching `owner.accountId`. This parameter cannot be used with `owner`. in: query name: accountId schema: maxLength: 128 type: string - description: This parameter is deprecated because of privacy changes. Use `accountId` instead. See the [migration guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. User name used to return filters with the matching `owner.name`. This parameter cannot be used with `accountId`. in: query name: owner schema: type: string - description: As a group's name can change, use of `groupId` is recommended to identify a group. Group name used to returns filters that are shared with a group that matches `sharePermissions.group.groupname`. This parameter cannot be used with the `groupId` parameter. in: query name: groupname schema: type: string - description: Group ID used to returns filters that are shared with a group that matches `sharePermissions.group.groupId`. This parameter cannot be used with the `groupname` parameter. in: query name: groupId schema: type: string - description: Project ID used to returns filters that are shared with a project that matches `sharePermissions.project.id`. in: query name: projectId schema: format: int64 type: integer - description: The list of filter IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`. Do not exceed 200 filter IDs. in: query name: id schema: items: format: int64 type: integer type: array uniqueItems: true - description: |- [Order](#ordering) the results by a field: * `description` Sorts by filter description. Note that this sorting works independently of whether the expand to display the description field is in use. * `favourite_count` Sorts by the count of how many users have this filter as a favorite. * `is_favourite` Sorts by whether the filter is marked as a favorite. * `id` Sorts by filter ID. * `name` Sorts by filter name. * `owner` Sorts by the ID of the filter owner. * `is_shared` Sorts by whether the filter is shared. in: query name: orderBy schema: default: name enum: - description - -description - +description - favourite_count - -favourite_count - +favourite_count - id - -id - +id - is_favourite - -is_favourite - +is_favourite - name - -name - +name - owner - -owner - +owner - is_shared - -is_shared - +is_shared type: string - 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](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include: * `description` Returns the description of the filter. * `favourite` Returns an indicator of whether the user has set the filter as a favorite. * `favouritedCount` Returns a count of how many users have set this filter as a favorite. * `jql` Returns the JQL query that the filter uses. * `owner` Returns the owner of the filter. * `searchUrl` Returns a URL to perform the filter's JQL query. * `sharePermissions` Returns the share permissions defined for the filter. * `editPermissions` Returns the edit permissions defined for the filter. * `isWritable` Returns whether the current user has permission to edit the filter. * `subscriptions` Returns the users that are subscribed to the filter. * `viewUrl` Returns a URL to view the filter. in: query name: expand schema: type: string - description: "EXPERIMENTAL: Whether share permissions are overridden to enable filters with any share permissions to be returned. Available to users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg)." in: query name: overrideSharePermissions schema: default: false type: boolean responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/filter/search?accountId=&maxResults=50&filterName=&orderBy=name&startAt=0&expand=description,owner,jql,searchUrl,viewUrl,favourite,favouritedCount,sharePermissions,editPermissions,isWritable,subscriptions","maxResults":100,"startAt":0,"total":2,"isLast":true,"values":[{"expand":"description,owner,jql,searchUrl,viewUrl,favourite,favouritedCount,sharePermissions,editPermissions,isWritable,subscriptions","self":"https://your-domain.atlassian.net/rest/api/3/filter/10000","id":"10000","name":"All Open Bugs","description":"Lists all open bugs","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"type = Bug and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10000","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=type%20%3D%20Bug%20and%20resolutino%20is%20empty","favourite":false,"favouritedCount":0,"sharePermissions":[],"editPermissions":[],"subscriptions":[]},{"expand":"description,owner,jql,searchUrl,viewUrl,favourite,favouritedCount,sharePermissions,editPermissions,isWritable,subscriptions","self":"https://your-domain.atlassian.net/rest/api/3/filter/10010","id":"10010","name":"My issues","description":"Issues assigned to me","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"assignee = currentUser() and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10010","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=assignee+in+%28currentUser%28%29%29+and+resolution+is+empty","favourite":true,"favouritedCount":123,"sharePermissions":[{"id":10000,"type":"global"},{"id":10010,"type":"project","project":{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}}],"editPermissions":[{"id":10010,"type":"project","project":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY","id":"10002","key":"MKY","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10002","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10002","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10002","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10002"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"},"deleted":true,"retentionTillDate":"2023-06-20T12:39:27.599+0000","deletedDate":"2023-04-21T12:39:27.600+0000","deletedBy":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false}},"role":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}},{"id":10010,"type":"group","group":{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"}}],"subscriptions":[{"id":1,"user":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}}}]}]}' schema: $ref: "#/components/schemas/PageBeanFilterDetails" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: |- Returned if: * `owner` and `accountId` are provided. * `expand` includes an invalid value. * `orderBy` is invalid. * `id` identifies more than 200 filter IDs. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Search for filters tags: - Filters x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:filter:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:jql:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira state: Beta "/rest/api/3/filter/{id}": delete: deprecated: false description: |- Delete a filter. **[Permissions](#permissions) required:** Permission to access Jira, however filters can only be deleted by the creator of the filter or a user with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteFilter parameters: - description: The ID of the filter to delete. in: path name: id required: true schema: format: int64 type: integer responses: "204": description: Returned if the request is successful. "400": description: Returned if the filter is not found. "401": description: Returned if the user does not have permission to delete the filter. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete filter tags: - Filters x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:filter:jira state: Beta get: deprecated: false description: |- Returns a filter. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None, however, the filter is only returned where it is: * owned by the user. * shared with a group that the user is a member of. * shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * shared with a public project. * shared with the public. operationId: getFilter parameters: - description: The ID of the filter to return. in: path name: id required: true schema: format: int64 type: integer - description: |- Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include: * `sharedUsers` Returns the users that the filter is shared with. This includes users that can browse projects that the filter is shared with. If you don't specify `sharedUsers`, then the `sharedUsers` object is returned but it doesn't list any users. The list of users returned is limited to 1000, to access additional users append `[start-index:end-index]` to the expand request. For example, to access the next 1000 users, use `?expand=sharedUsers[1001:2000]`. * `subscriptions` Returns the users that are subscribed to the filter. If you don't specify `subscriptions`, the `subscriptions` object is returned but it doesn't list any subscriptions. The list of subscriptions returned is limited to 1000, to access additional subscriptions append `[start-index:end-index]` to the expand request. For example, to access the next 1000 subscriptions, use `?expand=subscriptions[1001:2000]`. in: query name: expand schema: type: string - description: "EXPERIMENTAL: Whether share permissions are overridden to enable filters with any share permissions to be returned. Available to users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg)." in: query name: overrideSharePermissions schema: default: false type: boolean responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/filter/10000","id":"10000","name":"All Open Bugs","description":"Lists all open bugs","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"type = Bug and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10000","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=type%20%3D%20Bug%20and%20resolutino%20is%20empty","favourite":true,"favouritedCount":0,"sharePermissions":[],"editPermissions":[],"subscriptions":{"size":0,"items":[],"max-results":0,"start-index":0,"end-index":0}}' schema: $ref: "#/components/schemas/Filter" description: Returned if the request is successful. "400": description: Returned if the filter is not found or the user does not have permission to view it. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get filter tags: - Filters x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:filter:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:jql:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira state: Beta put: deprecated: false description: |- Updates a filter. Use this operation to update a filter's name, description, JQL, or sharing. **[Permissions](#permissions) required:** Permission to access Jira, however the user must own the filter. operationId: updateFilter parameters: - description: The ID of the filter to update. in: path name: id required: true schema: format: int64 type: integer - description: |- Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include: * `sharedUsers` Returns the users that the filter is shared with. This includes users that can browse projects that the filter is shared with. If you don't specify `sharedUsers`, then the `sharedUsers` object is returned but it doesn't list any users. The list of users returned is limited to 1000, to access additional users append `[start-index:end-index]` to the expand request. For example, to access the next 1000 users, use `?expand=sharedUsers[1001:2000]`. * `subscriptions` Returns the users that are subscribed to the filter. If you don't specify `subscriptions`, the `subscriptions` object is returned but it doesn't list any subscriptions. The list of subscriptions returned is limited to 1000, to access additional subscriptions append `[start-index:end-index]` to the expand request. For example, to access the next 1000 subscriptions, use `?expand=subscriptions[1001:2000]`. in: query name: expand schema: type: string - description: "EXPERIMENTAL: Whether share permissions are overridden to enable the addition of any share permissions to filters. Available to users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg)." in: query name: overrideSharePermissions schema: default: false type: boolean requestBody: content: application/json: example: description: Lists all open bugs jql: type = Bug and resolution is empty name: All Open Bugs schema: $ref: "#/components/schemas/Filter" description: The filter to update. required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/filter/10000","id":"10000","name":"All Open Bugs","description":"Lists all open bugs","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"type = Bug and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10000","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=type%20%3D%20Bug%20and%20resolutino%20is%20empty","favourite":true,"favouritedCount":0,"sharePermissions":[],"editPermissions":[],"subscriptions":{"size":0,"items":[],"max-results":0,"start-index":0,"end-index":0}}' schema: $ref: "#/components/schemas/Filter" description: Returned if the request is successful. "400": description: Returned if the request object is invalid. For example, the `name` is not unique or the project ID is not specified for a project role share permission. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Update filter tags: - Filters x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:filter:jira - read:filter:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:jql:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira state: Beta "/rest/api/3/filter/{id}/columns": delete: deprecated: false description: |- Reset the user's column configuration for the filter to the default. **[Permissions](#permissions) required:** Permission to access Jira, however, columns are only reset for: * filters owned by the user. * filters shared with a group that the user is a member of. * filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * filters shared with a public project. * filters shared with the public. operationId: resetColumns parameters: - description: The ID of the filter. in: path name: id required: true schema: format: int64 type: integer responses: "204": description: Returned if the request is successful. "400": description: |- Returned if: * the filter is not found. * the user does not have permission to view the filter. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Reset columns tags: - Filters x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - delete:filter.column:jira state: Beta - scheme: OAuth2 scopes: - write:jira-work state: Current get: deprecated: false description: |- Returns the columns configured for a filter. The column configuration is used when the filter's results are viewed in *List View* with the *Columns* set to *Filter*. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None, however, column details are only returned for: * filters owned by the user. * filters shared with a group that the user is a member of. * filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * filters shared with a public project. * filters shared with the public. operationId: getColumns parameters: - description: The ID of the filter. in: path name: id required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '[{"label":"Key","value":"issuekey"},{"label":"Summary","value":"summary"}]' schema: items: $ref: "#/components/schemas/ColumnItem" type: array description: Returned if the request is successful. "400": description: Returned if the user does not have permission to view the filter. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if a column configuration is not set for the filter. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get columns tags: - Filters x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:filter.column:jira state: Beta put: deprecated: false description: |- Sets the columns for a filter. Only navigable fields can be set as columns. Use [Get fields](#api-rest-api-3-field-get) to get the list fields in Jira. A navigable field has `navigable` set to `true`. The parameters for this resource are expressed as HTML form data. For example, in curl: `curl -X PUT -d columns=summary -d columns=description https://your-domain.atlassian.net/rest/api/3/filter/10000/columns` **[Permissions](#permissions) required:** Permission to access Jira, however, columns are only set for: * filters owned by the user. * filters shared with a group that the user is a member of. * filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * filters shared with a public project. * filters shared with the public. operationId: setColumns parameters: - description: The ID of the filter. in: path name: id required: true schema: format: int64 type: integer requestBody: content: "*/*": schema: items: type: string type: array multipart/form-data: schema: items: type: string type: array description: The IDs of the fields to set as columns. In the form data, specify each field as `columns=id`, where `id` is the *id* of a field (as seen in the response for [Get fields](#api-rest-api--field-get)). For example, `columns=summary`. responses: "200": content: application/json: schema: {} description: Returned if the request is successful. "400": description: |- Returned if: * a non-navigable field is set as a column. * the user does not have permission to view the filter. "403": description: Returned if the requesting user is not an owner of the filter. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Set columns tags: - Filters x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:filter.column:jira state: Beta "/rest/api/3/filter/{id}/favourite": delete: deprecated: false description: |- Removes a filter as a favorite for the user. Note that this operation only removes filters visible to the user from the user's favorites list. For example, if the user favorites a public filter that is subsequently made private (and is therefore no longer visible on their favorites list) they cannot remove it from their favorites list. **[Permissions](#permissions) required:** Permission to access Jira. operationId: deleteFavouriteForFilter parameters: - description: The ID of the filter. in: path name: id required: true schema: format: int64 type: integer - description: |- Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include: * `sharedUsers` Returns the users that the filter is shared with. This includes users that can browse projects that the filter is shared with. If you don't specify `sharedUsers`, then the `sharedUsers` object is returned but it doesn't list any users. The list of users returned is limited to 1000, to access additional users append `[start-index:end-index]` to the expand request. For example, to access the next 1000 users, use `?expand=sharedUsers[1001:2000]`. * `subscriptions` Returns the users that are subscribed to the filter. If you don't specify `subscriptions`, the `subscriptions` object is returned but it doesn't list any subscriptions. The list of subscriptions returned is limited to 1000, to access additional subscriptions append `[start-index:end-index]` to the expand request. For example, to access the next 1000 subscriptions, use `?expand=subscriptions[1001:2000]`. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/filter/10000","id":"10000","name":"All Open Bugs","description":"Lists all open bugs","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"type = Bug and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10000","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=type%20%3D%20Bug%20and%20resolutino%20is%20empty","favourite":true,"favouritedCount":0,"sharePermissions":[],"editPermissions":[],"subscriptions":{"size":0,"items":[],"max-results":0,"start-index":0,"end-index":0}}' schema: $ref: "#/components/schemas/Filter" description: Returned if the request is successful. "400": description: |- Returned if: * the filter is not found. * the user does not have permission to view the filter. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Remove filter as favorite tags: - Filters x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:filter:jira - read:application-role:jira - read:avatar:jira - read:filter:jira - read:group:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-role:jira - read:project-version:jira - read:project.component:jira - read:project:jira - read:user:jira state: Beta put: deprecated: false description: |- Add a filter as a favorite for the user. **[Permissions](#permissions) required:** Permission to access Jira, however, the user can only favorite: * filters owned by the user. * filters shared with a group that the user is a member of. * filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * filters shared with a public project. * filters shared with the public. operationId: setFavouriteForFilter parameters: - description: The ID of the filter. in: path name: id required: true schema: format: int64 type: integer - description: |- Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include: * `sharedUsers` Returns the users that the filter is shared with. This includes users that can browse projects that the filter is shared with. If you don't specify `sharedUsers`, then the `sharedUsers` object is returned but it doesn't list any users. The list of users returned is limited to 1000, to access additional users append `[start-index:end-index]` to the expand request. For example, to access the next 1000 users, use `?expand=sharedUsers[1001:2000]`. * `subscriptions` Returns the users that are subscribed to the filter. If you don't specify `subscriptions`, the `subscriptions` object is returned but it doesn't list any subscriptions. The list of subscriptions returned is limited to 1000, to access additional subscriptions append `[start-index:end-index]` to the expand request. For example, to access the next 1000 subscriptions, use `?expand=subscriptions[1001:2000]`. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/filter/10000","id":"10000","name":"All Open Bugs","description":"Lists all open bugs","owner":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"jql":"type = Bug and resolution is empty","viewUrl":"https://your-domain.atlassian.net/issues/?filter=10000","searchUrl":"https://your-domain.atlassian.net/rest/api/3/search?jql=type%20%3D%20Bug%20and%20resolutino%20is%20empty","favourite":true,"favouritedCount":0,"sharePermissions":[],"editPermissions":[],"subscriptions":{"size":0,"items":[],"max-results":0,"start-index":0,"end-index":0}}' schema: $ref: "#/components/schemas/Filter" description: Returned if the request is successful. "400": description: |- Returned if: * the filter is not found. * the user does not have permission to favorite the filter. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Add filter as favorite tags: - Filters x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:filter:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - write:filter:jira - read:jql:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira state: Beta "/rest/api/3/filter/{id}/owner": put: deprecated: false description: |- Changes the owner of the filter. **[Permissions](#permissions) required:** Permission to access Jira. However, the user must own the filter or have the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: changeFilterOwner parameters: - description: The ID of the filter to update. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: accountId: 0000-0000-0000-0000 schema: $ref: "#/components/schemas/ChangeFilterOwner" description: The account ID of the new owner of the filter. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: |- Returned when: * The new owner of the filter owns a filter with the same name. * An attempt is made to change owner of the default filter. "403": description: Returned if the requesting user is not an owner of the filter or does not have *Administer Jira* global permission. "404": description: Returned if the filter or the new owner of the filter is not found. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Change filter owner tags: - Filters x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:filter:jira - write:filter:jira state: Beta - scheme: OAuth2 scopes: - write:jira-work state: Current x-experimental: true "/rest/api/3/filter/{id}/permission": get: deprecated: false description: |- Returns the share permissions for a filter. A filter can be shared with groups, projects, all logged-in users, or the public. Sharing with all logged-in users or the public is known as a global share permission. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None, however, share permissions are only returned for: * filters owned by the user. * filters shared with a group that the user is a member of. * filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * filters shared with a public project. * filters shared with the public. operationId: getSharePermissions parameters: - description: The ID of the filter. in: path name: id required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '[{"id":10000,"type":"global"},{"id":10010,"type":"project","project":{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}},{"id":10010,"type":"project","project":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY","id":"10002","key":"MKY","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10002","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10002","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10002","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10002"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"},"deleted":true,"retentionTillDate":"2023-06-20T12:39:27.599+0000","deletedDate":"2023-04-21T12:39:27.600+0000","deletedBy":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false}},"role":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}},{"id":10010,"type":"group","group":{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"}}]' schema: items: $ref: "#/components/schemas/SharePermission" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the filter is not found. * the user does not have permission to view the filter. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get share permissions tags: - Filter sharing x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:filter:jira - read:group:jira - read:project:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-role:jira - read:project-version:jira - read:project.component:jira state: Beta post: deprecated: false description: |- Add a share permissions to a filter. If you add a global share permission (one for all logged-in users or the public) it will overwrite all share permissions for the filter. Be aware that this operation uses different objects for updating share permissions compared to [Update filter](#api-rest-api-3-filter-id-put). **[Permissions](#permissions) required:** *Share dashboards and filters* [global permission](https://confluence.atlassian.com/x/x4dKLg) and the user must own the filter. operationId: addSharePermission parameters: - description: The ID of the filter. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: groupname: jira-administrators rights: 1 type: group schema: $ref: "#/components/schemas/SharePermissionInputBean" required: true responses: "201": content: application/json: example: '[{"id":10000,"type":"global"},{"id":10010,"type":"project","project":{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}},{"id":10010,"type":"project","project":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY","id":"10002","key":"MKY","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10002","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10002","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10002","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10002"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"},"deleted":true,"retentionTillDate":"2023-06-20T12:39:27.599+0000","deletedDate":"2023-04-21T12:39:27.600+0000","deletedBy":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false}},"role":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}},{"id":10010,"type":"group","group":{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"}}]' schema: items: $ref: "#/components/schemas/SharePermission" type: array description: Returned if the request is successful. "400": description: |- Returned if: * the request object is invalid. For example, it contains an invalid type, the ID does not match the type, or the project or group is not found. * the user does not own the filter. * the user does not have the required permissions. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the filter is not found. * the user does not have permission to view the filter. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Add share permission tags: - Filter sharing x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:filter:jira - read:filter:jira - read:group:jira - read:project:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-role:jira - read:project-version:jira - read:project.component:jira state: Beta "/rest/api/3/filter/{id}/permission/{permissionId}": delete: deprecated: false description: |- Deletes a share permission from a filter. **[Permissions](#permissions) required:** Permission to access Jira and the user must own the filter. operationId: deleteSharePermission parameters: - description: The ID of the filter. in: path name: id required: true schema: format: int64 type: integer - description: The ID of the share permission. in: path name: permissionId required: true schema: format: int64 type: integer responses: "204": description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the filter is not found. * the user does not own the filter. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete share permission tags: - Filter sharing x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:filter:jira state: Beta get: deprecated: false description: |- Returns a share permission for a filter. A filter can be shared with groups, projects, all logged-in users, or the public. Sharing with all logged-in users or the public is known as a global share permission. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None, however, a share permission is only returned for: * filters owned by the user. * filters shared with a group that the user is a member of. * filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for. * filters shared with a public project. * filters shared with the public. operationId: getSharePermission parameters: - description: The ID of the filter. in: path name: id required: true schema: format: int64 type: integer - description: The ID of the share permission. in: path name: permissionId required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"id":10000,"type":"global"}' schema: $ref: "#/components/schemas/SharePermission" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the filter is not found. * the permission is not found. * the user does not have permission to view the filter. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get share permission tags: - Filter sharing x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:filter:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:issue-type-hierarchy:jira - read:issue-type:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta /rest/api/3/group: delete: deprecated: false description: |- Deletes a group. **[Permissions](#permissions) required:** Site administration (that is, member of the *site-admin* strategic [group](https://confluence.atlassian.com/x/24xjL)). operationId: removeGroup parameters: - in: query name: groupname schema: type: string - description: The ID of the group. This parameter cannot be used with the `groupname` parameter. in: query name: groupId schema: type: string x-showInExample: "true" - description: |- As a group's name can change, use of `swapGroupId` is recommended to identify a group. The group to transfer restrictions to. Only comments and worklogs are transferred. If restrictions are not transferred, comments and worklogs are inaccessible after the deletion. This parameter cannot be used with the `swapGroupId` parameter. in: query name: swapGroup schema: type: string - description: The ID of the group to transfer restrictions to. Only comments and worklogs are transferred. If restrictions are not transferred, comments and worklogs are inaccessible after the deletion. This parameter cannot be used with the `swapGroup` parameter. in: query name: swapGroupId schema: type: string responses: "200": description: Returned if the request is successful. "400": description: Returned if the group name is not specified. "401": description: Returned if the authentication credentials are incorrect or missing from the request. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the group is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove group tags: - Groups x-atlassian-connect-scope: INACCESSIBLE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:group:jira state: Beta get: deprecated: true description: |- This operation is deprecated, use [`group/member`](#api-rest-api-3-group-member-get). Returns all users in a group. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getGroup parameters: - description: |- As a group's name can change, use of `groupId` is recommended to identify a group. The name of the group. This parameter cannot be used with the `groupId` parameter. in: query name: groupname schema: type: string - description: The ID of the group. This parameter cannot be used with the `groupName` parameter. in: query name: groupId schema: type: string x-showInExample: "true" - description: List of fields to expand. in: query name: expand schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/Group" description: Returned if the request is successful. "400": description: Returned if the group name is not specified. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the calling user does not have the Administer Jira global permission. "404": description: Returned if the group is not found. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Get group tags: - Groups x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:group:jira - read:user:jira - read:avatar:jira state: Beta post: deprecated: false description: |- Creates a group. **[Permissions](#permissions) required:** Site administration (that is, member of the *site-admin* [group](https://confluence.atlassian.com/x/24xjL)). operationId: createGroup parameters: [] requestBody: content: application/json: example: name: power-users schema: $ref: "#/components/schemas/AddGroupBean" description: The name of the group. required: true responses: "201": content: application/json: example: '{"name":"power-users","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625","users":{"size":1,"items":[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false}],"max-results":50,"start-index":0,"end-index":0},"expand":"users"}' schema: $ref: "#/components/schemas/Group" description: Returned if the request is successful. "400": description: Returned if group name is not specified or the group name is in use. "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: Create group tags: - Groups x-atlassian-connect-scope: INACCESSIBLE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:group:jira - read:user:jira - write:group:jira - read:avatar:jira state: Beta /rest/api/3/group/bulk: get: deprecated: false description: |- Returns a [paginated](#pagination) list of groups. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: bulkGetGroups 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: The ID of a group. To specify multiple IDs, pass multiple `groupId` parameters. For example, `groupId=5b10a2844c20165700ede21g&groupId=5b10ac8d82e05b22cc7d4ef5`. in: query name: groupId schema: example: 3571b9a7-348f-414a-9087-8e1ea03a7df8 items: example: 3571b9a7-348f-414a-9087-8e1ea03a7df8 type: string type: array uniqueItems: true x-showInExample: "true" - description: The name of a group. To specify multiple names, pass multiple `groupName` parameters. For example, `groupName=administrators&groupName=jira-software-users`. in: query name: groupName schema: items: type: string type: array uniqueItems: true - description: "The access level of a group. Valid values: 'site-admin', 'admin', 'user'." in: query name: accessType schema: type: string - description: "The application key of the product user groups to search for. Valid values: 'jira-servicedesk', 'jira-software', 'jira-product-discovery', 'jira-core'." in: query name: applicationKey schema: type: string responses: "200": content: application/json: example: '{"maxResults":10,"startAt":0,"total":2,"isLast":true,"values":[{"name":"jdog-developers","groupId":"276f955c-63d7-42c8-9520-92d01dca0625"},{"name":"juvenal-bot","groupId":"6e87dc72-4f1f-421f-9382-2fee8b652487"}]}' schema: $ref: "#/components/schemas/PageBeanGroupDetails" 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": content: application/json: example: '{"errorMessages":["Browse users and groups permission is required to view groups."],"errors":{}}' description: Returned if the user does not have the necessary permission. "500": content: application/json: example: "{\"errorMessages\":[\"Couldn't retrieve groups with the site-admin accessType.\"],\"errors\":{}}" description: Returned if the group with the given access level can't be retrieved. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Bulk get groups tags: - Groups x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:group:jira state: Beta x-experimental: true /rest/api/3/group/member: get: deprecated: false description: |- Returns a [paginated](#pagination) list of all users in a group. Note that users are ordered by username, however the username is not returned in the results due to privacy reasons. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getUsersFromGroup parameters: - description: |- As a group's name can change, use of `groupId` is recommended to identify a group. The name of the group. This parameter cannot be used with the `groupId` parameter. in: query name: groupname schema: type: string - description: The ID of the group. This parameter cannot be used with the `groupName` parameter. in: query name: groupId schema: type: string x-showInExample: "true" - description: Include inactive users. in: query name: includeInactiveUsers schema: default: false type: boolean - 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 responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/group/member?groupname=jira-administrators&includeInactiveUsers=false&startAt=2&maxResults=2","nextPage":"https://your-domain.atlassian.net/rest/api/3/group/member?groupname=jira-administrators&includeInactiveUsers=false&startAt=4&maxResults=2","maxResults":2,"startAt":3,"total":5,"isLast":false,"values":[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","name":"","key":"","accountId":"5b10a2844c20165700ede21g","emailAddress":"mia@example.com","avatarUrls":{},"displayName":"Mia","active":true,"timeZone":"Australia/Sydney","accountType":"atlassian"},{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a0effa615349cb016cd8","name":"","key":"","accountId":"5b10a0effa615349cb016cd8","emailAddress":"will@example.com","avatarUrls":{},"displayName":"Will","active":false,"timeZone":"Australia/Sydney","accountType":"atlassian"}]}' schema: $ref: "#/components/schemas/PageBeanUserDetails" description: Returned if the request is successful. "400": description: Returned if the group name is not specified. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the calling user does not have the Administer Jira global permission. "404": description: Returned if the group is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get users from group tags: - Groups x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:group:jira - read:user:jira - read:avatar:jira state: Beta /rest/api/3/group/user: delete: deprecated: false description: |- Removes a user from a group. **[Permissions](#permissions) required:** Site administration (that is, member of the *site-admin* [group](https://confluence.atlassian.com/x/24xjL)). operationId: removeUserFromGroup parameters: - description: |- As a group's name can change, use of `groupId` is recommended to identify a group. The name of the group. This parameter cannot be used with the `groupId` parameter. in: query name: groupname schema: type: string - description: The ID of the group. This parameter cannot be used with the `groupName` parameter. in: query name: groupId schema: type: string x-showInExample: "true" - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId required: true schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" responses: "200": description: Returned if the request is successful. "400": description: |- Returned if: * `groupName` is missing. * `accountId` is missing. "401": description: Returned if the authentication credentials are incorrect or missing from the request. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the group or user are not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove user from group tags: - Groups x-atlassian-connect-scope: INACCESSIBLE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:group:jira state: Beta post: deprecated: false description: |- Adds a user to a group. **[Permissions](#permissions) required:** Site administration (that is, member of the *site-admin* [group](https://confluence.atlassian.com/x/24xjL)). operationId: addUserToGroup parameters: - description: |- As a group's name can change, use of `groupId` is recommended to identify a group. The name of the group. This parameter cannot be used with the `groupId` parameter. in: query name: groupname schema: type: string - description: The ID of the group. This parameter cannot be used with the `groupName` parameter. in: query name: groupId schema: type: string x-showInExample: "true" requestBody: content: application/json: example: accountId: 5b10ac8d82e05b22cc7d4ef5 schema: $ref: "#/components/schemas/UpdateUserToGroupBean" description: The user to add to the group. required: true responses: "201": content: application/json: schema: $ref: "#/components/schemas/Group" description: Returned if the request is successful. "400": description: |- Returned if: * `groupname` is not provided. * `accountId` is missing. "401": description: Returned if the authentication credentials are incorrect or missing from the request. "403": description: Returned if the calling user does not have the necessary permission. "404": description: Returned if the group or user are not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Add user to group tags: - Groups x-atlassian-connect-scope: INACCESSIBLE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:group:jira - read:avatar:jira - read:group:jira - read:user:jira state: Beta /rest/api/3/groups/picker: get: deprecated: false description: |- Returns a list of groups whose names contain a query string. A list of group names can be provided to exclude groups from the results. The primary use case for this resource is to populate a group picker suggestions list. To this end, the returned object includes the `html` field where the matched query term is highlighted in the group name with the HTML strong tag. Also, the groups list is wrapped in a response object that contains a header for use in the picker, specifically *Showing X of Y matching groups*. The list returns with the groups sorted. If no groups match the list criteria, an empty list is returned. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg). Anonymous calls and calls by users without the required permission return an empty list. *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). Without this permission, calls where query is not an exact match to an existing group will return an empty list. operationId: findGroups parameters: - description: This parameter is deprecated, setting it does not affect the results. To find groups containing a particular user, use [Get user groups](#api-rest-api-3-user-groups-get). in: query name: accountId schema: type: string - description: The string to find in group names. in: query name: query schema: example: query type: string - description: |- As a group's name can change, use of `excludeGroupIds` is recommended to identify a group. A group to exclude from the result. To exclude multiple groups, provide an ampersand-separated list. For example, `exclude=group1&exclude=group2`. This parameter cannot be used with the `excludeGroupIds` parameter. in: query name: exclude schema: items: type: string type: array - description: A group ID to exclude from the result. To exclude multiple groups, provide an ampersand-separated list. For example, `excludeId=group1-id&excludeId=group2-id`. This parameter cannot be used with the `excludeGroups` parameter. in: query name: excludeId schema: items: type: string type: array - description: The maximum number of groups to return. The maximum number of groups that can be returned is limited by the system property `jira.ajax.autocomplete.limit`. in: query name: maxResults schema: format: int32 type: integer - description: Whether the search for groups should be case insensitive. in: query name: caseInsensitive schema: default: false type: boolean - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: userName schema: type: string responses: "200": content: application/json: example: '{"header":"Showing 20 of 25 matching groups","total":25,"groups":[{"name":"jdog-developers","html":"jdog-developers","groupId":"276f955c-63d7-42c8-9520-92d01dca0625"},{"name":"juvenal-bot","html":"juvenal-bot","groupId":"6e87dc72-4f1f-421f-9382-2fee8b652487"}]}' schema: $ref: "#/components/schemas/FoundGroups" description: Returned if the request is successful. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Find groups tags: - Groups x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:group:jira state: Beta /rest/api/3/groupuserpicker: get: deprecated: false description: |- Returns a list of users and groups matching a string. The string is used: * for users, to find a case-insensitive match with display name and e-mail address. Note that if a user has hidden their email address in their user profile, partial matches of the email address will not find the user. An exact match is required. * for groups, to find a case-sensitive match with group name. For example, if the string *tin* is used, records with the display name *Tina*, email address *sarah@tinplatetraining.com*, and the group *accounting* would be returned. Optionally, the search can be refined to: * the projects and issue types associated with a custom field, such as a user picker. The search can then be further refined to return only users and groups that have permission to view specific: * projects. * issue types. If multiple projects or issue types are specified, they must be a subset of those enabled for the custom field or no results are returned. For example, if a field is enabled for projects A, B, and C then the search could be limited to projects B and C. However, if the search is limited to projects B and D, nothing is returned. * not return Connect app users and groups. * return groups that have a case-insensitive match with the query. The primary use case for this resource is to populate a picker field suggestion list with users or groups. To this end, the returned object includes an `html` field for each list. This field highlights the matched query term in the item name with the HTML strong tag. Also, each list is wrapped in a response object that contains a header for use in a picker, specifically *Showing X of Y matching groups*. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/yodKLg). operationId: findUsersAndGroups parameters: - description: The search string. in: query name: query required: true schema: type: string - description: The maximum number of items to return in each list. in: query name: maxResults schema: default: 50 format: int32 type: integer - description: Whether the user avatar should be returned. If an invalid value is provided, the default value is used. in: query name: showAvatar schema: default: false type: boolean - description: The custom field ID of the field this request is for. in: query name: fieldId schema: type: string - description: The ID of a project that returned users and groups must have permission to view. To include multiple projects, provide an ampersand-separated list. For example, `projectId=10000&projectId=10001`. This parameter is only used when `fieldId` is present. in: query name: projectId schema: items: type: string type: array - description: The ID of an issue type that returned users and groups must have permission to view. To include multiple issue types, provide an ampersand-separated list. For example, `issueTypeId=10000&issueTypeId=10001`. Special values, such as `-1` (all standard issue types) and `-2` (all subtask issue types), are supported. This parameter is only used when `fieldId` is present. in: query name: issueTypeId schema: items: type: string type: array - description: The size of the avatar to return. If an invalid value is provided, the default value is used. in: query name: avatarSize schema: default: xsmall enum: - xsmall - xsmall@2x - xsmall@3x - small - small@2x - small@3x - medium - medium@2x - medium@3x - large - large@2x - large@3x - xlarge - xlarge@2x - xlarge@3x - xxlarge - xxlarge@2x - xxlarge@3x - xxxlarge - xxxlarge@2x - xxxlarge@3x type: string - description: Whether the search for groups should be case insensitive. in: query name: caseInsensitive schema: default: false type: boolean - description: Whether Connect app users and groups should be excluded from the search results. If an invalid value is provided, the default value is used. in: query name: excludeConnectAddons schema: default: false type: boolean responses: "200": content: application/json: example: '{"users":{"users":[{"accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"mia","key":"mia","html":"Mia Krystof - mia@example.com (mia)","displayName":"Mia Krystof","avatarUrl":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16"}],"total":25,"header":"Showing 20 of 25 matching groups"},"groups":{"header":"Showing 20 of 25 matching groups","total":25,"groups":[{"name":"jdog-developers","html":"jdog-developers","groupId":"276f955c-63d7-42c8-9520-92d01dca0625"},{"name":"juvenal-bot","html":"juvenal-bot","groupId":"6e87dc72-4f1f-421f-9382-2fee8b652487"}]}}' schema: $ref: "#/components/schemas/FoundUsersAndGroups" description: Returned if the request is successful. "400": description: Returned if the query parameter is not provided. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "429": description: Returned if the rate limit is exceeded. User search endpoints share a collective rate limit for the tenant, in addition to Jira's normal rate limiting you may receive a rate limit for user search. Please respect the Retry-After header. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Find users and groups tags: - Group and user picker x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:group:jira - read:user:jira state: Beta /rest/api/3/instance/license: get: deprecated: false description: |- Returns licensing information about the Jira instance. **[Permissions](#permissions) required:** None. operationId: getLicense parameters: [] responses: "200": content: application/json: example: '{"applications":[{"id":"jira-core","plan":"PAID"},{"id":"jira-servicedesk","plan":"FREE"},{"id":"jira-software","plan":"PAID"},{"id":"jira-product-discovery","plan":"FREE"}]}' schema: $ref: "#/components/schemas/License" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get license tags: - Instance information x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:license:jira state: Beta x-experimental: true /rest/api/3/issue: post: deprecated: false description: |- Creates an issue or, where the option to create subtasks is enabled in Jira, a subtask. A transition may be applied, to move the issue or subtask to a workflow step other than the default start step, and issue properties set. The content of the issue or subtask is defined using `update` and `fields`. The fields that can be set in the issue or subtask are determined using the [ Get create issue metadata](#api-rest-api-3-issue-createmeta-get). These are the same fields that appear on the issue's create screen. Note that the `description`, `environment`, and any `textarea` type custom fields (multi-line text fields) take Atlassian Document Format content. Single line custom fields (`textfield`) accept a string and don't handle Atlassian Document Format content. Creating a subtask differs from creating an issue as follows: * `issueType` must be set to a subtask issue type (use [ Get create issue metadata](#api-rest-api-3-issue-createmeta-get) to find subtask issue types). * `parent` must contain the ID or key of the parent issue. In a next-gen project any issue may be made a child providing that the parent and child are members of the same project. **[Permissions](#permissions) required:** *Browse projects* and *Create issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project in which the issue or subtask is created. operationId: createIssue parameters: - description: Whether the project in which the issue is created is added to the user's **Recently viewed** project list, as shown under **Projects** in Jira. When provided, the issue type and request type are added to the user's history for a project. These values are then used to provide defaults on the issue create screen. in: query name: updateHistory schema: default: false type: boolean requestBody: content: application/json: example: fields: assignee: id: 5b109f2e9729b51b54dc274d components: - id: "10000" customfield_10000: 09/Jun/19 customfield_20000: 06/Jul/19 3:25 PM customfield_30000: - "10000" - "10002" customfield_40000: content: - content: - text: Occurs on all orders type: text type: paragraph type: doc version: 1 customfield_50000: content: - content: - text: Could impact day-to-day work. type: text type: paragraph type: doc version: 1 customfield_60000: jira-software-users customfield_70000: - jira-administrators - jira-software-users customfield_80000: value: red description: content: - content: - text: Order entry fails when selecting supplier. type: text type: paragraph type: doc version: 1 duedate: 2019-05-11 environment: content: - content: - text: UAT type: text type: paragraph type: doc version: 1 fixVersions: - id: "10001" issuetype: id: "10000" labels: - bugfix - blitz_test parent: key: PROJ-123 priority: id: "20000" project: id: "10000" reporter: id: 5b10a2844c20165700ede21g security: id: "10000" summary: Main order flow broken timetracking: originalEstimate: "10" remainingEstimate: "5" versions: - id: "10000" update: {} schema: $ref: "#/components/schemas/IssueUpdateDetails" required: true responses: "201": content: application/json: example: '{"id":"10000","key":"ED-24","self":"https://your-domain.atlassian.net/rest/api/3/issue/10000","transition":{"status":200,"errorCollection":{"errorMessages":[],"errors":{}}}}' schema: $ref: "#/components/schemas/CreatedIssue" description: Returned if the request is successful. "400": content: application/json: example: "{\"errorMessages\":[\"Field 'priority' is required\"],\"errors\":{}}" schema: $ref: "#/components/schemas/ErrorCollection" description: |- Returned if the request: * is missing required fields. * contains invalid field values. * contains fields that cannot be set for the issue type. * is by a user who does not have the necessary permission. * is to create a subtype in a project different that of the parent issue. * is for a subtask when the option to create subtasks is disabled. * is invalid for any other reason. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Create issue tags: - Issues x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue:jira - write:comment:jira - write:comment.property:jira - write:attachment:jira - read:issue:jira state: Beta /rest/api/3/issue/bulk: post: deprecated: false description: |- Creates upto **50** issues and, where the option to create subtasks is enabled in Jira, subtasks. Transitions may be applied, to move the issues or subtasks to a workflow step other than the default start step, and issue properties set. The content of each issue or subtask is defined using `update` and `fields`. The fields that can be set in the issue or subtask are determined using the [ Get create issue metadata](#api-rest-api-3-issue-createmeta-get). These are the same fields that appear on the issues' create screens. Note that the `description`, `environment`, and any `textarea` type custom fields (multi-line text fields) take Atlassian Document Format content. Single line custom fields (`textfield`) accept a string and don't handle Atlassian Document Format content. Creating a subtask differs from creating an issue as follows: * `issueType` must be set to a subtask issue type (use [ Get create issue metadata](#api-rest-api-3-issue-createmeta-get) to find subtask issue types). * `parent` the must contain the ID or key of the parent issue. **[Permissions](#permissions) required:** *Browse projects* and *Create issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project in which each issue or subtask is created. operationId: createIssues parameters: [] requestBody: content: application/json: example: issueUpdates: - fields: assignee: id: 5b109f2e9729b51b54dc274d components: - id: "10000" customfield_10000: 09/Jun/19 customfield_20000: 06/Jul/19 3:25 PM customfield_30000: - "10000" - "10002" customfield_40000: content: - content: - text: Occurs on all orders type: text type: paragraph type: doc version: 1 customfield_50000: content: - content: - text: Could impact day-to-day work. type: text type: paragraph type: doc version: 1 customfield_60000: jira-software-users customfield_70000: - jira-administrators - jira-software-users customfield_80000: value: red description: content: - content: - text: Order entry fails when selecting supplier. type: text type: paragraph type: doc version: 1 duedate: 2011-03-11 environment: content: - content: - text: UAT type: text type: paragraph type: doc version: 1 fixVersions: - id: "10001" issuetype: id: "10000" labels: - bugfix - blitz_test priority: id: "20000" project: id: "10000" reporter: id: 5b10a2844c20165700ede21g security: id: "10000" summary: Main order flow broken timetracking: originalEstimate: "10" remainingEstimate: "5" versions: - id: "10000" update: worklog: - add: started: 2019-07-05T11:05:00.000+0000 timeSpent: 60m - fields: assignee: id: 5b109f2e9729b51b54dc274d components: - id: "10000" customfield_10000: 09/Jun/19 customfield_20000: 06/Jul/19 3:25 PM customfield_30000: - "10000" - "10002" customfield_40000: content: - content: - text: Occurs on all orders type: text type: paragraph type: doc version: 1 customfield_50000: content: - content: - text: Could impact day-to-day work. type: text type: paragraph type: doc version: 1 customfield_60000: jira-software-users customfield_70000: - jira-administrators - jira-software-users customfield_80000: value: red description: content: - content: - text: Order remains pending after approved. type: text type: paragraph type: doc version: 1 duedate: 2019-04-16 environment: content: - content: - text: UAT type: text type: paragraph type: doc version: 1 fixVersions: - id: "10001" issuetype: id: "10000" labels: - new_release priority: id: "20000" project: id: "1000" reporter: id: 5b10a2844c20165700ede21g security: id: "10000" summary: Order stuck in pending timetracking: originalEstimate: "15" remainingEstimate: "5" versions: - id: "10000" update: {} schema: $ref: "#/components/schemas/IssuesUpdateBean" required: true responses: "201": content: application/json: example: '{"issues":[{"id":"10000","key":"ED-24","self":"https://your-domain.atlassian.net/rest/api/3/issue/10000","transition":{"status":200,"errorCollection":{"errorMessages":[],"errors":{}}}},{"id":"10001","key":"ED-25","self":"https://your-domain.atlassian.net/rest/api/3/issue/10001"}],"errors":[]}' schema: $ref: "#/components/schemas/CreatedIssues" description: |- Returned if any of the issue or subtask creation requests were successful. A request may be unsuccessful when it: * is missing required fields. * contains invalid field values. * contains fields that cannot be set for the issue type. * is by a user who does not have the necessary permission. * is to create a subtype in a project different that of the parent issue. * is for a subtask when the option to create subtasks is disabled. * is invalid for any other reason. "400": content: application/json: example: '{"issues":[],"errors":[{"status":400,"elementErrors":{"errorMessages":[],"errors":{"issuetype":"The issue type selected is invalid.","project":"Sub-tasks must be created in the same project as the parent."}},"failedElementNumber":0},{"status":400,"elementErrors":{"errorMessages":[],"errors":{"issuetype":"The issue type selected is invalid.","project":"Sub-tasks must be created in the same project as the parent."}},"failedElementNumber":1}]}' schema: $ref: "#/components/schemas/CreatedIssues" description: |- Returned if all requests are invalid. Requests may be unsuccessful when they: * are missing required fields. * contain invalid field values. * contain fields that cannot be set for the issue type. * are by a user who does not have the necessary permission. * are to create a subtype in a project different that of the parent issue. * is for a subtask when the option to create subtasks is disabled. * are invalid for any other reason. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Bulk create issue tags: - Issues x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue:jira - write:comment:jira - write:comment.property:jira - write:attachment:jira - read:issue:jira state: Beta /rest/api/3/issue/createmeta: get: deprecated: false description: |- Returns details of projects, issue types within projects, and, when requested, the create screen fields for each issue type for the user. Use the information to populate the requests in [ Create issue](#api-rest-api-3-issue-post) and [Create issues](#api-rest-api-3-issue-bulk-post). The request can be restricted to specific projects or issue types using the query parameters. The response will contain information for the valid projects, issue types, or project and issue type combinations requested. Note that invalid project, issue type, or project and issue type combinations do not generate errors. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Create issues* [project permission](https://confluence.atlassian.com/x/yodKLg) in the requested projects. operationId: getCreateIssueMeta parameters: - description: List of project IDs. This parameter accepts a comma-separated list. Multiple project IDs can also be provided using an ampersand-separated list. For example, `projectIds=10000,10001&projectIds=10020,10021`. This parameter may be provided with `projectKeys`. in: query name: projectIds schema: items: type: string type: array - description: List of project keys. This parameter accepts a comma-separated list. Multiple project keys can also be provided using an ampersand-separated list. For example, `projectKeys=proj1,proj2&projectKeys=proj3`. This parameter may be provided with `projectIds`. in: query name: projectKeys schema: items: type: string type: array - description: List of issue type IDs. This parameter accepts a comma-separated list. Multiple issue type IDs can also be provided using an ampersand-separated list. For example, `issuetypeIds=10000,10001&issuetypeIds=10020,10021`. This parameter may be provided with `issuetypeNames`. in: query name: issuetypeIds schema: items: type: string type: array - description: List of issue type names. This parameter accepts a comma-separated list. Multiple issue type names can also be provided using an ampersand-separated list. For example, `issuetypeNames=name1,name2&issuetypeNames=name3`. This parameter may be provided with `issuetypeIds`. in: query name: issuetypeNames schema: items: type: string type: array - description: Use [expand](#expansion) to include additional information about issue metadata in the response. This parameter accepts `projects.issuetypes.fields`, which returns information about the fields in the issue creation screen for each issue type. Fields hidden from the screen are not returned. Use the information to populate the `fields` and `update` fields in [Create issue](#api-rest-api-3-issue-post) and [Create issues](#api-rest-api-3-issue-bulk-post). in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"projects":[{"self":"https://your-domain.atlassian.net/rest/api/3/project/ED","id":"10000","key":"ED","name":"Edison Project","avatarUrls":{"16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000&avatarId=10011","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000&avatarId=10011","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000&avatarId=10011","48x48":"https://your-domain.atlassian.net/secure/projectavatar?pid=10000&avatarId=10011"},"issuetypes":[{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","id":"1","description":"An error in the code","iconUrl":"https://your-domain.atlassian.net/images/icons/issuetypes/bug.png","name":"Bug","subtask":false,"fields":{"issuetype":{"required":true,"name":"Issue Type","key":"issuetype","hasDefaultValue":false,"operations":["set"]}}}]}]}' schema: $ref: "#/components/schemas/IssueCreateMetadata" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get create issue metadata tags: - Issues x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-meta:jira - read:avatar:jira - read:field-configuration:jira state: Beta /rest/api/3/issue/picker: get: deprecated: false description: |- Returns lists of issues matching a query string. Use this resource to provide auto-completion suggestions when the user is looking for an issue using a word or string. This operation returns two lists: * `History Search` which includes issues from the user's history of created, edited, or viewed issues that contain the string in the `query` parameter. * `Current Search` which includes issues that match the JQL expression in `currentJQL` and contain the string in the `query` parameter. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getIssuePickerResource parameters: - description: A string to match against text fields in the issue such as title, description, or comments. in: query name: query schema: example: query type: string x-showInExample: "true" - description: A JQL query defining a list of issues to search for the query term. Note that `username` and `userkey` cannot be used as search terms for this parameter, due to privacy reasons. Use `accountId` instead. in: query name: currentJQL schema: type: string - description: The key of an issue to exclude from search results. For example, the issue the user is viewing when they perform this query. in: query name: currentIssueKey schema: type: string - description: The ID of a project that suggested issues must belong to. in: query name: currentProjectId schema: type: string - description: Indicate whether to include subtasks in the suggestions list. in: query name: showSubTasks schema: type: boolean - description: When `currentIssueKey` is a subtask, whether to include the parent issue in the suggestions if it matches the query. in: query name: showSubTaskParent schema: type: boolean responses: "200": content: application/json: schema: $ref: "#/components/schemas/IssuePickerSuggestions" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue picker suggestions tags: - Issue search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-details:jira state: Beta /rest/api/3/issue/properties: post: deprecated: false description: |- Sets or updates a list of entity property values on issues. A list of up to 10 entity properties can be specified along with up to 10,000 issues on which to set or update that list of entity properties. The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON. The maximum length of single issue property value is 32768 characters. This operation can be accessed anonymously. This operation is: * transactional, either all properties are updated in all eligible issues or, when errors occur, no properties are updated. * [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. **[Permissions](#permissions) required:** * *Browse projects* and *Edit issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: bulkSetIssuesPropertiesList parameters: [] requestBody: content: application/json: schema: $ref: "#/components/schemas/IssueEntityProperties" description: Issue properties to be set or updated with values. required: true responses: "303": description: Returned if the operation is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Return if the request is invalid or the user does not have the necessary permission. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect. security: - basicAuth: [] - OAuth2: - write:jira-work summary: Bulk set issues properties by list tags: - Issue properties x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue.property:jira state: Beta x-experimental: true /rest/api/3/issue/properties/multi: post: deprecated: false description: |- Sets or updates entity property values on issues. Up to 10 entity properties can be specified for each issue and up to 100 issues included in the request. The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON. This operation is: * [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. * non-transactional. Updating some entities may fail. Such information will available in the task result. **[Permissions](#permissions) required:** * *Browse projects* and *Edit issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: bulkSetIssuePropertiesByIssue parameters: [] requestBody: content: application/json: example: issues: - issueID: 1000 properties: myProperty: owner: admin weight: 100 - issueID: 1001 properties: myOtherProperty: cost: 150 transportation: car schema: $ref: "#/components/schemas/MultiIssueEntityProperties" description: Details of the issue properties to be set or updated. Note that if an issue is not found, it is ignored. required: true responses: "303": description: Returned if the operation is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Return if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Return if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - write:jira-work summary: Bulk set issue properties by issue tags: - Issue properties x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue.property:jira state: Beta x-experimental: true "/rest/api/3/issue/properties/{propertyKey}": delete: deprecated: false description: |- Deletes a property value from multiple issues. The issues to be updated can be specified by filter criteria. The criteria the filter used to identify eligible issues are: * `entityIds` Only issues from this list are eligible. * `currentValue` Only issues with the property set to this value are eligible. If both criteria is specified, they are joined with the logical *AND*: only issues that satisfy both criteria are considered eligible. If no filter criteria are specified, all the issues visible to the user and where the user has the EDIT\_ISSUES permission for the issue are considered eligible. This operation is: * transactional, either the property is deleted from all eligible issues or, when errors occur, no properties are deleted. * [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. **[Permissions](#permissions) required:** * *Browse projects* [ project permission](https://confluence.atlassian.com/x/yodKLg) for each project containing issues. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * *Edit issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for each issue. operationId: bulkDeleteIssueProperty parameters: - description: The key of the property. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: example: currentValue: deprecated value entityIds: - 10100 - 100010 schema: $ref: "#/components/schemas/IssueFilterForBulkPropertyDelete" required: true responses: "303": description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - write:jira-work summary: Bulk delete issue property tags: - Issue properties x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:issue.property:jira state: Beta put: deprecated: false description: |- Sets a property value on multiple issues. The value set can be a constant or determined by a [Jira expression](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/). Expressions must be computable with constant complexity when applied to a set of issues. Expressions must also comply with the [restrictions](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#restrictions) that apply to all Jira expressions. The issues to be updated can be specified by a filter. The filter identifies issues eligible for update using these criteria: * `entityIds` Only issues from this list are eligible. * `currentValue` Only issues with the property set to this value are eligible. * `hasProperty`: * If *true*, only issues with the property are eligible. * If *false*, only issues without the property are eligible. If more than one criteria is specified, they are joined with the logical *AND*: only issues that satisfy all criteria are eligible. If an invalid combination of criteria is provided, an error is returned. For example, specifying a `currentValue` and `hasProperty` as *false* would not match any issues (because without the property the property cannot have a value). The filter is optional. Without the filter all the issues visible to the user and where the user has the EDIT\_ISSUES permission for the issue are considered eligible. This operation is: * transactional, either all eligible issues are updated or, when errors occur, none are updated. * [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for each project containing issues. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * *Edit issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for each issue. operationId: bulkSetIssueProperty parameters: - description: The key of the property. The maximum length is 255 characters. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: example: filter: currentValue: owner: admin weight: 50 entityIds: - 10100 - 100010 hasProperty: true value: owner: admin weight: 100 schema: $ref: "#/components/schemas/BulkIssuePropertyUpdateRequest" required: true responses: "303": description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - write:jira-work summary: Bulk set issue property tags: - Issue properties x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:jira-expressions:jira - write:issue.property:jira state: Beta /rest/api/3/issue/watching: post: deprecated: false description: |- Returns, for the user, details of the watched status of issues from a list. If an issue ID is invalid, the returned watched status is `false`. This operation requires the **Allow users to watch issues** option to be *ON*. This option is set in General configuration for Jira. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getIsWatchingIssueBulk parameters: [] requestBody: content: application/json: example: issueIds: - "10001" - "10002" - "10005" schema: $ref: "#/components/schemas/IssueList" description: A list of issue IDs. required: true responses: "200": content: application/json: example: '{"issuesIsWatching":{"10001":true,"10002":false,"10005":true}}' schema: $ref: "#/components/schemas/BulkIssueIsWatching" description: Returned if the request is successful "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get is watching issue bulk tags: - Issue watchers x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue.watcher:jira - read:user:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}": delete: deprecated: false description: |- Deletes an issue. An issue cannot be deleted if it has one or more subtasks. To delete an issue with subtasks, set `deleteSubtasks`. This causes the issue's subtasks to be deleted with the issue. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Delete issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: deleteIssue parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: Whether the issue's subtasks are deleted when the issue is deleted. in: query name: deleteSubtasks schema: default: "false" enum: - "true" - "false" type: string responses: "204": description: Returned if the request is successful. "400": description: Returned if the issue has subtasks and `deleteSubtasks` is not set to *true*. "401": description: Returned if the authentication credentials are incorrect. "403": description: Returned if the user does not have permission to delete the issue. "404": description: Returned if the issue is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete issue tags: - Issues x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:issue:jira state: Beta get: deprecated: false description: |- Returns the details for an issue. The issue is identified by its ID or key, however, if the identifier doesn't match an issue, a case-insensitive search and check for moved issues is performed. If a matching issue is found its details are returned, a 302 or other redirect is **not** returned. The issue key returned in the response is the key of the issue found. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getIssue parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: |- A list of fields to return for the issue. This parameter accepts a comma-separated list. Use it to retrieve a subset of fields. Allowed values: * `*all` Returns all fields. * `*navigable` Returns navigable fields. * Any issue field, prefixed with a minus to exclude. Examples: * `summary,comment` Returns only the summary and comments fields. * `-description` Returns all (default) fields except description. * `*navigable,-comment` Returns all navigable fields except comment. This parameter may be specified multiple times. For example, `fields=field1,field2& fields=field3`. Note: All fields are returned by default. This differs from [Search for issues using JQL (GET)](#api-rest-api-3-search-get) and [Search for issues using JQL (POST)](#api-rest-api-3-search-post) where the default is all navigable fields. in: query name: fields schema: items: default: "*all" type: string type: array - description: Whether fields in `fields` are referenced by keys rather than IDs. This parameter is useful where fields have been added by a connect app and a field's key may differ from its ID. in: query name: fieldsByKeys schema: default: false type: boolean - description: |- Use [expand](#expansion) to include additional information about the issues in the response. This parameter accepts a comma-separated list. Expand options include: * `renderedFields` Returns field values rendered in HTML format. * `names` Returns the display name of each field. * `schema` Returns the schema describing a field type. * `transitions` Returns all possible transitions for the issue. * `editmeta` Returns information about how each field can be edited. * `changelog` Returns a list of recent updates to an issue, sorted by date, starting from the most recent. * `versionedRepresentations` Returns a JSON array for each version of a field's value, with the highest number representing the most recent version. Note: When included in the request, the `fields` parameter is ignored. in: query name: expand schema: type: string - description: |- A list of issue properties to return for the issue. This parameter accepts a comma-separated list. Allowed values: * `*all` Returns all issue properties. * Any issue property key, prefixed with a minus to exclude. Examples: * `*all` Returns all properties. * `*all,-prop1` Returns all properties except `prop1`. * `prop1,prop2` Returns `prop1` and `prop2` properties. This parameter may be specified multiple times. For example, `properties=prop1,prop2& properties=prop3`. in: query name: properties schema: items: default: "null" type: string type: array - description: Whether the project in which the issue is created is added to the user's **Recently viewed** project list, as shown under **Projects** in Jira. This also populates the [JQL issues search](#api-rest-api-3-search-get) `lastViewed` field. in: query name: updateHistory schema: default: false type: boolean responses: "200": content: application/json: example: '{"id":"10002","self":"https://your-domain.atlassian.net/rest/api/3/issue/10002","key":"ED-1","fields":{"watcher":{"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-1/watchers","isWatching":false,"watchCount":1,"watchers":[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false}]},"attachment":[{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/attachments/10000","filename":"picture.jpg","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"created":"2023-04-21T12:39:27.600+0000","size":23123,"mimeType":"image/jpeg","content":"https://your-domain.atlassian.net/jira/rest/api/3/attachment/content/10000","thumbnail":"https://your-domain.atlassian.net/jira/rest/api/3/attachment/thumbnail/10000"}],"sub-tasks":[{"id":"10000","type":{"id":"10000","name":"","inward":"Parent","outward":"Sub-task"},"outwardIssue":{"id":"10003","key":"ED-2","self":"https://your-domain.atlassian.net/rest/api/3/issue/ED-2","fields":{"status":{"iconUrl":"https://your-domain.atlassian.net/images/icons/statuses/open.png","name":"Open"}}}}],"description":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Main order flow broken"}]}]},"project":{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}},"comment":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/comment/10000","id":"10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper."}]}]},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"created":"2021-01-17T12:34:00.000+0000","updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"role","value":"Administrators","identifier":"Administrators"}}],"issuelinks":[{"id":"10001","type":{"id":"10000","name":"Dependent","inward":"depends on","outward":"is depended by"},"outwardIssue":{"id":"10004L","key":"PR-2","self":"https://your-domain.atlassian.net/rest/api/3/issue/PR-2","fields":{"status":{"iconUrl":"https://your-domain.atlassian.net/images/icons/statuses/open.png","name":"Open"}}}},{"id":"10002","type":{"id":"10000","name":"Dependent","inward":"depends on","outward":"is depended by"},"inwardIssue":{"id":"10004","key":"PR-3","self":"https://your-domain.atlassian.net/rest/api/3/issue/PR-3","fields":{"status":{"iconUrl":"https://your-domain.atlassian.net/images/icons/statuses/open.png","name":"Open"}}}}],"worklog":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/worklog/10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"comment":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"I did some work here."}]}]},"updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"group","value":"jira-developers","identifier":"276f955c-63d7-42c8-9520-92d01dca0625"},"started":"2021-01-17T12:34:00.000+0000","timeSpent":"3h 20m","timeSpentSeconds":12000,"id":"100028","issueId":"10002"}],"updated":1,"timetracking":{"originalEstimate":"10m","remainingEstimate":"3m","timeSpent":"6m","originalEstimateSeconds":600,"remainingEstimateSeconds":200,"timeSpentSeconds":400}}}' schema: $ref: "#/components/schemas/IssueBean" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue tags: - Issues x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-meta:jira - read:issue-security-level:jira - read:issue.vote:jira - read:issue.changelog:jira - read:avatar:jira - read:issue:jira - read:status:jira - read:user:jira - read:field-configuration:jira state: Beta put: deprecated: false description: |- Edits an issue. A transition may be applied and issue properties updated as part of the edit. The edits to the issue's fields are defined using `update` and `fields`. The fields that can be edited are determined using [ Get edit issue metadata](#api-rest-api-3-issue-issueIdOrKey-editmeta-get). The parent field may be set by key or ID. For standard issue types, the parent may be removed by setting `update.parent.set.none` to *true*. Note that the `description`, `environment`, and any `textarea` type custom fields (multi-line text fields) take Atlassian Document Format content. Single line custom fields (`textfield`) accept a string and don't handle Atlassian Document Format content. Connect apps having an app user with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), can override the screen security configuration using `overrideScreenSecurity` and `overrideEditableFlag`. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Edit issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: editIssue parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: Whether a notification email about the issue update is sent to all watchers. To disable the notification, administer Jira or administer project permissions are required. If the user doesn't have the necessary permission the request is ignored. in: query name: notifyUsers schema: default: true type: boolean - description: Whether screen security is overridden to enable hidden fields to be edited. Available to Connect app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). in: query name: overrideScreenSecurity schema: default: false type: boolean - description: Whether screen security is overridden to enable uneditable fields to be edited. Available to Connect app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). in: query name: overrideEditableFlag schema: default: false type: boolean requestBody: content: application/json: example: fields: customfield_10000: content: - content: - text: Investigation underway type: text type: paragraph type: doc version: 1 customfield_10010: 1 summary: Completed orders still displaying in pending historyMetadata: activityDescription: Complete order processing actor: avatarUrl: http://mysystem/avatar/tony.jpg displayName: Tony id: tony type: mysystem-user url: http://mysystem/users/tony cause: id: myevent type: mysystem-event description: From the order testing process extraData: Iteration: 10a Step: "4" generator: id: mysystem-1 type: mysystem-application type: myplugin:type properties: - key: key1 value: Order number 10784 - key: key2 value: Order number 10923 update: components: - set: "" labels: - add: triaged - remove: blocker summary: - set: Bug in business logic timetracking: - edit: originalEstimate: 1w 1d remainingEstimate: 4d schema: $ref: "#/components/schemas/IssueUpdateDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: |- Returned if: * the request body is missing. * the user does not have the necessary permission to edit one or more fields. * the request includes one or more fields that are not found or are not associated with the issue's edit screen. * the request includes an invalid transition. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user uses `overrideScreenSecurity` or `overrideEditableFlag` but doesn't have the necessary permission. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Edit issue tags: - Issues x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/assignee": put: deprecated: false description: |- Assigns an issue to a user. Use this operation when the calling user does not have the *Edit Issues* permission but has the *Assign issue* permission for the project that the issue is in. If `name` or `accountId` is set to: * `"-1"`, the issue is assigned to the default assignee for the project. * `null`, the issue is set to unassigned. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse Projects* and *Assign Issues* [ project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: assignIssue parameters: - description: The ID or key of the issue to be assigned. in: path name: issueIdOrKey required: true schema: type: string requestBody: content: application/json: example: accountId: 5b10ac8d82e05b22cc7d4ef5 schema: $ref: "#/components/schemas/User" description: The request object with the user that the issue is assigned to. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: |- Returned if: * the user is not found. * `name`, `key`, or `accountId` is missing. * more than one of `name`, `key`, and `accountId` are provided. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the issue is not found. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Assign issue tags: - Issues x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/attachments": post: deprecated: false description: |- Adds one or more attachments to an issue. Attachments are posted as multipart/form-data ([RFC 1867](https://www.ietf.org/rfc/rfc1867.txt)). Note that: * The request must have a `X-Atlassian-Token: no-check` header, if not it is blocked. See [Special headers](#special-request-headers) for more information. * The name of the multipart/form-data parameter that contains the attachments must be `file`. The following examples upload a file called *myfile.txt* to the issue *TEST-123*: #### curl #### curl --location --request POST 'https://your-domain.atlassian.net/rest/api/3/issue/TEST-123/attachments' -u 'email@example.com:' -H 'X-Atlassian-Token: no-check' --form 'file=@"myfile.txt"' #### Node.js #### // This code sample uses the 'node-fetch' and 'form-data' libraries: // https://www.npmjs.com/package/node-fetch // https://www.npmjs.com/package/form-data const fetch = require('node-fetch'); const FormData = require('form-data'); const fs = require('fs'); const filePath = 'myfile.txt'; const form = new FormData(); const stats = fs.statSync(filePath); const fileSizeInBytes = stats.size; const fileStream = fs.createReadStream(filePath); form.append('file', fileStream, {knownLength: fileSizeInBytes}); fetch('https://your-domain.atlassian.net/rest/api/3/issue/TEST-123/attachments', { method: 'POST', body: form, headers: { 'Authorization': `Basic ${Buffer.from( 'email@example.com:' ).toString('base64')}`, 'Accept': 'application/json', 'X-Atlassian-Token': 'no-check' } }) .then(response => { console.log( `Response: ${response.status} ${response.statusText}` ); return response.text(); }) .then(text => console.log(text)) .catch(err => console.error(err)); #### Java #### // This code sample uses the 'Unirest' library: // http://unirest.io/java.html HttpResponse response = Unirest.post("https://your-domain.atlassian.net/rest/api/2/issue/{issueIdOrKey}/attachments") .basicAuth("email@example.com", "") .header("Accept", "application/json") .header("X-Atlassian-Token", "no-check") .field("file", new File("myfile.txt")) .asJson(); System.out.println(response.getBody()); #### Python #### # This code sample uses the 'requests' library: # http://docs.python-requests.org import requests from requests.auth import HTTPBasicAuth import json url = "https://your-domain.atlassian.net/rest/api/2/issue/{issueIdOrKey}/attachments" auth = HTTPBasicAuth("email@example.com", "") headers = { "Accept": "application/json", "X-Atlassian-Token": "no-check" } response = requests.request( "POST", url, headers = headers, auth = auth, files = { "file": ("myfile.txt", open("myfile.txt","rb"), "application-type") } ) print(json.dumps(json.loads(response.text), sort_keys=True, indent=4, separators=(",", ": "))) #### PHP #### // This code sample uses the 'Unirest' library: // http://unirest.io/php.html Unirest\Request::auth('email@example.com', ''); $headers = array( 'Accept' => 'application/json', 'X-Atlassian-Token' => 'no-check' ); $parameters = array( 'file' => File::add('myfile.txt') ); $response = Unirest\Request::post( 'https://your-domain.atlassian.net/rest/api/2/issue/{issueIdOrKey}/attachments', $headers, $parameters ); var_dump($response) #### Forge #### // This sample uses Atlassian Forge and the `form-data` library. // https://developer.atlassian.com/platform/forge/ // https://www.npmjs.com/package/form-data import api from "@forge/api"; import FormData from "form-data"; const form = new FormData(); form.append('file', fileStream, {knownLength: fileSizeInBytes}); const response = await api.asApp().requestJira('/rest/api/2/issue/{issueIdOrKey}/attachments', { method: 'POST', body: form, headers: { 'Accept': 'application/json', 'X-Atlassian-Token': 'no-check' } }); console.log(`Response: ${response.status} ${response.statusText}`); console.log(await response.json()); Tip: Use a client library. Many client libraries have classes for handling multipart POST operations. For example, in Java, the Apache HTTP Components library provides a [MultiPartEntity](http://hc.apache.org/httpcomponents-client-ga/httpmime/apidocs/org/apache/http/entity/mime/MultipartEntity.html) class for multipart POST operations. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse Projects* and *Create attachments* [ project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: addAttachment parameters: - description: The ID or key of the issue that attachments are added to. in: path name: issueIdOrKey required: true schema: type: string requestBody: content: multipart/form-data: schema: format: binary type: string responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/attachments/10000","id":"10001","filename":"picture.jpg","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney"},"created":"2023-04-21T12:39:29.304+0000","size":23123,"mimeType":"image/jpeg","content":"https://your-domain.atlassian.net/rest/api/3/attachment/content/10000","thumbnail":"https://your-domain.atlassian.net/rest/api/3/attachment/thumbnail/10000"},{"self":"https://your-domain.atlassian.net/rest/api/3/attachments/10001","filename":"dbeuglog.txt","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney"},"created":"2023-04-21T12:39:29.304+0000","size":2460,"mimeType":"text/plain","content":"https://your-domain.atlassian.net/rest/api/3/attachment/content/10001"}]' schema: items: $ref: "#/components/schemas/Attachment" type: array description: Returned if the request is successful. "403": description: Returned if the user does not have the necessary permission. "404": description: |- Returned if any of the following is true: * the issue is not found. * the user does not have permission to view the issue. "413": description: The attachments exceed the maximum attachment size for issues. See [Configuring file attachments](https://confluence.atlassian.com/x/wIXKM) for details. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Add attachment tags: - Issue attachments x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:user:jira - write:attachment:jira - read:attachment:jira - read:avatar:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/changelog": get: deprecated: false description: |- Returns a [paginated](#pagination) list of all changelogs for an issue sorted by date, starting from the oldest. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getChangeLogs parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return per page. in: query name: maxResults schema: default: 100 format: int32 type: integer responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issue/TT-1/changelog?startAt=2&maxResults=2","nextPage":"https://your-domain.atlassian.net/rest/api/3/issue/TT-1/changelog?&startAt=4&maxResults=2","maxResults":2,"startAt":2,"total":5,"isLast":false,"values":[{"id":"10001","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney"},"created":"1970-01-18T06:27:50.429+0000","items":[{"field":"fields","fieldtype":"jira","fieldId":"fieldId","from":null,"fromString":"","to":null,"toString":"label-1"}]},{"id":"10002","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney"},"created":"1970-01-18T06:27:51.429+0000","items":[{"field":"fields","fieldtype":"jira","fieldId":"fieldId","from":null,"fromString":"label-1","to":null,"toString":"label-1 label-2"}]}]}' schema: $ref: "#/components/schemas/PageBeanChangelog" description: Returned if the request is successful. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get changelogs tags: - Issues x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-meta:jira - read:avatar:jira - read:issue.changelog:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/changelog/list": post: deprecated: false description: |- Returns changelogs for an issue specified by a list of changelog IDs. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getChangeLogsByIds parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string requestBody: content: application/json: example: changelogIds: - 10001 - 10002 schema: $ref: "#/components/schemas/IssueChangelogIds" required: true responses: "200": content: application/json: example: '{"startAt":0,"maxResults":2,"total":2,"histories":[{"id":"10001","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney"},"created":"1970-01-18T06:27:50.429+0000","items":[{"field":"fields","fieldtype":"jira","fieldId":"fieldId","from":null,"fromString":"","to":null,"toString":"label-1"}]},{"id":"10002","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney"},"created":"1970-01-18T06:27:51.429+0000","items":[{"field":"fields","fieldtype":"jira","fieldId":"fieldId","from":null,"fromString":"label-1","to":null,"toString":"label-1 label-2"}]}]}' schema: $ref: "#/components/schemas/PageOfChangelogs" description: Returned if the request is successful. "400": description: Returned if the request is not valid. "404": description: Returned if the issue is not found or the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get changelogs by IDs tags: - Issues x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-meta:jira - read:avatar:jira - read:issue.changelog:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/comment": get: deprecated: false description: |- Returns all comments for an issue. This operation can be accessed anonymously. **[Permissions](#permissions) required:** Comments are included in the response where the user has: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the comment. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the comment has visibility restrictions, belongs to the group or has the role visibility is role visibility is restricted to. operationId: getComments parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - 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: 5000 format: int32 type: integer - description: "[Order](#ordering) the results by a field. Accepts *created* to sort comments by their created date." in: query name: orderBy schema: enum: - created - -created - +created type: string - description: Use [expand](#expansion) to include additional information about comments in the response. This parameter accepts `renderedBody`, which returns the comment body rendered in HTML. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"startAt":0,"maxResults":1,"total":1,"comments":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/comment/10000","id":"10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper."}]}]},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"created":"2021-01-17T12:34:00.000+0000","updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"role","value":"Administrators","identifier":"Administrators"}}]}' schema: $ref: "#/components/schemas/PageOfComments" description: Returned if the request is successful. "400": description: Returned if `orderBy` is set to a value other than *created*. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get comments tags: - Issue comments x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:comment:jira - read:comment.property:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:avatar:jira state: Beta post: deprecated: false description: |- Adds a comment to an issue. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Add comments* [ project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue containing the comment is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: addComment parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: Use [expand](#expansion) to include additional information about comments in the response. This parameter accepts `renderedBody`, which returns the comment body rendered in HTML. in: query name: expand schema: type: string requestBody: content: application/json: example: body: content: - content: - text: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper. type: text type: paragraph type: doc version: 1 visibility: identifier: Administrators type: role value: Administrators schema: $ref: "#/components/schemas/Comment" required: true responses: "201": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/comment/10000","id":"10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper."}]}]},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"created":"2021-01-17T12:34:00.000+0000","updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"role","value":"Administrators","identifier":"Administrators"}}' schema: $ref: "#/components/schemas/Comment" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Add comment tags: - Issue comments x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:comment:jira - read:comment.property:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - write:comment:jira - read:avatar:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/comment/{id}": delete: deprecated: false description: |- Deletes a comment. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue containing the comment is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * *Delete all comments*[ project permission](https://confluence.atlassian.com/x/yodKLg) to delete any comment or *Delete own comments* to delete comment created by the user, * If the comment has visibility restrictions, the user belongs to the group or has the role visibility is restricted to. operationId: deleteComment parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the comment. in: path name: id required: true schema: type: string responses: "204": description: Returned if the request is successful. "400": description: Returned if the user does not have permission to delete the comment. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue or comment is not found or the user does not have permission to view the issue or comment. "405": description: Returned if an anonymous call is made to the operation. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete comment tags: - Issue comments x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:comment:jira - delete:comment.property:jira state: Beta get: deprecated: false description: |- Returns a comment. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the comment. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the comment has visibility restrictions, the user belongs to the group or has the role visibility is restricted to. operationId: getComment parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the comment. in: path name: id required: true schema: type: string - description: Use [expand](#expansion) to include additional information about comments in the response. This parameter accepts `renderedBody`, which returns the comment body rendered in HTML. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/comment/10000","id":"10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper."}]}]},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"created":"2021-01-17T12:34:00.000+0000","updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"role","value":"Administrators","identifier":"Administrators"}}' schema: $ref: "#/components/schemas/Comment" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue or comment is not found or the user does not have permission to view the issue or comment. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get comment tags: - Issue comments x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:comment:jira - read:comment.property:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - read:avatar:jira state: Beta put: deprecated: false description: |- Updates a comment. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue containing the comment is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * *Edit all comments*[ project permission](https://confluence.atlassian.com/x/yodKLg) to update any comment or *Edit own comments* to update comment created by the user. * If the comment has visibility restrictions, the user belongs to the group or has the role visibility is restricted to. operationId: updateComment parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the comment. in: path name: id required: true schema: type: string - description: Whether users are notified when a comment is updated. in: query name: notifyUsers schema: default: true type: boolean - description: Whether screen security is overridden to enable uneditable fields to be edited. Available to Connect app users with the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). in: query name: overrideEditableFlag schema: default: false type: boolean - description: Use [expand](#expansion) to include additional information about comments in the response. This parameter accepts `renderedBody`, which returns the comment body rendered in HTML. in: query name: expand schema: type: string requestBody: content: application/json: example: body: content: - content: - text: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper. type: text type: paragraph type: doc version: 1 visibility: identifier: Administrators type: role value: Administrators schema: $ref: "#/components/schemas/Comment" required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/comment/10000","id":"10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper."}]}]},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"created":"2021-01-17T12:34:00.000+0000","updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"role","value":"Administrators","identifier":"Administrators"}}' schema: $ref: "#/components/schemas/Comment" description: Returned if the request is successful. "400": description: Returned if the user does not have permission to edit the comment or the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue or comment is not found or the user does not have permission to view the issue or comment. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Update comment tags: - Issue comments x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:comment:jira - read:comment.property:jira - read:group:jira - read:project:jira - read:project-role:jira - read:user:jira - write:comment:jira - read:avatar:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/editmeta": get: deprecated: false description: |- Returns the edit screen fields for an issue that are visible to and editable by the user. Use the information to populate the requests in [Edit issue](#api-rest-api-3-issue-issueIdOrKey-put). This endpoint will check for these conditions: 1. Field is available on a field screen - through screen, screen scheme, issue type screen scheme, and issue type scheme configuration. `overrideScreenSecurity=true` skips this condition. 2. Field is visible in the [field configuration](https://support.atlassian.com/jira-cloud-administration/docs/change-a-field-configuration/). `overrideScreenSecurity=true` skips this condition. 3. Field is shown on the issue: each field has different conditions here. For example: Attachment field only shows if attachments are enabled. Assignee only shows if user has permissions to assign the issue. 4. If a field is custom then it must have valid custom field context, applicable for its project and issue type. All system fields are assumed to have context in all projects and all issue types. 5. Issue has a project, issue type, and status defined. 6. Issue is assigned to a valid workflow, and the current status has assigned a workflow step. `overrideEditableFlag=true` skips this condition. 7. The current workflow step is editable. This is true by default, but [can be disabled by setting](https://support.atlassian.com/jira-cloud-administration/docs/use-workflow-properties/) the `jira.issue.editable` property to `false`. `overrideEditableFlag=true` skips this condition. 8. User has [Edit issues permission](https://support.atlassian.com/jira-cloud-administration/docs/permissions-for-company-managed-projects/). 9. Workflow permissions allow editing a field. This is true by default but [can be modified](https://support.atlassian.com/jira-cloud-administration/docs/use-workflow-properties/) using `jira.permission.*` workflow properties. Fields hidden using [Issue layout settings page](https://support.atlassian.com/jira-software-cloud/docs/configure-field-layout-in-the-issue-view/) remain editable. Connect apps having an app user with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), can return additional details using: * `overrideScreenSecurity` When this flag is `true`, then this endpoint skips checking if fields are available through screens, and field configuration (conditions 1. and 2. from the list above). * `overrideEditableFlag` When this flag is `true`, then this endpoint skips checking if workflow is present and if the current step is editable (conditions 6. and 7. from the list above). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. Note: For any fields to be editable the user must have the *Edit issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the issue. operationId: getEditIssueMeta parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: Whether hidden fields are returned. Available to Connect app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). in: query name: overrideScreenSecurity schema: default: false type: boolean - description: Whether non-editable fields are returned. Available to Connect app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). in: query name: overrideEditableFlag schema: default: false type: boolean responses: "200": content: application/json: example: '{"fields":{"summary":{"required":false,"schema":{"type":"array","items":"option","custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiselect","customId":10001},"name":"My Multi Select","key":"field_key","hasDefaultValue":false,"operations":["set","add"],"allowedValues":["red","blue"],"defaultValue":"red"}}}' schema: $ref: "#/components/schemas/IssueUpdateMetadata" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user uses an override parameter but doesn't have permission to do so. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get edit issue metadata tags: - Issues x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-meta:jira - read:field-configuration:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/notify": post: deprecated: false description: |- Creates an email notification for an issue and adds it to the mail queue. **[Permissions](#permissions) required:** * *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: notify parameters: - description: ID or key of the issue that the notification is sent for. in: path name: issueIdOrKey required: true schema: type: string requestBody: content: application/json: example: htmlBody: The latest test results for this ticket are now available. restrict: groupIds: [] groups: - name: notification-group permissions: - key: BROWSE subject: Latest test results textBody: The latest test results for this ticket are now available. to: assignee: false groupIds: [] groups: - name: notification-group reporter: false users: - accountId: 5b10a2844c20165700ede21g active: false voters: true watchers: true schema: $ref: "#/components/schemas/Notification" description: The request object for the notification and recipients. required: true responses: "204": content: application/json: schema: {} description: Returned if the email is queued for sending. "400": description: |- Returned if: * the recipient is the same as the calling user. * the recipient is invalid. For example, the recipient is set to the assignee, but the issue is unassigned. * the request is invalid. For example, required fields are missing or have invalid values. "403": description: |- Returned if: * outgoing emails are disabled. * no SMTP server is configured. "404": description: Returned if the issue is not found. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Send notification for issue tags: - Issues x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - send:notification:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/properties": get: deprecated: false description: |- Returns the URLs and keys of an issue's properties. This operation can be accessed anonymously. **[Permissions](#permissions) required:** Property details are only returned where the user has: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getIssuePropertyKeys parameters: - description: The key or ID of the issue. in: path name: issueIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '{"keys":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support","key":"issue.support"}]}' schema: $ref: "#/components/schemas/PropertyKeys" description: Returned if the request is successful. "404": description: Returned if the issue is not found or the user does not have permissions to view the issue. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue property keys tags: - Issue properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue.property:jira - read:comment.property:jira - read:dashboard.property:jira - read:issue-type.property:jira - read:issue-worklog.property:jira - read:project.property:jira - read:user.property:jira - read:workflow.property:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/properties/{propertyKey}": delete: deprecated: false description: |- Deletes an issue's property. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Edit issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: deleteIssueProperty parameters: - description: The key or ID of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The key of the property. in: path name: propertyKey required: true schema: type: string responses: "204": description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue or property is not found, or the user does not have permission to edit the issue. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete issue property tags: - Issue properties x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:issue.property:jira state: Beta get: deprecated: false description: |- Returns the key and value of an issue's property. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getIssueProperty parameters: - description: The key or ID of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The key of the property. in: path name: propertyKey required: true schema: type: string responses: "200": content: application/json: example: '{"key":"issue.support","value":{"system.conversation.id":"b1bf38be-5e94-4b40-a3b8-9278735ee1e6","system.support.time":"1m"}}' schema: $ref: "#/components/schemas/EntityProperty" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue or property is not found or the user does not have permission to see the issue. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue property tags: - Issue properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue.property:jira state: Beta put: deprecated: false description: |- Sets the value of an issue's property. Use this resource to store custom data against an issue. The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The maximum length is 32768 characters. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Edit issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: setIssueProperty parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The key of the issue property. The maximum length is 255 characters. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: schema: {} required: true responses: "200": content: application/json: schema: {} description: Returned if the issue property is updated. "201": content: application/json: schema: {} description: Returned if the issue property is created. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to edit the issue. "404": description: Returned if the issue is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Set issue property tags: - Issue properties x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue.property:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/remotelink": delete: deprecated: false description: |- Deletes the remote issue link from the issue using the link's global ID. Where the global ID includes reserved URL characters these must be escaped in the request. For example, pass `system=http://www.mycompany.com/support&id=1` as `system%3Dhttp%3A%2F%2Fwww.mycompany.com%2Fsupport%26id%3D1`. This operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is implemented, issue-level security permission to view the issue. operationId: deleteRemoteIssueLinkByGlobalId parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: example: "10000" type: string x-showInExample: "true" - description: The global ID of a remote issue link. in: query name: globalId required: true schema: example: system=http://www.mycompany.com/support&id=1 type: string x-showInExample: "true" responses: "204": description: Returned if the request is successful. "400": description: Returned if a global ID isn't provided. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to link issues. "404": description: Returned if the issue or remote issue link is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete remote issue link by global ID tags: - Issue remote links x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:issue.remote-link:jira - write:issue:jira state: Beta get: deprecated: false description: |- Returns the remote issue links for an issue. When a remote issue link global ID is provided the record with that global ID is returned, otherwise all remote issue links are returned. Where a global ID includes reserved URL characters these must be escaped in the request. For example, pass `system=http://www.mycompany.com/support&id=1` as `system%3Dhttp%3A%2F%2Fwww.mycompany.com%2Fsupport%26id%3D1`. This operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getRemoteIssueLinks parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: example: "10000" type: string x-showInExample: "true" - description: The global ID of the remote issue link. in: query name: globalId schema: type: string responses: "200": content: application/json: example: '[{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/issue/MKY-1/remotelink/10000","globalId":"system=http://www.mycompany.com/support&id=1","application":{"type":"com.acme.tracker","name":"My Acme Tracker"},"relationship":"causes","object":{"url":"http://www.mycompany.com/support?id=1","title":"TSTSUP-111","summary":"Customer support issue","icon":{"url16x16":"http://www.mycompany.com/support/ticket.png","title":"Support Ticket"},"status":{"resolved":true,"icon":{"url16x16":"http://www.mycompany.com/support/resolved.png","title":"Case Closed","link":"http://www.mycompany.com/support?id=1&details=closed"}}}},{"id":10001,"self":"https://your-domain.atlassian.net/rest/api/issue/MKY-1/remotelink/10001","globalId":"system=http://www.anothercompany.com/tester&id=1234","application":{"type":"com.acme.tester","name":"My Acme Tester"},"relationship":"is tested by","object":{"url":"http://www.anothercompany.com/tester/testcase/1234","title":"Test Case #1234","summary":"Test that the submit button saves the item","icon":{"url16x16":"http://www.anothercompany.com/tester/images/testcase.gif","title":"Test Case"},"status":{"resolved":false,"icon":{"url16x16":"http://www.anothercompany.com/tester/images/person/mia.gif","title":"Tested by Mia Krystof","link":"http://www.anothercompany.com/tester/person?accountId=5b10a2844c20165700ede21g"}}}}]' schema: $ref: "#/components/schemas/RemoteIssueLink" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if issue linking is disabled. "404": description: Returned if the issue or remote issue link is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get remote issue links tags: - Issue remote links x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue.remote-link:jira - read:status:jira state: Beta post: deprecated: false description: |- Creates or updates a remote issue link for an issue. If a `globalId` is provided and a remote issue link with that global ID is found it is updated. Any fields without values in the request are set to null. Otherwise, the remote issue link is created. This operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: createOrUpdateRemoteIssueLink parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string requestBody: content: application/json: example: application: name: My Acme Tracker type: com.acme.tracker globalId: system=http://www.mycompany.com/support&id=1 object: icon: title: Support Ticket url16x16: http://www.mycompany.com/support/ticket.png status: icon: link: http://www.mycompany.com/support?id=1&details=closed title: Case Closed url16x16: http://www.mycompany.com/support/resolved.png resolved: true summary: Customer support issue title: TSTSUP-111 url: http://www.mycompany.com/support?id=1 relationship: causes schema: $ref: "#/components/schemas/RemoteIssueLinkRequest" required: true responses: "200": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/issue/MKY-1/remotelink/10000"}' schema: $ref: "#/components/schemas/RemoteIssueLinkIdentifies" description: Returned if the remote issue link is updated. "201": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/issue/MKY-1/remotelink/10000"}' schema: $ref: "#/components/schemas/RemoteIssueLinkIdentifies" description: Returned if the remote issue link is created. "400": content: application/json: example: "{\"errorMessages\":[],\"errors\":{\"title\":\"'title' is required.\"}}" description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to link issues. "404": description: Returned if the issue is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Create or update remote issue link tags: - Issue remote links x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue:jira - write:issue.remote-link:jira - read:issue.remote-link:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/remotelink/{linkId}": delete: deprecated: false description: |- Deletes a remote issue link from an issue. This operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects*, *Edit issues*, and *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: deleteRemoteIssueLinkById parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: example: "10000" type: string x-showInExample: "true" - description: The ID of a remote issue link. in: path name: linkId required: true schema: example: "10000" type: string x-showInExample: "true" responses: "204": description: Returned if the request is successful. "400": description: Returned if the link ID is invalid or the remote issue link does not belong to the issue. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to link issues. "404": description: Returned if the issue or remote issue link is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete remote issue link by ID tags: - Issue remote links x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:issue.remote-link:jira - write:issue:jira state: Beta get: deprecated: false description: |- Returns a remote issue link for an issue. This operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: getRemoteIssueLinkById parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the remote issue link. in: path name: linkId required: true schema: type: string responses: "200": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/issue/MKY-1/remotelink/10000","globalId":"system=http://www.mycompany.com/support&id=1","application":{"type":"com.acme.tracker","name":"My Acme Tracker"},"relationship":"causes","object":{"url":"http://www.mycompany.com/support?id=1","title":"TSTSUP-111","summary":"Customer support issue","icon":{"url16x16":"http://www.mycompany.com/support/ticket.png","title":"Support Ticket"},"status":{"resolved":true,"icon":{"url16x16":"http://www.mycompany.com/support/resolved.png","title":"Case Closed","link":"http://www.mycompany.com/support?id=1&details=closed"}}}}' schema: $ref: "#/components/schemas/RemoteIssueLink" description: Returned if the request is successful. "400": description: Returned if the link ID is invalid or the remote issue link does not belong to the issue. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if issue linking is disabled. "404": description: Returned if the issue or remote issue link is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get remote issue link by ID tags: - Issue remote links x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue.remote-link:jira - read:status:jira state: Beta put: deprecated: false description: |- Updates a remote issue link for an issue. Note: Fields without values in the request are set to null. This operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: updateRemoteIssueLink parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: example: "10000" type: string x-showInExample: "true" - description: The ID of the remote issue link. in: path name: linkId required: true schema: example: "10000" type: string x-showInExample: "true" requestBody: content: application/json: example: application: name: My Acme Tracker type: com.acme.tracker globalId: system=http://www.mycompany.com/support&id=1 object: icon: title: Support Ticket url16x16: http://www.mycompany.com/support/ticket.png status: icon: link: http://www.mycompany.com/support?id=1&details=closed title: Case Closed url16x16: http://www.mycompany.com/support/resolved.png resolved: true summary: Customer support issue title: TSTSUP-111 url: http://www.mycompany.com/support?id=1 relationship: causes schema: $ref: "#/components/schemas/RemoteIssueLinkRequest" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: "{\"errorMessages\":[],\"errors\":{\"title\":\"'title' is required.\"}}" description: |- Returned if: * the link ID is invalid. * the remote issue link does not belong to the issue. * the request body is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to link issues. "404": description: Returned if the issue or remote issue link is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Update remote issue link by ID tags: - Issue remote links x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue:jira - write:issue.remote-link:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/transitions": get: deprecated: false description: |- Returns either all transitions or a transition that can be performed by the user on an issue, based on the issue's status. Note, if a request is made for a transition that does not exist or cannot be performed on the issue, given its status, the response will return any empty transitions list. This operation can be accessed anonymously. **[Permissions](#permissions) required: A list or transition is returned only when the user has:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. However, if the user does not have the *Transition issues* [ project permission](https://confluence.atlassian.com/x/yodKLg) the response will not list any transitions. operationId: getTransitions parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: Use [expand](#expansion) to include additional information about transitions in the response. This parameter accepts `transitions.fields`, which returns information about the fields in the transition screen for each transition. Fields hidden from the screen are not returned. Use this information to populate the `fields` and `update` fields in [Transition issue](#api-rest-api-3-issue-issueIdOrKey-transitions-post). in: query name: expand schema: type: string - description: The ID of the transition. in: query name: transitionId schema: type: string - description: Whether transitions with the condition *Hide From User Condition* are included in the response. in: query name: skipRemoteOnlyCondition schema: default: false type: boolean - description: Whether details of transitions that fail a condition are included in the response in: query name: includeUnavailableTransitions schema: default: false type: boolean - description: Whether the transitions are sorted by ops-bar sequence value first then category order (Todo, In Progress, Done) or only by ops-bar sequence value. in: query name: sortByOpsBarAndStatus schema: default: false type: boolean responses: "200": content: application/json: example: '{"transitions":[{"id":"2","name":"Close Issue","to":{"self":"https://your-domain.atlassian.net/rest/api/3/status/10000","description":"The issue is currently being worked on.","iconUrl":"https://your-domain.atlassian.net/images/icons/progress.gif","name":"In Progress","id":"10000","statusCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/1","id":1,"key":"in-flight","colorName":"yellow","name":"In Progress"}},"hasScreen":false,"isGlobal":false,"isInitial":false,"isAvailable":true,"isConditional":false,"fields":{"summary":{"required":false,"schema":{"type":"array","items":"option","custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiselect","customId":10001},"name":"My Multi Select","key":"field_key","hasDefaultValue":false,"operations":["set","add"],"allowedValues":["red","blue"],"defaultValue":"red"}}},{"id":"711","name":"QA Review","to":{"self":"https://your-domain.atlassian.net/rest/api/3/status/5","description":"The issue is closed.","iconUrl":"https://your-domain.atlassian.net/images/icons/closed.gif","name":"Closed","id":"5","statusCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/9","id":9,"key":"completed","colorName":"green"}},"hasScreen":true,"fields":{"summary":{"required":false,"schema":{"type":"array","items":"option","custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiselect","customId":10001},"name":"My Multi Select","key":"field_key","hasDefaultValue":false,"operations":["set","add"],"allowedValues":["red","blue"],"defaultValue":"red"},"colour":{"required":false,"schema":{"type":"array","items":"option","custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiselect","customId":10001},"name":"My Multi Select","key":"field_key","hasDefaultValue":false,"operations":["set","add"],"allowedValues":["red","blue"],"defaultValue":"red"}}}]}' schema: $ref: "#/components/schemas/Transitions" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get transitions tags: - Issues x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue.transition:jira - read:status:jira - read:field-configuration:jira state: Beta post: deprecated: false description: |- Performs an issue transition and, if the transition has a screen, updates the fields from the transition screen. sortByCategory To update the fields on the transition screen, specify the fields in the `fields` or `update` parameters in the request body. Get details about the fields using [ Get transitions](#api-rest-api-3-issue-issueIdOrKey-transitions-get) with the `transitions.fields` expand. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Transition issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: doTransition parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string requestBody: content: application/json: example: fields: assignee: name: bob resolution: name: Fixed historyMetadata: activityDescription: Complete order processing actor: avatarUrl: http://mysystem/avatar/tony.jpg displayName: Tony id: tony type: mysystem-user url: http://mysystem/users/tony cause: id: myevent type: mysystem-event description: From the order testing process extraData: Iteration: 10a Step: "4" generator: id: mysystem-1 type: mysystem-application type: myplugin:type transition: id: "5" update: comment: - add: body: content: - content: - text: Bug has been fixed type: text type: paragraph type: doc version: 1 schema: $ref: "#/components/schemas/IssueUpdateDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: |- Returned if: * no transition is specified. * the user does not have permission to transition the issue. * a field that isn't included on the transition screen is defined in `fields` or `update`. * a field is specified in both `fields` and `update`. * the request is invalid for any other reason. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Transition issue tags: - Issues x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue:jira - write:issue.property:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/votes": delete: deprecated: false description: |- Deletes a user's vote from an issue. This is the equivalent of the user clicking *Unvote* on an issue in Jira. This operation requires the **Allow users to vote on issues** option to be *ON*. This option is set in General configuration for Jira. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: removeVote parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string responses: "204": description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * voting is disabled. * the user has not voted on the issue. * the issue is not found. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete vote tags: - Issue votes x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue.vote:jira state: Beta get: deprecated: false description: |- Returns details about the votes on an issue. This operation requires the **Allow users to vote on issues** option to be *ON*. This option is set in General configuration for Jira. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is ini * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. Note that users with the necessary permissions for this operation but without the *View voters and watchers* project permissions are not returned details in the `voters` field. operationId: getVotes parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/issue/MKY-1/votes","votes":24,"hasVoted":true,"voters":[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false}]}' schema: $ref: "#/components/schemas/Votes" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * voting is disabled. * the user does not have permission to view the issue. * the issue is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get votes tags: - Issue votes x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue.vote:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta post: deprecated: false description: |- Adds the user's vote to an issue. This is the equivalent of the user clicking *Vote* on an issue in Jira. This operation requires the **Allow users to vote on issues** option to be *ON*. This option is set in General configuration for Jira. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: addVote parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * voting is disabled. * the issue is not found. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Add vote tags: - Issue votes x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue.vote:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/watchers": delete: deprecated: false description: |- Deletes a user as a watcher of an issue. This operation requires the **Allow users to watch issues** option to be *ON*. This option is set in General configuration for Jira. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * To remove users other than themselves from the watchlist, *Manage watcher list* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. operationId: removeWatcher parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Required. in: query name: accountId schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" responses: "204": description: Returned if the request is successful. "400": description: Returned if `accountId` is not supplied. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the permission to manage the watcher list. "404": description: Returned if the issue or the user is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete watcher tags: - Issue watchers x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue.watcher:jira state: Beta get: deprecated: false description: |- Returns the watchers for an issue. This operation requires the **Allow users to watch issues** option to be *ON*. This option is set in General configuration for Jira. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is ini * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * To see details of users on the watchlist other than themselves, *View voters and watchers* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. operationId: getIssueWatchers parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-1/watchers","isWatching":false,"watchCount":1,"watchers":[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false}]}' schema: $ref: "#/components/schemas/Watchers" description: Returned if the request is successful "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue watchers tags: - Issue watchers x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue.watcher:jira - read:user:jira - read:avatar:jira state: Beta post: deprecated: false description: |- Adds a user as a watcher of an issue by passing the account ID of the user. For example, `"5b10ac8d82e05b22cc7d4ef5"`. If no user is specified the calling user is added. This operation requires the **Allow users to watch issues** option to be *ON*. This option is set in General configuration for Jira. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * To add users other than themselves to the watchlist, *Manage watcher list* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. operationId: addWatcher parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string requestBody: content: application/json: schema: type: string description: The account ID of the user. Note that username cannot be used due to privacy changes. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the permission to manage the watcher list. "404": description: Returned if the issue or the user is not found or the user does not have permission to view the issue. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Add watcher tags: - Issue watchers x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue.watcher:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/worklog": get: deprecated: false description: |- Returns worklogs for an issue, starting from the oldest worklog or from the worklog started on or after a date and time. Time tracking must be enabled in Jira, otherwise this operation returns an error. For more information, see [Configuring time tracking](https://confluence.atlassian.com/x/qoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** Workloads are only returned where the user has: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: getIssueWorklog parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - 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: 5000 format: int32 type: integer - description: The worklog start date and time, as a UNIX timestamp in milliseconds, after which worklogs are returned. in: query name: startedAfter schema: format: int64 type: integer - description: The worklog start date and time, as a UNIX timestamp in milliseconds, before which worklogs are returned. in: query name: startedBefore schema: format: int64 type: integer - description: Use [expand](#expansion) to include additional information about worklogs in the response. This parameter accepts`properties`, which returns worklog properties. in: query name: expand schema: default: "" type: string responses: "200": content: application/json: example: '{"startAt":0,"maxResults":1,"total":1,"worklogs":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/worklog/10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"comment":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"I did some work here."}]}]},"updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"group","value":"jira-developers","identifier":"276f955c-63d7-42c8-9520-92d01dca0625"},"started":"2021-01-17T12:34:00.000+0000","timeSpent":"3h 20m","timeSpentSeconds":12000,"id":"100028","issueId":"10002"}]}' schema: $ref: "#/components/schemas/PageOfWorklogs" description: Returned if the request is successful "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the issue is not found or the user does not have permission to view the issue. * `startAt` or `maxResults` has non-numeric values. * time tracking is disabled. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue worklogs tags: - Issue worklogs x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:group:jira - read:issue-worklog:jira - read:issue-worklog.property:jira - read:project-role:jira - read:user:jira - read:avatar:jira state: Beta post: deprecated: false description: |- Adds a worklog to an issue. Time tracking must be enabled in Jira, otherwise this operation returns an error. For more information, see [Configuring time tracking](https://confluence.atlassian.com/x/qoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* and *Work on issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: addWorklog parameters: - description: The ID or key the issue. in: path name: issueIdOrKey required: true schema: type: string - description: Whether users watching the issue are notified by email. in: query name: notifyUsers schema: default: true type: boolean - description: |- Defines how to update the issue's time estimate, the options are: * `new` Sets the estimate to a specific value, defined in `newEstimate`. * `leave` Leaves the estimate unchanged. * `manual` Reduces the estimate by amount specified in `reduceBy`. * `auto` Reduces the estimate by the value of `timeSpent` in the worklog. in: query name: adjustEstimate schema: default: auto enum: - new - leave - manual - auto type: string - description: The value to set as the issue's remaining time estimate, as days (\#d), hours (\#h), or minutes (\#m or \#). For example, *2d*. Required when `adjustEstimate` is `new`. in: query name: newEstimate schema: type: string - description: The amount to reduce the issue's remaining estimate by, as days (\#d), hours (\#h), or minutes (\#m). For example, *2d*. Required when `adjustEstimate` is `manual`. in: query name: reduceBy schema: type: string - description: Use [expand](#expansion) to include additional information about work logs in the response. This parameter accepts `properties`, which returns worklog properties. in: query name: expand schema: default: "" type: string - description: Whether the worklog entry should be added to the issue even if the issue is not editable, because jira.issue.editable set to false or missing. For example, the issue is closed. Connect and Forge app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) can use this flag. in: query name: overrideEditableFlag schema: default: false type: boolean requestBody: content: application/json: example: comment: content: - content: - text: I did some work here. type: text type: paragraph type: doc version: 1 started: 2021-01-17T12:34:00.000+0000 timeSpentSeconds: 12000 visibility: identifier: 276f955c-63d7-42c8-9520-92d01dca0625 type: group schema: $ref: "#/components/schemas/Worklog" required: true responses: "201": content: application/json: schema: $ref: "#/components/schemas/Worklog" description: Returned if the request is successful. "400": description: |- Returned if: * `adjustEstimate` is set to `new` but `newEstimate` is not provided or is invalid. * `adjustEstimate` is set to `manual` but `reduceBy` is not provided or is invalid. * the user does not have permission to add the worklog. * the request JSON is malformed. "401": description: Returned if the authentication credentials are incorrect. "404": description: Returned if the issue is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Add worklog tags: - Issue worklogs x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue-worklog:jira - write:issue-worklog.property:jira - read:avatar:jira - read:group:jira - read:issue-worklog:jira - read:project-role:jira - read:user:jira - read:issue-worklog.property:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/worklog/{id}": delete: deprecated: false description: |- Deletes a worklog from an issue. Time tracking must be enabled in Jira, otherwise this operation returns an error. For more information, see [Configuring time tracking](https://confluence.atlassian.com/x/qoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * *Delete all worklogs*[ project permission](https://confluence.atlassian.com/x/yodKLg) to delete any worklog or *Delete own worklogs* to delete worklogs created by the user, * If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: deleteWorklog parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the worklog. in: path name: id required: true schema: type: string - description: Whether users watching the issue are notified by email. in: query name: notifyUsers schema: default: true type: boolean - description: |- Defines how to update the issue's time estimate, the options are: * `new` Sets the estimate to a specific value, defined in `newEstimate`. * `leave` Leaves the estimate unchanged. * `manual` Increases the estimate by amount specified in `increaseBy`. * `auto` Reduces the estimate by the value of `timeSpent` in the worklog. in: query name: adjustEstimate schema: default: auto enum: - new - leave - manual - auto type: string - description: The value to set as the issue's remaining time estimate, as days (\#d), hours (\#h), or minutes (\#m or \#). For example, *2d*. Required when `adjustEstimate` is `new`. in: query name: newEstimate schema: type: string - description: The amount to increase the issue's remaining estimate by, as days (\#d), hours (\#h), or minutes (\#m or \#). For example, *2d*. Required when `adjustEstimate` is `manual`. in: query name: increaseBy schema: type: string - description: Whether the work log entry should be added to the issue even if the issue is not editable, because jira.issue.editable set to false or missing. For example, the issue is closed. Connect and Forge app users with admin permission can use this flag. in: query name: overrideEditableFlag schema: default: false type: boolean responses: "204": description: Returned if the request is successful. "400": description: |- Returned if: * `adjustEstimate` is set to `new` but `newEstimate` is not provided or is invalid. * `adjustEstimate` is set to `manual` but `reduceBy` is not provided or is invalid. * the user does not have permission to delete the worklog. "401": description: Returned if the authentication credentials are incorrect. "404": description: |- Returned if: * the issue is not found or user does not have permission to view the issue. * the worklog is not found or the user does not have permission to view it. * time tracking is disabled. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete worklog tags: - Issue worklogs x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:issue-worklog:jira - delete:issue-worklog.property:jira - write:issue.time-tracking:jira state: Beta get: deprecated: false description: |- Returns a worklog. Time tracking must be enabled in Jira, otherwise this operation returns an error. For more information, see [Configuring time tracking](https://confluence.atlassian.com/x/qoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: getWorklog parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the worklog. in: path name: id required: true schema: type: string - description: |- Use [expand](#expansion) to include additional information about work logs in the response. This parameter accepts `properties`, which returns worklog properties. in: query name: expand schema: default: "" type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/worklog/10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"comment":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"I did some work here."}]}]},"updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"group","value":"jira-developers","identifier":"276f955c-63d7-42c8-9520-92d01dca0625"},"started":"2021-01-17T12:34:00.000+0000","timeSpent":"3h 20m","timeSpentSeconds":12000,"id":"100028","issueId":"10002"}' schema: $ref: "#/components/schemas/Worklog" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. "404": description: |- Returned if: * the issue is not found or the user does not have permission to view it. * the worklog is not found or the user does not have permission to view it. * time tracking is disabled. . security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get worklog tags: - Issue worklogs x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:comment:jira - read:group:jira - read:issue-worklog:jira - read:issue-worklog.property:jira - read:project-role:jira - read:user:jira - read:avatar:jira state: Beta put: deprecated: false description: |- Updates a worklog. Time tracking must be enabled in Jira, otherwise this operation returns an error. For more information, see [Configuring time tracking](https://confluence.atlassian.com/x/qoXKM). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * *Edit all worklogs*[ project permission](https://confluence.atlassian.com/x/yodKLg) to update any worklog or *Edit own worklogs* to update worklogs created by the user. * If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: updateWorklog parameters: - description: The ID or key the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the worklog. in: path name: id required: true schema: type: string - description: Whether users watching the issue are notified by email. in: query name: notifyUsers schema: default: true type: boolean - description: |- Defines how to update the issue's time estimate, the options are: * `new` Sets the estimate to a specific value, defined in `newEstimate`. * `leave` Leaves the estimate unchanged. * `auto` Updates the estimate by the difference between the original and updated value of `timeSpent` or `timeSpentSeconds`. in: query name: adjustEstimate schema: default: auto enum: - new - leave - manual - auto type: string - description: The value to set as the issue's remaining time estimate, as days (\#d), hours (\#h), or minutes (\#m or \#). For example, *2d*. Required when `adjustEstimate` is `new`. in: query name: newEstimate schema: type: string - description: Use [expand](#expansion) to include additional information about worklogs in the response. This parameter accepts `properties`, which returns worklog properties. in: query name: expand schema: default: "" type: string - description: Whether the worklog should be added to the issue even if the issue is not editable. For example, because the issue is closed. Connect and Forge app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) can use this flag. in: query name: overrideEditableFlag schema: default: false type: boolean requestBody: content: application/json: example: comment: content: - content: - text: I did some work here. type: text type: paragraph type: doc version: 1 started: 2021-01-17T12:34:00.000+0000 timeSpentSeconds: 12000 visibility: identifier: 276f955c-63d7-42c8-9520-92d01dca0625 type: group schema: $ref: "#/components/schemas/Worklog" required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/worklog/10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"comment":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"I did some work here."}]}]},"updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"group","value":"jira-developers","identifier":"276f955c-63d7-42c8-9520-92d01dca0625"},"started":"2021-01-17T12:34:00.000+0000","timeSpent":"3h 20m","timeSpentSeconds":12000,"id":"100028","issueId":"10002"}' schema: $ref: "#/components/schemas/Worklog" description: Returned if the request is successful "400": description: |- Returned if: * `adjustEstimate` is set to `new` but `newEstimate` is not provided or is invalid. * the user does not have permission to update the worklog. * the request JSON is malformed. "401": description: Returned if the authentication credentials are incorrect. "404": description: |- Returned if: * the issue is not found or user does not have permission to view the issue. * the worklog is not found or the user does not have permission to view it. * time tracking is disabled. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Update worklog tags: - Issue worklogs x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - read:comment:jira - read:group:jira - read:issue-worklog:jira - read:issue-worklog.property:jira - read:project-role:jira - read:user:jira - write:comment:jira - write:issue-worklog:jira - write:issue-worklog.property:jira - read:avatar:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/worklog/{worklogId}/properties": get: deprecated: false description: |- Returns the keys of all properties for a worklog. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: getWorklogPropertyKeys parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the worklog. in: path name: worklogId required: true schema: type: string responses: "200": content: application/json: example: '{"keys":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support","key":"issue.support"}]}' schema: $ref: "#/components/schemas/PropertyKeys" description: Returned if the request is successful. "400": description: Returned if the worklog ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the issue or worklog is not found. * the user does not have permission to view the issue or worklog. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get worklog property keys tags: - Issue worklog properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-worklog.property:jira - read:comment.property:jira - read:dashboard.property:jira - read:issue-type.property:jira - read:issue.property:jira - read:project.property:jira - read:user.property:jira - read:workflow.property:jira state: Beta "/rest/api/3/issue/{issueIdOrKey}/worklog/{worklogId}/properties/{propertyKey}": delete: deprecated: false description: |- Deletes a worklog property. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: deleteWorklogProperty parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the worklog. in: path name: worklogId required: true schema: type: string - description: The key of the property. in: path name: propertyKey required: true schema: type: string responses: "204": description: Returned if the worklog property is removed. "400": description: Returned if the worklog key or id is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to edit the worklog. "404": description: |- Returned if: * the issue, worklog, or property is not found. * the user does not have permission to view the issue or worklog. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete worklog property tags: - Issue worklog properties x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:issue-worklog.property:jira state: Beta get: deprecated: false description: |- Returns the value of a worklog property. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: getWorklogProperty parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the worklog. in: path name: worklogId required: true schema: type: string - description: The key of the property. in: path name: propertyKey required: true schema: type: string responses: "200": content: application/json: example: '{"key":"issue.support","value":{"system.conversation.id":"b1bf38be-5e94-4b40-a3b8-9278735ee1e6","system.support.time":"1m"}}' schema: $ref: "#/components/schemas/EntityProperty" description: Returned if the request is successful. "400": description: Returned if the worklog ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the issue, worklog, or property is not found. * the user does not have permission to view the issue or worklog. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get worklog property tags: - Issue worklog properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-worklog.property:jira state: Beta put: deprecated: false description: |- Sets the value of a worklog property. Use this operation to store custom data against the worklog. The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The maximum length is 32768 characters. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * *Edit all worklogs*[ project permission](https://confluence.atlassian.com/x/yodKLg) to update any worklog or *Edit own worklogs* to update worklogs created by the user. * If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: setWorklogProperty parameters: - description: The ID or key of the issue. in: path name: issueIdOrKey required: true schema: type: string - description: The ID of the worklog. in: path name: worklogId required: true schema: type: string - description: The key of the issue property. The maximum length is 255 characters. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: schema: {} required: true responses: "200": content: application/json: schema: {} description: Returned if the worklog property is updated. "201": content: application/json: schema: {} description: Returned if the worklog property is created. "400": description: Returned if the worklog ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to edit the worklog. "404": description: |- Returned if: * the issue or worklog is not found. * the user does not have permission to view the issue or worklog. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Set worklog property tags: - Issue worklog properties x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:issue-worklog.property:jira state: Beta /rest/api/3/issueLink: post: deprecated: false description: |- Creates a link between two issues. Use this operation to indicate a relationship between two issues and optionally add a comment to the from (outward) issue. To use this resource the site must have [Issue Linking](https://confluence.atlassian.com/x/yoXKM) enabled. This resource returns nothing on the creation of an issue link. To obtain the ID of the issue link, use `https://your-domain.atlassian.net/rest/api/3/issue/[linked issue key]?fields=issuelinks`. If the link request duplicates a link, the response indicates that the issue link was created. If the request included a comment, the comment is added. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse project* [project permission](https://confluence.atlassian.com/x/yodKLg) for all the projects containing the issues to be linked, * *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) on the project containing the from (outward) issue, * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. * If the comment has visibility restrictions, belongs to the group or has the role visibility is restricted to. operationId: linkIssues parameters: [] requestBody: content: application/json: example: comment: body: content: - content: - text: Linked related issue! type: text type: paragraph type: doc version: 1 visibility: identifier: 276f955c-63d7-42c8-9520-92d01dca0625 type: group value: jira-software-users inwardIssue: key: HSP-1 outwardIssue: key: MKY-1 type: name: Duplicate schema: $ref: "#/components/schemas/LinkIssueRequestJsonBean" description: The issue link request. required: true responses: "201": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the comment is not created. The response contains an error message indicating why the comment wasn't created. The issue link is also not created. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * issue linking is disabled. * the user cannot view one or both of the issues. For example, the user doesn't have *Browse project* project permission for a project containing one of the issues. * the user does not have *link issues* project permission. * either of the link issues are not found. * the issue link type is not found. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Create issue link tags: - Issue links x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:comment:jira - write:issue:jira - write:issue-link:jira state: Beta "/rest/api/3/issueLink/{linkId}": delete: deprecated: false description: |- Deletes an issue link. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * Browse project [project permission](https://confluence.atlassian.com/x/yodKLg) for all the projects containing the issues in the link. * *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for at least one of the projects containing issues in the link. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, permission to view both of the issues. operationId: deleteIssueLink parameters: - description: The ID of the issue link. in: path name: linkId required: true schema: type: string responses: "200": description: 200 response "204": description: Returned if the request is successful. "400": description: Returned if the issue link ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * issue linking is disabled. * the issue link is not found. * the user doesn't have the required permissions. security: - basicAuth: [] - OAuth2: - write:jira-work - {} summary: Delete issue link tags: - Issue links x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:issue-link:jira state: Beta get: deprecated: false description: |- Returns an issue link. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Browse project* [project permission](https://confluence.atlassian.com/x/yodKLg) for all the projects containing the linked issues. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, permission to view both of the issues. operationId: getIssueLink parameters: - description: The ID of the issue link. in: path name: linkId required: true schema: type: string responses: "200": content: application/json: example: '{"id":"10001","type":{"id":"1000","name":"Duplicate","inward":"Duplicated by","outward":"Duplicates","self":"https://your-domain.atlassian.net/rest/api/3/issueLinkType/1000"},"inwardIssue":{"id":"10004","key":"PR-3","self":"https://your-domain.atlassian.net/rest/api/3/issue/PR-3","fields":{"status":{"self":"https://your-domain.atlassian.net/rest/api/3/status/5","description":"The issue is closed.","iconUrl":"https://your-domain.atlassian.net/images/icons/closed.gif","name":"Closed","id":"5","statusCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/9","id":9,"key":"completed","colorName":"green"}},"priority":{"self":"https://your-domain.atlassian.net/rest/api/3/priority/5","statusColor":"#cfcfcf","description":"Very little impact.","iconUrl":"https://your-domain.atlassian.net/images/icons/priorities/trivial.png","name":"Trivial","id":"2"},"issuetype":{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","id":"1","description":"A problem with the software.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10316&avatarType=issuetype\",","name":"Bug","subtask":false,"avatarId":10002,"entityId":"9d7dd6f7-e8b6-4247-954b-7b2c9b2a5ba2","hierarchyLevel":0,"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}}},"outwardIssue":{"id":"10004L","key":"PR-2","self":"https://your-domain.atlassian.net/rest/api/3/issue/PR-2","fields":{"status":{"self":"https://your-domain.atlassian.net/rest/api/3/status/10000","description":"The issue is currently being worked on.","iconUrl":"https://your-domain.atlassian.net/images/icons/progress.gif","name":"In Progress","id":"10000","statusCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/1","id":1,"key":"in-flight","colorName":"yellow","name":"In Progress"}},"priority":{"self":"https://your-domain.atlassian.net/rest/api/3/priority/3","statusColor":"#009900","description":"Major loss of function.","iconUrl":"https://your-domain.atlassian.net/images/icons/priorities/major.png","name":"Major","id":"1"},"issuetype":{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","description":"A task that needs to be done.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10299&avatarType=issuetype\",","name":"Task","subtask":false,"avatarId":1,"hierarchyLevel":0}}}}' schema: $ref: "#/components/schemas/IssueLink" description: Returned if the request is successful. "400": description: Returned if the issue link ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * issue linking is disabled. * the issue link is not found. * the user doesn't have the required permissions. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue link tags: - Issue links x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field:jira - read:issue-link-type:jira - read:issue:jira - read:issue-type:jira - read:priority:jira - read:status:jira - read:avatar:jira - read:issue.time-tracking:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta /rest/api/3/issueLinkType: get: deprecated: false description: |- Returns a list of all issue link types. To use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for a project in the site. operationId: getIssueLinkTypes parameters: [] responses: "200": content: application/json: example: '{"issueLinkTypes":[{"id":"1000","name":"Duplicate","inward":"Duplicated by","outward":"Duplicates","self":"https://your-domain.atlassian.net/rest/api/3/issueLinkType/1000"},{"id":"1010","name":"Blocks","inward":"Blocked by","outward":"Blocks","self":"https://your-domain.atlassian.net/rest/api/3/issueLinkType/1010"}]}' schema: $ref: "#/components/schemas/IssueLinkTypes" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if issue linking is disabled. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue link types tags: - Issue link types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-link-type:jira state: Beta post: deprecated: false description: |- Creates an issue link type. Use this operation to create descriptions of the reasons why issues are linked. The issue link type consists of a name and descriptions for a link's inward and outward relationships. To use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createIssueLinkType parameters: [] requestBody: content: application/json: example: inward: Duplicated by name: Duplicate outward: Duplicates schema: $ref: "#/components/schemas/IssueLinkType" required: true responses: "201": content: application/json: example: '{"id":"1000","name":"Duplicate","inward":"Duplicated by","outward":"Duplicates","self":"https://your-domain.atlassian.net/rest/api/3/issueLinkType/1000"}' schema: $ref: "#/components/schemas/IssueLinkType" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * issue linking is disabled. * the issue link type name is in use. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Create issue link type tags: - Issue link types x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-link-type:jira state: Beta "/rest/api/3/issueLinkType/{issueLinkTypeId}": delete: deprecated: false description: |- Deletes an issue link type. To use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteIssueLinkType parameters: - description: The ID of the issue link type. in: path name: issueLinkTypeId required: true schema: type: string responses: "204": description: Returned if the request is successful. "400": description: Returned if the issue link type ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * issue linking is disabled. * the issue link type is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Delete issue link type tags: - Issue link types x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:issue-link-type:jira state: Beta get: deprecated: false description: |- Returns an issue link type. To use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for a project in the site. operationId: getIssueLinkType parameters: - description: The ID of the issue link type. in: path name: issueLinkTypeId required: true schema: type: string responses: "200": content: application/json: example: '{"id":"1000","name":"Duplicate","inward":"Duplicated by","outward":"Duplicates","self":"https://your-domain.atlassian.net/rest/api/3/issueLinkType/1000"}' schema: $ref: "#/components/schemas/IssueLinkType" description: Returned if the request is successful. "400": description: Returned if the issue link type ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * issue linking is disabled. * the issue link type is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue link type tags: - Issue link types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-link-type:jira state: Beta put: deprecated: false description: |- Updates an issue link type. To use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateIssueLinkType parameters: - description: The ID of the issue link type. in: path name: issueLinkTypeId required: true schema: type: string requestBody: content: application/json: example: inward: Duplicated by name: Duplicate outward: Duplicates schema: $ref: "#/components/schemas/IssueLinkType" required: true responses: "200": content: application/json: example: '{"id":"1000","name":"Duplicate","inward":"Duplicated by","outward":"Duplicates","self":"https://your-domain.atlassian.net/rest/api/3/issueLinkType/1000"}' schema: $ref: "#/components/schemas/IssueLinkType" description: Returned if the request is successful. "400": description: Returned if the issue link type ID or the request body are invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * issue linking is disabled. * the issue link type is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Update issue link type tags: - Issue link types x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-link-type:jira - write:issue-link-type:jira state: Beta /rest/api/3/issuesecurityschemes: get: deprecated: false description: |- Returns all [issue security schemes](https://confluence.atlassian.com/x/J4lKLg). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueSecuritySchemes parameters: [] responses: "200": content: application/json: example: '{"issueSecuritySchemes":[{"self":"https://your-domain.atlassian.net/rest/api/3/issuesecurityschemes/10000","id":10000,"name":"Default Issue Security Scheme","description":"Description for the default issue security scheme","defaultSecurityLevelId":10021}]}' schema: $ref: "#/components/schemas/SecuritySchemes" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. "403": description: Returned if the user does not have permission to administer issue security schemes. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Get issue security schemes tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:issue-security-level:jira - read:issue-security-scheme:jira state: Beta post: deprecated: false description: |- Creates a security scheme with security scheme levels and levels' members. You can create up to 100 security scheme levels and security scheme levels' members per request. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createIssueSecurityScheme parameters: [] requestBody: content: application/json: example: description: Newly created issue security scheme levels: - description: Newly created level isDefault: true members: - parameter: administrators type: group name: New level name: New security scheme schema: $ref: "#/components/schemas/CreateIssueSecuritySchemeDetails" required: true responses: "201": content: application/json: example: '{"id":"10001"}' schema: $ref: "#/components/schemas/SecuritySchemeId" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The length of the description must not exceed 4,000 characters."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create issue security scheme tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/issuesecurityschemes/level: get: deprecated: false description: |- Returns a [paginated](#pagination) list of issue security levels. Only issue security levels in the context of classic projects are returned. Filtering using IDs is inclusive: if you specify both security scheme IDs and level IDs, the result will include both specified issue security levels and all issue security levels from the specified schemes. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getSecurityLevels parameters: - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: "0" type: string - description: The maximum number of items to return per page. in: query name: maxResults schema: default: "50" type: string - description: "The list of issue security scheme level IDs. To include multiple issue security levels, separate IDs with an ampersand: `id=10000&id=10001`." in: query name: id schema: items: type: string type: array uniqueItems: true - description: "The list of issue security scheme IDs. To include multiple issue security schemes, separate IDs with an ampersand: `schemeId=10000&schemeId=10001`." in: query name: schemeId schema: items: type: string type: array uniqueItems: true - description: When set to true, returns multiple default levels for each security scheme containing a default. If you provide scheme and level IDs not associated with the default, returns an empty page. The default value is false. in: query name: onlyDefault schema: default: false type: boolean responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":1,"isLast":true,"values":[{"self":"https://your-domain.atlassian.net/rest/api/3/issuesecurityscheme/level?id=10021","id":"10021","description":"Only the reporter and internal staff can see this issue.","name":"Reporter Only","isDefault":true,"issueSecuritySchemeId":"10001"}]}' schema: $ref: "#/components/schemas/PageBeanSecurityLevel" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["-1000 is not a valid value. id must be zero or a positive integer."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue security levels tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-security-level:jira - read:issue-security-scheme:jira state: Beta x-experimental: true /rest/api/3/issuesecurityschemes/level/default: put: deprecated: false description: |- Sets default issue security levels for schemes. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setDefaultLevels parameters: [] requestBody: content: application/json: example: defaultValues: - defaultLevelId: "20000" issueSecuritySchemeId: "10000" - defaultLevelId: "30000" issueSecuritySchemeId: "12000" schema: $ref: "#/components/schemas/SetDefaultLevelsRequest" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["some-wrong-string is not a valid value. The issue security scheme ID must be a positive integer."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Issue security scheme with ID 4364564 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue resolution isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set default issue security levels tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/issuesecurityschemes/level/member: get: deprecated: false description: |- Returns a [paginated](#pagination) list of issue security level members. Only issue security level members in the context of classic projects are returned. Filtering using parameters is inclusive: if you specify both security scheme IDs and level IDs, the result will include all issue security level members from the specified schemes and levels. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getSecurityLevelMembers parameters: - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: "0" type: string - description: The maximum number of items to return per page. in: query name: maxResults schema: default: "50" type: string - description: "The list of issue security level member IDs. To include multiple issue security level members separate IDs with an ampersand: `id=10000&id=10001`." in: query name: id schema: items: type: string type: array uniqueItems: true - description: "The list of issue security scheme IDs. To include multiple issue security schemes separate IDs with an ampersand: `schemeId=10000&schemeId=10001`." in: query name: schemeId schema: items: type: string type: array uniqueItems: true - description: "The list of issue security level IDs. To include multiple issue security levels separate IDs with an ampersand: `levelId=10000&levelId=10001`." in: query name: levelId schema: items: type: string type: array uniqueItems: true - description: |- Use expand to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `all` Returns all expandable information * `field` Returns information about the custom field granted the permission * `group` Returns information about the group that is granted the permission * `projectRole` Returns information about the project role granted the permission * `user` Returns information about the user who is granted the permission in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":3,"isLast":true,"values":[{"id":"10000","issueSecurityLevelId":"20010","issueSecuritySchemeId":"10010","holder":{"type":"group","expand":"group"}}]}' schema: $ref: "#/components/schemas/PageBeanSecurityLevelMember" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' description: Returned if the user doesn't have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue security level members tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-security-level:jira - read:issue-security-scheme:jira state: Beta x-experimental: true /rest/api/3/issuesecurityschemes/project: get: deprecated: false description: Returns a [paginated](#pagination) mapping of projects that are using security schemes. You can provide either one or multiple security scheme IDs or project IDs to filter by. If you don't provide any, this will return a list of all mappings. Only issue security schemes in the context of classic projects are supported. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: searchProjectsUsingSecuritySchemes parameters: - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: "0" type: string - description: The maximum number of items to return per page. in: query name: maxResults schema: default: "50" type: string - description: The list of security scheme IDs to be filtered out. in: query name: issueSecuritySchemeId schema: items: type: string type: array uniqueItems: true - description: The list of project IDs to be filtered out. in: query name: projectId schema: items: type: string type: array uniqueItems: true responses: "200": content: application/json: example: '{"issueSecuritySchemeId":"10000","projectId":"10000"}' schema: $ref: "#/components/schemas/PageBeanIssueSecuritySchemeToProjectMapping" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the search criteria is invalid.If you specify the project ID parameter "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get projects using issue security schemes tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/issuesecurityschemes/search: get: deprecated: false description: |- Returns a [paginated](#pagination) list of issue security schemes. If you specify the project ID parameter, the result will contain issue security schemes and related project IDs you filter by. Use \{@link IssueSecuritySchemeResource\#searchProjectsUsingSecuritySchemes(String, String, Set, Set)\} to obtain all projects related to scheme. Only issue security schemes in the context of classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: searchSecuritySchemes parameters: - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: "0" type: string - description: The maximum number of items to return per page. in: query name: maxResults schema: default: "50" type: string - description: "The list of issue security scheme IDs. To include multiple issue security scheme IDs, separate IDs with an ampersand: `id=10000&id=10001`." in: query name: id schema: items: type: string type: array uniqueItems: true - description: "The list of project IDs. To include multiple project IDs, separate IDs with an ampersand: `projectId=10000&projectId=10001`." in: query name: projectId schema: items: type: string type: array uniqueItems: true responses: "200": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/issuesecurityscheme/10000","name":"Default scheme","description":"Default scheme description","defaultLevel":10001,"projectIds":[10002]}' schema: $ref: "#/components/schemas/PageBeanSecuritySchemeWithProjects" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["-1000 is not a valid value. id must be zero or a positive integer."],"errors":{}}' description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' description: Returned if the user doesn't have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Search issue security schemes tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-security-level:jira - read:issue-security-scheme:jira state: Beta x-experimental: true "/rest/api/3/issuesecurityschemes/{id}": get: deprecated: false description: |- Returns an issue security scheme along with its security levels. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). * *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for a project that uses the requested issue security scheme. operationId: getIssueSecurityScheme parameters: - description: The ID of the issue security scheme. Use the [Get issue security schemes](#api-rest-api-3-issuesecurityschemes-get) operation to get a list of issue security scheme IDs. in: path name: id required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issuesecurityschemes/10000","id":10000,"name":"Default Issue Security Scheme","description":"Description for the default issue security scheme","defaultSecurityLevelId":10021,"levels":[{"self":"https://your-domain.atlassian.net/rest/api/3/securitylevel/10021","id":"10021","description":"Only the reporter and internal staff can see this issue.","name":"Reporter Only"}]}' schema: $ref: "#/components/schemas/SecurityScheme" 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 administrator permission and the scheme is not used in any project where the user has administrative permission. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Get issue security scheme tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:issue-security-level:jira - read:issue-security-scheme:jira state: Beta put: deprecated: false description: |- Updates the issue security scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateIssueSecurityScheme parameters: - description: The ID of the issue security scheme. in: path name: id required: true schema: type: string requestBody: content: application/json: example: description: My issue security scheme description name: My issue security scheme name schema: $ref: "#/components/schemas/UpdateIssueSecuritySchemeRequestBean" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The length of the description must not exceed 4,000 characters."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Issue security scheme with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue security scheme isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update issue security scheme tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true "/rest/api/3/issuesecurityschemes/{issueSecuritySchemeId}/members": get: deprecated: false description: |- Returns issue security level members. Only issue security level members in context of classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueSecurityLevelMembers parameters: - description: The ID of the issue security scheme. Use the [Get issue security schemes](#api-rest-api-3-issuesecurityschemes-get) operation to get a list of issue security scheme IDs. in: path name: issueSecuritySchemeId required: true schema: format: int64 type: integer - 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: "The list of issue security level IDs. To include multiple issue security levels separate IDs with ampersand: `issueSecurityLevelId=10000&issueSecurityLevelId=10001`." in: query name: issueSecurityLevelId schema: items: format: int64 type: integer type: array uniqueItems: true - description: |- Use expand to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `all` Returns all expandable information. * `field` Returns information about the custom field granted the permission. * `group` Returns information about the group that is granted the permission. * `projectRole` Returns information about the project role granted the permission. * `user` Returns information about the user who is granted the permission. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":3,"isLast":true,"values":[{"id":10000,"issueSecurityLevelId":10020,"holder":{"type":"user","user":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney"},"expand":"user"}},{"id":10001,"issueSecurityLevelId":10020,"holder":{"type":"group","parameter":"jira-core-users","value":"9c559b11-6c5d-4f96-992c-a746cabab28b","expand":"group"}},{"id":10002,"issueSecurityLevelId":10021,"holder":{"type":"assignee"}}]}' schema: $ref: "#/components/schemas/PageBeanIssueSecurityLevelMember" 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 user does not have the necessary permission. "404": description: Returned if no issue security level members are found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue security level members tags: - Issue security level x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field:jira - read:issue-security-level:jira - read:project-role:jira - read:user:jira state: Beta "/rest/api/3/issuesecurityschemes/{schemeId}": delete: deprecated: false description: |- Deletes an issue security scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteSecurityScheme parameters: - description: The ID of the issue security scheme. in: path name: schemeId required: true schema: type: string responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: "\"You can't delete an issue security scheme if any projects are associated with it.\"" schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errors":{},"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errors":{},"errorMessages":["Issue security scheme with ID 10000 not found."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue security scheme isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete issue security scheme tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true "/rest/api/3/issuesecurityschemes/{schemeId}/level": put: deprecated: false description: |- Adds levels and levels' members to the issue security scheme. You can add up to 100 levels per request. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addSecurityLevel parameters: - description: The ID of the issue security scheme. in: path name: schemeId required: true schema: type: string requestBody: content: application/json: example: levels: - description: First Level Description isDefault: true members: - type: reporter - parameter: jira-administrators type: group name: First Level schema: $ref: "#/components/schemas/AddSecuritySchemeLevelsRequestBean" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["some-wrong-string is not a valid value. The issue security scheme ID must be a positive integer."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errors":{},"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errors":{},"errorMessages":["Issue security scheme with ID 10000 not found."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the security scheme isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Add issue security levels tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true "/rest/api/3/issuesecurityschemes/{schemeId}/level/{levelId}": delete: deprecated: false description: |- Deletes an issue security level. This operation is [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeLevel parameters: - description: The ID of the issue security scheme. in: path name: schemeId required: true schema: type: string - description: The ID of the issue security level to remove. in: path name: levelId required: true schema: type: string - description: The ID of the issue security level that will replace the currently selected level. in: query name: replaceWith schema: type: string responses: "303": content: application/json: schema: $ref: "#/components/schemas/TaskProgressBeanObject" description: Returned if the request is successful. "400": content: application/json: example: "\"You can't delete an issue security scheme if any projects are associated with it.\"" schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errors":{},"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errors":{},"errorMessages":["Issue security scheme with ID 10000 not found."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue security level isn't found. "409": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if a task to remove the issue security level is already running. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove issue security level tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true put: deprecated: false description: |- Updates the issue security level. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateSecurityLevel parameters: - description: The ID of the issue security scheme level belongs to. in: path name: schemeId required: true schema: type: string - description: The ID of the issue security level to update. in: path name: levelId required: true schema: type: string requestBody: content: application/json: example: description: New level description name: New level name schema: $ref: "#/components/schemas/UpdateIssueSecurityLevelDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The length of the description must not exceed 4,000 characters."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Issue security scheme with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue security level isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update issue security level tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true "/rest/api/3/issuesecurityschemes/{schemeId}/level/{levelId}/member": put: deprecated: false description: |- Adds members to the issue security level. You can add up to 100 members per request. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addSecurityLevelMembers parameters: - description: The ID of the issue security scheme. in: path name: schemeId required: true schema: type: string - description: The ID of the issue security level. in: path name: levelId required: true schema: type: string requestBody: content: application/json: example: members: - type: reporter - parameter: jira-administrators type: group schema: $ref: "#/components/schemas/SecuritySchemeMembersRequest" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["some-wrong-string is not a valid value. The issue security scheme ID must be a positive integer."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errors":{},"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errors":{},"errorMessages":["Issue security scheme with ID 10000 not found."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the security scheme isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Add issue security level members tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true "/rest/api/3/issuesecurityschemes/{schemeId}/level/{levelId}/member/{memberId}": delete: deprecated: false description: |- Removes an issue security level member from an issue security scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeMemberFromSecurityLevel parameters: - description: The ID of the issue security scheme. in: path name: schemeId required: true schema: type: string - description: The ID of the issue security level. in: path name: levelId required: true schema: type: string - description: The ID of the issue security level member to be removed. in: path name: memberId required: true schema: type: string responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errors":{},"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errors":{},"errorMessages":["Issue security scheme with ID 10000 not found."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the security scheme isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove member from issue security level tags: - Issue security schemes x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/issuetype: get: deprecated: false description: |- Returns all issue types. This operation can be accessed anonymously. **[Permissions](#permissions) required:** Issue types are only returned as follows: * if the user has the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), all issue types are returned. * if the user has the *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for one or more projects, the issue types associated with the projects the user has permission to browse are returned. operationId: getIssueAllTypes parameters: [] responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","description":"A task that needs to be done.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10299&avatarType=issuetype\",","name":"Task","subtask":false,"avatarId":1,"hierarchyLevel":0},{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","id":"1","description":"A problem with the software.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10316&avatarType=issuetype\",","name":"Bug","subtask":false,"avatarId":10002,"entityId":"9d7dd6f7-e8b6-4247-954b-7b2c9b2a5ba2","hierarchyLevel":0,"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}]' schema: items: $ref: "#/components/schemas/IssueTypeDetails" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get all issue types for user tags: - Issue types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta post: deprecated: false description: |- Creates an issue type and adds it to the default issue type scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createIssueType parameters: [] requestBody: content: application/json: example: description: description name: name type: standard schema: $ref: "#/components/schemas/IssueTypeCreateBean" required: true responses: "201": content: application/json: schema: $ref: "#/components/schemas/IssueTypeDetails" description: Returned if the request is successful. "400": description: |- Returned if the request is invalid because: * no content is sent. * the issue type name exceeds 60 characters. * a subtask issue type is requested on an instance where subtasks are disabled. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "409": description: Returned if the issue type name is in use. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Create issue type tags: - Issue types x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type:jira - read:avatar:jira - read:issue-type:jira - read:project-category:jira - read:project:jira state: Beta /rest/api/3/issuetype/project: get: deprecated: false description: |- Returns issue types for a project. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) in the relevant project or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueTypesForProject parameters: - description: The ID of the project. in: query name: projectId required: true schema: format: int64 type: integer - description: |- The level of the issue type to filter by. Use: * `-1` for Subtask. * `0` for Base. * `1` for Epic. in: query name: level schema: format: int32 type: integer responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","id":"1","description":"A problem with the software.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10316&avatarType=issuetype\",","name":"Bug","subtask":false,"avatarId":10002,"entityId":"9d7dd6f7-e8b6-4247-954b-7b2c9b2a5ba2","hierarchyLevel":0,"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}},{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","description":"A task that needs to be done.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10299&avatarType=issuetype\",","name":"Task","subtask":false,"avatarId":1,"hierarchyLevel":0,"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}]' schema: items: $ref: "#/components/schemas/IssueTypeDetails" type: array 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. "404": description: |- Returned if: * the project is not found. * the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue types for project tags: - Issue types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta x-experimental: true "/rest/api/3/issuetype/{id}": delete: deprecated: false description: |- Deletes the issue type. If the issue type is in use, all uses are updated with the alternative issue type (`alternativeIssueTypeId`). A list of alternative issue types are obtained from the [Get alternative issue types](#api-rest-api-3-issuetype-id-alternatives-get) resource. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteIssueType parameters: - description: The ID of the issue type. in: path name: id required: true schema: type: string - description: The ID of the replacement issue type. in: query name: alternativeIssueTypeId schema: type: string responses: "204": description: Returned if the request is successful. "400": description: Returned if any issues cannot be updated with the alternative issue type. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: |- Returned if: * the issue type is in use and an alternative issue type is not specified. * the issue type or alternative issue type is not found. "409": description: |- Returned if the issue type is in use and: * also specified as the alternative issue type. * is a *standard* issue type and the alternative issue type is a *subtask*. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Delete issue type tags: - Issue types x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:issue-type:jira state: Beta get: deprecated: false description: |- Returns an issue type. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) in a project the issue type is associated with or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueType parameters: - description: The ID of the issue type. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","description":"A task that needs to be done.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10299&avatarType=issuetype\",","name":"Task","subtask":false,"avatarId":1,"hierarchyLevel":0}' schema: $ref: "#/components/schemas/IssueTypeDetails" description: Returned if the request is successful. "400": description: Returned if the issue type ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the issue type is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue type tags: - Issue types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta put: deprecated: false description: |- Updates the issue type. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateIssueType parameters: - description: The ID of the issue type. in: path name: id required: true schema: type: string requestBody: content: application/json: example: avatarId: 1 description: description name: name schema: $ref: "#/components/schemas/IssueTypeUpdateBean" required: true responses: "200": content: application/json: schema: $ref: "#/components/schemas/IssueTypeDetails" description: Returned if the request is successful. "400": description: |- Returned if the request is invalid because: * no content is sent. * the issue type name exceeds 60 characters. * the avatar is not associated with this issue type. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the issue type is not found. "409": description: Returned if the issue type name is in use. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Update issue type tags: - Issue types x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type:jira - read:avatar:jira - read:issue-type:jira - read:project-category:jira - read:project:jira state: Beta "/rest/api/3/issuetype/{id}/alternatives": get: deprecated: false description: |- Returns a list of issue types that can be used to replace the issue type. The alternative issue types are those assigned to the same workflow scheme, field configuration scheme, and screen scheme. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getAlternativeIssueTypes parameters: - description: The ID of the issue type. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","description":"A task that needs to be done.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10299&avatarType=issuetype\",","name":"Task","subtask":false,"avatarId":1,"hierarchyLevel":0},{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","id":"1","description":"A problem with the software.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10316&avatarType=issuetype\",","name":"Bug","subtask":false,"avatarId":10002,"entityId":"9d7dd6f7-e8b6-4247-954b-7b2c9b2a5ba2","hierarchyLevel":0,"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}]' schema: items: $ref: "#/components/schemas/IssueTypeDetails" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the issue type is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get alternative issue types tags: - Issue types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:project-category:jira - read:project:jira - read:avatar:jira state: Beta "/rest/api/3/issuetype/{id}/avatar2": post: deprecated: false description: |- Loads an avatar for the issue type. Specify the avatar's local file location in the body of the request. Also, include the following headers: * `X-Atlassian-Token: no-check` To prevent XSRF protection blocking the request, for more information see [Special Headers](#special-request-headers). * `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG. For example: `curl --request POST \ --user email@example.com: \ --header 'X-Atlassian-Token: no-check' \ --header 'Content-Type: image/< image_type>' \ --data-binary "<@/path/to/file/with/your/avatar>" \ --url 'https://your-domain.atlassian.net/rest/api/3/issuetype/{issueTypeId}'This` The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of the image. The length of the square's sides is set to the smaller of the height or width of the image. The cropped image is then used to create avatars of 16x16, 24x24, 32x32, and 48x48 in size. After creating the avatar, use [ Update issue type](#api-rest-api-3-issuetype-id-put) to set it as the issue type's displayed avatar. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createIssueTypeAvatar parameters: - description: The ID of the issue type. in: path name: id required: true schema: type: string - description: The X coordinate of the top-left corner of the crop region. in: query name: x schema: default: 0 format: int32 type: integer - description: The Y coordinate of the top-left corner of the crop region. in: query name: y schema: default: 0 format: int32 type: integer - description: The length of each side of the crop region. in: query name: size required: true schema: format: int32 type: integer requestBody: content: "*/*": schema: {} required: true responses: "201": content: application/json: example: '{"id":"1000","isSystemAvatar":true,"isSelected":false,"isDeletable":false,"urls":{"16x16":"/secure/useravatar?size=xsmall&avatarId=10040&avatarType=project","24x24":"/secure/useravatar?size=small&avatarId=10040&avatarType=project","32x32":"/secure/useravatar?size=medium&avatarId=10040&avatarType=project","48x48":"/secure/useravatar?avatarId=10040&avatarType=project"}}' schema: $ref: "#/components/schemas/Avatar" description: Returned if the request is successful. "400": description: |- Returned if: * an image isn't included in the request. * the image type is unsupported. * the crop parameters extend the crop area beyond the edge of the image. * `cropSize` is missing. * the issue type ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the issue type is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Load issue type avatar tags: - Issue types x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:avatar:jira - write:issue-type:jira - read:avatar:jira state: Beta "/rest/api/3/issuetype/{issueTypeId}/properties": get: deprecated: false description: |- Returns all the [issue type property](https://developer.atlassian.com/cloud/jira/platform/storing-data-without-a-database/#a-id-jira-entity-properties-a-jira-entity-properties) keys of the issue type. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) to get the property keys of any issue type. * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) to get the property keys of any issue types associated with the projects the user has permission to browse. operationId: getIssueTypePropertyKeys parameters: - description: The ID of the issue type. in: path name: issueTypeId required: true schema: type: string responses: "200": content: application/json: example: '{"keys":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support","key":"issue.support"}]}' schema: $ref: "#/components/schemas/PropertyKeys" description: Returned if the request is successful. "400": description: Returned if the issue type ID is invalid. "404": description: |- Returned if: * the issue type is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue type property keys tags: - Issue type properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type.property:jira - read:comment.property:jira - read:dashboard.property:jira - read:issue-worklog.property:jira - read:issue.property:jira - read:project.property:jira - read:user.property:jira - read:workflow.property:jira state: Beta "/rest/api/3/issuetype/{issueTypeId}/properties/{propertyKey}": delete: deprecated: false description: |- Deletes the [issue type property](https://developer.atlassian.com/cloud/jira/platform/storing-data-without-a-database/#a-id-jira-entity-properties-a-jira-entity-properties). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteIssueTypeProperty parameters: - description: The ID of the issue type. in: path name: issueTypeId required: true schema: type: string - description: The key of the property. Use [Get issue type property keys](#api-rest-api-3-issuetype-issueTypeId-properties-get) to get a list of all issue type property keys. in: path name: propertyKey required: true schema: type: string responses: "204": description: Returned if the issue type property is deleted. "400": description: Returned if the issue type ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the issue type or property is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Delete issue type property tags: - Issue type properties x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:issue-type.property:jira state: Beta get: deprecated: false description: |- Returns the key and value of the [issue type property](https://developer.atlassian.com/cloud/jira/platform/storing-data-without-a-database/#a-id-jira-entity-properties-a-jira-entity-properties). This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) to get the details of any issue type. * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) to get the details of any issue types associated with the projects the user has permission to browse. operationId: getIssueTypeProperty parameters: - description: The ID of the issue type. in: path name: issueTypeId required: true schema: type: string - description: The key of the property. Use [Get issue type property keys](#api-rest-api-3-issuetype-issueTypeId-properties-get) to get a list of all issue type property keys. in: path name: propertyKey required: true schema: type: string responses: "200": content: application/json: example: '{"key":"issue.support","value":{"system.conversation.id":"b1bf38be-5e94-4b40-a3b8-9278735ee1e6","system.support.time":"1m"}}' schema: $ref: "#/components/schemas/EntityProperty" description: Returned if the request is successful. "400": description: Returned if the issue type ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue type or property is not found or the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get issue type property tags: - Issue type properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type.property:jira state: Beta put: deprecated: false description: |- Creates or updates the value of the [issue type property](https://developer.atlassian.com/cloud/jira/platform/storing-data-without-a-database/#a-id-jira-entity-properties-a-jira-entity-properties). Use this resource to store and update data against an issue type. The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The maximum length is 32768 characters. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setIssueTypeProperty parameters: - description: The ID of the issue type. in: path name: issueTypeId required: true schema: type: string - description: The key of the issue type property. The maximum length is 255 characters. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: example: number: 5 string: string-value schema: {} required: true responses: "200": content: application/json: schema: {} description: Returned if the issue type property is updated. "201": content: application/json: schema: {} description: Returned if the issue type property is created. "400": description: |- Returned if: * the issue type ID is invalid. * a property value is not provided. * the property value JSON content is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to modify the issue type. "404": description: |- Returned if: * the issue type is not found. * the user does not have the permission view the issue type. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Set issue type property tags: - Issue type properties x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type.property:jira state: Beta /rest/api/3/issuetypescheme: get: deprecated: false description: |- Returns a [paginated](#pagination) list of issue type schemes. Only issue type schemes used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllIssueTypeSchemes 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: The list of issue type schemes IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`. in: query name: id schema: items: format: int64 type: integer type: array uniqueItems: true - description: |- [Order](#ordering) the results by a field: * `name` Sorts by issue type scheme name. * `id` Sorts by issue type scheme ID. in: query name: orderBy schema: default: id enum: - name - -name - +name - id - -id - +id type: string - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `projects` For each issue type schemes, returns information about the projects the issue type scheme is assigned to. * `issueTypes` For each issue type schemes, returns information about the issueTypes the issue type scheme have. in: query name: expand schema: default: "" type: string - description: String used to perform a case-insensitive partial match with issue type scheme name. in: query name: queryString schema: default: "" type: string responses: "200": content: application/json: example: "{\"maxResults\":100,\"startAt\":0,\"total\":3,\"isLast\":true,\"values\":[{\"id\":\"10000\",\"name\":\"Default Issue Type Scheme\",\"description\":\"Default issue type scheme is the list of global issue types. All newly created issue types will automatically be added to this scheme.\",\"defaultIssueTypeId\":\"10003\",\"isDefault\":true},{\"id\":\"10001\",\"name\":\"SUP: Kanban Issue Type Scheme\",\"description\":\"A collection of issue types suited to use in a kanban style project.\",\"projects\":{\"maxResults\":100,\"startAt\":0,\"total\":1,\"isLast\":true,\"values\":[{\"self\":\"project/EX\",\"id\":\"10000\",\"key\":\"EX\",\"name\":\"Example\",\"projectTypeKey\":\"ProjectTypeKey{key='software'}\",\"simplified\":false,\"avatarUrls\":{\"48x48\":\"secure/projectavatar?size=large&pid=10000\",\"24x24\":\"secure/projectavatar?size=small&pid=10000\",\"16x16\":\"secure/projectavatar?size=xsmall&pid=10000\",\"32x32\":\"secure/projectavatar?size=medium&pid=10000\"},\"projectCategory\":{\"id\":\"10000\",\"description\":\"Project category description\",\"name\":\"A project category\"}}]}},{\"id\":\"10002\",\"name\":\"HR: Scrum issue type scheme\",\"description\":\"\",\"defaultIssueTypeId\":\"10004\",\"issueTypes\":{\"maxResults\":100,\"startAt\":0,\"total\":1,\"isLast\":true,\"values\":[{\"id\":\"1000L\",\"description\":\"Improvement Issue Type\",\"iconUrl\":\"www.example.com\",\"name\":\"Improvements\",\"subtask\":true,\"hierarchyLevel\":-1}]}}]}" schema: $ref: "#/components/schemas/PageBeanIssueTypeScheme" 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 user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get all issue type schemes tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-type-scheme:jira state: Beta post: deprecated: false description: |- Creates an issue type scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createIssueTypeScheme parameters: [] requestBody: content: application/json: example: defaultIssueTypeId: "10002" description: A collection of issue types suited to use in a kanban style project. issueTypeIds: - "10001" - "10002" - "10003" name: Kanban Issue Type Scheme schema: $ref: "#/components/schemas/IssueTypeSchemeDetails" required: true responses: "201": content: application/json: example: '{"issueTypeSchemeId":"10010"}' schema: $ref: "#/components/schemas/IssueTypeSchemeID" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The default issue type ID has to be present in issue type IDs list."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "409": content: application/json: example: '{"errorMessages":["The name is used by another scheme."],"errors":{}}' description: Returned if the scheme name is used by another scheme. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create issue type scheme tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-scheme:jira state: Beta x-experimental: true /rest/api/3/issuetypescheme/mapping: get: deprecated: false description: |- Returns a [paginated](#pagination) list of issue type scheme items. Only issue type scheme items used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueTypeSchemesMapping 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: The list of issue type scheme IDs. To include multiple IDs, provide an ampersand-separated list. For example, `issueTypeSchemeId=10000&issueTypeSchemeId=10001`. in: query name: issueTypeSchemeId schema: items: format: int64 type: integer type: array uniqueItems: true responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":4,"isLast":true,"values":[{"issueTypeSchemeId":"10000","issueTypeId":"10000"},{"issueTypeSchemeId":"10000","issueTypeId":"10001"},{"issueTypeSchemeId":"10000","issueTypeId":"10002"},{"issueTypeSchemeId":"10001","issueTypeId":"10000"}]}' schema: $ref: "#/components/schemas/PageBeanIssueTypeSchemeMapping" 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 user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue type scheme items tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-type-scheme:jira state: Beta /rest/api/3/issuetypescheme/project: get: deprecated: false description: |- Returns a [paginated](#pagination) list of issue type schemes and, for each issue type scheme, a list of the projects that use it. Only issue type schemes used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueTypeSchemeForProjects 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: The list of project IDs. To include multiple project IDs, provide an ampersand-separated list. For example, `projectId=10000&projectId=10001`. in: query name: projectId required: true schema: items: format: int64 type: integer type: array uniqueItems: true responses: "200": content: application/json: example: "{\"maxResults\":100,\"startAt\":0,\"total\":3,\"isLast\":true,\"values\":[{\"issueTypeScheme\":{\"id\":\"10000\",\"name\":\"Default Issue Type Scheme\",\"description\":\"Default issue type scheme is the list of global issue types. All newly created issue types will automatically be added to this scheme.\",\"defaultIssueTypeId\":\"10003\",\"isDefault\":true},\"projectIds\":[\"10000\",\"10001\"]},{\"issueTypeScheme\":{\"id\":\"10001\",\"name\":\"SUP: Kanban Issue Type Scheme\",\"description\":\"A collection of issue types suited to use in a kanban style project.\",\"projects\":{\"maxResults\":100,\"startAt\":0,\"total\":1,\"isLast\":true,\"values\":[{\"self\":\"project/EX\",\"id\":\"10000\",\"key\":\"EX\",\"name\":\"Example\",\"projectTypeKey\":\"ProjectTypeKey{key='software'}\",\"simplified\":false,\"avatarUrls\":{\"48x48\":\"secure/projectavatar?size=large&pid=10000\",\"24x24\":\"secure/projectavatar?size=small&pid=10000\",\"16x16\":\"secure/projectavatar?size=xsmall&pid=10000\",\"32x32\":\"secure/projectavatar?size=medium&pid=10000\"},\"projectCategory\":{\"id\":\"10000\",\"description\":\"Project category description\",\"name\":\"A project category\"}}]}},\"projectIds\":[\"10002\"]},{\"issueTypeScheme\":{\"id\":\"10002\",\"name\":\"HR: Scrum issue type scheme\",\"description\":\"\",\"defaultIssueTypeId\":\"10004\",\"issueTypes\":{\"maxResults\":100,\"startAt\":0,\"total\":1,\"isLast\":true,\"values\":[{\"id\":\"1000L\",\"description\":\"Improvement Issue Type\",\"iconUrl\":\"www.example.com\",\"name\":\"Improvements\",\"subtask\":true,\"hierarchyLevel\":-1}]}},\"projectIds\":[\"10003\",\"10004\",\"10005\"]}]}" schema: $ref: "#/components/schemas/PageBeanIssueTypeSchemeProjects" 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 user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue type schemes for projects tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-type-scheme:jira state: Beta put: deprecated: false description: |- Assigns an issue type scheme to a project. If any issues in the project are assigned issue types not present in the new scheme, the operation will fail. To complete the assignment those issues must be updated to use issue types in the new scheme. Issue type schemes can only be assigned to classic projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: assignIssueTypeSchemeToProject parameters: [] requestBody: content: application/json: example: issueTypeSchemeId: "10000" projectId: "10000" schema: $ref: "#/components/schemas/IssueTypeSchemeProjectAssociation" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: "{\"errorMessages\":[\"This issue type scheme can't be assigned to the project. This is because some issues in this project use issue types not present in the scheme. Before assigning the scheme to the project, update the issue types on these issues: 7\"],\"errors\":{}}" description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type scheme was not found."],"errors":{}}' description: Returned if the issue type scheme or the project is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Assign issue type scheme to project tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-scheme:jira - write:project:jira state: Beta "/rest/api/3/issuetypescheme/{issueTypeSchemeId}": delete: deprecated: false description: |- Deletes an issue type scheme. Only issue type schemes used in classic projects can be deleted. Any projects assigned to the scheme are reassigned to the default issue type scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteIssueTypeScheme parameters: - description: The ID of the issue type scheme. in: path name: issueTypeSchemeId required: true schema: format: int64 type: integer responses: "204": content: application/json: schema: {} description: Returned if the issue type scheme is deleted. "400": content: application/json: example: "{\"errorMessages\":[\"The default issue type scheme can't be removed.\"],\"errors\":{}}" description: Returned if the request is to delete the default issue type scheme. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type scheme was not found."],"errors":{}}' description: Returned if the issue type scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete issue type scheme tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:issue-type-scheme:jira - write:project:jira state: Beta x-experimental: true put: deprecated: false description: |- Updates an issue type scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateIssueTypeScheme parameters: - description: The ID of the issue type scheme. in: path name: issueTypeSchemeId required: true schema: format: int64 type: integer requestBody: content: application/json: example: defaultIssueTypeId: "10002" description: A collection of issue types suited to use in a kanban style project. name: Kanban Issue Type Scheme schema: $ref: "#/components/schemas/IssueTypeSchemeUpdateDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The default issue type has to be one of the issue types of the scheme."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type scheme was not found."],"errors":{}}' description: Returned if the issue type scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update issue type scheme tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-scheme:jira state: Beta x-experimental: true "/rest/api/3/issuetypescheme/{issueTypeSchemeId}/issuetype": put: deprecated: false description: |- Adds issue types to an issue type scheme. The added issue types are appended to the issue types list. If any of the issue types exist in the issue type scheme, the operation fails and no issue types are added. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addIssueTypesToIssueTypeScheme parameters: - description: The ID of the issue type scheme. in: path name: issueTypeSchemeId required: true schema: format: int64 type: integer requestBody: content: application/json: example: issueTypeIds: - "10000" - "10002" - "10003" schema: $ref: "#/components/schemas/IssueTypeIds" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["These issue types were not added because they are already present in the issue type scheme: 10002, 10003"],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["These issue types were not found: 10000, 10002"],"errors":{}}' description: Returned if the issue type or the issue type scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Add issue types to issue type scheme tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-scheme:jira state: Beta x-experimental: true "/rest/api/3/issuetypescheme/{issueTypeSchemeId}/issuetype/move": put: deprecated: false description: |- Changes the order of issue types in an issue type scheme. The request body parameters must meet the following requirements: * all of the issue types must belong to the issue type scheme. * either `after` or `position` must be provided. * the issue type in `after` must not be in the issue type list. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: reorderIssueTypesInIssueTypeScheme parameters: - description: The ID of the issue type scheme. in: path name: issueTypeSchemeId required: true schema: format: int64 type: integer requestBody: content: application/json: example: after: "10008" issueTypeIds: - "10001" - "10004" - "10002" schema: $ref: "#/components/schemas/OrderOfIssueTypes" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The issue type scheme does not include some of the specified issue types. Issue type IDs missing from the scheme are: 10007, 10008"],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type scheme was not found."],"errors":{}}' description: Returned if the issue type scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Change order of issue types tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-scheme:jira state: Beta x-experimental: true "/rest/api/3/issuetypescheme/{issueTypeSchemeId}/issuetype/{issueTypeId}": delete: deprecated: false description: |- Removes an issue type from an issue type scheme. This operation cannot remove: * any issue type used by issues. * any issue types from the default issue type scheme. * the last standard issue type from an issue type scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeIssueTypeFromIssueTypeScheme parameters: - description: The ID of the issue type scheme. in: path name: issueTypeSchemeId required: true schema: format: int64 type: integer - description: The ID of the issue type. in: path name: issueTypeId required: true schema: format: int64 type: integer responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: "{\"errorMessages\":[\"Can't remove the last standard issue type from the issue type scheme.\"],\"errors\":{}}" description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type was not found in the issue type scheme."],"errors":{}}' description: Returned if the issue type scheme is missing or the issue type is not found in the issue type scheme. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove issue type from issue type scheme tags: - Issue type schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-scheme:jira state: Beta x-experimental: true /rest/api/3/issuetypescreenscheme: get: deprecated: false description: |- Returns a [paginated](#pagination) list of issue type screen schemes. Only issue type screen schemes used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueTypeScreenSchemes 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: The list of issue type screen scheme IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`. in: query name: id schema: items: format: int64 type: integer type: array uniqueItems: true - description: String used to perform a case-insensitive partial match with issue type screen scheme name. in: query name: queryString schema: default: "" type: string - description: |- [Order](#ordering) the results by a field: * `name` Sorts by issue type screen scheme name. * `id` Sorts by issue type screen scheme ID. in: query name: orderBy schema: default: id enum: - name - -name - +name - id - -id - +id type: string - description: Use [expand](#expansion) to include additional information in the response. This parameter accepts `projects` that, for each issue type screen schemes, returns information about the projects the issue type screen scheme is assigned to. in: query name: expand schema: default: "" type: string responses: "200": content: application/json: example: "{\"maxResults\":100,\"startAt\":0,\"total\":2,\"isLast\":true,\"values\":[{\"id\":\"1\",\"name\":\"Default Issue Type Screen Scheme\",\"description\":\"The default issue type screen scheme\"},{\"id\":\"10000\",\"name\":\"Office issue type screen scheme\",\"description\":\"Managing office projects\",\"projects\":{\"maxResults\":100,\"startAt\":0,\"total\":1,\"isLast\":true,\"values\":[{\"self\":\"project/EX\",\"id\":\"10000\",\"key\":\"EX\",\"name\":\"Example\",\"projectTypeKey\":\"ProjectTypeKey{key='software'}\",\"simplified\":false,\"avatarUrls\":{\"48x48\":\"secure/projectavatar?size=large&pid=10000\",\"24x24\":\"secure/projectavatar?size=small&pid=10000\",\"16x16\":\"secure/projectavatar?size=xsmall&pid=10000\",\"32x32\":\"secure/projectavatar?size=medium&pid=10000\"},\"projectCategory\":{\"id\":\"10000\",\"description\":\"Project category description\",\"name\":\"A project category\"}}]}}]}" schema: $ref: "#/components/schemas/PageBeanIssueTypeScreenScheme" 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 user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue type screen schemes tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-type-screen-scheme:jira state: Beta post: deprecated: false description: |- Creates an issue type screen scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createIssueTypeScreenScheme parameters: [] requestBody: content: application/json: example: issueTypeMappings: - issueTypeId: default screenSchemeId: "10001" - issueTypeId: "10001" screenSchemeId: "10002" - issueTypeId: "10002" screenSchemeId: "10002" name: Scrum issue type screen scheme schema: $ref: "#/components/schemas/IssueTypeScreenSchemeDetails" description: An issue type screen scheme bean. required: true responses: "201": content: application/json: example: '{"id":"10001"}' schema: $ref: "#/components/schemas/IssueTypeScreenSchemeId" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["One or more issue type IDs are repeated, an issue type ID can only be specified once."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type screen schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["One or more issue type IDs were not found."],"errors":{}}' description: Returned if the issue type or screen scheme is not found. "409": content: application/json: example: '{"errorMessages":["Sub-tasks are disabled in Jira. At least one of the issue types is a sub-task."],"errors":{}}' description: Returned if the issue type is a sub-task, but sub-tasks are disabled in Jira settings. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create issue type screen scheme tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-screen-scheme:jira state: Beta x-experimental: true /rest/api/3/issuetypescreenscheme/mapping: get: deprecated: false description: |- Returns a [paginated](#pagination) list of issue type screen scheme items. Only issue type screen schemes used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueTypeScreenSchemeMappings 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: "The list of issue type screen scheme IDs. To include multiple issue type screen schemes, separate IDs with ampersand: `issueTypeScreenSchemeId=10000&issueTypeScreenSchemeId=10001`." in: query name: issueTypeScreenSchemeId schema: items: format: int64 type: integer type: array uniqueItems: true responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":4,"isLast":true,"values":[{"issueTypeScreenSchemeId":"10020","issueTypeId":"10000","screenSchemeId":"10010"},{"issueTypeScreenSchemeId":"10021","issueTypeId":"10001","screenSchemeId":"10010"},{"issueTypeScreenSchemeId":"10022","issueTypeId":"10002","screenSchemeId":"10010"},{"issueTypeScreenSchemeId":"10023","issueTypeId":"default","screenSchemeId":"10011"}]}' schema: $ref: "#/components/schemas/PageBeanIssueTypeScreenSchemeItem" 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 user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue type screen scheme items tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-type-screen-scheme:jira state: Beta /rest/api/3/issuetypescreenscheme/project: get: deprecated: false description: |- Returns a [paginated](#pagination) list of issue type screen schemes and, for each issue type screen scheme, a list of the projects that use it. Only issue type screen schemes used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueTypeScreenSchemeProjectAssociations 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: "The list of project IDs. To include multiple projects, separate IDs with ampersand: `projectId=10000&projectId=10001`." in: query name: projectId required: true schema: items: format: int64 type: integer type: array uniqueItems: true responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":1,"isLast":true,"values":[{"issueTypeScreenScheme":{"id":"1","name":"Default Issue Type Screen Scheme","description":"The default issue type screen scheme"},"projectIds":["10000","10001"]}]}' schema: $ref: "#/components/schemas/PageBeanIssueTypeScreenSchemesProjects" 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 user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue type screen schemes for projects tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-type-screen-scheme:jira state: Beta put: deprecated: false description: |- Assigns an issue type screen scheme to a project. Issue type screen schemes can only be assigned to classic projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: assignIssueTypeScreenSchemeToProject parameters: [] requestBody: content: application/json: example: issueTypeScreenSchemeId: "10001" projectId: "10002" schema: $ref: "#/components/schemas/IssueTypeScreenSchemeProjectAssociation" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["Only classic projects can have issue type screen schemes assigned."],"errors":{}}' description: |- Returned if: * project is not found. * issue type screen scheme is not found. * the project is not a classic project. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type screen schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type screen scheme was not found."],"errors":{}}' description: Returned if the issue type screen scheme or the project are missing. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Assign issue type screen scheme to project tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-screen-scheme:jira - write:project:jira state: Beta "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}": delete: deprecated: false description: |- Deletes an issue type screen scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteIssueTypeScreenScheme parameters: - description: The ID of the issue type screen scheme. in: path name: issueTypeScreenSchemeId required: true schema: type: string responses: "204": content: application/json: schema: {} description: Returned if the issue type screen scheme is deleted. "400": content: application/json: example: '{"errorMessages":["The issue type screen scheme cannot be deleted because it is assigned to one or more projects."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type screen scheme was not found."],"errors":{}}' description: Returned if the issue type screen scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete issue type screen scheme tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:issue-type-screen-scheme:jira state: Beta x-experimental: true put: deprecated: false description: |- Updates an issue type screen scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateIssueTypeScreenScheme parameters: - description: The ID of the issue type screen scheme. in: path name: issueTypeScreenSchemeId required: true schema: type: string requestBody: content: application/json: example: description: Screens for scrum issue types. name: Scrum scheme schema: $ref: "#/components/schemas/IssueTypeScreenSchemeUpdateDetails" description: The issue type screen scheme update details. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The issue type screen scheme name is in use."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type screen schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type screen scheme was not found."],"errors":{}}' description: Returned if the issue type screen scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update issue type screen scheme tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-screen-scheme:jira state: Beta x-experimental: true "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}/mapping": put: deprecated: false description: |- Appends issue type to screen scheme mappings to an issue type screen scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: appendMappingsForIssueTypeScreenScheme parameters: - description: The ID of the issue type screen scheme. in: path name: issueTypeScreenSchemeId required: true schema: type: string requestBody: content: application/json: example: issueTypeMappings: - issueTypeId: "10000" screenSchemeId: "10001" - issueTypeId: "10001" screenSchemeId: "10002" - issueTypeId: "10002" screenSchemeId: "10002" schema: $ref: "#/components/schemas/IssueTypeScreenSchemeMappingDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["A default mapping cannot be added."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type screen scheme was not found."],"errors":{}}' description: Returned if the issue type screen scheme, issue type, or screen scheme is not found. "409": content: application/json: example: '{"errorMessages":["Sub-tasks are disabled in Jira. At least one of the issue types is a sub-task."],"errors":{}}' description: Returned if the issue type is a sub-task, but sub-tasks are disabled in Jira settings. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Append mappings to issue type screen scheme tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-screen-scheme:jira state: Beta x-experimental: true "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}/mapping/default": put: deprecated: false description: |- Updates the default screen scheme of an issue type screen scheme. The default screen scheme is used for all unmapped issue types. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateDefaultScreenScheme parameters: - description: The ID of the issue type screen scheme. in: path name: issueTypeScreenSchemeId required: true schema: type: string requestBody: content: application/json: example: screenSchemeId: "10010" schema: $ref: "#/components/schemas/UpdateDefaultScreenScheme" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The screenSchemeId has to be provided."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type screen schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type screen scheme was not found."],"errors":{}}' description: Returned if the issue type screen scheme or the screen screen is not found, or the screen scheme isn't used in classic projects. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update issue type screen scheme default screen scheme tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-screen-scheme:jira state: Beta x-experimental: true "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}/mapping/remove": post: deprecated: false description: |- Removes issue type to screen scheme mappings from an issue type screen scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeMappingsFromIssueTypeScreenScheme parameters: - description: The ID of the issue type screen scheme. in: path name: issueTypeScreenSchemeId required: true schema: type: string requestBody: content: application/json: example: issueTypeIds: - "10000" - "10001" - "10004" schema: $ref: "#/components/schemas/IssueTypeIds" required: true responses: "204": content: application/json: schema: {} description: Returned if the screen scheme mappings are removed from the issue type screen scheme. "400": content: application/json: example: '{"errorMessages":["The issueTypeIds must not contain duplicates."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type screen schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The issue type screen scheme was not found."],"errors":{}}' description: Returned if the issue type screen scheme or one or more issue type mappings are not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove mappings from issue type screen scheme tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:issue-type-screen-scheme:jira state: Beta x-experimental: true "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}/project": get: deprecated: false description: |- Returns a [paginated](#pagination) list of projects associated with an issue type screen scheme. Only company-managed projects associated with an issue type screen scheme are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getProjectsForIssueTypeScreenScheme parameters: - description: The ID of the issue type screen scheme. in: path name: issueTypeScreenSchemeId required: true schema: format: int64 type: integer - 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 - in: query name: query schema: default: "" type: string responses: "200": content: application/json: example: "{\"maxResults\":100,\"startAt\":0,\"total\":1,\"isLast\":true,\"values\":[{\"self\":\"project/EX\",\"id\":\"10000\",\"key\":\"EX\",\"name\":\"Example\",\"projectTypeKey\":\"ProjectTypeKey{key='software'}\",\"simplified\":false,\"avatarUrls\":{\"48x48\":\"secure/projectavatar?size=large&pid=10000\",\"24x24\":\"secure/projectavatar?size=small&pid=10000\",\"16x16\":\"secure/projectavatar?size=xsmall&pid=10000\",\"32x32\":\"secure/projectavatar?size=medium&pid=10000\"},\"projectCategory\":{\"id\":\"10000\",\"description\":\"Project category description\",\"name\":\"A project category\"}}]}" schema: $ref: "#/components/schemas/PageBeanProjectDetails" 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 user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue type screen scheme projects tags: - Issue type screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:project:jira - read:avatar:jira - read:project-category:jira state: Beta x-experimental: true /rest/api/3/jql/autocompletedata: get: deprecated: false description: |- Returns reference data for JQL searches. This is a downloadable version of the documentation provided in [Advanced searching - fields reference](https://confluence.atlassian.com/x/gwORLQ) and [Advanced searching - functions reference](https://confluence.atlassian.com/x/hgORLQ), along with a list of JQL-reserved words. Use this information to assist with the programmatic creation of JQL queries or the validation of queries built in a custom query builder. To filter visible field details by project or collapse non-unique fields by field type then [Get field reference data (POST)](#api-rest-api-3-jql-autocompletedata-post) can be used. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getAutoComplete parameters: [] responses: "200": content: application/json: example: '{"visibleFieldNames":[{"value":"summary","displayName":"summary","orderable":"true","searchable":"true","operators":["~","!~","is","is not"],"types":["java.lang.String"]},{"value":"Sprint","displayName":"Sprint - cf[10880]","orderable":"true","searchable":"true","auto":"true","cfid":"cf[10880]","operators":["=","!=","in","not in","is","is not"],"types":["com.atlassian.greenhopper.service.sprint.Sprint"]}],"visibleFunctionNames":[{"value":"standardIssueTypes()","displayName":"standardIssueTypes()","isList":"true","types":["com.atlassian.jira.issue.issuetype.IssueType"]}],"jqlReservedWords":["empty","and","or","in","distinct"]}' schema: $ref: "#/components/schemas/JQLReferenceData" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get field reference data (GET) tags: - JQL x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field:jira state: Beta post: deprecated: false description: |- Returns reference data for JQL searches. This is a downloadable version of the documentation provided in [Advanced searching - fields reference](https://confluence.atlassian.com/x/gwORLQ) and [Advanced searching - functions reference](https://confluence.atlassian.com/x/hgORLQ), along with a list of JQL-reserved words. Use this information to assist with the programmatic creation of JQL queries or the validation of queries built in a custom query builder. This operation can filter the custom fields returned by project. Invalid project IDs in `projectIds` are ignored. System fields are always returned. It can also return the collapsed field for custom fields. Collapsed fields enable searches to be performed across all fields with the same name and of the same field type. For example, the collapsed field `Component - Component[Dropdown]` enables dropdown fields `Component - cf[10061]` and `Component - cf[10062]` to be searched simultaneously. **[Permissions](#permissions) required:** None. operationId: getAutoCompletePost parameters: [] requestBody: content: application/json: example: includeCollapsedFields: true projectIds: - 10000 - 10001 - 10002 schema: $ref: "#/components/schemas/SearchAutoCompleteFilter" required: true responses: "200": content: application/json: example: '{"visibleFieldNames":[{"value":"summary","displayName":"summary","orderable":"true","searchable":"true","operators":["~","!~","is","is not"],"types":["java.lang.String"]},{"value":"cf[10061]","displayName":"Component - cf[10061]","orderable":"true","auto":"true","cfid":"cf[10061]","operators":["=","!=","in","not in","is","is not"],"types":["com.atlassian.jira.issue.customfields.option.Option"]},{"value":"cf[10062]","displayName":"Component - cf[10062]","orderable":"true","auto":"true","cfid":"cf[10062]","operators":["=","!=","in","not in","is","is not"],"types":["com.atlassian.jira.issue.customfields.option.Option"]},{"value":"\"Component[Dropdown]\"","displayName":"Component - Component[Dropdown]","searchable":"true","auto":"true","operators":["=","!=","in","not in","is","is not"],"types":["com.atlassian.jira.issue.customfields.option.Option"]}],"visibleFunctionNames":[{"value":"standardIssueTypes()","displayName":"standardIssueTypes()","isList":"true","types":["com.atlassian.jira.issue.issuetype.IssueType"]}],"jqlReservedWords":["empty","and","or","in","distinct"]}' schema: $ref: "#/components/schemas/JQLReferenceData" 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. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get field reference data (POST) tags: - JQL x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field:jira state: Beta /rest/api/3/jql/autocompletedata/suggestions: get: deprecated: false description: |- Returns the JQL search auto complete suggestions for a field. Suggestions can be obtained by providing: * `fieldName` to get a list of all values for the field. * `fieldName` and `fieldValue` to get a list of values containing the text in `fieldValue`. * `fieldName` and `predicateName` to get a list of all predicate values for the field. * `fieldName`, `predicateName`, and `predicateValue` to get a list of predicate values containing the text in `predicateValue`. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getFieldAutoCompleteForQueryString parameters: - description: The name of the field. in: query name: fieldName schema: example: reporter type: string x-showInExample: "true" - description: The partial field item name entered by the user. in: query name: fieldValue schema: type: string - description: The name of the [ CHANGED operator predicate](https://confluence.atlassian.com/x/hQORLQ#Advancedsearching-operatorsreference-CHANGEDCHANGED) for which the suggestions are generated. The valid predicate operators are *by*, *from*, and *to*. in: query name: predicateName schema: type: string - description: The partial predicate item name entered by the user. in: query name: predicateValue schema: type: string responses: "200": content: application/json: example: '{"results":[{"value":"ActiveObjects","displayName":"ActiveObjects (AO)"},{"value":"Atlassian Connect","displayName":"Atlassian Connect (AC)"},{"value":"Atlassian Connect in Jira","displayName":"Atlassian Connect in Jira (ACJIRA)"}]}' schema: $ref: "#/components/schemas/AutoCompleteSuggestions" description: Returned if the request is successful. "400": description: Returned if an invalid combination of parameters is passed. "401": description: Returned if the authentication credentials are incorrect. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get field auto complete suggestions tags: - JQL x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-details:jira state: Beta /rest/api/3/jql/function/computation: get: deprecated: false description: |- Returns the list of a function's precomputations along with information about when they were created, updated, and last used. Each precomputation has a `value` \- the JQL fragment to replace the custom function clause with. **[Permissions](#permissions) required:** This API is only accessible to apps and apps can only inspect their own functions. operationId: getPrecomputations parameters: - description: |- The function key in format: * Forge: `ari:cloud:ecosystem::extension/[App ID]/[Environment ID]/static/[Function key from manifest]`. * Connect: `[App key]__[Module key]`. in: query name: functionKey schema: items: type: string type: array - 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: 100 format: int32 type: integer - description: Not supported yet. in: query name: orderBy schema: type: string - description: Not supported yet. in: query name: filter schema: type: string responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":1,"isLast":true,"values":[{"id":"10000","value":"issue in (TEST-1, TEST-2, TEST-3)","functionKey":"ari:cloud:ecosystem::extension/00000000-1111-2222-3333-4444444/111111-2222-3333-4444-55555/static/issuesWithText","field":"issue","operator":"in","functionName":"issuesWithText","arguments":["Test"],"created":"2023-04-21T12:39:34.882+0000","updated":"2023-04-21T12:39:34.882+0000","used":"2023-04-21T12:39:34.882+0000"}]}' schema: $ref: "#/components/schemas/PageBeanJqlFunctionPrecomputationBean" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the request is not authenticated as the app that provided the function. "404": description: Returned if the function is not found. security: - basicAuth: [] - OAuth2: [] summary: Get precomputations (apps) tags: - JQL functions (apps) x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: [] state: Beta x-experimental: true post: deprecated: false description: |- Update the precomputation value of a function created by a Forge/Connect app. **[Permissions](#permissions) required:** An API for apps to update their own precomputations. operationId: updatePrecomputations parameters: [] requestBody: content: application/json: example: values: - id: 10000 value: issue in (TEST-1, TEST-2, TEST-3) schema: $ref: "#/components/schemas/JqlFunctionPrecomputationUpdateRequestBean" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the request is invalid. "403": description: Returned if the request is not authenticated as the app that provided the function. "404": description: Returned if the function is not found. security: - basicAuth: [] - OAuth2: [] summary: Update precomputations (apps) tags: - JQL functions (apps) x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: [] state: Beta x-experimental: true /rest/api/3/jql/match: post: deprecated: false description: |- Checks whether one or more issues would be returned by one or more JQL queries. **[Permissions](#permissions) required:** None, however, issues are only matched against JQL queries where the user has: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: matchIssues parameters: [] requestBody: content: application/json: example: issueIds: - 10001 - 1000 - 10042 jqls: - project = FOO - issuetype = Bug - summary ~ "some text" AND project in (FOO, BAR) schema: $ref: "#/components/schemas/IssuesAndJQLQueries" required: true responses: "200": content: application/json: example: '{"matches":[{"matchedIssues":[10000,10004],"errors":[]},{"matchedIssues":[100134,10025,10236],"errors":[]},{"matchedIssues":[],"errors":[]},{"matchedIssues":[],"errors":["Invalid JQL: broken = value"]}]}' schema: $ref: "#/components/schemas/IssueMatches" description: Returned if the request is successful. "400": description: Returned if `jqls` exceeds the maximum number of JQL queries or `issueIds` exceeds the maximum number of issue IDs. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Check issues against JQL tags: - Issue search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-details:jira state: Beta /rest/api/3/jql/parse: post: deprecated: false description: |- Parses and validates JQL queries. Validation is performed in context of the current user. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: parseJqlQueries parameters: - description: |- How to validate the JQL query and treat the validation results. Validation options include: * `strict` Returns all errors. If validation fails, the query structure is not returned. * `warn` Returns all errors. If validation fails but the JQL query is correctly formed, the query structure is returned. * `none` No validation is performed. If JQL query is correctly formed, the query structure is returned. in: query name: validation schema: default: strict enum: - strict - warn - none type: string requestBody: content: application/json: example: queries: - summary ~ test AND (labels in (urgent, blocker) OR lastCommentedBy = currentUser()) AND status CHANGED AFTER startOfMonth(-1M) ORDER BY updated DESC - issue.property["spaces here"].value in ("Service requests", Incidents) - invalid query - summary = test - summary in test - project = INVALID - universe = 42 schema: $ref: "#/components/schemas/JqlQueriesToParse" required: true responses: "200": content: application/json: example: "{\"queries\":[{\"query\":\"summary ~ test AND (labels in (urgent, blocker) OR lastCommentedBy = currentUser()) AND status CHANGED AFTER -5d ORDER BY updated DESC\",\"structure\":{\"where\":{\"clauses\":[{\"field\":{\"name\":\"summary\",\"encodedName\":\"summary\"},\"operator\":\"~\",\"operand\":{\"value\":\"test\",\"encodedValue\":\"test\"}},{\"clauses\":[{\"field\":{\"name\":\"labels\",\"encodedName\":\"labels\"},\"operator\":\"in\",\"operand\":{\"values\":[{\"value\":\"urgent\",\"encodedValue\":\"urgent\"},{\"value\":\"blocker\",\"encodedValue\":\"blocker\"}],\"encodedOperand\":\"urgent, blocker)\"}},{\"field\":{\"name\":\"lastCommentedBy\",\"encodedName\":\"lastCommentedBy\",\"property\":[{\"entity\":\"issue\",\"key\":\"propertyKey\",\"path\":\"path.in.property\",\"type\":\"user\"}]},\"operator\":\"=\",\"operand\":{\"function\":\"currentUser\",\"arguments\":[],\"encodedOperand\":\"currentUser()\"}}],\"operator\":\"or\"},{\"field\":{\"name\":\"status\",\"encodedName\":\"status\"},\"operator\":\"changed\",\"predicates\":[{\"operator\":\"after\",\"operand\":{\"function\":\"startOfMonth\",\"arguments\":[\"-1M\"],\"encodedOperand\":\"startOfMonth(-1M)\"}}]}],\"operator\":\"and\"},\"orderBy\":{\"fields\":[{\"field\":{\"name\":\"updated\",\"encodedName\":\"updated\"},\"direction\":\"desc\"}]}}},{\"query\":\"issue.property[\\\"spaces here\\\"].value in (\\\"Service requests\\\", Incidents)\",\"structure\":{\"where\":{\"field\":{\"name\":\"issue.property[spaces here].value\",\"encodedName\":\"issue.property[\\\"spaces here\\\"].value\",\"property\":[{\"entity\":\"issue\",\"key\":\"spaces here\",\"path\":\"value\"}]},\"operator\":\"in\",\"operand\":{\"values\":[{\"value\":\"Service requests\",\"encodedValue\":\"\\\"Service requests\\\"\"},{\"value\":\"Incidents\",\"encodedValue\":\"Incidents\"}],\"encodedOperand\":\"(\\\"Service requests\\\", Incidents)\"}}}},{\"query\":\"invalid query\",\"errors\":[\"Error in the JQL Query: Expecting operator but got 'query'. The valid operators are '=', '!=', '<', '>', '<=', '>=', '~', '!~', 'IN', 'NOT IN', 'IS' and 'IS NOT'. (line 1, character 9)\"]},{\"query\":\"summary = test\",\"errors\":[\"The operator '=' is not supported by the 'summary' field.\"]},{\"query\":\"summary in test\",\"errors\":[\"Operator 'in' does not support the non-list value '\\\"test\\\"' for field 'summary'.\"]},{\"query\":\"project = INVALID\",\"errors\":[\"The value 'INVALID' does not exist for the field 'project'.\"]},{\"query\":\"universe = 42\",\"errors\":[\"Field 'universe' does not exist or you do not have permission to view it.\"]}]}" schema: $ref: "#/components/schemas/ParsedJqlQueries" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Parse JQL query tags: - JQL x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field:jira - validate:jql:jira - read:jql:jira state: Beta x-experimental: true /rest/api/3/jql/pdcleaner: post: deprecated: false description: |- Converts one or more JQL queries with user identifiers (username or user key) to equivalent JQL queries with account IDs. You may wish to use this operation if your system stores JQL queries and you want to make them GDPR-compliant. For more information about GDPR-related changes, see the [migration guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/). **[Permissions](#permissions) required:** Permission to access Jira. operationId: migrateQueries parameters: [] requestBody: content: application/json: example: queryStrings: - assignee = mia - issuetype = Bug AND assignee in (mia) AND reporter in (alana) order by lastViewed DESC schema: $ref: "#/components/schemas/JQLPersonalDataMigrationRequest" required: true responses: "200": content: application/json: example: '{"queryStrings":["issuetype = Bug AND assignee in (abcde-12345) AND reporter in (abc551-c4e99) order by lastViewed DESC"],"queriesWithUnknownUsers":[{"originalQuery":"assignee = mia","convertedQuery":"assignee = unknown"}]}' schema: $ref: "#/components/schemas/ConvertedJQLQueries" description: Returned if the request is successful. Note that the JQL queries are returned in the same order that they were passed. "400": description: Returned if at least one of the queries cannot be converted. For example, the JQL has invalid operators or invalid keywords, or the users in the query cannot be found. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Convert user identifiers to account IDs in JQL queries tags: - JQL x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:user:jira - read:jql:jira - validate:jql:jira state: Beta /rest/api/3/jql/sanitize: post: deprecated: false description: |- Sanitizes one or more JQL queries by converting readable details into IDs where a user doesn't have permission to view the entity. For example, if the query contains the clause *project = 'Secret project'*, and a user does not have browse permission for the project "Secret project", the sanitized query replaces the clause with *project = 12345"* (where 12345 is the ID of the project). If a user has the required permission, the clause is not sanitized. If the account ID is null, sanitizing is performed for an anonymous user. Note that sanitization doesn't make the queries GDPR-compliant, because it doesn't remove user identifiers (username or user key). If you need to make queries GDPR-compliant, use [Convert user identifiers to account IDs in JQL queries](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-jql/#api-rest-api-3-jql-sanitize-post). Before sanitization each JQL query is parsed. The queries are returned in the same order that they were passed. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: sanitiseJqlQueries parameters: [] requestBody: content: application/json: example: queries: - query: project = 'Sample project' - accountId: 5b10ac8d82e05b22cc7d4ef5 query: project = 'Sample project' - accountId: cda2aa1395ac195d951b3387 query: project = 'Sample project' - accountId: 5b10ac8d82e05b22cc7d4ef5 query: invalid query schema: $ref: "#/components/schemas/JqlQueriesToSanitize" required: true responses: "200": content: application/json: example: "{\"queries\":[{\"initialQuery\":\"project = 'Sample project'\",\"sanitizedQuery\":\"project = 12345\"},{\"initialQuery\":\"project = 'Sample project'\",\"sanitizedQuery\":\"project = 'Sample project'\",\"accountId\":\"5b10ac8d82e05b22cc7d4ef5\"},{\"initialQuery\":\"project = 'Sample project'\",\"sanitizedQuery\":\"project = 12345\",\"accountId\":\"cda2aa1395ac195d951b3387\"},{\"initialQuery\":\"non-parsable query\",\"errors\":{\"errorMessages\":[\"Error in the JQL Query: Expecting operator but got 'query'. The valid operators are '=', '!=', '<', '>', '<=', '>=', '~', '!~', 'IN', 'NOT IN', 'IS' and 'IS NOT'. (line 1, character 9)\"],\"errors\":{}},\"accountId\":\"5b10ac8d82e05b22cc7d4ef5\"}]}" schema: $ref: "#/components/schemas/SanitizedJqlQueries" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The queries has to be provided."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Sanitize JQL queries tags: - JQL x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:jql:jira state: Beta x-experimental: true /rest/api/3/label: get: deprecated: false description: Returns a [paginated](#pagination) list of labels. operationId: getAllLabels 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: 1000 format: int32 type: integer responses: "200": content: application/json: example: '{"maxResults":2,"startAt":0,"total":100,"isLast":false,"values":["performance","security"]}' schema: $ref: "#/components/schemas/PageBeanString" description: Returned if the request is successful. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get all labels tags: - Labels x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:label:jira state: Beta /rest/api/3/license/approximateLicenseCount: get: deprecated: false description: |- Returns the total approximate user account across all jira licenced application keys. Please note this information is cached with a 7-day lifecycle and could be stale at the time of call. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getApproximateLicenseCount parameters: [] responses: "200": content: application/json: schema: $ref: "#/components/schemas/LicenseMetric" description: 200 response "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to complete this request. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get approximate license count tags: - License metrics x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:license:jira state: Beta x-experimental: true "/rest/api/3/license/approximateLicenseCount/product/{applicationKey}": get: deprecated: false description: |- Returns the total approximate user account for a specific `jira licence application key`. Please note this information is cached with a 7-day lifecycle and could be stale at the time of call. #### Application Key #### An application key represents a specific version of Jira. See \{@link ApplicationKey\} for details **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getApproximateApplicationLicenseCount parameters: - in: path name: applicationKey required: true schema: type: string responses: "200": content: application/json: schema: $ref: "#/components/schemas/LicenseMetric" description: 200 response "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to complete this request. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get approximate application license count tags: - License metrics x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:license:jira state: Beta x-experimental: true /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. Global permissions are unaffected by context. This operation can be accessed anonymously. **[Permissions](#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":{"id":"12","key":"EDIT_ISSUES","name":"Edit Issues","type":"PROJECT","description":"Ability to edit issues.","havePermission":true}}}' 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: [] - {} summary: Get my permissions tags: - Permissions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: - read:permission:jira state: Beta /rest/api/3/mypreferences: delete: deprecated: false description: |- Deletes a preference of the user, which restores the default value of system defined settings. Note that these keys are deprecated: * *jira.user.locale* The locale of the user. By default, not set. The user takes the instance locale. * *jira.user.timezone* The time zone of the user. By default, not set. The user takes the instance timezone. Use [ Update a user profile](https://developer.atlassian.com/cloud/admin/user-management/rest/#api-users-account-id-manage-profile-patch) from the user management REST API to manage timezone and locale instead. **[Permissions](#permissions) required:** Permission to access Jira. operationId: removePreference parameters: - description: The key of the preference. in: query name: key required: true schema: type: string responses: "204": description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the key is not provided or not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete preference tags: - Myself x-atlassian-connect-scope: ACT_AS_USER x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:user-configuration:jira state: Beta get: deprecated: false description: |- Returns the value of a preference of the current user. Note that these keys are deprecated: * *jira.user.locale* The locale of the user. By default this is not set and the user takes the locale of the instance. * *jira.user.timezone* The time zone of the user. By default this is not set and the user takes the timezone of the instance. Use [ Update a user profile](https://developer.atlassian.com/cloud/admin/user-management/rest/#api-users-account-id-manage-profile-patch) from the user management REST API to manage timezone and locale instead. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getPreference parameters: - description: The key of the preference. in: query name: key required: true schema: type: string responses: "200": content: application/json: schema: type: string description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the key is not provided or not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get preference tags: - Myself x-atlassian-connect-scope: ACT_AS_USER x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user-configuration:jira state: Beta put: deprecated: false description: |- Creates a preference for the user or updates a preference's value by sending a plain text string. For example, `false`. An arbitrary preference can be created with the value containing up to 255 characters. In addition, the following keys define system preferences that can be set or created: * *user.notifications.mimetype* The mime type used in notifications sent to the user. Defaults to `html`. * *user.notify.own.changes* Whether the user gets notified of their own changes. Defaults to `false`. * *user.default.share.private* Whether new [ filters](https://confluence.atlassian.com/x/eQiiLQ) are set to private. Defaults to `true`. * *user.keyboard.shortcuts.disabled* Whether keyboard shortcuts are disabled. Defaults to `false`. * *user.autowatch.disabled* Whether the user automatically watches issues they create or add a comment to. By default, not set: the user takes the instance autowatch setting. Note that these keys are deprecated: * *jira.user.locale* The locale of the user. By default, not set. The user takes the instance locale. * *jira.user.timezone* The time zone of the user. By default, not set. The user takes the instance timezone. Use [ Update a user profile](https://developer.atlassian.com/cloud/admin/user-management/rest/#api-users-account-id-manage-profile-patch) from the user management REST API to manage timezone and locale instead. **[Permissions](#permissions) required:** Permission to access Jira. operationId: setPreference parameters: - description: The key of the preference. The maximum length is 255 characters. in: query name: key required: true schema: type: string requestBody: content: application/json: schema: type: string text/plain: schema: type: string description: The value of the preference as a plain text string. The maximum length is 255 characters. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the key or value is not provided or invalid. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set preference tags: - Myself x-atlassian-connect-scope: ACT_AS_USER x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:user-configuration:jira state: Beta /rest/api/3/mypreferences/locale: delete: deprecated: true description: |- Deprecated, use [ Update a user profile](https://developer.atlassian.com/cloud/admin/user-management/rest/#api-users-account-id-manage-profile-patch) from the user management REST API instead. Deletes the locale of the user, which restores the default setting. **[Permissions](#permissions) required:** Permission to access Jira. operationId: deleteLocale parameters: [] responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] summary: Delete locale tags: - Myself x-atlassian-connect-scope: INACCESSIBLE get: deprecated: false description: |- Returns the locale for the user. If the user has no language preference set (which is the default setting) or this resource is accessed anonymous, the browser locale detected by Jira is returned. Jira detects the browser locale using the *Accept-Language* header in the request. However, if this doesn't match a locale available Jira, the site default locale is returned. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getLocale parameters: [] responses: "200": content: application/json: example: '{"locale":"en_US"}' schema: $ref: "#/components/schemas/Locale" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Get locale tags: - Myself x-atlassian-connect-scope: ACT_AS_USER x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user-configuration:jira state: Beta put: deprecated: true description: |- Deprecated, use [ Update a user profile](https://developer.atlassian.com/cloud/admin/user-management/rest/#api-users-account-id-manage-profile-patch) from the user management REST API instead. Sets the locale of the user. The locale must be one supported by the instance of Jira. **[Permissions](#permissions) required:** Permission to access Jira. operationId: setLocale parameters: [] requestBody: content: application/json: example: locale: en_US schema: $ref: "#/components/schemas/Locale" description: The locale defined in a LocaleBean. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] summary: Set locale tags: - Myself x-atlassian-connect-scope: INACCESSIBLE /rest/api/3/myself: get: deprecated: false description: |- Returns details for the current user. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getCurrentUser parameters: - description: |- Use [expand](#expansion) to include additional information about user in the response. This parameter accepts a comma-separated list. Expand options include: * `groups` Returns all groups, including nested groups, the user belongs to. * `applicationRoles` Returns the application roles the user is assigned to. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}}' schema: $ref: "#/components/schemas/User" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Get current user tags: - Myself x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:group:jira - read:user:jira - read:avatar:jira state: Beta /rest/api/3/notificationscheme: get: deprecated: false description: |- Returns a [paginated](#pagination) list of [notification schemes](https://confluence.atlassian.com/x/8YdKLg) ordered by the display name. *Note that you should allow for events without recipients to appear in responses.* **[Permissions](#permissions) required:** Permission to access Jira, however, the user must have permission to administer at least one project associated with a notification scheme for it to be returned. operationId: getNotificationSchemes parameters: - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: "0" type: string - description: The maximum number of items to return per page. in: query name: maxResults schema: default: "50" type: string - description: The list of notification schemes IDs to be filtered by in: query name: id schema: items: type: string type: array uniqueItems: true - description: The list of projects IDs to be filtered by in: query name: projectId schema: items: type: string type: array uniqueItems: true - description: When set to true, returns only the default notification scheme. If you provide project IDs not associated with the default, returns an empty page. The default value is false. in: query name: onlyDefault schema: default: false type: boolean - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `all` Returns all expandable information * `field` Returns information about any custom fields assigned to receive an event * `group` Returns information about any groups assigned to receive an event * `notificationSchemeEvents` Returns a list of event associations. This list is returned for all expandable information * `projectRole` Returns information about any project roles assigned to receive an event * `user` Returns information about any users assigned to receive an event in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"maxResults":6,"startAt":1,"total":5,"isLast":false,"values":[{"expand":"notificationSchemeEvents,user,group,projectRole,field,all","id":10100,"self":"https://your-domain.atlassian.net/rest/api/3/notificationscheme","name":"notification scheme name","description":"description","notificationSchemeEvents":[{"event":{"id":1,"name":"Issue created","description":"Event published when an issue is created"},"notifications":[{"id":1,"notificationType":"Group","parameter":"jira-administrators","recipient":"276f955c-63d7-42c8-9520-92d01dca0625","group":{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"},"expand":"group"},{"id":2,"notificationType":"CurrentAssignee"},{"id":3,"notificationType":"ProjectRole","parameter":"10360","recipient":"10360","projectRole":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}},"expand":"projectRole"},{"id":4,"notificationType":"EmailAddress","parameter":"rest-developer@atlassian.com","recipient":"rest-developer@atlassian.com","emailAddress":"rest-developer@atlassian.com"},{"id":5,"notificationType":"User","parameter":"5b10a2844c20165700ede21g","recipient":"5b10a2844c20165700ede21g","user":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"expand":"user"},{"id":6,"notificationType":"GroupCustomField","parameter":"customfield_10101","recipient":"customfield_10101","field":{"id":"customfield_10101","key":"customfield_10101","name":"New custom field","untranslatedName":"New custom field","custom":true,"orderable":true,"navigable":true,"searchable":true,"clauseNames":["cf[10101]","New custom field"],"schema":{"type":"project","custom":"com.atlassian.jira.plugin.system.customfieldtypes:project","customId":10101}},"expand":"field"}]},{"event":{"id":20,"name":"Custom event","description":"Custom event that is published together with an issue created event","templateEvent":{"id":1,"name":"Issue created","description":"Event published when an issue is created"}},"notifications":[{"id":1,"notificationType":"Group","parameter":"jira-administrators","recipient":"276f955c-63d7-42c8-9520-92d01dca0625","group":{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"},"expand":"group"},{"id":2,"notificationType":"CurrentAssignee"},{"id":3,"notificationType":"ProjectRole","parameter":"10360","recipient":"10360","projectRole":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}},"expand":"projectRole"},{"id":4,"notificationType":"EmailAddress","parameter":"rest-developer@atlassian.com","recipient":"rest-developer@atlassian.com","emailAddress":"rest-developer@atlassian.com"},{"id":5,"notificationType":"User","parameter":"5b10a2844c20165700ede21g","recipient":"5b10a2844c20165700ede21g","user":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"expand":"user"},{"id":6,"notificationType":"GroupCustomField","parameter":"customfield_10101","recipient":"customfield_10101","field":{"id":"customfield_10101","key":"customfield_10101","name":"New custom field","untranslatedName":"New custom field","custom":true,"orderable":true,"navigable":true,"searchable":true,"clauseNames":["cf[10101]","New custom field"],"schema":{"type":"project","custom":"com.atlassian.jira.plugin.system.customfieldtypes:project","customId":10101}},"expand":"field"}]}],"projects":[10001,10002]}]}' schema: $ref: "#/components/schemas/PageBeanNotificationScheme" description: Returned if the request is successful. Only returns notification schemes that the user has permission to access. An empty list is returned if the user lacks permission to access all notification schemes. "400": content: application/json: example: '{"errorMessages":["%20. is not a valid value. id must be zero or a positive integer."],"errors":{}}' description: Returned if the request isn't valid. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get notification schemes paginated tags: - Issue notification schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field:jira - read:notification-scheme:jira - read:project:jira - read:project-role:jira - read:user:jira - read:avatar:jira - read:group:jira - read:project-category:jira - read:field-configuration:jira state: Beta post: deprecated: false description: |- Creates a notification scheme with notifications. You can create up to 1000 notifications per request. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createNotificationScheme parameters: [] requestBody: content: application/json: example: description: My new scheme description name: My new notification scheme notificationSchemeEvents: - event: id: "1" notifications: - notificationType: Group parameter: jira-administrators schema: $ref: "#/components/schemas/CreateNotificationSchemeDetails" required: true responses: "201": content: application/json: example: '{"id":"10001"}' schema: $ref: "#/components/schemas/NotificationSchemeId" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The length of the description must not exceed 4000 characters."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create notification scheme tags: - Issue notification schemes x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/notificationscheme/project: get: deprecated: false description: |- Returns a [paginated](#pagination) mapping of project that have notification scheme assigned. You can provide either one or multiple notification scheme IDs or project IDs to filter by. If you don't provide any, this will return a list of all mappings. Note that only company-managed (classic) projects are supported. This is because team-managed projects don't have a concept of a default notification scheme. The mappings are ordered by projectId. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getNotificationSchemeToProjectMappings parameters: - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: "0" type: string - description: The maximum number of items to return per page. in: query name: maxResults schema: default: "50" type: string - description: The list of notifications scheme IDs to be filtered out in: query name: notificationSchemeId schema: items: type: string type: array uniqueItems: true - description: The list of project IDs to be filtered out in: query name: projectId schema: items: type: string type: array uniqueItems: true responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":4,"isLast":true,"values":[{"notificationSchemeId":"10001","projectId":"100001"}]}' schema: $ref: "#/components/schemas/PageBeanNotificationSchemeAndProjectMappingJsonBean" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if search criteria are invalid, strings vs numbers for projectId, notificationSchemeId, startAt and maxResult "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get projects using notification schemes paginated tags: - Issue notification schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:notification-scheme:jira - read:project:jira state: Beta x-experimental: true "/rest/api/3/notificationscheme/{id}": get: deprecated: false description: |- Returns a [notification scheme](https://confluence.atlassian.com/x/8YdKLg), including the list of events and the recipients who will receive notifications for those events. **[Permissions](#permissions) required:** Permission to access Jira, however, the user must have permission to administer at least one project associated with the notification scheme. operationId: getNotificationScheme parameters: - description: The ID of the notification scheme. Use [Get notification schemes paginated](#api-rest-api-3-notificationscheme-get) to get a list of notification scheme IDs. in: path name: id required: true schema: format: int64 type: integer - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `all` Returns all expandable information * `field` Returns information about any custom fields assigned to receive an event * `group` Returns information about any groups assigned to receive an event * `notificationSchemeEvents` Returns a list of event associations. This list is returned for all expandable information * `projectRole` Returns information about any project roles assigned to receive an event * `user` Returns information about any users assigned to receive an event in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"expand":"notificationSchemeEvents,user,group,projectRole,field,all","id":10100,"self":"https://your-domain.atlassian.net/rest/api/3/notificationscheme","name":"notification scheme name","description":"description","notificationSchemeEvents":[{"event":{"id":1,"name":"Issue created","description":"Event published when an issue is created"},"notifications":[{"id":1,"notificationType":"Group","parameter":"jira-administrators","recipient":"276f955c-63d7-42c8-9520-92d01dca0625","group":{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"},"expand":"group"},{"id":2,"notificationType":"CurrentAssignee"},{"id":3,"notificationType":"ProjectRole","parameter":"10360","recipient":"10360","projectRole":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}},"expand":"projectRole"},{"id":4,"notificationType":"EmailAddress","parameter":"rest-developer@atlassian.com","recipient":"rest-developer@atlassian.com","emailAddress":"rest-developer@atlassian.com"},{"id":5,"notificationType":"User","parameter":"5b10a2844c20165700ede21g","recipient":"5b10a2844c20165700ede21g","user":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"expand":"user"},{"id":6,"notificationType":"GroupCustomField","parameter":"customfield_10101","recipient":"customfield_10101","field":{"id":"customfield_10101","key":"customfield_10101","name":"New custom field","untranslatedName":"New custom field","custom":true,"orderable":true,"navigable":true,"searchable":true,"clauseNames":["cf[10101]","New custom field"],"schema":{"type":"project","custom":"com.atlassian.jira.plugin.system.customfieldtypes:project","customId":10101}},"expand":"field"}]},{"event":{"id":20,"name":"Custom event","description":"Custom event that is published together with an issue created event","templateEvent":{"id":1,"name":"Issue created","description":"Event published when an issue is created"}},"notifications":[{"id":1,"notificationType":"Group","parameter":"jira-administrators","recipient":"276f955c-63d7-42c8-9520-92d01dca0625","group":{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"},"expand":"group"},{"id":2,"notificationType":"CurrentAssignee"},{"id":3,"notificationType":"ProjectRole","parameter":"10360","recipient":"10360","projectRole":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}},"expand":"projectRole"},{"id":4,"notificationType":"EmailAddress","parameter":"rest-developer@atlassian.com","recipient":"rest-developer@atlassian.com","emailAddress":"rest-developer@atlassian.com"},{"id":5,"notificationType":"User","parameter":"5b10a2844c20165700ede21g","recipient":"5b10a2844c20165700ede21g","user":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"expand":"user"},{"id":6,"notificationType":"GroupCustomField","parameter":"customfield_10101","recipient":"customfield_10101","field":{"id":"customfield_10101","key":"customfield_10101","name":"New custom field","untranslatedName":"New custom field","custom":true,"orderable":true,"navigable":true,"searchable":true,"clauseNames":["cf[10101]","New custom field"],"schema":{"type":"project","custom":"com.atlassian.jira.plugin.system.customfieldtypes:project","customId":10101}},"expand":"field"}]}],"projects":[10001,10002]}' schema: $ref: "#/components/schemas/NotificationScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the notification scheme is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get notification scheme tags: - Issue notification schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field:jira - read:notification-scheme:jira - read:project:jira - read:project-role:jira - read:user:jira - read:avatar:jira - read:field-configuration:jira - read:group:jira - read:project-category:jira state: Beta put: deprecated: false description: |- Updates a notification scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateNotificationScheme parameters: - description: The ID of the notification scheme. in: path name: id required: true schema: type: string requestBody: content: application/json: example: description: My updated notification scheme description name: My updated notification scheme schema: $ref: "#/components/schemas/UpdateNotificationSchemeDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The length of the description must not exceed 4000 characters."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Notification scheme with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the notification scheme isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update notification scheme tags: - Issue notification schemes x-atlassian-connect-scope: ADMIN x-experimental: true "/rest/api/3/notificationscheme/{id}/notification": put: deprecated: false description: |- Adds notifications to a notification scheme. You can add up to 1000 notifications per request. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addNotifications parameters: - description: The ID of the notification scheme. in: path name: id required: true schema: type: string requestBody: content: application/json: example: notificationSchemeEvents: - event: id: "1" notifications: - notificationType: Group parameter: jira-administrators schema: $ref: "#/components/schemas/AddNotificationsDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["Event type with ID 2 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Notification scheme with ID 10001 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the notification scheme isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Add notifications to notification scheme tags: - Issue notification schemes x-atlassian-connect-scope: ADMIN x-experimental: true "/rest/api/3/notificationscheme/{notificationSchemeId}": delete: deprecated: false description: |- Deletes a notification scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteNotificationScheme parameters: - description: The ID of the notification scheme. in: path name: notificationSchemeId required: true schema: type: string responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["You can’t delete the default notification scheme."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Notification scheme with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the notification scheme isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete notification scheme tags: - Issue notification schemes x-atlassian-connect-scope: ADMIN x-experimental: true "/rest/api/3/notificationscheme/{notificationSchemeId}/notification/{notificationId}": delete: deprecated: false description: |- Removes a notification from a notification scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeNotificationFromNotificationScheme parameters: - description: The ID of the notification scheme. in: path name: notificationSchemeId required: true schema: type: string - description: The ID of the notification. in: path name: notificationId required: true schema: type: string responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Notification scheme with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if either the notification scheme or notification isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Remove notification from notification scheme tags: - Issue notification schemes x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/permissions: get: deprecated: false description: |- Returns all permissions, including: * global permissions. * project permissions. * global permissions added by plugins. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllPermissions parameters: [] responses: "200": content: application/json: example: '{"permissions":{"BULK_CHANGE":{"key":"BULK_CHANGE","name":"Bulk Change","type":"GLOBAL","description":"Ability to modify a collection of issues at once. For example, resolve multiple issues in one step."}}}' 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-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:permission:jira state: Beta /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. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) 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: '{"projectPermissions":[{"permission":"EDIT_ISSUES","issues":[10010,10013,10014],"projects":[10001]}],"globalPermissions":["ADMINISTER"]}' 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: * `projectPermissions` is provided without at least one project permission being provided. * an invalid global permission is provided in the global permissions list. * an invalid project permission is provided in the project permissions list. * more than 1000 valid project IDs or more than 1000 valid issue IDs are provided. * 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-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: - read:permission:jira state: Beta /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](#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": content: application/json: {} description: Returned if a project permission is not found. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: [] - {} summary: Get permitted projects tags: - Permissions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: - read:permission:jira - read:project:jira state: Beta /rest/api/3/permissionscheme: get: deprecated: false description: |- Returns all permission schemes. ### About permission schemes and grants ### A permission scheme is a collection of permission grants. A permission grant consists of a `holder` and a `permission`. #### Holder object #### The `holder` object contains information about the user or group being granted the permission. For example, the *Administer projects* permission is granted to a group named *Teams in space administrators*. In this case, the type is `"type": "group"`, and the parameter is the group name, `"parameter": "Teams in space administrators"` and the value is group ID, `"value": "ca85fac0-d974-40ca-a615-7af99c48d24f"`. The `holder` object is defined by the following properties: * `type` Identifies the user or group (see the list of types below). * `parameter` As a group's name can change, use of `value` is recommended. The value of this property depends on the `type`. For example, if the `type` is a group, then you need to specify the group name. * `value` The value of this property depends on the `type`. If the `type` is a group, then you need to specify the group ID. For other `type` it has the same value as `parameter` The following `types` are available. The expected values for `parameter` and `value` are given in parentheses (some types may not have a `parameter` or `value`): * `anyone` Grant for anonymous users. * `applicationRole` Grant for users with access to the specified application (application name, application name). See [Update product access settings](https://confluence.atlassian.com/x/3YxjL) for more information. * `assignee` Grant for the user currently assigned to an issue. * `group` Grant for the specified group (`parameter` : group name, `value` : group ID). * `groupCustomField` Grant for a user in the group selected in the specified custom field (`parameter` : custom field ID, `value` : custom field ID). * `projectLead` Grant for a project lead. * `projectRole` Grant for the specified project role (`parameter` :project role ID, `value` : project role ID). * `reporter` Grant for the user who reported the issue. * `sd.customer.portal.only` Jira Service Desk only. Grants customers permission to access the customer portal but not Jira. See [Customizing Jira Service Desk permissions](https://confluence.atlassian.com/x/24dKLg) for more information. * `user` Grant for the specified user (`parameter` : user ID - historically this was the userkey but that is deprecated and the account ID should be used, `value` : user ID). * `userCustomField` Grant for a user selected in the specified custom field (`parameter` : custom field ID, `value` : custom field ID). #### Built-in permissions #### The [built-in Jira permissions](https://confluence.atlassian.com/x/yodKLg) are listed below. Apps can also define custom permissions. See the [project permission](https://developer.atlassian.com/cloud/jira/platform/modules/project-permission/) and [global permission](https://developer.atlassian.com/cloud/jira/platform/modules/global-permission/) module documentation for more information. **Project permissions** * `ADMINISTER_PROJECTS` * `BROWSE_PROJECTS` * `MANAGE_SPRINTS_PERMISSION` (Jira Software only) * `SERVICEDESK_AGENT` (Jira Service Desk only) * `VIEW_DEV_TOOLS` (Jira Software only) * `VIEW_READONLY_WORKFLOW` **Issue permissions** * `ASSIGNABLE_USER` * `ASSIGN_ISSUES` * `CLOSE_ISSUES` * `CREATE_ISSUES` * `DELETE_ISSUES` * `EDIT_ISSUES` * `LINK_ISSUES` * `MODIFY_REPORTER` * `MOVE_ISSUES` * `RESOLVE_ISSUES` * `SCHEDULE_ISSUES` * `SET_ISSUE_SECURITY` * `TRANSITION_ISSUES` **Voters and watchers permissions** * `MANAGE_WATCHERS` * `VIEW_VOTERS_AND_WATCHERS` **Comments permissions** * `ADD_COMMENTS` * `DELETE_ALL_COMMENTS` * `DELETE_OWN_COMMENTS` * `EDIT_ALL_COMMENTS` * `EDIT_OWN_COMMENTS` **Attachments permissions** * `CREATE_ATTACHMENTS` * `DELETE_ALL_ATTACHMENTS` * `DELETE_OWN_ATTACHMENTS` **Time tracking permissions** * `DELETE_ALL_WORKLOGS` * `DELETE_OWN_WORKLOGS` * `EDIT_ALL_WORKLOGS` * `EDIT_OWN_WORKLOGS` * `WORK_ON_ISSUES` **[Permissions](#permissions) required:** Permission to access Jira. operationId: getAllPermissionSchemes parameters: - description: |- Use expand to include additional information in the response. This parameter accepts a comma-separated list. Note that permissions are included when you specify any value. Expand options include: * `all` Returns all expandable information. * `field` Returns information about the custom field granted the permission. * `group` Returns information about the group that is granted the permission. * `permissions` Returns all permission grants for each permission scheme. * `projectRole` Returns information about the project role granted the permission. * `user` Returns information about the user who is granted the permission. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"permissionSchemes":[{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000","name":"Example permission scheme","description":"description"}]}' schema: $ref: "#/components/schemas/PermissionSchemes" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get all permission schemes tags: - Permission schemes x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:field:jira - read:group:jira - read:permission-scheme:jira - read:permission:jira - read:project-role:jira - read:user:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta post: deprecated: false description: |- Creates a new permission scheme. You can create a permission scheme with or without defining a set of permission grants. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createPermissionScheme parameters: - description: |- Use expand to include additional information in the response. This parameter accepts a comma-separated list. Note that permissions are always included when you specify any value. Expand options include: * `all` Returns all expandable information. * `field` Returns information about the custom field granted the permission. * `group` Returns information about the group that is granted the permission. * `permissions` Returns all permission grants for each permission scheme. * `projectRole` Returns information about the project role granted the permission. * `user` Returns information about the user who is granted the permission. in: query name: expand schema: type: string requestBody: content: application/json: example: description: description name: Example permission scheme permissions: - holder: parameter: jira-core-users type: group value: ca85fac0-d974-40ca-a615-7af99c48d24f permission: ADMINISTER_PROJECTS schema: $ref: "#/components/schemas/PermissionScheme" description: The permission scheme to create. required: true responses: "201": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000","name":"Example permission scheme","description":"description","permissions":[{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/permission/10000","holder":{"type":"group","parameter":"jira-core-users","value":"ca85fac0-d974-40ca-a615-7af99c48d24f","expand":"group"},"permission":"ADMINISTER_PROJECTS"}]}' schema: $ref: "#/components/schemas/PermissionScheme" description: Returned if the permission scheme is created. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission or the feature is not available in the Jira plan. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create permission scheme tags: - Permission schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:permission-scheme:jira - read:application-role:jira - read:field:jira - read:group:jira - read:permission-scheme:jira - read:permission:jira - read:project-role:jira - read:user:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta "/rest/api/3/permissionscheme/{schemeId}": delete: deprecated: false description: |- Deletes a permission scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deletePermissionScheme parameters: - description: The ID of the permission scheme being deleted. in: path name: schemeId required: true schema: format: int64 type: integer responses: "204": description: Returned if the permission scheme is deleted. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the permission scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete permission scheme tags: - Permission schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:permission-scheme:jira state: Beta get: deprecated: false description: |- Returns a permission scheme. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getPermissionScheme parameters: - description: The ID of the permission scheme to return. in: path name: schemeId required: true schema: format: int64 type: integer - description: |- Use expand to include additional information in the response. This parameter accepts a comma-separated list. Note that permissions are included when you specify any value. Expand options include: * `all` Returns all expandable information. * `field` Returns information about the custom field granted the permission. * `group` Returns information about the group that is granted the permission. * `permissions` Returns all permission grants for each permission scheme. * `projectRole` Returns information about the project role granted the permission. * `user` Returns information about the user who is granted the permission. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000","name":"Example permission scheme","description":"description","permissions":[{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/permission/10000","holder":{"type":"group","parameter":"jira-core-users","value":"ca85fac0-d974-40ca-a615-7af99c48d24f","expand":"group"},"permission":"ADMINISTER_PROJECTS"}]}' schema: $ref: "#/components/schemas/PermissionScheme" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the permission scheme is not found or the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get permission scheme tags: - Permission schemes x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:field:jira - read:group:jira - read:permission-scheme:jira - read:permission:jira - read:project-role:jira - read:user:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta put: deprecated: false description: |- Updates a permission scheme. Below are some important things to note when using this resource: * If a permissions list is present in the request, then it is set in the permission scheme, overwriting *all existing* grants. * If you want to update only the name and description, then do not send a permissions list in the request. * Sending an empty list will remove all permission grants from the permission scheme. If you want to add or delete a permission grant instead of updating the whole list, see [Create permission grant](#api-rest-api-3-permissionscheme-schemeId-permission-post) or [Delete permission scheme entity](#api-rest-api-3-permissionscheme-schemeId-permission-permissionId-delete). See [About permission schemes and grants](../api-group-permission-schemes/#about-permission-schemes-and-grants) for more details. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updatePermissionScheme parameters: - description: The ID of the permission scheme to update. in: path name: schemeId required: true schema: format: int64 type: integer - description: |- Use expand to include additional information in the response. This parameter accepts a comma-separated list. Note that permissions are always included when you specify any value. Expand options include: * `all` Returns all expandable information. * `field` Returns information about the custom field granted the permission. * `group` Returns information about the group that is granted the permission. * `permissions` Returns all permission grants for each permission scheme. * `projectRole` Returns information about the project role granted the permission. * `user` Returns information about the user who is granted the permission. in: query name: expand schema: type: string requestBody: content: application/json: example: description: description name: Example permission scheme permissions: - holder: parameter: jira-core-users type: group value: ca85fac0-d974-40ca-a615-7af99c48d24f permission: ADMINISTER_PROJECTS schema: $ref: "#/components/schemas/PermissionScheme" required: true responses: "200": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000","name":"Example permission scheme","description":"description","permissions":[{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/permission/10000","holder":{"type":"group","parameter":"jira-core-users","value":"ca85fac0-d974-40ca-a615-7af99c48d24f","expand":"group"},"permission":"ADMINISTER_PROJECTS"}]}' schema: $ref: "#/components/schemas/PermissionScheme" description: Returned if the scheme is updated. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: |- Returned if: * the user does not have the necessary permission to update permission schemes. * the Jira instance is Jira Core Free or Jira Software Free. Permission schemes cannot be updated on free plans. "404": description: Returned if the permission scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update permission scheme tags: - Permission schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:permission-scheme:jira - read:application-role:jira - read:field:jira - read:group:jira - read:permission-scheme:jira - read:permission:jira - read:project-role:jira - read:user:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta "/rest/api/3/permissionscheme/{schemeId}/permission": get: deprecated: false description: |- Returns all permission grants for a permission scheme. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getPermissionSchemeGrants parameters: - description: The ID of the permission scheme. in: path name: schemeId required: true schema: format: int64 type: integer - description: |- Use expand to include additional information in the response. This parameter accepts a comma-separated list. Note that permissions are always included when you specify any value. Expand options include: * `permissions` Returns all permission grants for each permission scheme. * `user` Returns information about the user who is granted the permission. * `group` Returns information about the group that is granted the permission. * `projectRole` Returns information about the project role granted the permission. * `field` Returns information about the custom field granted the permission. * `all` Returns all expandable information. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"permissions":[{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/permission/10000","holder":{"type":"group","parameter":"jira-core-users","value":"ca85fac0-d974-40ca-a615-7af99c48d24f","expand":"group"},"permission":"ADMINISTER_PROJECTS"}],"expand":"user,group,projectRole,field,all"}' schema: $ref: "#/components/schemas/PermissionGrants" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the permission schemes is not found or the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get permission scheme grants tags: - Permission schemes x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:field:jira - read:group:jira - read:permission:jira - read:project-role:jira - read:user:jira state: Beta post: deprecated: false description: |- Creates a permission grant in a permission scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createPermissionGrant parameters: - description: The ID of the permission scheme in which to create a new permission grant. in: path name: schemeId required: true schema: format: int64 type: integer - description: |- Use expand to include additional information in the response. This parameter accepts a comma-separated list. Note that permissions are always included when you specify any value. Expand options include: * `permissions` Returns all permission grants for each permission scheme. * `user` Returns information about the user who is granted the permission. * `group` Returns information about the group that is granted the permission. * `projectRole` Returns information about the project role granted the permission. * `field` Returns information about the custom field granted the permission. * `all` Returns all expandable information. in: query name: expand schema: type: string requestBody: content: application/json: example: holder: parameter: jira-core-users type: group value: ca85fac0-d974-40ca-a615-7af99c48d24f permission: ADMINISTER_PROJECTS schema: $ref: "#/components/schemas/PermissionGrant" description: The permission grant to create. required: true responses: "201": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/permission/10000","holder":{"type":"group","parameter":"jira-core-users","value":"ca85fac0-d974-40ca-a615-7af99c48d24f","expand":"group"},"permission":"ADMINISTER_PROJECTS"}' schema: $ref: "#/components/schemas/PermissionGrant" description: Returned if the scheme permission is created. "400": description: Returned if the value for expand is invalid or the same permission grant is present. "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: Create permission grant tags: - Permission schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:field:jira - read:group:jira - read:permission:jira - read:project-role:jira - read:user:jira - write:permission:jira state: Beta "/rest/api/3/permissionscheme/{schemeId}/permission/{permissionId}": delete: deprecated: false description: |- Deletes a permission grant from a permission scheme. See [About permission schemes and grants](../api-group-permission-schemes/#about-permission-schemes-and-grants) for more details. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deletePermissionSchemeEntity parameters: - description: The ID of the permission scheme to delete the permission grant from. in: path name: schemeId required: true schema: format: int64 type: integer - description: The ID of the permission grant to delete. in: path name: permissionId required: true schema: format: int64 type: integer responses: "204": description: Returned if the permission grant is deleted. "400": description: Returned if permission grant with the provided ID is not found. "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: Delete permission scheme grant tags: - Permission schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:permission:jira state: Beta get: deprecated: false description: |- Returns a permission grant. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getPermissionSchemeGrant parameters: - description: The ID of the permission scheme. in: path name: schemeId required: true schema: format: int64 type: integer - description: The ID of the permission grant. in: path name: permissionId required: true schema: format: int64 type: integer - description: |- Use expand to include additional information in the response. This parameter accepts a comma-separated list. Note that permissions are always included when you specify any value. Expand options include: * `all` Returns all expandable information. * `field` Returns information about the custom field granted the permission. * `group` Returns information about the group that is granted the permission. * `permissions` Returns all permission grants for each permission scheme. * `projectRole` Returns information about the project role granted the permission. * `user` Returns information about the user who is granted the permission. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/permission/10000","holder":{"type":"group","parameter":"jira-core-users","value":"ca85fac0-d974-40ca-a615-7af99c48d24f","expand":"group"},"permission":"ADMINISTER_PROJECTS"}' schema: $ref: "#/components/schemas/PermissionGrant" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the permission scheme or permission grant is not found or the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get permission scheme grant tags: - Permission schemes x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:field:jira - read:group:jira - read:permission:jira - read:project-role:jira - read:user:jira state: Beta /rest/api/3/priority: get: deprecated: true description: |- Returns the list of all issue priorities. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getPriorities parameters: [] responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/priority/3","statusColor":"#009900","description":"Major loss of function.","iconUrl":"https://your-domain.atlassian.net/images/icons/priorities/major.png","name":"Major","id":"1"},{"self":"https://your-domain.atlassian.net/rest/api/3/priority/5","statusColor":"#cfcfcf","description":"Very little impact.","iconUrl":"https://your-domain.atlassian.net/images/icons/priorities/trivial.png","name":"Trivial","id":"2"}]' schema: items: $ref: "#/components/schemas/Priority" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get priorities tags: - Issue priorities x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:priority:jira state: Beta post: deprecated: false description: |- Creates an issue priority. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createPriority parameters: [] requestBody: content: application/json: example: description: My priority description iconUrl: images/icons/priorities/major.png name: My new priority statusColor: "#ABCDEF" schema: $ref: "#/components/schemas/CreatePriorityDetails" required: true responses: "201": content: application/json: example: '{"id":"10001"}' schema: $ref: "#/components/schemas/PriorityId" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The length of the description must not exceed 255 characters."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access issue type screen schemes."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create priority tags: - Issue priorities x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/priority/default: put: deprecated: false description: |- Sets default issue priority. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setDefaultPriority parameters: [] requestBody: content: application/json: example: id: "3" schema: $ref: "#/components/schemas/SetDefaultPriorityRequest" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The id has to be provided."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Priority with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue priority isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set default priority tags: - Issue priorities x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/priority/move: put: deprecated: false description: |- Changes the order of issue priorities. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: movePriorities parameters: [] requestBody: content: application/json: example: after: "10003" ids: - "10004" - "10005" schema: $ref: "#/components/schemas/ReorderIssuePriorities" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The ids must contain no more than 1,000 items."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Priority with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue priority isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Move priorities tags: - Issue priorities x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/priority/search: get: deprecated: false description: |- Returns a [paginated](#pagination) list of priorities. The list can contain all priorities or a subset determined by any combination of these criteria: * a list of priority IDs. Any invalid priority IDs are ignored. * whether the field configuration is a default. This returns priorities from company-managed (classic) projects only, as there is no concept of default priorities in team-managed projects. **[Permissions](#permissions) required:** Permission to access Jira. operationId: searchPriorities parameters: - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: "0" type: string - description: The maximum number of items to return per page. in: query name: maxResults schema: default: "50" type: string - description: The list of priority IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=2&id=3`. in: query name: id schema: items: type: string type: array - description: Whether only the default priority is returned. in: query name: onlyDefault schema: default: false type: boolean responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":2,"isLast":true,"values":[{"self":"https://your-domain.atlassian.net/rest/api/3/priority/3","statusColor":"#009900","description":"Major loss of function.","iconUrl":"https://your-domain.atlassian.net/images/icons/priorities/major.png","name":"Major","id":"1","isDefault":true},{"self":"https://your-domain.atlassian.net/rest/api/3/priority/5","statusColor":"#cfcfcf","description":"Very little impact.","iconUrl":"https://your-domain.atlassian.net/images/icons/priorities/trivial.png","name":"Trivial","id":"2","isDefault":false}]}' schema: $ref: "#/components/schemas/PageBeanPriority" description: Returned if the request is successful. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Search priorities tags: - Issue priorities x-atlassian-connect-scope: READ x-experimental: true "/rest/api/3/priority/{id}": delete: deprecated: false description: |- Deletes an issue priority. This operation is [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deletePriority parameters: - description: The ID of the issue priority. in: path name: id required: true schema: type: string - description: The ID of the issue priority that will replace the currently selected resolution. in: query name: replaceWith required: true schema: type: string responses: "303": content: application/json: schema: $ref: "#/components/schemas/TaskProgressBeanObject" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The newPriority has to be provided."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Priority with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue priority isn't found. "409": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if a task to delete the issue priority is already running. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete priority tags: - Issue priorities x-atlassian-connect-scope: ADMIN x-experimental: true get: deprecated: false description: |- Returns an issue priority. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getPriority parameters: - description: The ID of the issue priority. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/priority/3","statusColor":"#009900","description":"Major loss of function.","iconUrl":"https://your-domain.atlassian.net/images/icons/priorities/major.png","name":"Major","id":"1"}' schema: $ref: "#/components/schemas/Priority" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. "404": description: Returned if the issue priority isn't found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get priority tags: - Issue priorities x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:priority:jira state: Beta put: deprecated: false description: |- Updates an issue priority. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updatePriority parameters: - description: The ID of the issue priority. in: path name: id required: true schema: type: string requestBody: content: application/json: example: description: My updated priority description iconUrl: images/icons/priorities/minor.png name: My updated priority statusColor: "#123456" schema: $ref: "#/components/schemas/UpdatePriorityDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The length of the description must not exceed 255 characters."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Priority with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue priority isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update priority tags: - Issue priorities x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/project: get: deprecated: true description: |- Returns all projects visible to the user. Deprecated, use [ Get projects paginated](#api-rest-api-3-project-search-get) that supports search and pagination. This operation can be accessed anonymously. **[Permissions](#permissions) required:** Projects are returned only where the user has *Browse Projects* or *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getAllProjects parameters: - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expanded options include: * `description` Returns the project description. * `issueTypes` Returns all issue types associated with the project. * `lead` Returns information about the project lead. * `projectKeys` Returns all project keys associated with the project. in: query name: expand schema: type: string - description: Returns the user's most recently accessed projects. You may specify the number of results to return up to a maximum of 20. If access is anonymous, then the recently accessed projects are based on the current HTTP session. in: query name: recent schema: format: int32 type: integer - description: A list of project properties to return for the project. This parameter accepts a comma-separated list. in: query name: properties schema: items: type: string type: array responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}},{"self":"https://your-domain.atlassian.net/rest/api/3/project/ABC","id":"10001","key":"ABC","name":"Alphabetical","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10001","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10001","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10001","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10001"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}]' schema: items: $ref: "#/components/schemas/Project" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get all projects tags: - Projects x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:project:jira - read:project.property:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type-hierarchy:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta x-changes: - announced: 2018-10-19 details: https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-removal-of-get-filters-and-get-all-projects/ effective: 2019-04-19 type: removed post: deprecated: false description: |- Creates a project based on a project type template, as shown in the following table: | Project Type Key | Project Template Key | |--|--| | `business` | `com.atlassian.jira-core-project-templates:jira-core-simplified-content-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval`, `com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking`, `com.atlassian.jira-core-project-templates:jira-core-simplified-process-control`, `com.atlassian.jira-core-project-templates:jira-core-simplified-procurement`, `com.atlassian.jira-core-project-templates:jira-core-simplified-project-management`, `com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment`, `com.atlassian.jira-core-project-templates:jira-core-simplified-task-tracking` | | `service_desk` | `com.atlassian.servicedesk:simplified-it-service-management`, `com.atlassian.servicedesk:simplified-general-service-desk-it`, `com.atlassian.servicedesk:simplified-general-service-desk-business`, `com.atlassian.servicedesk:simplified-internal-service-desk`, `com.atlassian.servicedesk:simplified-external-service-desk`, `com.atlassian.servicedesk:simplified-hr-service-desk`, `com.atlassian.servicedesk:simplified-facilities-service-desk`, `com.atlassian.servicedesk:simplified-legal-service-desk`, `com.atlassian.servicedesk:simplified-analytics-service-desk`, `com.atlassian.servicedesk:simplified-marketing-service-desk`, `com.atlassian.servicedesk:simplified-design-service-desk`, `com.atlassian.servicedesk:simplified-sales-service-desk`, `com.atlassian.servicedesk:simplified-finance-service-desk` | | `software` | `com.pyxis.greenhopper.jira:gh-simplified-agility-kanban`, `com.pyxis.greenhopper.jira:gh-simplified-agility-scrum`, `com.pyxis.greenhopper.jira:gh-simplified-basic`, `com.pyxis.greenhopper.jira:gh-simplified-kanban-classic`, `com.pyxis.greenhopper.jira:gh-simplified-scrum-classic` | The project types are available according to the installed Jira features as follows: * Jira Core, the default, enables `business` projects. * Jira Service Management enables `service_desk` projects. * Jira Software enables `software` projects. To determine which features are installed, go to **Jira settings** > **Apps** > **Manage apps** and review the System Apps list. To add Jira Software or Jira Service Management into a JIRA instance, use **Jira settings** > **Apps** > **Finding new apps**. For more information, see [ Managing add-ons](https://confluence.atlassian.com/x/S31NLg). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createProject parameters: [] requestBody: content: application/json: example: assigneeType: PROJECT_LEAD avatarId: 10200 categoryId: 10120 description: Cloud migration initiative issueSecurityScheme: 10001 key: EX leadAccountId: 5b10a0effa615349cb016cd8 name: Example notificationScheme: 10021 permissionScheme: 10011 projectTemplateKey: com.atlassian.jira-core-project-templates:jira-core-simplified-process-control projectTypeKey: business url: http://atlassian.com schema: $ref: "#/components/schemas/CreateProjectDetails" description: The JSON representation of the project being created. required: true responses: "201": content: application/json: example: '{"self":"https://your-domain.atlassian.net/jira/rest/api/3/project/10042","id":10010,"key":"EX"}' schema: $ref: "#/components/schemas/ProjectIdentifiers" description: Returned if the project is created. "400": description: Returned if the request is not valid and the project could not be created. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to create projects. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Create project tags: - Projects x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:project:jira - read:project:jira state: Beta /rest/api/3/project/recent: get: deprecated: false description: |- Returns a list of up to 20 projects recently viewed by the user that are still visible to the user. This operation can be accessed anonymously. **[Permissions](#permissions) required:** Projects are returned only where the user has one of: * *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getRecent parameters: - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expanded options include: * `description` Returns the project description. * `projectKeys` Returns all project keys associated with a project. * `lead` Returns information about the project lead. * `issueTypes` Returns all issue types associated with the project. * `url` Returns the URL associated with the project. * `permissions` Returns the permissions associated with the project. * `insight` EXPERIMENTAL. Returns the insight details of total issue count and last issue update time for the project. * `*` Returns the project with all available expand options. in: query name: expand schema: type: string - description: EXPERIMENTAL. A list of project properties to return for the project. This parameter accepts a comma-separated list. Invalid property names are ignored. in: query name: properties schema: items: $ref: "#/components/schemas/StringList" type: array responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}},{"self":"https://your-domain.atlassian.net/rest/api/3/project/ABC","id":"10001","key":"ABC","name":"Alphabetical","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10001","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10001","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10001","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10001"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}]' schema: items: $ref: "#/components/schemas/Project" type: array 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. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get recent projects tags: - Projects x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:project:jira - read:project.property:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type-hierarchy:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta x-experimental: true /rest/api/3/project/search: get: deprecated: false description: |- Returns a [paginated](#pagination) list of projects visible to the user. This operation can be accessed anonymously. **[Permissions](#permissions) required:** Projects are returned only where the user has one of: * *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: searchProjects 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: |- [Order](#ordering) the results by a field. * `category` Sorts by project category. A complete list of category IDs is found using [Get all project categories](#api-rest-api-3-projectCategory-get). * `issueCount` Sorts by the total number of issues in each project. * `key` Sorts by project key. * `lastIssueUpdatedTime` Sorts by the last issue update time. * `name` Sorts by project name. * `owner` Sorts by project lead. * `archivedDate` EXPERIMENTAL. Sorts by project archived date. * `deletedDate` EXPERIMENTAL. Sorts by project deleted date. in: query name: orderBy schema: default: key enum: - category - -category - +category - key - -key - +key - name - -name - +name - owner - -owner - +owner - issueCount - -issueCount - +issueCount - lastIssueUpdatedDate - -lastIssueUpdatedDate - +lastIssueUpdatedDate - archivedDate - +archivedDate - -archivedDate - deletedDate - +deletedDate - -deletedDate type: string - description: The project IDs to filter the results by. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`. Up to 50 project IDs can be provided. in: query name: id schema: items: format: int64 type: integer type: array uniqueItems: true - description: The project keys to filter the results by. To include multiple keys, provide an ampersand-separated list. For example, `keys=PA&keys=PB`. Up to 50 project keys can be provided. in: query name: keys schema: items: type: string type: array uniqueItems: true - description: Filter the results using a literal string. Projects with a matching `key` or `name` are returned (case insensitive). in: query name: query schema: type: string - description: Orders results by the [project type](https://confluence.atlassian.com/x/GwiiLQ#Jiraapplicationsoverview-Productfeaturesandprojecttypes). This parameter accepts a comma-separated list. Valid values are `business`, `service_desk`, and `software`. in: query name: typeKey schema: type: string - description: The ID of the project's category. A complete list of category IDs is found using the [Get all project categories](#api-rest-api-3-projectCategory-get) operation. in: query name: categoryId schema: format: int64 type: integer - description: |- Filter results by projects for which the user can: * `view` the project, meaning that they have one of the following permissions: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). * `browse` the project, meaning that they have the *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * `edit` the project, meaning that they have one of the following permissions: * *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). in: query name: action schema: default: view enum: - view - browse - edit type: string - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expanded options include: * `description` Returns the project description. * `projectKeys` Returns all project keys associated with a project. * `lead` Returns information about the project lead. * `issueTypes` Returns all issue types associated with the project. * `url` Returns the URL associated with the project. * `insight` EXPERIMENTAL. Returns the insight details of total issue count and last issue update time for the project. in: query name: expand schema: type: string - description: |- EXPERIMENTAL. Filter results by project status: * `live` Search live projects. * `archived` Search archived projects. * `deleted` Search deleted projects, those in the recycle bin. in: query name: status schema: items: default: live enum: - live - archived - deleted type: string type: array - description: EXPERIMENTAL. A list of project properties to return for the project. This parameter accepts a comma-separated list. in: query name: properties schema: items: $ref: "#/components/schemas/StringList" type: array - description: EXPERIMENTAL. A query string used to search properties. The query string cannot be specified using a JSON object. For example, to search for the value of `nested` from `{"something":{"nested":1,"other":2}}` use `[thepropertykey].something.nested=1`. Note that the propertyQuery key is enclosed in square brackets to enable searching where the propertyQuery key includes dot (.) or equals (=) characters. Note that `thepropertykey` is only returned when included in `properties`. in: query name: propertyQuery schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/search?startAt=0&maxResults=2","nextPage":"https://your-domain.atlassian.net/rest/api/3/project/search?startAt=2&maxResults=2","maxResults":2,"startAt":0,"total":7,"isLast":false,"values":[{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","name":"Example","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}},{"self":"https://your-domain.atlassian.net/rest/api/3/project/ABC","id":"10001","key":"ABC","name":"Alphabetical","avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10001","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10001","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10001","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10001"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}]}' schema: $ref: "#/components/schemas/PageBeanProject" 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. "404": description: Returned if no projects matching the search criteria are found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get projects paginated tags: - Projects x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:project:jira - read:project.property:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type-hierarchy:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta /rest/api/3/project/type: get: deprecated: false description: |- Returns all [project types](https://confluence.atlassian.com/x/Var1Nw), whether or not the instance has a valid license for each type. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getAllProjectTypes parameters: [] responses: "200": content: application/json: example: '[{"key":"business","formattedKey":"Business","descriptionI18nKey":"jira.project.type.business.description","icon":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOC4xLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAzMiAzMiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzIgMzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbD0iIzY2NjY2NiIgZD0iTTE2LDBDNy4yLDAsMCw3LjIsMCwxNmMwLDguOCw3LjIsMTYsMTYsMTZjOC44LDAsMTYtNy4yLDE2LTE2QzMyLDcuMiwyNC44LDAsMTYsMHogTTI1LjcsMjMNCgkJYzAsMS44LTEuNCwzLjItMy4yLDMuMkg5LjJDNy41LDI2LjIsNiwyNC44LDYsMjNWOS44QzYsOCw3LjUsNi42LDkuMiw2LjZoMTMuMmMwLjIsMCwwLjQsMCwwLjcsMC4xbC0yLjgsMi44SDkuMg0KCQlDOSw5LjQsOC44LDkuNiw4LjgsOS44VjIzYzAsMC4yLDAuMiwwLjQsMC40LDAuNGgxMy4yYzAuMiwwLDAuNC0wLjIsMC40LTAuNHYtNS4zbDIuOC0yLjhWMjN6IE0xNS45LDIxLjNMMTEsMTYuNGwyLTJsMi45LDIuOQ0KCQlMMjYuNCw2LjhjMC42LDAuNywxLjIsMS41LDEuNywyLjNMMTUuOSwyMS4zeiIvPg0KPC9nPg0KPC9zdmc+","color":"#FFFFFF"},{"key":"software","formattedKey":"Software","descriptionI18nKey":"jira.project.type.software.description","icon":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOC4xLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAzMiAzMiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzIgMzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbD0iIzY2NjY2NiIgZD0iTTE2LDBDNy4yLDAsMCw3LjIsMCwxNmMwLDguOCw3LjIsMTYsMTYsMTZjOC44LDAsMTYtNy4yLDE2LTE2QzMyLDcuMiwyNC44LDAsMTYsMHogTTI1LjcsMjMNCgkJYzAsMS44LTEuNCwzLjItMy4yLDMuMkg5LjJDNy41LDI2LjIsNiwyNC44LDYsMjNWOS44QzYsOCw3LjUsNi42LDkuMiw2LjZoMTMuMmMwLjIsMCwwLjQsMCwwLjcsMC4xbC0yLjgsMi44SDkuMg0KCQlDOSw5LjQsOC44LDkuNiw4LjgsOS44VjIzYzAsMC4yLDAuMiwwLjQsMC40LDAuNGgxMy4yYzAuMiwwLDAuNC0wLjIsMC40LTAuNHYtNS4zbDIuOC0yLjhWMjN6IE0xNS45LDIxLjNMMTEsMTYuNGwyLTJsMi45LDIuOQ0KCQlMMjYuNCw2LjhjMC42LDAuNywxLjIsMS41LDEuNywyLjNMMTUuOSwyMS4zeiIvPg0KPC9nPg0KPC9zdmc+","color":"#AAAAAA"}]' schema: items: $ref: "#/components/schemas/ProjectType" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get all project types tags: - Project types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-type:jira state: Beta /rest/api/3/project/type/accessible: get: deprecated: false description: Returns all [project types](https://confluence.atlassian.com/x/Var1Nw) with a valid license. operationId: getAllAccessibleProjectTypes parameters: [] responses: "200": content: application/json: example: '[{"key":"business","formattedKey":"Business","descriptionI18nKey":"jira.project.type.business.description","icon":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOC4xLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAzMiAzMiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzIgMzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbD0iIzY2NjY2NiIgZD0iTTE2LDBDNy4yLDAsMCw3LjIsMCwxNmMwLDguOCw3LjIsMTYsMTYsMTZjOC44LDAsMTYtNy4yLDE2LTE2QzMyLDcuMiwyNC44LDAsMTYsMHogTTI1LjcsMjMNCgkJYzAsMS44LTEuNCwzLjItMy4yLDMuMkg5LjJDNy41LDI2LjIsNiwyNC44LDYsMjNWOS44QzYsOCw3LjUsNi42LDkuMiw2LjZoMTMuMmMwLjIsMCwwLjQsMCwwLjcsMC4xbC0yLjgsMi44SDkuMg0KCQlDOSw5LjQsOC44LDkuNiw4LjgsOS44VjIzYzAsMC4yLDAuMiwwLjQsMC40LDAuNGgxMy4yYzAuMiwwLDAuNC0wLjIsMC40LTAuNHYtNS4zbDIuOC0yLjhWMjN6IE0xNS45LDIxLjNMMTEsMTYuNGwyLTJsMi45LDIuOQ0KCQlMMjYuNCw2LjhjMC42LDAuNywxLjIsMS41LDEuNywyLjNMMTUuOSwyMS4zeiIvPg0KPC9nPg0KPC9zdmc+","color":"#FFFFFF"},{"key":"software","formattedKey":"Software","descriptionI18nKey":"jira.project.type.software.description","icon":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOC4xLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAzMiAzMiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzIgMzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbD0iIzY2NjY2NiIgZD0iTTE2LDBDNy4yLDAsMCw3LjIsMCwxNmMwLDguOCw3LjIsMTYsMTYsMTZjOC44LDAsMTYtNy4yLDE2LTE2QzMyLDcuMiwyNC44LDAsMTYsMHogTTI1LjcsMjMNCgkJYzAsMS44LTEuNCwzLjItMy4yLDMuMkg5LjJDNy41LDI2LjIsNiwyNC44LDYsMjNWOS44QzYsOCw3LjUsNi42LDkuMiw2LjZoMTMuMmMwLjIsMCwwLjQsMCwwLjcsMC4xbC0yLjgsMi44SDkuMg0KCQlDOSw5LjQsOC44LDkuNiw4LjgsOS44VjIzYzAsMC4yLDAuMiwwLjQsMC40LDAuNGgxMy4yYzAuMiwwLDAuNC0wLjIsMC40LTAuNHYtNS4zbDIuOC0yLjhWMjN6IE0xNS45LDIxLjNMMTEsMTYuNGwyLTJsMi45LDIuOQ0KCQlMMjYuNCw2LjhjMC42LDAuNywxLjIsMS41LDEuNywyLjNMMTUuOSwyMS4zeiIvPg0KPC9nPg0KPC9zdmc+","color":"#AAAAAA"}]' schema: items: $ref: "#/components/schemas/ProjectType" type: array description: Returned if the request is successful. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get licensed project types tags: - Project types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-type:jira state: Beta "/rest/api/3/project/type/{projectTypeKey}": get: deprecated: false description: |- Returns a [project type](https://confluence.atlassian.com/x/Var1Nw). This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getProjectTypeByKey parameters: - description: The key of the project type. in: path name: projectTypeKey required: true schema: enum: - software - service_desk - business - product_discovery type: string responses: "200": content: application/json: example: '{"key":"business","formattedKey":"Business","descriptionI18nKey":"jira.project.type.business.description","icon":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOC4xLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAzMiAzMiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzIgMzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbD0iIzY2NjY2NiIgZD0iTTE2LDBDNy4yLDAsMCw3LjIsMCwxNmMwLDguOCw3LjIsMTYsMTYsMTZjOC44LDAsMTYtNy4yLDE2LTE2QzMyLDcuMiwyNC44LDAsMTYsMHogTTI1LjcsMjMNCgkJYzAsMS44LTEuNCwzLjItMy4yLDMuMkg5LjJDNy41LDI2LjIsNiwyNC44LDYsMjNWOS44QzYsOCw3LjUsNi42LDkuMiw2LjZoMTMuMmMwLjIsMCwwLjQsMCwwLjcsMC4xbC0yLjgsMi44SDkuMg0KCQlDOSw5LjQsOC44LDkuNiw4LjgsOS44VjIzYzAsMC4yLDAuMiwwLjQsMC40LDAuNGgxMy4yYzAuMiwwLDAuNC0wLjIsMC40LTAuNHYtNS4zbDIuOC0yLjhWMjN6IE0xNS45LDIxLjNMMTEsMTYuNGwyLTJsMi45LDIuOQ0KCQlMMjYuNCw2LjhjMC42LDAuNywxLjIsMS41LDEuNywyLjNMMTUuOSwyMS4zeiIvPg0KPC9nPg0KPC9zdmc+","color":"#FFFFFF"}' schema: $ref: "#/components/schemas/ProjectType" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. "404": description: Returned if the project type is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project type by key tags: - Project types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-type:jira state: Beta "/rest/api/3/project/type/{projectTypeKey}/accessible": get: deprecated: false description: |- Returns a [project type](https://confluence.atlassian.com/x/Var1Nw) if it is accessible to the user. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getAccessibleProjectTypeByKey parameters: - description: The key of the project type. in: path name: projectTypeKey required: true schema: enum: - software - service_desk - business - product_discovery type: string responses: "200": content: application/json: example: '{"key":"business","formattedKey":"Business","descriptionI18nKey":"jira.project.type.business.description","icon":"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOC4xLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAzMiAzMiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzIgMzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbD0iIzY2NjY2NiIgZD0iTTE2LDBDNy4yLDAsMCw3LjIsMCwxNmMwLDguOCw3LjIsMTYsMTYsMTZjOC44LDAsMTYtNy4yLDE2LTE2QzMyLDcuMiwyNC44LDAsMTYsMHogTTI1LjcsMjMNCgkJYzAsMS44LTEuNCwzLjItMy4yLDMuMkg5LjJDNy41LDI2LjIsNiwyNC44LDYsMjNWOS44QzYsOCw3LjUsNi42LDkuMiw2LjZoMTMuMmMwLjIsMCwwLjQsMCwwLjcsMC4xbC0yLjgsMi44SDkuMg0KCQlDOSw5LjQsOC44LDkuNiw4LjgsOS44VjIzYzAsMC4yLDAuMiwwLjQsMC40LDAuNGgxMy4yYzAuMiwwLDAuNC0wLjIsMC40LTAuNHYtNS4zbDIuOC0yLjhWMjN6IE0xNS45LDIxLjNMMTEsMTYuNGwyLTJsMi45LDIuOQ0KCQlMMjYuNCw2LjhjMC42LDAuNywxLjIsMS41LDEuNywyLjNMMTUuOSwyMS4zeiIvPg0KPC9nPg0KPC9zdmc+","color":"#FFFFFF"}' schema: $ref: "#/components/schemas/ProjectType" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project type is not accessible to the user. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get accessible project type by key tags: - Project types x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-type:jira state: Beta "/rest/api/3/project/{projectIdOrKey}": delete: deprecated: false description: |- Deletes a project. You can't delete a project if it's archived. To delete an archived project, restore the project and then delete it. To restore a project, use the Jira UI. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteProject parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: Whether this project is placed in the Jira recycle bin where it will be available for restoration. in: query name: enableUndo schema: default: false type: boolean responses: "204": description: Returned if the project is deleted. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project is not found or the user does not have permission to delete it. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Delete project tags: - Projects x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:project:jira state: Beta get: deprecated: false description: |- Returns the [project details](https://confluence.atlassian.com/x/ahLpNw) for a project. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getProject parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Note that the project description, issue types, and project lead are included in all responses by default. Expand options include: * `description` The project description. * `issueTypes` The issue types associated with the project. * `lead` The project lead. * `projectKeys` All project keys associated with the project. * `issueTypeHierarchy` The project issue type hierarchy. in: query name: expand schema: type: string - description: A list of project properties to return for the project. This parameter accepts a comma-separated list. in: query name: properties schema: items: type: string type: array responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","description":"This project was created as an example for REST.","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"components":[{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10000","name":"Component 1","description":"This is a Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"HSP","projectId":10000}],"issueTypes":[{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","description":"A task that needs to be done.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10299&avatarType=issuetype\",","name":"Task","subtask":false,"avatarId":1,"hierarchyLevel":0},{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","id":"1","description":"A problem with the software.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10316&avatarType=issuetype\",","name":"Bug","subtask":false,"avatarId":10002,"entityId":"9d7dd6f7-e8b6-4247-954b-7b2c9b2a5ba2","hierarchyLevel":0,"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}],"url":"https://www.example.com","email":"from-jira@example.com","assigneeType":"PROJECT_LEAD","versions":[],"name":"Example","roles":{"Developers":"https://your-domain.atlassian.net/rest/api/3/project/EX/role/10000"},"avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","properties":{"propertyKey":"propertyValue"},"insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}' schema: $ref: "#/components/schemas/Project" description: Returned if successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project tags: - Projects x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:project:jira - read:project.property:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type-hierarchy:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta put: deprecated: false description: |- Updates the [project details](https://confluence.atlassian.com/x/ahLpNw) of a project. All parameters are optional in the body of the request. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateProject parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Note that the project description, issue types, and project lead are included in all responses by default. Expand options include: * `description` The project description. * `issueTypes` The issue types associated with the project. * `lead` The project lead. * `projectKeys` All project keys associated with the project. in: query name: expand schema: type: string requestBody: content: application/json: example: assigneeType: PROJECT_LEAD avatarId: 10200 categoryId: 10120 description: Cloud migration initiative issueSecurityScheme: 10001 key: EX leadAccountId: 5b10a0effa615349cb016cd8 name: Example notificationScheme: 10021 permissionScheme: 10011 url: http://atlassian.com schema: $ref: "#/components/schemas/UpdateProjectDetails" description: The project details to be updated. required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","description":"This project was created as an example for REST.","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"components":[{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10000","name":"Component 1","description":"This is a Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"HSP","projectId":10000}],"issueTypes":[{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","description":"A task that needs to be done.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10299&avatarType=issuetype\",","name":"Task","subtask":false,"avatarId":1,"hierarchyLevel":0},{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","id":"1","description":"A problem with the software.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10316&avatarType=issuetype\",","name":"Bug","subtask":false,"avatarId":10002,"entityId":"9d7dd6f7-e8b6-4247-954b-7b2c9b2a5ba2","hierarchyLevel":0,"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}],"url":"https://www.example.com","email":"from-jira@example.com","assigneeType":"PROJECT_LEAD","versions":[],"name":"Example","roles":{"Developers":"https://your-domain.atlassian.net/rest/api/3/project/EX/role/10000"},"avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","properties":{"propertyKey":"propertyValue"},"insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}' schema: $ref: "#/components/schemas/Project" description: Returned if the project 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 user does not have the necessary permission to update project details. * the permission scheme is being changed and the Jira instance is Jira Core Free or Jira Software Free. Permission schemes cannot be changed on free plans. "404": description: Returned if the project is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Update project tags: - Projects x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:project:jira - read:project.property:jira - read:user:jira - write:project:jira - write:project.avatar:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type-hierarchy:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/archive": post: deprecated: false description: |- Archives a project. You can't delete a project if it's archived. To delete an archived project, restore the project and then delete it. To restore a project, use the Jira UI. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: archiveProject parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string responses: "204": content: application/json: schema: {} 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 user does not have the necessary permissions. "404": description: Returned if the project is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Archive project tags: - Projects x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/avatar": put: deprecated: false description: |- Sets the avatar displayed for a project. Use [Load project avatar](#api-rest-api-3-project-projectIdOrKey-avatar2-post) to store avatars against the project, before using this operation to set the displayed avatar. **[Permissions](#permissions) required:** *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg). operationId: updateProjectAvatar parameters: - description: The ID or (case-sensitive) key of the project. in: path name: projectIdOrKey required: true schema: type: string requestBody: content: application/json: example: id: "10010" schema: $ref: "#/components/schemas/Avatar" required: true responses: "204": content: application/json: schema: {} 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 permission to administer the project. "404": description: Returned if the project or avatar is not found or the user does not have permission to view the project. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Set project avatar tags: - Project avatars x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project.avatar:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/avatar/{id}": delete: deprecated: false description: |- Deletes a custom avatar from a project. Note that system avatars cannot be deleted. **[Permissions](#permissions) required:** *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg). operationId: deleteProjectAvatar parameters: - description: The project ID or (case-sensitive) key. in: path name: projectIdOrKey required: true schema: type: string - description: The ID of the avatar. in: path name: id required: true schema: format: int64 type: integer responses: "204": description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the avatar is a system avatar or the user does not have permission to administer the project. "404": description: Returned if the project or avatar is not found or the user does not have permission to view the project. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Delete project avatar tags: - Project avatars x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:project.avatar:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/avatar2": post: deprecated: false description: |- Loads an avatar for a project. Specify the avatar's local file location in the body of the request. Also, include the following headers: * `X-Atlassian-Token: no-check` To prevent XSRF protection blocking the request, for more information see [Special Headers](#special-request-headers). * `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG. For example: `curl --request POST ` `--user email@example.com: ` `--header 'X-Atlassian-Token: no-check' ` `--header 'Content-Type: image/< image_type>' ` `--data-binary "<@/path/to/file/with/your/avatar>" ` `--url 'https://your-domain.atlassian.net/rest/api/3/project/{projectIdOrKey}/avatar2'` The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of the image. The length of the square's sides is set to the smaller of the height or width of the image. The cropped image is then used to create avatars of 16x16, 24x24, 32x32, and 48x48 in size. After creating the avatar use [Set project avatar](#api-rest-api-3-project-projectIdOrKey-avatar-put) to set it as the project's displayed avatar. **[Permissions](#permissions) required:** *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg). operationId: createProjectAvatar parameters: - description: The ID or (case-sensitive) key of the project. in: path name: projectIdOrKey required: true schema: type: string - description: The X coordinate of the top-left corner of the crop region. in: query name: x schema: default: 0 format: int32 type: integer - description: The Y coordinate of the top-left corner of the crop region. in: query name: y schema: default: 0 format: int32 type: integer - description: The length of each side of the crop region. in: query name: size schema: format: int32 type: integer requestBody: content: "*/*": schema: {} required: true responses: "201": content: application/json: example: '{"id":"1010","isSystemAvatar":false,"isSelected":false,"isDeletable":true}' schema: $ref: "#/components/schemas/Avatar" description: Returned if the request is successful. "400": description: |- Returned if: * an image isn't included in the request. * the image type is unsupported. * the crop parameters extend the crop area beyond the edge of the image. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to administer the project or an anonymous call is made to the operation. "404": description: Returned if the project is not found or the user does not have permission to view the project. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Load project avatar tags: - Project avatars x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project.avatar:jira - read:avatar:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/avatars": get: deprecated: false description: |- Returns all project avatars, grouped by system and custom avatars. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getAllProjectAvatars parameters: - description: The ID or (case-sensitive) key of the project. in: path name: projectIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '{"system":[{"id":"1000","isSystemAvatar":true,"isSelected":false,"isDeletable":false,"urls":{"16x16":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10040&avatarType=project","24x24":"https://your-domain.atlassian.net/secure/viewavatar?size=small&avatarId=10040&avatarType=project","32x32":"https://your-domain.atlassian.net/secure/viewavatar?size=medium&avatarId=10040&avatarType=project","48x48":"https://your-domain.atlassian.net/secure/viewavatar?avatarId=10040&avatarType=project"}}],"custom":[{"id":"1010","isSystemAvatar":false,"isSelected":false,"isDeletable":true,"urls":{"16x16":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10080&avatarType=project","24x24":"https://your-domain.atlassian.net/secure/viewavatar?size=small&avatarId=10080&avatarType=project","32x32":"https://your-domain.atlassian.net/secure/viewavatar?size=medium&avatarId=10080&avatarType=project","48x48":"https://your-domain.atlassian.net/secure/viewavatar?avatarId=10080&avatarType=project"}}]}' schema: $ref: "#/components/schemas/ProjectAvatars" description: Returned if request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project is not found or the user does not have permission to view the project. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get all project avatars tags: - Project avatars x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project.avatar:jira - read:avatar:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/component": get: deprecated: false description: |- Returns a [paginated](#pagination) list of all components in a project. See the [Get project components](#api-rest-api-3-project-projectIdOrKey-components-get) resource if you want to get a full list of versions without pagination. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getProjectComponentsPaginated parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - 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: |- [Order](#ordering) the results by a field: * `description` Sorts by the component description. * `issueCount` Sorts by the count of issues associated with the component. * `lead` Sorts by the user key of the component's project lead. * `name` Sorts by component name. in: query name: orderBy schema: enum: - description - -description - +description - issueCount - -issueCount - +issueCount - lead - -lead - +lead - name - -name - +name type: string - description: Filter the results using a literal string. Components with a matching `name` or `description` are returned (case insensitive). in: query name: query schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/PR/component?startAt=0&maxResults=2","nextPage":"https://your-domain.atlassian.net/rest/api/3/project/PR/component?startAt=2&maxResults=2","maxResults":2,"startAt":0,"total":7,"isLast":false,"values":[{"componentBean":{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10000","name":"Component 1","description":"This is a Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"HSP","projectId":10000},"issueCount":1,"name":"Component 1","id":"10000","description":"This is a Jira component","project":"HSP","self":"https://your-domain.atlassian.net/rest/api/3/component/10000","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"realAssigneeType":"PROJECT_LEAD","projectId":10000,"assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD"},{"componentBean":{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10050","name":"PXA","description":"This is a another Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"PROJECTKEY","projectId":10000},"issueCount":5,"name":"PXA","id":"10050","description":"This is a another Jira component","project":"PROJECTKEY","self":"https://your-domain.atlassian.net/rest/api/3/component/10000","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"realAssigneeType":"PROJECT_LEAD","projectId":10000,"assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD"}]}' schema: $ref: "#/components/schemas/PageBeanComponentWithIssueCount" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project components paginated tags: - Project components x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project:jira - read:project.component:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/components": get: deprecated: false description: |- Returns all components in a project. See the [Get project components paginated](#api-rest-api-3-project-projectIdOrKey-component-get) resource if you want to get a full list of components with pagination. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getProjectComponents parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10000","name":"Component 1","description":"This is a Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"HSP","projectId":10000},{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10050","name":"PXA","description":"This is a another Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"PROJECTKEY","projectId":10000}]' schema: items: $ref: "#/components/schemas/ProjectComponent" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project components tags: - Project components x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project:jira - read:project.component:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/delete": post: deprecated: false description: |- Deletes a project asynchronously. This operation is: * transactional, that is, if part of the delete fails the project is not deleted. * [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteProjectAsynchronously parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string responses: "303": content: application/json: schema: $ref: "#/components/schemas/TaskProgressBeanObject" 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. "404": description: Returned if the project is not found or the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Delete project asynchronously tags: - Projects x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:project:jira - write:project.property:jira state: Beta x-experimental: true "/rest/api/3/project/{projectIdOrKey}/features": get: deprecated: false description: Returns the list of features for a project. operationId: getFeaturesForProject parameters: - description: The ID or (case-sensitive) key of the project. in: path name: projectIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '{"features":[{"projectId":10001,"state":"ENABLED","toggleLocked":true,"feature":"jsw.classic.roadmap","prerequisites":[],"localisedName":"Roadmap","localisedDescription":"Your roadmap is an optimized location to create and manage your epics.","imageUri":"https://jira.atlassian.com/s/sb53l8/b/3/ab8a7691e4738b4f147e293f0864adfd5b8d3c85/_/download/resources/com.atlassian.jira.rest:classic-project-features/simple-roadmap-feature.svg"},{"projectId":10001,"state":"ENABLED","toggleLocked":true,"feature":"jsw.classic.backlog","prerequisites":[],"localisedName":"Backlog","localisedDescription":"Plan and prioritize work in a dedicated space. To enable and configure the backlog for each board, go to board settings.","imageUri":"https://jira.atlassian.com/s/sb53l8/b/3/ab8a7691e4738b4f147e293f0864adfd5b8d3c85/_/download/resources/com.atlassian.jira.rest:classic-project-features/simple-backlog-feature.svg"}]}' schema: $ref: "#/components/schemas/ContainerForProjectFeatures" 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 user does not have the required permissions. "404": description: Returned if the project is not found. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get project features tags: - Project features x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project.feature:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/features/{featureKey}": put: deprecated: false description: Sets the state of a project feature. operationId: toggleFeatureForProject parameters: - description: The ID or (case-sensitive) key of the project. in: path name: projectIdOrKey required: true schema: type: string - description: The key of the feature. in: path name: featureKey required: true schema: type: string requestBody: content: application/json: example: state: ENABLED schema: $ref: "#/components/schemas/ProjectFeatureState" description: Details of the feature state change. required: true responses: "200": content: application/json: example: '{"features":[{"projectId":10001,"state":"ENABLED","toggleLocked":true,"feature":"jsw.classic.roadmap","prerequisites":[],"localisedName":"Roadmap","localisedDescription":"Your roadmap is an optimized location to create and manage your epics.","imageUri":"https://jira.atlassian.com/s/sb53l8/b/3/ab8a7691e4738b4f147e293f0864adfd5b8d3c85/_/download/resources/com.atlassian.jira.rest:classic-project-features/simple-roadmap-feature.svg"},{"projectId":10001,"state":"ENABLED","toggleLocked":true,"feature":"jsw.classic.backlog","prerequisites":[],"localisedName":"Backlog","localisedDescription":"Plan and prioritize work in a dedicated space. To enable and configure the backlog for each board, go to board settings.","imageUri":"https://jira.atlassian.com/s/sb53l8/b/3/ab8a7691e4738b4f147e293f0864adfd5b8d3c85/_/download/resources/com.atlassian.jira.rest:classic-project-features/simple-backlog-feature.svg"}]}' schema: $ref: "#/components/schemas/ContainerForProjectFeatures" 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 user does not have the required permissions. "404": description: Returned if the project or project feature is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Set project feature state tags: - Project features x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project.feature:jira - read:project.feature:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/properties": get: deprecated: false description: |- Returns all [project property](https://developer.atlassian.com/cloud/jira/platform/storing-data-without-a-database/#a-id-jira-entity-properties-a-jira-entity-properties) keys for the project. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getProjectPropertyKeys parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '{"keys":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support","key":"issue.support"}]}' schema: $ref: "#/components/schemas/PropertyKeys" 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. "403": description: Returned if the user does not have permission to view the project. "404": description: Returned if the project is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project property keys tags: - Project properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project.property:jira - read:comment.property:jira - read:dashboard.property:jira - read:issue-type.property:jira - read:issue-worklog.property:jira - read:issue.property:jira - read:user.property:jira - read:workflow.property:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/properties/{propertyKey}": delete: deprecated: false description: |- Deletes the [property](https://developer.atlassian.com/cloud/jira/platform/storing-data-without-a-database/#a-id-jira-entity-properties-a-jira-entity-properties) from a project. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the property. operationId: deleteProjectProperty parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: The project property key. Use [Get project property keys](#api-rest-api-3-project-projectIdOrKey-properties-get) to get a list of all project property keys. in: path name: propertyKey required: true schema: type: string responses: "204": description: Returned if the project property is deleted. "400": description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect. "403": description: Returned if the user does not have permission to administer the project. "404": description: Returned if the project or property is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Delete project property tags: - Project properties x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:project.property:jira state: Beta get: deprecated: false description: |- Returns the value of a [project property](https://developer.atlassian.com/cloud/jira/platform/storing-data-without-a-database/#a-id-jira-entity-properties-a-jira-entity-properties). This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the property. operationId: getProjectProperty parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: The project property key. Use [Get project property keys](#api-rest-api-3-project-projectIdOrKey-properties-get) to get a list of all project property keys. in: path name: propertyKey required: true schema: type: string responses: "200": content: application/json: example: '{"key":"issue.support","value":{"system.conversation.id":"b1bf38be-5e94-4b40-a3b8-9278735ee1e6","system.support.time":"1m"}}' schema: $ref: "#/components/schemas/EntityProperty" 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. "403": description: Returned if the user does not have permission to view the project. "404": description: Returned if the project or property is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project property tags: - Project properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project.property:jira state: Beta put: deprecated: false description: |- Sets the value of the [project property](https://developer.atlassian.com/cloud/jira/platform/storing-data-without-a-database/#a-id-jira-entity-properties-a-jira-entity-properties). You can use project properties to store custom data against the project. The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The maximum length is 32768 characters. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project in which the property is created. operationId: setProjectProperty parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: The key of the project property. The maximum length is 255 characters. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: example: number: 5 string: string-value schema: {} required: true responses: "200": content: application/json: schema: {} description: Returned if the project property is updated. "201": content: application/json: schema: {} description: Returned if the project property is created. "400": description: Returned if the project key or id is invalid. "401": description: Returned if the authentication credentials are incorrect. "403": description: Returned if the user does not have permission to administer the project. "404": description: Returned if the project is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Set project property tags: - Project properties x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project.property:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/restore": post: deprecated: false description: |- Restores a project that has been archived or placed in the Jira recycle bin. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: restore parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","description":"This project was created as an example for REST.","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"components":[{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10000","name":"Component 1","description":"This is a Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"HSP","projectId":10000}],"issueTypes":[{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","description":"A task that needs to be done.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10299&avatarType=issuetype\",","name":"Task","subtask":false,"avatarId":1,"hierarchyLevel":0},{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","id":"1","description":"A problem with the software.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10316&avatarType=issuetype\",","name":"Bug","subtask":false,"avatarId":10002,"entityId":"9d7dd6f7-e8b6-4247-954b-7b2c9b2a5ba2","hierarchyLevel":0,"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}],"url":"https://www.example.com","email":"from-jira@example.com","assigneeType":"PROJECT_LEAD","versions":[],"name":"Example","roles":{"Developers":"https://your-domain.atlassian.net/rest/api/3/project/EX/role/10000"},"avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","properties":{"propertyKey":"propertyValue"},"insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}' schema: $ref: "#/components/schemas/Project" 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. "404": description: Returned if the project is not found or the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Restore deleted or archived project tags: - Projects x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:project:jira - read:project.property:jira - read:user:jira - write:project:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type-hierarchy:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta x-experimental: true "/rest/api/3/project/{projectIdOrKey}/role": get: deprecated: false description: |- Returns a list of [project roles](https://confluence.atlassian.com/x/3odKLg) for the project returning the name and self URL for each role. Note that all project roles are shared with all projects in Jira Cloud. See [Get all project roles](#api-rest-api-3-role-get) for more information. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for any project on the site or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getProjectRoles parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '{"Administrators":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10002","Users":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10001","Developers":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10000"}' schema: additionalProperties: format: uri type: string type: object description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing or if the user lacks administrative permissions for the project. "404": description: Returned if the project is not found or or if the user does not have administrative permissions for the project. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project roles for project tags: - Project roles x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-role:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/role/{id}": delete: deprecated: false description: |- Deletes actors from a project role for the project. To remove default actors from the project role, use [Delete default actors from project role](#api-rest-api-3-role-id-actors-delete). This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteActor parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer - description: The user account ID of the user to remove from the project role. in: query name: user schema: example: 5b10ac8d82e05b22cc7d4ef5 type: string x-showInExample: "true" - description: The name of the group to remove from the project role. This parameter cannot be used with the `groupId` parameter. As a group's name can change, use of `groupId` is recommended. in: query name: group schema: type: string - description: The ID of the group to remove from the project role. This parameter cannot be used with the `group` parameter. in: query name: groupId schema: type: string responses: "204": description: Returned if the request is successful. "400": description: Returned if the request is not valid. "404": description: |- Returned if: * the project or project role is not found. * the calling user does not have administrative permission. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Delete actors from project role tags: - Project role actors x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:project-role:jira state: Beta get: deprecated: false description: |- Returns a project role's details and actors associated with the project. The list of actors is sorted by display name. To check whether a user belongs to a role based on their group memberships, use [Get user](#api-rest-api-3-user-get) with the `groups` expand parameter selected. Then check whether the user keys and groups match with the actors returned for the project. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getProjectRole parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer - description: Exclude inactive users. in: query name: excludeInactiveUsers schema: default: false type: boolean responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}' schema: $ref: "#/components/schemas/ProjectRole" 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. "404": description: |- Returned if: * the project or project role is not found. * the user does not have administrative permission. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project role for project tags: - Project roles x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project-role:jira - read:project:jira - read:avatar:jira - read:project-category:jira state: Beta post: deprecated: false description: |- Adds actors to a project role for the project. To replace all actors for the project, use [Set actors for project role](#api-rest-api-3-project-projectIdOrKey-role-id-put). This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addActorUsers parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: groupId: - 952d12c3-5b5b-4d04-bb32-44d383afc4b2 schema: $ref: "#/components/schemas/ActorsMap" description: The groups or users to associate with the project role for this project. Provide the user account ID, group name, or group ID. As a group's name can change, use of group ID is recommended. required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}' schema: $ref: "#/components/schemas/ProjectRole" description: |- Returned if the request is successful. The complete list of actors for the project is returned. For example, the cURL request above adds a group, *jira-developers*. For the response below to be returned as a result of that request, the user *Mia Krystof* would have previously been added as a `user` actor for this project. "400": description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing or if the calling user lacks administrative permissions for the project. "404": description: |- Returned if: * the project is not found. * the user or group is not found. * the group or user is not active. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Add actors to project role tags: - Project role actors x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project-role:jira - read:project:jira - write:project-role:jira - read:avatar:jira - read:project-category:jira state: Beta put: deprecated: false description: |- Sets the actors for a project role for a project, replacing all existing actors. To add actors to the project without overwriting the existing list, use [Add actors to project role](#api-rest-api-3-project-projectIdOrKey-role-id-post). **[Permissions](#permissions) required:** *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project or *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setActors parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: categorisedActors: atlassian-group-role-actor-id: - 952d12c3-5b5b-4d04-bb32-44d383afc4b2 atlassian-user-role-actor: - 12345678-9abc-def1-2345-6789abcdef12 schema: $ref: "#/components/schemas/ProjectRoleActorsUpdateBean" description: The groups or users to associate with the project role for this project. Provide the user account ID, group name, or group ID. As a group's name can change, use of group ID is recommended. required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}' schema: $ref: "#/components/schemas/ProjectRole" description: Returned if the request is successful. The complete list of actors for the project is returned. "400": description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing or if the calling user lacks administrative permissions for the project. "404": description: |- Returned if: * the project is not found. * a user or group is not found. * a group or user is not active. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Set actors for project role tags: - Project role actors x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project-role:jira - read:project:jira - write:project-role:jira - read:avatar:jira - read:project-category:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/roledetails": get: deprecated: false description: |- Returns all [project roles](https://confluence.atlassian.com/x/3odKLg) and the details for each role. Note that the list of project roles is common to all projects. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getProjectRoleDetails parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: Whether the roles should be filtered to include only those the user is assigned to. in: query name: currentMember schema: default: false type: boolean - in: query name: excludeConnectAddons schema: default: false type: boolean responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","admin":false,"default":true,"roleConfigurable":true,"translatedName":"Developers"}]' schema: items: $ref: "#/components/schemas/ProjectRoleDetails" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project is not found or if the user does not have the necessary permissions for the project. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project role details tags: - Project roles x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-category:jira - read:project-role:jira - read:project:jira - read:avatar:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/statuses": get: deprecated: false description: |- Returns the valid statuses for a project. The statuses are grouped by issue type, as each project has a set of valid issue types and each issue type has a set of valid statuses. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getAllStatuses parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","name":"Task","subtask":false,"statuses":[{"self":"https://your-domain.atlassian.net/rest/api/3/status/10000","description":"The issue is currently being worked on.","iconUrl":"https://your-domain.atlassian.net/images/icons/progress.gif","name":"In Progress","id":"10000"},{"self":"https://your-domain.atlassian.net/rest/api/3/status/5","description":"The issue is closed.","iconUrl":"https://your-domain.atlassian.net/images/icons/closed.gif","name":"Closed","id":"5"}]}]' schema: items: $ref: "#/components/schemas/IssueTypeWithStatus" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get all statuses for project tags: - Projects x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-status:jira - read:issue-type:jira - read:status:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/type/{newProjectTypeKey}": put: deprecated: true description: |- Deprecated, this feature is no longer supported and no alternatives are available, see [Convert project to a different template or type](https://confluence.atlassian.com/x/yEKeOQ). Updates a [project type](https://confluence.atlassian.com/x/GwiiLQ). The project type can be updated for classic projects only, project type cannot be updated for next-gen projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateProjectType parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: The key of the new project type. in: path name: newProjectTypeKey required: true schema: enum: - software - service_desk - business type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","id":"10000","key":"EX","description":"This project was created as an example for REST.","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"components":[{"self":"https://your-domain.atlassian.net/rest/api/3/component/10000","id":"10000","name":"Component 1","description":"This is a Jira component","lead":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"assigneeType":"PROJECT_LEAD","assignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"realAssigneeType":"PROJECT_LEAD","realAssignee":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},"isAssigneeTypeValid":false,"project":"HSP","projectId":10000}],"issueTypes":[{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/3","id":"3","description":"A task that needs to be done.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10299&avatarType=issuetype\",","name":"Task","subtask":false,"avatarId":1,"hierarchyLevel":0},{"self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","id":"1","description":"A problem with the software.","iconUrl":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10316&avatarType=issuetype\",","name":"Bug","subtask":false,"avatarId":10002,"entityId":"9d7dd6f7-e8b6-4247-954b-7b2c9b2a5ba2","hierarchyLevel":0,"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}],"url":"https://www.example.com","email":"from-jira@example.com","assigneeType":"PROJECT_LEAD","versions":[],"name":"Example","roles":{"Developers":"https://your-domain.atlassian.net/rest/api/3/project/EX/role/10000"},"avatarUrls":{"48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000"},"projectCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},"simplified":false,"style":"classic","properties":{"propertyKey":"propertyValue"},"insight":{"totalIssueCount":100,"lastIssueUpdateTime":"2023-04-21T12:39:27.599+0000"}}' schema: $ref: "#/components/schemas/Project" description: Returned if the project type is updated. "400": description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Update project type tags: - Projects x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:project:jira - read:project.property:jira - read:user:jira - write:project:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type-hierarchy:jira - read:project-category:jira - read:project-version:jira - read:project.component:jira state: Beta x-changes: - announced: 2019-06-03 details: https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-change-project-type-via-api// effective: 2019-12-03 type: removed "/rest/api/3/project/{projectIdOrKey}/version": get: deprecated: false description: |- Returns a [paginated](#pagination) list of all versions in a project. See the [Get project versions](#api-rest-api-3-project-projectIdOrKey-versions-get) resource if you want to get a full list of versions without pagination. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getProjectVersionsPaginated parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - 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: |- [Order](#ordering) the results by a field: * `description` Sorts by version description. * `name` Sorts by version name. * `releaseDate` Sorts by release date, starting with the oldest date. Versions with no release date are listed last. * `sequence` Sorts by the order of appearance in the user interface. * `startDate` Sorts by start date, starting with the oldest date. Versions with no start date are listed last. in: query name: orderBy schema: enum: - description - -description - +description - name - -name - +name - releaseDate - -releaseDate - +releaseDate - sequence - -sequence - +sequence - startDate - -startDate - +startDate type: string - description: Filter the results using a literal string. Versions with matching `name` or `description` are returned (case insensitive). in: query name: query schema: type: string - description: A list of status values used to filter the results by version status. This parameter accepts a comma-separated list. The status values are `released`, `unreleased`, and `archived`. in: query name: status schema: type: string - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `issuesstatus` Returns the number of issues in each status category for each version. * `operations` Returns actions that can be performed on the specified version. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/PR/version?startAt=0&maxResults=2","nextPage":"https://your-domain.atlassian.net/rest/api/3/project/PR/version?startAt=2&maxResults=2","maxResults":2,"startAt":0,"total":7,"isLast":false,"values":[{"self":"https://your-domain.atlassian.net/rest/api/3/version/10000","id":"10000","description":"An excellent version","name":"New Version 1","archived":false,"released":true,"releaseDate":"2010-07-06","overdue":true,"userReleaseDate":"6/Jul/2010","projectId":10000},{"self":"https://your-domain.atlassian.net/rest/api/3/version/10010","id":"10010","description":"Minor Bugfix version","name":"Next Version","archived":false,"released":false,"overdue":false,"projectId":10000,"issuesStatusForFixVersion":{"unmapped":0,"toDo":10,"inProgress":20,"done":100}}]}' schema: $ref: "#/components/schemas/PageBeanVersion" description: Returned if the request is successful. "404": description: Returned if the project is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project versions paginated tags: - Project versions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-version:jira state: Beta "/rest/api/3/project/{projectIdOrKey}/versions": get: deprecated: false description: |- Returns all versions in a project. The response is not paginated. Use [Get project versions paginated](#api-rest-api-3-project-projectIdOrKey-version-get) if you want to get the versions in a project with pagination. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getProjectVersions parameters: - description: The project ID or project key (case sensitive). in: path name: projectIdOrKey required: true schema: type: string - description: Use [expand](#expansion) to include additional information in the response. This parameter accepts `operations`, which returns actions that can be performed on the version. in: query name: expand schema: type: string responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/version/10000","id":"10000","description":"An excellent version","name":"New Version 1","archived":false,"released":true,"releaseDate":"2010-07-06","overdue":true,"userReleaseDate":"6/Jul/2010","projectId":10000},{"self":"https://your-domain.atlassian.net/rest/api/3/version/10010","id":"10010","description":"Minor Bugfix version","name":"Next Version","archived":false,"released":false,"overdue":false,"projectId":10000,"issuesStatusForFixVersion":{"unmapped":0,"toDo":10,"inProgress":20,"done":100}}]' schema: items: $ref: "#/components/schemas/Version" type: array description: Returned if the request is successful. "404": description: Returned if the project is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project versions tags: - Project versions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-version:jira state: Beta "/rest/api/3/project/{projectId}/email": get: deprecated: false description: |- Returns the [project's sender email address](https://confluence.atlassian.com/x/dolKLg). **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getProjectEmail parameters: - description: The project ID. in: path name: projectId required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"emailAddress":"jira@example.customdomain.com","emailAddressStatus":["Email address or domain not verified."]}' schema: $ref: "#/components/schemas/ProjectEmailAddress" 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 permission to read project. "404": description: Returned if the project or project's sender email address is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Get project's sender email tags: - Project email x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:project.email:jira state: Beta x-experimental: true put: deprecated: false description: |- Sets the [project's sender email address](https://confluence.atlassian.com/x/dolKLg). If `emailAddress` is an empty string, the default email address is restored. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: updateProjectEmail parameters: - description: The project ID. in: path name: projectId required: true schema: format: int64 type: integer requestBody: content: application/json: example: emailAddress: jira@example.atlassian.net schema: $ref: "#/components/schemas/ProjectEmailAddress" description: The project's sender email address to be set. required: true responses: "204": content: application/json: schema: {} description: Returned if the project's sender email address is successfully set. "400": description: Returned if the request is not valid, if the email address is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have permission to read project. "404": description: Returned if the project is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Set project's sender email tags: - Project email x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project.email:jira state: Beta x-experimental: true "/rest/api/3/project/{projectId}/hierarchy": get: deprecated: true description: |- Get the issue type hierarchy for a next-gen project. The issue type hierarchy for a project consists of: * *Epic* at level 1 (optional). * One or more issue types at level 0 such as *Story*, *Task*, or *Bug*. Where the issue type *Epic* is defined, these issue types are used to break down the content of an epic. * *Subtask* at level -1 (optional). This issue type enables level 0 issue types to be broken down into components. Issues based on a level -1 issue type must have a parent issue. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project. operationId: getHierarchy parameters: - description: The ID of the project. in: path name: projectId required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"projectId":10030,"hierarchy":[{"entityId":"6d9ef380-5ad8-4f42-a0ab-6537bdfc214b","level":0,"name":"Base","issueTypes":[{"id":10008,"entityId":"fb718a88-42b6-4b14-abc9-1e4fb3cb6864","name":"Story","avatarId":10324},{"id":10001,"entityId":"fdd96ea7-8dcd-4867-a5f5-8987250a7b13","name":"Bug","avatarId":10324}]},{"entityId":"9f4724e1-d059-431e-ad69-192abdcc07aa","level":1,"name":"Epic","issueTypes":[{"id":10007,"entityId":"b56469fe-a5b1-49a0-9862-9d7f56caac5e","name":"Epic","avatarId":10179}]},{"entityId":"f07114e2-23e2-40bc-88b4-fa24d78d14f4","level":-1,"name":"Subtask","issueTypes":[{"id":10009,"entityId":"14394d75-e62f-4026-82d6-97d637800f20","name":"Subtask","avatarId":10573}]}]}' schema: $ref: "#/components/schemas/ProjectIssueTypeHierarchy" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project is not found or the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get project issue type hierarchy tags: - Projects x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-type:jira - read:issue-type-hierarchy:jira state: Beta "/rest/api/3/project/{projectKeyOrId}/issuesecuritylevelscheme": get: deprecated: false description: |- Returns the [issue security scheme](https://confluence.atlassian.com/x/J4lKLg) associated with the project. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or the *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg). operationId: getProjectIssueSecurityScheme parameters: - description: The project ID or project key (case sensitive). in: path name: projectKeyOrId required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/issuesecurityschemes/10000","id":10000,"name":"Default Issue Security Scheme","description":"Description for the default issue security scheme","defaultSecurityLevelId":10021,"levels":[{"self":"https://your-domain.atlassian.net/rest/api/3/securitylevel/10021","id":"10021","description":"Only the reporter and internal staff can see this issue.","name":"Reporter Only"}]}' schema: $ref: "#/components/schemas/SecurityScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the project is visible to the user but the user doesn't have administrative permissions. "404": description: Returned if the project is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get project issue security scheme tags: - Project permission schemes x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-security-level:jira - read:issue-security-scheme:jira state: Beta "/rest/api/3/project/{projectKeyOrId}/notificationscheme": get: deprecated: true description: |- Gets a [notification scheme](https://confluence.atlassian.com/x/8YdKLg) associated with the project. Deprecated, use [Get notification schemes paginated](#api-rest-api-3-notificationscheme-get) supporting search and pagination. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg). operationId: getNotificationSchemeForProject parameters: - description: The project ID or project key (case sensitive). in: path name: projectKeyOrId required: true schema: type: string - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `all` Returns all expandable information * `field` Returns information about any custom fields assigned to receive an event * `group` Returns information about any groups assigned to receive an event * `notificationSchemeEvents` Returns a list of event associations. This list is returned for all expandable information * `projectRole` Returns information about any project roles assigned to receive an event * `user` Returns information about any users assigned to receive an event in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"expand":"notificationSchemeEvents,user,group,projectRole,field,all","id":10100,"self":"https://your-domain.atlassian.net/rest/api/3/notificationscheme","name":"notification scheme name","description":"description","notificationSchemeEvents":[{"event":{"id":1,"name":"Issue created","description":"Event published when an issue is created"},"notifications":[{"id":1,"notificationType":"Group","parameter":"jira-administrators","recipient":"276f955c-63d7-42c8-9520-92d01dca0625","group":{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"},"expand":"group"},{"id":2,"notificationType":"CurrentAssignee"},{"id":3,"notificationType":"ProjectRole","parameter":"10360","recipient":"10360","projectRole":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}},"expand":"projectRole"},{"id":4,"notificationType":"EmailAddress","parameter":"rest-developer@atlassian.com","recipient":"rest-developer@atlassian.com","emailAddress":"rest-developer@atlassian.com"},{"id":5,"notificationType":"User","parameter":"5b10a2844c20165700ede21g","recipient":"5b10a2844c20165700ede21g","user":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"expand":"user"},{"id":6,"notificationType":"GroupCustomField","parameter":"customfield_10101","recipient":"customfield_10101","field":{"id":"customfield_10101","key":"customfield_10101","name":"New custom field","untranslatedName":"New custom field","custom":true,"orderable":true,"navigable":true,"searchable":true,"clauseNames":["cf[10101]","New custom field"],"schema":{"type":"project","custom":"com.atlassian.jira.plugin.system.customfieldtypes:project","customId":10101}},"expand":"field"}]},{"event":{"id":20,"name":"Custom event","description":"Custom event that is published together with an issue created event","templateEvent":{"id":1,"name":"Issue created","description":"Event published when an issue is created"}},"notifications":[{"id":1,"notificationType":"Group","parameter":"jira-administrators","recipient":"276f955c-63d7-42c8-9520-92d01dca0625","group":{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"},"expand":"group"},{"id":2,"notificationType":"CurrentAssignee"},{"id":3,"notificationType":"ProjectRole","parameter":"10360","recipient":"10360","projectRole":{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}},"expand":"projectRole"},{"id":4,"notificationType":"EmailAddress","parameter":"rest-developer@atlassian.com","recipient":"rest-developer@atlassian.com","emailAddress":"rest-developer@atlassian.com"},{"id":5,"notificationType":"User","parameter":"5b10a2844c20165700ede21g","recipient":"5b10a2844c20165700ede21g","user":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"expand":"user"},{"id":6,"notificationType":"GroupCustomField","parameter":"customfield_10101","recipient":"customfield_10101","field":{"id":"customfield_10101","key":"customfield_10101","name":"New custom field","untranslatedName":"New custom field","custom":true,"orderable":true,"navigable":true,"searchable":true,"clauseNames":["cf[10101]","New custom field"],"schema":{"type":"project","custom":"com.atlassian.jira.plugin.system.customfieldtypes:project","customId":10101}},"expand":"field"}]}],"projects":[10001,10002]}' schema: $ref: "#/components/schemas/NotificationScheme" 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. "404": description: Returned if the project is not found or the user is not an administrator. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get project notification scheme tags: - Projects x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-category:jira - read:project-role:jira - read:project:jira - read:user:jira - read:group:jira - read:field:jira - read:avatar:jira - read:field-configuration:jira - read:notification-scheme:jira state: Beta "/rest/api/3/project/{projectKeyOrId}/permissionscheme": get: deprecated: false description: |- Gets the [permission scheme](https://confluence.atlassian.com/x/yodKLg) associated with the project. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg). operationId: getAssignedPermissionScheme parameters: - description: The project ID or project key (case sensitive). in: path name: projectKeyOrId required: true schema: type: string - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Note that permissions are included when you specify any value. Expand options include: * `all` Returns all expandable information. * `field` Returns information about the custom field granted the permission. * `group` Returns information about the group that is granted the permission. * `permissions` Returns all permission grants for each permission scheme. * `projectRole` Returns information about the project role granted the permission. * `user` Returns information about the user who is granted the permission. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000","name":"Example permission scheme","description":"description"}' schema: $ref: "#/components/schemas/PermissionScheme" 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 permission to view the project's configuration. "404": description: Returned if the project is not found or the user does not have permission to view the project. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get assigned permission scheme tags: - Project permission schemes x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:field:jira - read:group:jira - read:permission-scheme:jira - read:permission:jira - read:project-role:jira - read:user:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta put: deprecated: false description: |- Assigns a permission scheme with a project. See [Managing project permissions](https://confluence.atlassian.com/x/yodKLg) for more information about permission schemes. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) operationId: assignPermissionScheme parameters: - description: The project ID or project key (case sensitive). in: path name: projectKeyOrId required: true schema: type: string - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Note that permissions are included when you specify any value. Expand options include: * `all` Returns all expandable information. * `field` Returns information about the custom field granted the permission. * `group` Returns information about the group that is granted the permission. * `permissions` Returns all permission grants for each permission scheme. * `projectRole` Returns information about the project role granted the permission. * `user` Returns information about the user who is granted the permission. in: query name: expand schema: type: string requestBody: content: application/json: example: id: 10000 schema: $ref: "#/components/schemas/IdBean" required: true responses: "200": content: application/json: example: '{"id":10000,"self":"https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000","name":"Example permission scheme","description":"description"}' schema: $ref: "#/components/schemas/PermissionScheme" 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 to edit the project's configuration. * the Jira instance is Jira Core Free or Jira Software Free. Permission schemes cannot be assigned to projects on free plans. "404": description: Returned if the project or permission scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Assign permission scheme tags: - Project permission schemes x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:field:jira - read:group:jira - read:permission-scheme:jira - read:permission:jira - read:project-role:jira - read:user:jira - write:project:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta "/rest/api/3/project/{projectKeyOrId}/securitylevel": get: deprecated: false description: |- Returns all [issue security](https://confluence.atlassian.com/x/J4lKLg) levels for the project that the user has access to. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [global permission](https://confluence.atlassian.com/x/x4dKLg) for the project, however, issue security levels are only returned for authenticated user with *Set Issue Security* [global permission](https://confluence.atlassian.com/x/x4dKLg) for the project. operationId: getSecurityLevelsForProject parameters: - description: The project ID or project key (case sensitive). in: path name: projectKeyOrId required: true schema: type: string responses: "200": content: application/json: example: '{"levels":[{"self":"https://your-domain.atlassian.net/rest/api/3/securitylevel/100000","id":"100000","description":"Only the reporter and internal staff can see this issue.","name":"Reporter Only"},{"self":"https://your-domain.atlassian.net/rest/api/3/securitylevel/100001","id":"100001","description":"Only internal staff can see this issue.","name":"Staff Only"}]}' schema: $ref: "#/components/schemas/ProjectIssueSecurityLevels" description: Returned if the request is successful. "404": description: Returned if the project is not found or the user does not have permission to view it. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get project issue security levels tags: - Project permission schemes x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-security-level:jira state: Beta /rest/api/3/projectCategory: get: deprecated: false description: |- Returns all project categories. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getAllProjectCategories parameters: [] responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"},{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10001","id":"10001","name":"SECOND","description":"Second Project Category"}]' schema: items: $ref: "#/components/schemas/ProjectCategory" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get all project categories tags: - Project categories x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-category:jira state: Beta post: deprecated: false description: |- Creates a project category. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createProjectCategory parameters: [] requestBody: content: application/json: example: description: Created Project Category name: CREATED schema: $ref: "#/components/schemas/ProjectCategory" required: true responses: "201": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10100","id":"10100","name":"CREATED","description":"Created Project Category"}' schema: $ref: "#/components/schemas/ProjectCategory" description: Returned if the request is successful. "400": description: |- Returned if: * `name` is not provided or exceeds 255 characters. * `description` exceeds 1000 characters. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "409": description: Returned if the project category name is in use. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Create project category tags: - Project categories x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project-category:jira - read:project-category:jira state: Beta "/rest/api/3/projectCategory/{id}": delete: deprecated: false description: |- Deletes a project category. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeProjectCategory parameters: - description: ID of the project category to delete. in: path name: id required: true schema: format: int64 type: integer responses: "204": 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. "404": description: Returned if the project category is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Delete project category tags: - Project categories x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:project-category:jira state: Beta get: deprecated: false description: |- Returns a project category. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getProjectCategoryById parameters: - description: The ID of the project category. in: path name: id required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000","id":"10000","name":"FIRST","description":"First Project Category"}' schema: $ref: "#/components/schemas/ProjectCategory" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project category is not found. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get project category by ID tags: - Project categories x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-category:jira state: Beta put: deprecated: false description: |- Updates a project category. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateProjectCategory parameters: - in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: description: Updated Project Category name: UPDATED schema: $ref: "#/components/schemas/ProjectCategory" required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10100","id":"10100","name":"UPDATED","description":"Updated Project Category"}' schema: $ref: "#/components/schemas/UpdatedProjectCategory" description: Returned if the request is successful. "400": description: |- Returned if: * `name` has been modified and exceeds 255 characters. * `description` has been modified and exceeds 1000 characters. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the project category is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Update project category tags: - Project categories x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:project-category:jira - write:project-category:jira state: Beta /rest/api/3/projectvalidate/key: get: deprecated: false description: |- Validates a project key by confirming the key is a valid string and not in use. **[Permissions](#permissions) required:** None. operationId: validateProjectKey parameters: - description: The project key. in: query name: key schema: example: HSP type: string x-showInExample: "true" responses: "200": content: application/json: example: '{"errorMessages":[],"errors":{"projectKey":"A project with that project key already exists."}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Validate project key tags: - Project key and name validation x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project:jira state: Beta /rest/api/3/projectvalidate/validProjectKey: get: deprecated: false description: |- Validates a project key and, if the key is invalid or in use, generates a valid random string for the project key. **[Permissions](#permissions) required:** None. operationId: getValidProjectKey parameters: - description: The project key. in: query name: key schema: example: HSP type: string x-showInExample: "true" responses: "200": content: application/json: example: '"VPNE"' schema: type: string description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. security: - basicAuth: [] summary: Get valid project key tags: - Project key and name validation x-atlassian-connect-scope: READ /rest/api/3/projectvalidate/validProjectName: get: deprecated: false description: |- Checks that a project name isn't in use. If the name isn't in use, the passed string is returned. If the name is in use, this operation attempts to generate a valid project name based on the one supplied, usually by adding a sequence number. If a valid project name cannot be generated, a 404 response is returned. **[Permissions](#permissions) required:** None. operationId: getValidProjectName parameters: - description: The project name. in: query name: name required: true schema: type: string responses: "200": content: application/json: example: '"Valid Project Name Example"' schema: type: string description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect. "404": description: Returned if a valid project name cannot be generated. security: - basicAuth: [] summary: Get valid project name tags: - Project key and name validation x-atlassian-connect-scope: READ /rest/api/3/resolution: get: deprecated: true description: |- Returns a list of all issue resolution values. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getResolutions parameters: [] responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/resolution/1","id":"10000","description":"A fix for this issue is checked into the tree and tested.","name":"Fixed"},{"self":"https://your-domain.atlassian.net/rest/api/3/resolution/3","id":"10001","description":"This is what it is supposed to do.","name":"Works as designed"}]' schema: items: $ref: "#/components/schemas/Resolution" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get resolutions tags: - Issue resolutions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:resolution:jira state: Beta post: deprecated: false description: |- Creates an issue resolution. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createResolution parameters: [] requestBody: content: application/json: example: description: My resolution description name: My new resolution schema: $ref: "#/components/schemas/CreateResolutionDetails" required: true responses: "201": content: application/json: example: '{"id":"10001"}' schema: $ref: "#/components/schemas/ResolutionId" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The length of the description must not exceed 255 characters."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create resolution tags: - Issue resolutions x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/resolution/default: put: deprecated: false description: |- Sets default issue resolution. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setDefaultResolution parameters: [] requestBody: content: application/json: example: id: "3" schema: $ref: "#/components/schemas/SetDefaultResolutionRequest" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The id has to be provided."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Priority with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue resolution isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set default resolution tags: - Issue resolutions x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/resolution/move: put: deprecated: false description: |- Changes the order of issue resolutions. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: moveResolutions parameters: [] requestBody: content: application/json: example: after: "10002" ids: - "10000" - "10001" schema: $ref: "#/components/schemas/ReorderIssueResolutionsRequest" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The IDs must contain no more than 1,000 items."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Resolution with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue resolution isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Move resolutions tags: - Issue resolutions x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/resolution/search: get: deprecated: false description: |- Returns a [paginated](#pagination) list of resolutions. The list can contain all resolutions or a subset determined by any combination of these criteria: * a list of resolutions IDs. * whether the field configuration is a default. This returns resolutions from company-managed (classic) projects only, as there is no concept of default resolutions in team-managed projects. **[Permissions](#permissions) required:** Permission to access Jira. operationId: searchResolutions parameters: - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: "0" type: string - description: The maximum number of items to return per page. in: query name: maxResults schema: default: "50" type: string - description: The list of resolutions IDs to be filtered out in: query name: id schema: items: type: string type: array - description: When set to true, return default only, when IDs provided, if none of them is default, return empty page. Default value is false in: query name: onlyDefault schema: default: false type: boolean responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":1,"isLast":true,"values":[{"id":"10001","description":"This is what it is supposed to do.","name":"Works as designed","isDefault":true}]}' schema: $ref: "#/components/schemas/PageBeanResolutionJsonBean" description: Returned if the request is successful. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Search resolutions tags: - Issue resolutions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:resolution:jira state: Beta x-experimental: true "/rest/api/3/resolution/{id}": delete: deprecated: false description: |- Deletes an issue resolution. This operation is [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain subsequent updates. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteResolution parameters: - description: The ID of the issue resolution. in: path name: id required: true schema: type: string - description: The ID of the issue resolution that will replace the currently selected resolution. in: query name: replaceWith required: true schema: type: string responses: "303": content: application/json: schema: $ref: "#/components/schemas/TaskProgressBeanObject" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The id has to be provided."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Priority with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue resolution isn't found. "409": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if a task to delete the issue resolution is already running. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete resolution tags: - Issue resolutions x-atlassian-connect-scope: ADMIN x-experimental: true get: deprecated: false description: |- Returns an issue resolution value. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getResolution parameters: - description: The ID of the issue resolution value. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/resolution/1","id":"10000","description":"A fix for this issue is checked into the tree and tested.","name":"Fixed"}' schema: $ref: "#/components/schemas/Resolution" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue resolution value is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get resolution tags: - Issue resolutions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:resolution:jira state: Beta put: deprecated: false description: |- Updates an issue resolution. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateResolution parameters: - description: The ID of the issue resolution. in: path name: id required: true schema: type: string requestBody: content: application/json: example: description: My updated resolution description name: My updated resolution schema: $ref: "#/components/schemas/UpdateResolutionDetails" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The length of the description must not exceed 255 characters."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request isn't valid. "401": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["You are not authorized to perform this action. Administrator privileges are required."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user doesn't have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Resolution with ID 10000 not found."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the issue resolution isn't found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update resolution tags: - Issue resolutions x-atlassian-connect-scope: ADMIN x-experimental: true /rest/api/3/role: get: deprecated: false description: |- Gets a list of all project roles, complete with project role details and default actors. ### About project roles ### [Project roles](https://confluence.atlassian.com/x/3odKLg) are a flexible way to to associate users and groups with projects. In Jira Cloud, the list of project roles is shared globally with all projects, but each project can have a different set of actors associated with it (unlike groups, which have the same membership throughout all Jira applications). Project roles are used in [permission schemes](#api-rest-api-3-permissionscheme-get), [email notification schemes](#api-rest-api-3-notificationscheme-get), [issue security levels](#api-rest-api-3-issuesecurityschemes-get), [comment visibility](#api-rest-api-3-comment-list-post), and workflow conditions. #### Members and actors #### In the Jira REST API, a member of a project role is called an *actor*. An *actor* is a group or user associated with a project role. Actors may be set as [default members](https://confluence.atlassian.com/x/3odKLg#Managingprojectroles-Specifying'defaultmembers'foraprojectrole) of the project role or set at the project level: * Default actors: Users and groups that are assigned to the project role for all newly created projects. The default actors can be removed at the project level later if desired. * Actors: Users and groups that are associated with a project role for a project, which may differ from the default actors. This enables you to assign a user to different roles in different projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllProjectRoles parameters: [] responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}]' schema: items: $ref: "#/components/schemas/ProjectRole" type: array 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 administrative permissions. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get all project roles tags: - Project roles x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project-role:jira - read:project:jira - read:avatar:jira - read:project-category:jira state: Beta post: deprecated: false description: |- Creates a new project role with no [default actors](#api-rest-api-3-resolution-get). You can use the [Add default actors to project role](#api-rest-api-3-role-id-actors-post) operation to add default actors to the project role after creating it. *Note that although a new project role is available to all projects upon creation, any default actors that are associated with the project role are not added to projects that existed prior to the role being created.*< **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createProjectRole parameters: [] requestBody: content: application/json: example: description: A project role that represents developers in a project name: Developers schema: $ref: "#/components/schemas/CreateUpdateRoleRequestBean" required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project"}' schema: $ref: "#/components/schemas/ProjectRole" description: Returned if the request is successful. "400": description: Returned if the request is not valid. The `name` cannot be empty or start or end with whitespace. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have administrative permissions. "409": description: Returned if a project role with the provided name already exists. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create project role tags: - Project roles x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project:jira - write:project-role:jira - read:avatar:jira - read:project-category:jira - read:project-role:jira state: Beta "/rest/api/3/role/{id}": delete: deprecated: false description: |- Deletes a project role. You must specify a replacement project role if you wish to delete a project role that is in use. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteProjectRole parameters: - description: The ID of the project role to delete. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer - description: The ID of the project role that will replace the one being deleted. in: query name: swap schema: format: int64 type: integer responses: "204": description: Returned if the request is successful. "400": description: Returned if the request is invalid or if the replacement project role is not found. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have administrative permissions. "404": description: Returned if the project role being deleted is not found. "409": description: Returned if the project role being deleted is in use and a replacement project role is not specified in the request. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete project role tags: - Project roles x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:project-role:jira state: Beta get: deprecated: false description: |- Gets the project role details and the default actors associated with the role. The list of default actors is sorted by display name. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getProjectRoleById parameters: - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}' schema: $ref: "#/components/schemas/ProjectRole" 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 administrative permissions. "404": description: Returned if the project role is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get project role by ID tags: - Project roles x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project-role:jira - read:project:jira - read:avatar:jira - read:project-category:jira state: Beta post: deprecated: false description: |- Updates either the project role's name or its description. You cannot update both the name and description at the same time using this operation. If you send a request with a name and a description only the name is updated. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: partialUpdateProjectRole parameters: - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: description: A project role that represents developers in a project name: Developers schema: $ref: "#/components/schemas/CreateUpdateRoleRequestBean" required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}' schema: $ref: "#/components/schemas/ProjectRole" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have administrative permissions. "404": description: Returned if the project role is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Partial update project role tags: - Project roles x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project:jira - write:project-role:jira - read:avatar:jira - read:project-category:jira - read:project-role:jira state: Beta put: deprecated: false description: |- Updates the project role's name and description. You must include both a name and a description in the request. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: fullyUpdateProjectRole parameters: - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: description: A project role that represents developers in a project name: Developers schema: $ref: "#/components/schemas/CreateUpdateRoleRequestBean" required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/project/MKY/role/10360","name":"Developers","id":10360,"description":"A project role that represents developers in a project","actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}},{"id":10241,"displayName":"Mia Krystof","type":"atlassian-user-role-actor","actorUser":{"accountId":"5b10a2844c20165700ede21g"}}],"scope":{"type":"PROJECT","project":{"id":"10000","key":"KEY","name":"Next Gen Project"}}}' schema: $ref: "#/components/schemas/ProjectRole" description: Returned if the request is successful. "400": description: Returned if the request is not valid. The `name` cannot be empty or start or end with whitespace. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have administrative permissions. "404": description: Returned if the project role is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Fully update project role tags: - Project roles x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project:jira - write:project-role:jira - read:avatar:jira - read:project-category:jira - read:project-role:jira state: Beta "/rest/api/3/role/{id}/actors": delete: deprecated: false description: |- Deletes the [default actors](#api-rest-api-3-resolution-get) from a project role. You may delete a group or user, but you cannot delete a group and a user in the same request. Changing a project role's default actors does not affect project role members for projects already created. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteProjectRoleActorsFromRole parameters: - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer - description: The user account ID of the user to remove as a default actor. in: query name: user schema: example: 5b10ac8d82e05b22cc7d4ef5 type: string x-showInExample: "true" - description: The group ID of the group to be removed as a default actor. This parameter cannot be used with the `group` parameter. in: query name: groupId schema: type: string - description: The group name of the group to be removed as a default actor.This parameter cannot be used with the `groupId` parameter. As a group's name can change, use of `groupId` is recommended. in: query name: group schema: type: string responses: "200": content: application/json: example: '{"actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}}]}' schema: $ref: "#/components/schemas/ProjectRole" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have administrative permissions. "404": description: Returned if the project role is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete default actors from project role tags: - Project role actors x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:project-role:jira - read:user:jira - read:group:jira - read:project-role:jira - read:project:jira - read:avatar:jira - read:project-category:jira state: Beta get: deprecated: false description: |- Returns the [default actors](#api-rest-api-3-resolution-get) for the project role. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getProjectRoleActorsForRole parameters: - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}}]}' schema: $ref: "#/components/schemas/ProjectRole" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have administrative permissions. "404": description: Returned if the project role is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get default actors for project role tags: - Project role actors x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project-role:jira - read:project:jira - read:avatar:jira - read:project-category:jira state: Beta post: deprecated: false description: |- Adds [default actors](#api-rest-api-3-resolution-get) to a role. You may add groups or users, but you cannot add groups and users in the same request. Changing a project role's default actors does not affect project role members for projects already created. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addProjectRoleActorsToRole parameters: - description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: user: - admin schema: $ref: "#/components/schemas/ActorInputBean" required: true responses: "200": content: application/json: example: '{"actors":[{"id":10240,"displayName":"jira-developers","type":"atlassian-group-role-actor","name":"jira-developers","actorGroup":{"name":"jira-developers","displayName":"jira-developers","groupId":"952d12c3-5b5b-4d04-bb32-44d383afc4b2"}}]}' schema: $ref: "#/components/schemas/ProjectRole" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have administrative permissions. "404": description: Returned if the project role is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Add default actors to project role tags: - Project role actors x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:user:jira - read:group:jira - read:project-role:jira - read:project:jira - write:project-role:jira - read:avatar:jira - read:project-category:jira state: Beta /rest/api/3/screens: get: deprecated: false description: |- Returns a [paginated](#pagination) list of all screens or those specified by one or more screen IDs. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getScreens 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: 100 format: int32 type: integer - description: The list of screen IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`. in: query name: id schema: items: format: int64 type: integer type: array uniqueItems: true - description: String used to perform a case-insensitive partial match with screen name. in: query name: queryString schema: default: "" type: string - description: The scope filter string. To filter by multiple scope, provide an ampersand-separated list. For example, `scope=GLOBAL&scope=PROJECT`. in: query name: scope schema: items: enum: - GLOBAL - TEMPLATE - PROJECT type: string type: array uniqueItems: true - description: |- [Order](#ordering) the results by a field: * `id` Sorts by screen ID. * `name` Sorts by screen name. in: query name: orderBy schema: enum: - name - -name - +name - id - -id - +id type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/screens","maxResults":100,"startAt":0,"total":3,"isLast":true,"values":[{"id":1,"name":"Default Screen","description":"Provides for the update all system fields."},{"id":2,"name":"Workflow Screen","description":"This screen is used in the workflow and enables you to assign issues."},{"id":3,"name":"Resolve Issue Screen","description":"Offers the ability to set resolution, change fix versions, and assign an issue."}]}' schema: $ref: "#/components/schemas/PageBeanScreen" 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-project summary: Get screens tags: - Screens x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:project:jira - read:screen:jira - read:avatar:jira - read:project-category:jira state: Beta post: deprecated: false description: |- Creates a screen with a default field tab. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createScreen parameters: [] requestBody: content: application/json: example: description: Enables changes to resolution and linked issues. name: Resolve Security Issue Screen schema: $ref: "#/components/schemas/ScreenDetails" required: true responses: "201": content: application/json: example: '{"id":10005,"name":"Resolve Security Issue Screen","description":"Enables changes to resolution and linked issues."}' schema: $ref: "#/components/schemas/Screen" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The name is used by another screen."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can manage screens."],"errors":{}}' description: Returned if the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Create screen tags: - Screens x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:project:jira - read:screen:jira - write:screen:jira - read:avatar:jira - read:project-category:jira state: Beta x-experimental: true "/rest/api/3/screens/addToDefault/{fieldId}": post: deprecated: false description: |- Adds a field to the default tab of the default screen. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addFieldToDefaultScreen parameters: - description: The ID of the field. in: path name: fieldId required: true schema: type: string responses: "200": content: application/json: schema: {} 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. "404": description: Returned if the field it not found or the field is already present. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Add field to default screen tags: - Screens x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:project:jira - read:screen:jira - write:screen:jira state: Beta "/rest/api/3/screens/{screenId}": delete: deprecated: false description: |- Deletes a screen. A screen cannot be deleted if it is used in a screen scheme, workflow, or workflow draft. Only screens used in classic projects can be deleted. operationId: deleteScreen parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer responses: "204": description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The screen is used in a screen scheme."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can manage screens."],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["The screen was not found."],"errors":{}}' description: Returned if the screen is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Delete screen tags: - Screens x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:screen:jira state: Beta x-experimental: true put: deprecated: false description: |- Updates a screen. Only screens used in classic projects can be updated. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateScreen parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer requestBody: content: application/json: example: description: Enables changes to resolution and linked issues for accessibility related issues. name: Resolve Accessibility Issue Screen schema: $ref: "#/components/schemas/UpdateScreenDetails" required: true responses: "200": content: application/json: example: '{"id":10005,"name":"Resolve Security Issue Screen","description":"Enables changes to resolution and linked issues."}' schema: $ref: "#/components/schemas/Screen" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The name is used by another screen."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can manage screens."],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["The screen was not found."],"errors":{}}' description: Returned if the screen is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Update screen tags: - Screens x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:project:jira - read:screen:jira - write:screen:jira - read:avatar:jira - read:project-category:jira state: Beta x-experimental: true "/rest/api/3/screens/{screenId}/availableFields": get: deprecated: false description: |- Returns the fields that can be added to a tab on a screen. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAvailableScreenFields parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer responses: "200": content: application/json: schema: items: $ref: "#/components/schemas/ScreenableField" type: array 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. "404": description: Returned if the screen is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Get available screen fields tags: - Screens x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:screen-field:jira - read:screenable-field:jira state: Beta "/rest/api/3/screens/{screenId}/tabs": get: deprecated: false description: |- Returns the list of tabs for a screen. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). * *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) when the project key is specified, providing that the screen is associated with the project through a Screen Scheme and Issue Type Screen Scheme. operationId: getAllScreenTabs parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer - description: The key of the project. in: query name: projectKey schema: type: string responses: "200": content: application/json: schema: items: $ref: "#/components/schemas/ScreenableTab" type: array description: Returned if the request is successful. "400": description: Returned if the screen ID is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the screen is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Get all screen tabs tags: - Screen tabs x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:screen-tab:jira state: Beta post: deprecated: false description: |- Creates a tab for a screen. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addScreenTab parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer requestBody: content: application/json: example: name: Fields Tab schema: $ref: "#/components/schemas/ScreenableTab" required: true responses: "200": content: application/json: example: '{"id":10000,"name":"Fields Tab"}' schema: $ref: "#/components/schemas/ScreenableTab" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the screen is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Create screen tab tags: - Screen tabs x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:screen-tab:jira - write:screen-tab:jira state: Beta "/rest/api/3/screens/{screenId}/tabs/{tabId}": delete: deprecated: false description: |- Deletes a screen tab. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteScreenTab parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer - description: The ID of the screen tab. in: path name: tabId required: true schema: format: int64 type: integer responses: "204": 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. "404": description: Returned if the screen or screen tab is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Delete screen tab tags: - Screen tabs x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:screen-tab:jira state: Beta put: deprecated: false description: |- Updates the name of a screen tab. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: renameScreenTab parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer - description: The ID of the screen tab. in: path name: tabId required: true schema: format: int64 type: integer requestBody: content: application/json: schema: $ref: "#/components/schemas/ScreenableTab" required: true responses: "200": content: application/json: example: '{"id":10000,"name":"Fields Tab"}' schema: $ref: "#/components/schemas/ScreenableTab" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the screen or screen tab is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Update screen tab tags: - Screen tabs x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:screen-tab:jira - write:screen-tab:jira state: Beta "/rest/api/3/screens/{screenId}/tabs/{tabId}/fields": get: deprecated: false description: |- Returns all fields for a screen tab. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). * *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) when the project key is specified, providing that the screen is associated with the project through a Screen Scheme and Issue Type Screen Scheme. operationId: getAllScreenTabFields parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer - description: The ID of the screen tab. in: path name: tabId required: true schema: format: int64 type: integer - description: The key of the project. in: query name: projectKey schema: type: string responses: "200": content: application/json: schema: items: $ref: "#/components/schemas/ScreenableField" type: array 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. "404": description: Returned if the screen or screen tab is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Get all screen tab fields tags: - Screen tab fields x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:screenable-field:jira state: Beta post: deprecated: false description: |- Adds a field to a screen tab. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: addScreenTabField parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer - description: The ID of the screen tab. in: path name: tabId required: true schema: format: int64 type: integer requestBody: content: application/json: example: fieldId: summary schema: $ref: "#/components/schemas/AddFieldBean" required: true responses: "200": content: application/json: example: '{"id":"summary","name":"Summary"}' schema: $ref: "#/components/schemas/ScreenableField" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the screen, screen tab, or field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Add screen tab field tags: - Screen tab fields x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:screenable-field:jira - write:screenable-field:jira state: Beta "/rest/api/3/screens/{screenId}/tabs/{tabId}/fields/{id}": delete: deprecated: false description: |- Removes a field from a screen tab. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: removeScreenTabField parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer - description: The ID of the screen tab. in: path name: tabId required: true schema: format: int64 type: integer - description: The ID of the field. in: path name: id required: true schema: type: string responses: "204": description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the screen, screen tab, or field is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Remove screen tab field tags: - Screen tab fields x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:screenable-field:jira state: Beta "/rest/api/3/screens/{screenId}/tabs/{tabId}/fields/{id}/move": post: deprecated: false description: |- Moves a screen tab field. If `after` and `position` are provided in the request, `position` is ignored. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: moveScreenTabField parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer - description: The ID of the screen tab. in: path name: tabId required: true schema: format: int64 type: integer - description: The ID of the field. in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/MoveFieldBean" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the screen, screen tab, or field is not found or the field can't be moved to the requested position. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Move screen tab field tags: - Screen tab fields x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:screenable-field:jira state: Beta "/rest/api/3/screens/{screenId}/tabs/{tabId}/move/{pos}": post: deprecated: false description: |- Moves a screen tab. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: moveScreenTab parameters: - description: The ID of the screen. in: path name: screenId required: true schema: format: int64 type: integer - description: The ID of the screen tab. in: path name: tabId required: true schema: format: int64 type: integer - description: The position of tab. The base index is 0. in: path name: pos required: true schema: format: int32 type: integer responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the screen or screen tab is not found or the position is invalid. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Move screen tab tags: - Screen tabs x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:screen:jira state: Beta /rest/api/3/screenscheme: get: deprecated: false description: |- Returns a [paginated](#pagination) list of screen schemes. Only screen schemes used in classic projects are returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getScreenSchemes 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: 25 format: int32 type: integer - description: The list of screen scheme IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`. in: query name: id schema: items: format: int64 type: integer type: array uniqueItems: true - description: Use [expand](#expansion) include additional information in the response. This parameter accepts `issueTypeScreenSchemes` that, for each screen schemes, returns information about the issue type screen scheme the screen scheme is assigned to. in: query name: expand schema: default: "" type: string - description: String used to perform a case-insensitive partial match with screen scheme name. in: query name: queryString schema: default: "" type: string - description: |- [Order](#ordering) the results by a field: * `id` Sorts by screen scheme ID. * `name` Sorts by screen scheme name. in: query name: orderBy schema: enum: - name - -name - +name - id - -id - +id type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/screenscheme?maxResults=25&startAt=0","maxResults":100,"startAt":0,"total":2,"isLast":true,"values":[{"id":10010,"name":"Employee screen scheme","description":"Manage employee data","screens":{"default":10017,"edit":10019,"create":10019,"view":10020},"issueTypeScreenSchemes":{"maxResults":100,"startAt":0,"total":1,"isLast":true,"values":[{"id":"10000","name":"Office issue type screen scheme","description":"Managing office projects"}]}},{"id":10032,"name":"Office screen scheme","description":"Manage office data","screens":{"default":10020}}]}' schema: $ref: "#/components/schemas/PageBeanScreenScheme" 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-project summary: Get screen schemes tags: - Screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:screen-scheme:jira - read:issue-type-screen-scheme:jira state: Beta post: deprecated: false description: |- Creates a screen scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createScreenScheme parameters: [] requestBody: content: application/json: example: description: Manage employee data name: Employee screen scheme screens: default: 10017 edit: 10019 view: 10020 schema: $ref: "#/components/schemas/ScreenSchemeDetails" required: true responses: "201": content: application/json: example: '{"id":10001}' schema: $ref: "#/components/schemas/ScreenSchemeId" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The name is used by another scheme."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access screen schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["One or more screens assigned to screen types was not found."],"errors":{}}' description: Returned if a screen used as one of the screen types in the screen scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create screen scheme tags: - Screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:screen-scheme:jira state: Beta x-experimental: true "/rest/api/3/screenscheme/{screenSchemeId}": delete: deprecated: false description: |- Deletes a screen scheme. A screen scheme cannot be deleted if it is used in an issue type screen scheme. Only screens schemes used in classic projects can be deleted. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteScreenScheme parameters: - description: The ID of the screen scheme. in: path name: screenSchemeId required: true schema: type: string responses: "204": description: Returned if the screen scheme is deleted. "400": content: application/json: example: '{"errorMessages":["The screen scheme cannot be deleted as it is in use in an issue type screen scheme."],"errors":{}}' description: Returned if the screen scheme is used in an issue type screen scheme. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access screen schemes."],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["The screen scheme was not found."],"errors":{}}' description: Returned if the screen scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Delete screen scheme tags: - Screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:screen-scheme:jira state: Beta x-experimental: true put: deprecated: false description: |- Updates a screen scheme. Only screen schemes used in classic projects can be updated. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateScreenScheme parameters: - description: The ID of the screen scheme. in: path name: screenSchemeId required: true schema: type: string requestBody: content: application/json: example: name: Employee screen scheme v2 screens: create: "10019" default: "10018" schema: $ref: "#/components/schemas/UpdateScreenSchemeDetails" description: The screen scheme update details. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The name is used by another scheme."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access screen schemes."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The screen scheme was not found."],"errors":{}}' description: Returned if the screen scheme or a screen used as one of the screen types is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update screen scheme tags: - Screen schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:screen-scheme:jira state: Beta x-experimental: true /rest/api/3/search: get: deprecated: false description: |- Searches for issues using [JQL](https://confluence.atlassian.com/x/egORLQ). If the JQL query expression is too large to be encoded as a query parameter, use the [POST](#api-rest-api-3-search-post) version of this resource. This operation can be accessed anonymously. **[Permissions](#permissions) required:** Issues are included in the response where the user has: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: searchForIssuesUsingJql parameters: - description: |- The [JQL](https://confluence.atlassian.com/x/egORLQ) that defines the search. Note: * If no JQL expression is provided, all issues are returned. * `username` and `userkey` cannot be used as search terms due to privacy reasons. Use `accountId` instead. * If a user has hidden their email address in their user profile, partial matches of the email address will not find the user. An exact match is required. in: query name: jql schema: example: project = HSP type: string x-showInExample: "true" - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return per page. To manage page size, Jira may return fewer items per page where a large number of fields are requested. The greatest number of items returned per page is achieved when requesting `id` or `key` only. in: query name: maxResults schema: default: 50 format: int32 type: integer - description: |- Determines how to validate the JQL query and treat the validation results. Supported values are: * `strict` Returns a 400 response code if any errors are found, along with a list of all errors (and warnings). * `warn` Returns all errors as warnings. * `none` No validation is performed. * `true` *Deprecated* A legacy synonym for `strict`. * `false` *Deprecated* A legacy synonym for `warn`. Note: If the JQL is not correctly formed a 400 response code is returned, regardless of the `validateQuery` value. in: query name: validateQuery schema: default: strict enum: - strict - warn - none - "true" - "false" type: string - description: |- A list of fields to return for each issue, use it to retrieve a subset of fields. This parameter accepts a comma-separated list. Expand options include: * `*all` Returns all fields. * `*navigable` Returns navigable fields. * Any issue field, prefixed with a minus to exclude. Examples: * `summary,comment` Returns only the summary and comments fields. * `-description` Returns all navigable (default) fields except description. * `*all,-comment` Returns all fields except comments. This parameter may be specified multiple times. For example, `fields=field1,field2&fields=field3`. Note: All navigable fields are returned by default. This differs from [GET issue](#api-rest-api-3-issue-issueIdOrKey-get) where the default is all fields. in: query name: fields schema: items: default: "*navigable" type: string type: array - description: |- Use [expand](#expansion) to include additional information about issues in the response. This parameter accepts a comma-separated list. Expand options include: * `renderedFields` Returns field values rendered in HTML format. * `names` Returns the display name of each field. * `schema` Returns the schema describing a field type. * `transitions` Returns all possible transitions for the issue. * `operations` Returns all possible operations for the issue. * `editmeta` Returns information about how each field can be edited. * `changelog` Returns a list of recent updates to an issue, sorted by date, starting from the most recent. * `versionedRepresentations` Instead of `fields`, returns `versionedRepresentations` a JSON array containing each version of a field's value, with the highest numbered item representing the most recent version. in: query name: expand schema: type: string - description: A list of issue property keys for issue properties to include in the results. This parameter accepts a comma-separated list. Multiple properties can also be provided using an ampersand separated list. For example, `properties=prop1,prop2&properties=prop3`. A maximum of 5 issue property keys can be specified. in: query name: properties schema: items: type: string type: array - description: Reference fields by their key (rather than ID). in: query name: fieldsByKeys schema: default: false type: boolean responses: "200": content: application/json: example: "{\"expand\":\"names,schema\",\"startAt\":0,\"maxResults\":50,\"total\":1,\"issues\":[{\"expand\":\"\",\"id\":\"10002\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/10002\",\"key\":\"ED-1\",\"fields\":{\"watcher\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/EX-1/watchers\",\"isWatching\":false,\"watchCount\":1,\"watchers\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false}]},\"attachment\":[{\"id\":10000,\"self\":\"https://your-domain.atlassian.net/rest/api/3/attachments/10000\",\"filename\":\"picture.jpg\",\"author\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"key\":\"\",\"accountId\":\"5b10a2844c20165700ede21g\",\"accountType\":\"atlassian\",\"name\":\"\",\"avatarUrls\":{\"48x48\":\"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48\",\"24x24\":\"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24\",\"16x16\":\"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16\",\"32x32\":\"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32\"},\"displayName\":\"Mia Krystof\",\"active\":false},\"created\":\"2023-04-21T12:39:27.600+0000\",\"size\":23123,\"mimeType\":\"image/jpeg\",\"content\":\"https://your-domain.atlassian.net/jira/rest/api/3/attachment/content/10000\",\"thumbnail\":\"https://your-domain.atlassian.net/jira/rest/api/3/attachment/thumbnail/10000\"}],\"sub-tasks\":[{\"id\":\"10000\",\"type\":{\"id\":\"10000\",\"name\":\"\",\"inward\":\"Parent\",\"outward\":\"Sub-task\"},\"outwardIssue\":{\"id\":\"10003\",\"key\":\"ED-2\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/ED-2\",\"fields\":{\"status\":{\"iconUrl\":\"https://your-domain.atlassian.net/images/icons/statuses/open.png\",\"name\":\"Open\"}}}}],\"description\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Main order flow broken\"}]}]},\"project\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/project/EX\",\"id\":\"10000\",\"key\":\"EX\",\"name\":\"Example\",\"avatarUrls\":{\"48x48\":\"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000\",\"24x24\":\"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000\",\"16x16\":\"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000\",\"32x32\":\"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000\"},\"projectCategory\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000\",\"id\":\"10000\",\"name\":\"FIRST\",\"description\":\"First Project Category\"},\"simplified\":false,\"style\":\"classic\",\"insight\":{\"totalIssueCount\":100,\"lastIssueUpdateTime\":\"2023-04-21T12:39:27.599+0000\"}},\"comment\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/10010/comment/10000\",\"id\":\"10000\",\"author\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper.\"}]}]},\"updateAuthor\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false},\"created\":\"2021-01-17T12:34:00.000+0000\",\"updated\":\"2021-01-18T23:45:00.000+0000\",\"visibility\":{\"type\":\"role\",\"value\":\"Administrators\",\"identifier\":\"Administrators\"}}],\"issuelinks\":[{\"id\":\"10001\",\"type\":{\"id\":\"10000\",\"name\":\"Dependent\",\"inward\":\"depends on\",\"outward\":\"is depended by\"},\"outwardIssue\":{\"id\":\"10004L\",\"key\":\"PR-2\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/PR-2\",\"fields\":{\"status\":{\"iconUrl\":\"https://your-domain.atlassian.net/images/icons/statuses/open.png\",\"name\":\"Open\"}}}},{\"id\":\"10002\",\"type\":{\"id\":\"10000\",\"name\":\"Dependent\",\"inward\":\"depends on\",\"outward\":\"is depended by\"},\"inwardIssue\":{\"id\":\"10004\",\"key\":\"PR-3\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/PR-3\",\"fields\":{\"status\":{\"iconUrl\":\"https://your-domain.atlassian.net/images/icons/statuses/open.png\",\"name\":\"Open\"}}}}],\"worklog\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/10010/worklog/10000\",\"author\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false},\"updateAuthor\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false},\"comment\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"I did some work here.\"}]}]},\"updated\":\"2021-01-18T23:45:00.000+0000\",\"visibility\":{\"type\":\"group\",\"value\":\"jira-developers\",\"identifier\":\"276f955c-63d7-42c8-9520-92d01dca0625\"},\"started\":\"2021-01-17T12:34:00.000+0000\",\"timeSpent\":\"3h 20m\",\"timeSpentSeconds\":12000,\"id\":\"100028\",\"issueId\":\"10002\"}],\"updated\":1,\"timetracking\":{\"originalEstimate\":\"10m\",\"remainingEstimate\":\"3m\",\"timeSpent\":\"6m\",\"originalEstimateSeconds\":600,\"remainingEstimateSeconds\":200,\"timeSpentSeconds\":400}}}],\"warningMessages\":[\"The value 'bar' does not exist for the field 'foo'.\"]}" schema: $ref: "#/components/schemas/SearchResults" description: Returned if the request is successful. "400": description: Returned if the JQL query is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Search for issues using JQL (GET) tags: - Issue search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-details:jira - read:audit-log:jira - read:avatar:jira - read:field-configuration:jira - read:issue-meta:jira state: Beta post: deprecated: false description: |- Searches for issues using [JQL](https://confluence.atlassian.com/x/egORLQ). There is a [GET](#api-rest-api-3-search-get) version of this resource that can be used for smaller JQL query expressions. This operation can be accessed anonymously. **[Permissions](#permissions) required:** Issues are included in the response where the user has: * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue. * If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue. operationId: searchForIssuesUsingJqlPost parameters: [] requestBody: content: application/json: example: expand: - names - schema - operations fields: - summary - status - assignee fieldsByKeys: false jql: project = HSP maxResults: 15 startAt: 0 schema: $ref: "#/components/schemas/SearchRequestBean" description: A JSON object containing the search request. required: true responses: "200": content: application/json: example: "{\"expand\":\"names,schema\",\"startAt\":0,\"maxResults\":50,\"total\":1,\"issues\":[{\"expand\":\"\",\"id\":\"10002\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/10002\",\"key\":\"ED-1\",\"fields\":{\"watcher\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/EX-1/watchers\",\"isWatching\":false,\"watchCount\":1,\"watchers\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false}]},\"attachment\":[{\"id\":10000,\"self\":\"https://your-domain.atlassian.net/rest/api/3/attachments/10000\",\"filename\":\"picture.jpg\",\"author\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"key\":\"\",\"accountId\":\"5b10a2844c20165700ede21g\",\"accountType\":\"atlassian\",\"name\":\"\",\"avatarUrls\":{\"48x48\":\"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48\",\"24x24\":\"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24\",\"16x16\":\"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16\",\"32x32\":\"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32\"},\"displayName\":\"Mia Krystof\",\"active\":false},\"created\":\"2023-04-21T12:39:27.600+0000\",\"size\":23123,\"mimeType\":\"image/jpeg\",\"content\":\"https://your-domain.atlassian.net/jira/rest/api/3/attachment/content/10000\",\"thumbnail\":\"https://your-domain.atlassian.net/jira/rest/api/3/attachment/thumbnail/10000\"}],\"sub-tasks\":[{\"id\":\"10000\",\"type\":{\"id\":\"10000\",\"name\":\"\",\"inward\":\"Parent\",\"outward\":\"Sub-task\"},\"outwardIssue\":{\"id\":\"10003\",\"key\":\"ED-2\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/ED-2\",\"fields\":{\"status\":{\"iconUrl\":\"https://your-domain.atlassian.net/images/icons/statuses/open.png\",\"name\":\"Open\"}}}}],\"description\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Main order flow broken\"}]}]},\"project\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/project/EX\",\"id\":\"10000\",\"key\":\"EX\",\"name\":\"Example\",\"avatarUrls\":{\"48x48\":\"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000\",\"24x24\":\"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000\",\"16x16\":\"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000\",\"32x32\":\"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000\"},\"projectCategory\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000\",\"id\":\"10000\",\"name\":\"FIRST\",\"description\":\"First Project Category\"},\"simplified\":false,\"style\":\"classic\",\"insight\":{\"totalIssueCount\":100,\"lastIssueUpdateTime\":\"2023-04-21T12:39:27.599+0000\"}},\"comment\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/10010/comment/10000\",\"id\":\"10000\",\"author\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false},\"body\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper.\"}]}]},\"updateAuthor\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false},\"created\":\"2021-01-17T12:34:00.000+0000\",\"updated\":\"2021-01-18T23:45:00.000+0000\",\"visibility\":{\"type\":\"role\",\"value\":\"Administrators\",\"identifier\":\"Administrators\"}}],\"issuelinks\":[{\"id\":\"10001\",\"type\":{\"id\":\"10000\",\"name\":\"Dependent\",\"inward\":\"depends on\",\"outward\":\"is depended by\"},\"outwardIssue\":{\"id\":\"10004L\",\"key\":\"PR-2\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/PR-2\",\"fields\":{\"status\":{\"iconUrl\":\"https://your-domain.atlassian.net/images/icons/statuses/open.png\",\"name\":\"Open\"}}}},{\"id\":\"10002\",\"type\":{\"id\":\"10000\",\"name\":\"Dependent\",\"inward\":\"depends on\",\"outward\":\"is depended by\"},\"inwardIssue\":{\"id\":\"10004\",\"key\":\"PR-3\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/PR-3\",\"fields\":{\"status\":{\"iconUrl\":\"https://your-domain.atlassian.net/images/icons/statuses/open.png\",\"name\":\"Open\"}}}}],\"worklog\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/10010/worklog/10000\",\"author\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false},\"updateAuthor\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"displayName\":\"Mia Krystof\",\"active\":false},\"comment\":{\"type\":\"doc\",\"version\":1,\"content\":[{\"type\":\"paragraph\",\"content\":[{\"type\":\"text\",\"text\":\"I did some work here.\"}]}]},\"updated\":\"2021-01-18T23:45:00.000+0000\",\"visibility\":{\"type\":\"group\",\"value\":\"jira-developers\",\"identifier\":\"276f955c-63d7-42c8-9520-92d01dca0625\"},\"started\":\"2021-01-17T12:34:00.000+0000\",\"timeSpent\":\"3h 20m\",\"timeSpentSeconds\":12000,\"id\":\"100028\",\"issueId\":\"10002\"}],\"updated\":1,\"timetracking\":{\"originalEstimate\":\"10m\",\"remainingEstimate\":\"3m\",\"timeSpent\":\"6m\",\"originalEstimateSeconds\":600,\"remainingEstimateSeconds\":200,\"timeSpentSeconds\":400}}}],\"warningMessages\":[\"The value 'bar' does not exist for the field 'foo'.\"]}" schema: $ref: "#/components/schemas/SearchResults" description: Returned if the request is successful. "400": description: Returned if the JQL query is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Search for issues using JQL (POST) tags: - Issue search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-details:jira - read:field.default-value:jira - read:field.option:jira - read:field:jira - read:group:jira state: Beta "/rest/api/3/securitylevel/{id}": get: deprecated: false description: |- Returns details of an issue security level. Use [Get issue security scheme](#api-rest-api-3-issuesecurityschemes-id-get) to obtain the IDs of issue security levels associated with the issue security scheme. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getIssueSecurityLevel parameters: - description: The ID of the issue security level. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/securitylevel/10021","id":"10021","description":"Only the reporter and internal staff can see this issue.","name":"Reporter Only"}' schema: $ref: "#/components/schemas/SecurityLevel" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. "404": description: Returned if the issue security level is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Get issue security level tags: - Issue security level x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:field:jira - read:issue-security-level:jira - read:project-role:jira - read:user:jira state: Beta /rest/api/3/serverInfo: get: deprecated: false description: |- Returns information about the Jira instance. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getServerInfo parameters: [] responses: "200": content: application/json: example: '{"baseUrl":"https://your-domain.atlassian.net/jira","version":"1001.0.0-SNAPSHOT","versionNumbers":[5,0,0],"buildNumber":582,"buildDate":"2023-04-21T12:39:34.114+0000","serverTime":"2023-04-21T12:39:34.114+0000","scmInfo":"1f51473f5c7b75c1a69a0090f4832cdc5053702a","serverTitle":"My Jira instance","defaultLocale":{"locale":"en_AU"}}' schema: $ref: "#/components/schemas/ServerInformation" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. security: - basicAuth: [] - OAuth2: [] - {} summary: Get Jira instance info tags: - Server info x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: [] state: Beta /rest/api/3/settings/columns: get: deprecated: false description: |- Returns the default issue navigator columns. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getIssueNavigatorDefaultColumns parameters: [] responses: "200": content: application/json: example: '[{"label":"Key","value":"issuekey"},{"label":"Summary","value":"summary"}]' schema: items: $ref: "#/components/schemas/ColumnItem" type: array 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: [] summary: Get issue navigator default columns tags: - Issue navigator settings x-atlassian-connect-scope: INACCESSIBLE put: deprecated: false description: |- Sets the default issue navigator columns. The `columns` parameter accepts a navigable field value and is expressed as HTML form data. To specify multiple columns, pass multiple `columns` parameters. For example, in curl: `curl -X PUT -d columns=summary -d columns=description https://your-domain.atlassian.net/rest/api/3/settings/columns` If no column details are sent, then all default columns are removed. A navigable field is one that can be used as a column on the issue navigator. Find details of navigable issue columns using [Get fields](#api-rest-api-3-field-get). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setIssueNavigatorDefaultColumns parameters: [] requestBody: content: "*/*": schema: items: type: string type: array multipart/form-data: schema: items: type: string type: array description: A navigable field value. responses: "200": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if invalid parameters are passed. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if a navigable field value is not found. security: - basicAuth: [] summary: Set issue navigator default columns tags: - Issue navigator settings x-atlassian-connect-scope: INACCESSIBLE /rest/api/3/status: get: deprecated: false description: |- Returns a list of all statuses associated with active workflows. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getStatuses parameters: [] responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/status/10000","description":"The issue is currently being worked on.","iconUrl":"https://your-domain.atlassian.net/images/icons/progress.gif","name":"In Progress","id":"10000","statusCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/1","id":1,"key":"in-flight","colorName":"yellow","name":"In Progress"}},{"self":"https://your-domain.atlassian.net/rest/api/3/status/5","description":"The issue is closed.","iconUrl":"https://your-domain.atlassian.net/images/icons/closed.gif","name":"Closed","id":"5","statusCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/9","id":9,"key":"completed","colorName":"green"}}]' schema: items: $ref: "#/components/schemas/StatusDetails" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get all statuses tags: - Workflow statuses x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:status:jira state: Beta "/rest/api/3/status/{idOrName}": get: deprecated: false description: |- Returns a status. The status must be associated with an active workflow to be returned. If a name is used on more than one status, only the status found first is returned. Therefore, identifying the status by its ID may be preferable. This operation can be accessed anonymously. [Permissions](#permissions) required: None. operationId: getStatus parameters: - description: The ID or name of the status. in: path name: idOrName required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/status/10000","description":"The issue is currently being worked on.","iconUrl":"https://your-domain.atlassian.net/images/icons/progress.gif","name":"In Progress","id":"10000","statusCategory":{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/1","id":1,"key":"in-flight","colorName":"yellow","name":"In Progress"}}' schema: $ref: "#/components/schemas/StatusDetails" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the status is not found. * the status is not associated with a workflow. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get status tags: - Workflow statuses x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:status:jira state: Beta /rest/api/3/statuscategory: get: deprecated: false description: |- Returns a list of all status categories. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getStatusCategories parameters: [] responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/1","id":1,"key":"in-flight","colorName":"yellow","name":"In Progress"},{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/9","id":9,"key":"completed","colorName":"green"}]' schema: items: $ref: "#/components/schemas/StatusCategory" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get all status categories tags: - Workflow status categories x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:status:jira state: Beta "/rest/api/3/statuscategory/{idOrKey}": get: deprecated: false description: |- Returns a status category. Status categories provided a mechanism for categorizing [statuses](#api-rest-api-3-status-idOrName-get). **[Permissions](#permissions) required:** Permission to access Jira. operationId: getStatusCategory parameters: - description: The ID or key of the status category. in: path name: idOrKey required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/1","id":1,"key":"in-flight","colorName":"yellow","name":"In Progress"}' schema: $ref: "#/components/schemas/StatusCategory" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the status category is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get status category tags: - Workflow status categories x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:status:jira state: Beta /rest/api/3/statuses: delete: deprecated: false description: |- Deletes statuses by ID. **[Permissions](#permissions) required:** * *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg) * *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg) operationId: deleteStatusesById parameters: - description: |- The list of status IDs. To include multiple IDs, provide an ampersand-separated list. For example, id=10000&id=10001. Min items `1`, Max items `50` in: query name: id schema: items: type: string type: array responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The name is too long, maxSize=255"],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing, or the caller doesn't have permissions to perform the operation. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Bulk delete Statuses tags: - Status x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow:jira state: Beta x-experimental: true get: deprecated: false description: |- Returns a list of the statuses specified by one or more status IDs. **[Permissions](#permissions) required:** * *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg) * *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg) operationId: getStatusesById parameters: - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `usages` Returns the project and issue types that use the status in their workflow. in: query name: expand schema: type: string - description: |- The list of status IDs. To include multiple IDs, provide an ampersand-separated list. For example, id=10000&id=10001. Min items `1`, Max items `50` in: query name: id schema: items: type: string type: array responses: "200": content: application/json: example: '[{"id":"1000","name":"Finished","statusCategory":"DONE","scope":{"type":"PROJECT","project":{"id":"1"}},"description":"The issue is resolved","usages":[{"project":{"id":"1"},"issueTypes":["10002"]}]}]' schema: items: $ref: "#/components/schemas/JiraStatus" type: array 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, or the caller doesn't have permissions to perform the operation. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Bulk get statuses tags: - Status x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow:jira state: Beta x-experimental: true post: deprecated: false description: |- Creates statuses for a global or project scope. **[Permissions](#permissions) required:** * *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg) * *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg) operationId: createStatuses parameters: [] requestBody: content: application/json: example: scope: project: id: "1" type: PROJECT statuses: - description: The issue is resolved name: Finished statusCategory: DONE schema: $ref: "#/components/schemas/StatusCreateRequest" description: Details of the statuses being created and their scope. required: true responses: "200": content: application/json: example: '[{"id":"1000","name":"Finished","statusCategory":"DONE","scope":{"type":"PROJECT","project":{"id":"1"}},"description":"The issue is resolved","usages":[]}]' schema: items: $ref: "#/components/schemas/JiraStatus" type: array description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The name is too long, maxSize=255"],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing, or the caller doesn't have permissions to perform the operation. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Bulk create statuses tags: - Status x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow:jira state: Beta x-experimental: true put: deprecated: false description: |- Updates statuses by ID. **[Permissions](#permissions) required:** * *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg) * *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg) operationId: updateStatuses parameters: [] requestBody: content: application/json: example: statuses: - description: The issue is resolved id: "1000" name: Finished statusCategory: DONE schema: $ref: "#/components/schemas/StatusUpdateRequest" description: The list of statuses that will be updated. required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["The name is too long, maxSize=255"],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing, or the caller doesn't have permissions to perform the operation. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Bulk update statuses tags: - Status x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow:jira state: Beta x-experimental: true /rest/api/3/statuses/search: get: deprecated: false description: |- Returns a [paginated](https://developer.atlassian.com/cloud/jira/platform/rest/v3/intro/#pagination) list of statuses that match a search on name or project. **[Permissions](#permissions) required:** * *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg) * *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg) operationId: search parameters: - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `usages` Returns the project and issue types that use the status in their workflow. in: query name: expand schema: type: string - description: The project the status is part of or null for global statuses. in: query name: projectId schema: type: string - 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: 200 format: int32 type: integer - description: Term to match status names against or null to search for all statuses in the search scope. in: query name: searchString schema: maxLength: 255 type: string - description: "Category of the status to filter by. The supported values are: `TODO`, `IN_PROGRESS`, and `DONE`." in: query name: statusCategory schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/statuses/search?startAt=0&maxResults=2","nextPage":"https://your-domain.atlassian.net/rest/api/3/statuses/search?startAt=2&maxResults=2","maxResults":2,"startAt":0,"total":5,"isLast":true,"values":[{"id":"1000","name":"Finished","statusCategory":"DONE","scope":{"type":"PROJECT","project":{"id":"1"}},"description":"The issue is resolved","usages":[{"project":{"id":"1"},"issueTypes":["10002"]}]}]}' schema: $ref: "#/components/schemas/PageOfStatuses" 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, or the caller doesn't have permissions to perform the operation. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Search statuses paginated tags: - Status x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow:jira state: Beta x-experimental: true "/rest/api/3/task/{taskId}": get: deprecated: false description: |- Returns the status of a [long-running asynchronous task](#async). When a task has finished, this operation returns the JSON blob applicable to the task. See the documentation of the operation that created the task for details. Task details are not permanently retained. As of September 2019, details are retained for 14 days although this period may change without notice. **[Permissions](#permissions) required:** either of: * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). * Creator of the task. operationId: getTask parameters: - description: The ID of the task. in: path name: taskId required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/task/1","id":"1","description":"Task description","status":"COMPLETE","result":"the task result, this may be any JSON","submittedBy":10000,"progress":100,"elapsedRuntime":156,"submitted":1682080770166,"started":1682080770284,"finished":1682080770384,"lastUpdate":1682080770384}' schema: $ref: "#/components/schemas/TaskProgressBeanObject" 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. "404": description: Returned if the task is not found. security: - basicAuth: [] - OAuth2: [] summary: Get task tags: - Tasks x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: [] state: Beta "/rest/api/3/task/{taskId}/cancel": post: deprecated: false description: |- Cancels a task. **[Permissions](#permissions) required:** either of: * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). * Creator of the task. operationId: cancelTask parameters: - description: The ID of the task. in: path name: taskId required: true schema: type: string responses: "202": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: schema: items: type: string type: array description: Returned if cancellation of the task is not possible. "401": content: application/json: schema: items: type: string type: array description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: schema: items: type: string type: array description: Returned if the user does not have the necessary permission. "404": content: application/json: schema: items: type: string type: array description: Returned if the task is not found. security: - basicAuth: [] - OAuth2: - write:jira-work summary: Cancel task tags: - Tasks x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:async-task:jira state: Beta x-experimental: true /rest/api/3/uiModifications: get: deprecated: false description: |- Gets UI modifications. UI modifications can only be retrieved by Forge apps. **[Permissions](#permissions) required:** None. operationId: getUiModifications 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: * `data` Returns UI modification data. * `contexts` Returns UI modification contexts. in: query name: expand schema: type: string responses: "200": content: application/json: example: "{\"maxResults\":100,\"startAt\":0,\"total\":3,\"isLast\":true,\"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\":\"GIC\",\"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\":[]}]}" 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: Get UI modifications tags: - UI modifications (apps) x-atlassian-connect-scope: NONE x-experimental: true post: deprecated: false description: |- Creates a UI modification. UI modification can only be created by Forge apps. Each app can define up to 100 UI modifications. Each UI modification can define up to 1000 contexts. **[Permissions](#permissions) required:** * *None* if the UI modification is created without contexts. * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for one or more projects, if the UI modification is created with contexts. operationId: createUiModification parameters: [] requestBody: content: application/json: example: contexts: - issueTypeId: "10000" projectId: "10000" viewType: GIC - issueTypeId: "10001" projectId: "10000" viewType: GIC 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": description: Returned if a project or an issue type in the context are not found. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Create UI modification tags: - UI modifications (apps) x-atlassian-connect-scope: NONE x-experimental: true "/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](#permissions) required:** None. operationId: deleteUiModification 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: Delete UI modification tags: - UI modifications (apps) x-atlassian-connect-scope: NONE x-experimental: true 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. **[Permissions](#permissions) required:** * *None* if the UI modification is created without contexts. * *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for one or more projects, if the UI modification is created with contexts. operationId: updateUiModification 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: GIC 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": 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: Update UI modification tags: - UI modifications (apps) x-atlassian-connect-scope: NONE x-experimental: true "/rest/api/3/universal_avatar/type/{type}/owner/{entityId}": get: deprecated: false description: |- Returns the system and custom avatars for a project or issue type. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * for custom project avatars, *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project the avatar belongs to. * for custom issue type avatars, *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for at least one project the issue type is used in. * for system avatars, none. operationId: getAvatars parameters: - description: The avatar type. in: path name: type required: true schema: enum: - project - issuetype type: string - description: The ID of the item the avatar is associated with. in: path name: entityId required: true schema: type: string responses: "200": content: application/json: example: '{"system":[{"id":"1000","isSystemAvatar":true,"isSelected":false,"isDeletable":false,"urls":{"16x16":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10040&avatarType=project","24x24":"https://your-domain.atlassian.net/secure/viewavatar?size=small&avatarId=10040&avatarType=project","32x32":"https://your-domain.atlassian.net/secure/viewavatar?size=medium&avatarId=10040&avatarType=project","48x48":"https://your-domain.atlassian.net/secure/viewavatar?avatarId=10040&avatarType=project"}}],"custom":[{"id":"1010","isSystemAvatar":false,"isSelected":false,"isDeletable":true,"urls":{"16x16":"https://your-domain.atlassian.net/secure/viewavatar?size=xsmall&avatarId=10080&avatarType=project","24x24":"https://your-domain.atlassian.net/secure/viewavatar?size=small&avatarId=10080&avatarType=project","32x32":"https://your-domain.atlassian.net/secure/viewavatar?size=medium&avatarId=10080&avatarType=project","48x48":"https://your-domain.atlassian.net/secure/viewavatar?avatarId=10080&avatarType=project"}}]}' schema: $ref: "#/components/schemas/Avatars" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the avatar type is invalid, the associated item ID is missing, or the item is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Get avatars tags: - Avatars x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:avatar:jira state: Beta post: deprecated: false description: |- Loads a custom avatar for a project or issue type. Specify the avatar's local file location in the body of the request. Also, include the following headers: * `X-Atlassian-Token: no-check` To prevent XSRF protection blocking the request, for more information see [Special Headers](#special-request-headers). * `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG. For example: `curl --request POST ` `--user email@example.com: ` `--header 'X-Atlassian-Token: no-check' ` `--header 'Content-Type: image/< image_type>' ` `--data-binary "<@/path/to/file/with/your/avatar>" ` `--url 'https://your-domain.atlassian.net/rest/api/3/universal_avatar/type/{type}/owner/{entityId}'` The avatar is cropped to a square. If no crop parameters are specified, the square originates at the top left of the image. The length of the square's sides is set to the smaller of the height or width of the image. The cropped image is then used to create avatars of 16x16, 24x24, 32x32, and 48x48 in size. After creating the avatar use: * [Update issue type](#api-rest-api-3-issuetype-id-put) to set it as the issue type's displayed avatar. * [Set project avatar](#api-rest-api-3-project-projectIdOrKey-avatar-put) to set it as the project's displayed avatar. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: storeAvatar parameters: - description: The avatar type. in: path name: type required: true schema: enum: - project - issuetype type: string - description: The ID of the item the avatar is associated with. in: path name: entityId required: true schema: type: string - description: The X coordinate of the top-left corner of the crop region. in: query name: x schema: default: 0 format: int32 type: integer - description: The Y coordinate of the top-left corner of the crop region. in: query name: y schema: default: 0 format: int32 type: integer - description: The length of each side of the crop region. in: query name: size required: true schema: format: int32 type: integer requestBody: content: "*/*": schema: {} required: true responses: "201": content: application/json: example: '{"id":"1000","isSystemAvatar":true,"isSelected":false,"isDeletable":false,"urls":{"16x16":"/secure/useravatar?size=xsmall&avatarId=10040&avatarType=project","24x24":"/secure/useravatar?size=small&avatarId=10040&avatarType=project","32x32":"/secure/useravatar?size=medium&avatarId=10040&avatarType=project","48x48":"/secure/useravatar?avatarId=10040&avatarType=project"}}' schema: $ref: "#/components/schemas/Avatar" description: Returned if the request is successful. "400": description: |- Returned if: * an image isn't included in the request. * the image type is unsupported. * the crop parameters extend the crop area beyond the edge of the image. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permissions. "404": description: Returned if the avatar type is invalid, the associated item ID is missing, or the item is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Load avatar tags: - Avatars x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:avatar:jira - read:avatar:jira state: Beta "/rest/api/3/universal_avatar/type/{type}/owner/{owningObjectId}/avatar/{id}": delete: deprecated: false description: |- Deletes an avatar from a project or issue type. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteAvatar parameters: - description: The avatar type. in: path name: type required: true schema: enum: - project - issuetype type: string - description: The ID of the item the avatar is associated with. in: path name: owningObjectId required: true schema: type: string - description: The ID of the avatar. in: path name: id required: true schema: format: int64 type: integer responses: "204": description: Returned if the request is successful. "400": description: Returned if the request is invalid. "403": description: Returned if the user does not have permission to delete the avatar, the avatar is not deletable. "404": description: Returned if the avatar type, associated item ID, or avatar ID is invalid. security: - basicAuth: [] - OAuth2: - manage:jira-configuration - {} summary: Delete avatar tags: - Avatars x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:avatar:jira state: Beta "/rest/api/3/universal_avatar/view/type/{type}": get: deprecated: false description: |- Returns the default project or issue type avatar image. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: getAvatarImageByType parameters: - description: The icon type of the avatar. in: path name: type required: true schema: enum: - issuetype - project type: string x-showInExample: "true" - description: The size of the avatar image. If not provided the default size is returned. in: query name: size schema: enum: - xsmall - small - medium - large - xlarge type: string x-showInExample: "true" - description: The format to return the avatar image in. If not provided the original content format is returned. in: query name: format schema: enum: - png - svg type: string x-showInExample: "true" responses: "200": content: "*/*": {} application/json: schema: type: object image/png: {} image/svg+xml: {} description: Returned if the request is successful. "401": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if the authentication credentials are incorrect. "403": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if an avatar is not found or an avatar matching the requested size is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get avatar image by type tags: - Avatars x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:avatar:jira state: Beta x-experimental: true "/rest/api/3/universal_avatar/view/type/{type}/avatar/{id}": get: deprecated: false description: |- Returns a project or issue type avatar image by ID. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * For system avatars, none. * For custom project avatars, *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project the avatar belongs to. * For custom issue type avatars, *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for at least one project the issue type is used in. operationId: getAvatarImageByID parameters: - description: The icon type of the avatar. in: path name: type required: true schema: enum: - issuetype - project type: string x-showInExample: "true" - description: The ID of the avatar. in: path name: id required: true schema: format: int64 type: integer x-showInExample: "true" - description: The size of the avatar image. If not provided the default size is returned. in: query name: size schema: enum: - xsmall - small - medium - large - xlarge type: string x-showInExample: "true" - description: The format to return the avatar image in. If not provided the original content format is returned. in: query name: format schema: enum: - png - svg type: string x-showInExample: "true" responses: "200": content: "*/*": {} application/json: schema: type: object image/png: {} image/svg+xml: {} description: Returned if the request is successful. "400": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if the request is not valid. "401": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if the authentication credentials are incorrect. "403": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if an avatar is not found or an avatar matching the requested size is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get avatar image by ID tags: - Avatars x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:avatar:jira state: Beta x-experimental: true "/rest/api/3/universal_avatar/view/type/{type}/owner/{entityId}": get: deprecated: false description: |- Returns the avatar image for a project or issue type. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * For system avatars, none. * For custom project avatars, *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project the avatar belongs to. * For custom issue type avatars, *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for at least one project the issue type is used in. operationId: getAvatarImageByOwner parameters: - description: The icon type of the avatar. in: path name: type required: true schema: enum: - issuetype - project type: string x-showInExample: "true" - description: The ID of the project or issue type the avatar belongs to. in: path name: entityId required: true schema: type: string x-showInExample: "true" - description: The size of the avatar image. If not provided the default size is returned. in: query name: size schema: enum: - xsmall - small - medium - large - xlarge type: string x-showInExample: "true" - description: The format to return the avatar image in. If not provided the original content format is returned. in: query name: format schema: enum: - png - svg type: string x-showInExample: "true" responses: "200": content: "*/*": {} application/json: schema: type: object image/png: {} image/svg+xml: {} description: Returned if the request is successful. "400": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if the request is not valid. "401": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if the authentication credentials are incorrect. "403": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if the user does not have the necessary permission. "404": content: "*/*": example: '{"errorMessages":["Human readable error message"],"errors":{}}' application/json: schema: $ref: "#/components/schemas/ErrorCollection" image/png: example: '{"errorMessages":["Human readable error message"],"errors":{}}' image/svg+xml: example: '{"errorMessages":["Human readable error message"],"errors":{}}' description: Returned if an avatar is not found or an avatar matching the requested size is not found. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get avatar image by owner tags: - Avatars x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:avatar:jira state: Beta x-experimental: true /rest/api/3/user: delete: deprecated: false description: |- Deletes a user. If the operation completes successfully then the user is removed from Jira's user base. This operation does not delete the user's Atlassian account. **[Permissions](#permissions) required:** Site administration (that is, membership of the *site-admin* [group](https://confluence.atlassian.com/x/24xjL)). operationId: removeUser parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId required: true schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: key schema: type: string responses: "204": description: Returned if the request is successful. "400": description: Returned if the user cannot be removed. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the user is not found. security: - basicAuth: [] - {} summary: Delete user tags: - Users x-atlassian-connect-scope: INACCESSIBLE x-experimental: true get: deprecated: false description: |- Returns a user. Privacy controls are applied to the response based on the user's preferences. This could mean, for example, that the user's email address is hidden. See the [Profile visibility overview](https://developer.atlassian.com/cloud/jira/platform/profile-visibility/) for more details. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getUser parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Required. in: query name: accountId schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide) for details. in: query name: username schema: type: string - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide) for details. in: query name: key schema: type: string - description: |- Use [expand](#expansion) to include additional information about users in the response. This parameter accepts a comma-separated list. Expand options include: * `groups` includes all groups and nested groups to which the user belongs. * `applicationRoles` includes details of all the applications to which the user has access. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}}' schema: $ref: "#/components/schemas/User" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the calling user does not have the *Browse users and groups* global permission. "404": description: Returned if the user is not found. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Get user tags: - Users x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:group:jira - read:user:jira - read:avatar:jira state: Beta post: deprecated: false description: |- Creates a user. This resource is retained for legacy compatibility. As soon as a more suitable alternative is available this resource will be deprecated. If the user exists and has access to Jira, the operation returns a 201 status. If the user exists but does not have access to Jira, the operation returns a 400 status. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createUser parameters: [] requestBody: content: application/json: example: emailAddress: mia@atlassian.com schema: $ref: "#/components/schemas/NewUserDetails" description: Details about the user to be created. required: true responses: "201": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}}' schema: $ref: "#/components/schemas/User" description: Returned if the request is successful. "400": description: Returned if the request is invalid or the number of licensed users is exceeded. "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: [] - {} summary: Create user tags: - Users x-atlassian-connect-scope: INACCESSIBLE x-experimental: true /rest/api/3/user/assignable/multiProjectSearch: get: deprecated: false description: |- Returns a list of users who can be assigned issues in one or more projects. The list may be restricted to users whose attributes match a string. This operation takes the users in the range defined by `startAt` and `maxResults`, up to the thousandth user, and then returns only the users from that range that can be assigned issues in the projects. This means the operation usually returns fewer users than specified in `maxResults`. To get all the users who can be assigned issues in the projects, use [Get all users](#api-rest-api-3-users-search-get) and filter the records in your code. Privacy controls are applied to the response based on the users' preferences. This could mean, for example, that the user's email address is hidden. See the [Profile visibility overview](https://developer.atlassian.com/cloud/jira/platform/profile-visibility/) for more details. This operation can be accessed anonymously. **[Permissions](#permissions) required:** None. operationId: findBulkAssignableUsers parameters: - description: A query string that is matched against user attributes, such as `displayName` and `emailAddress`, to find relevant users. The string can match the prefix of the attribute's value. For example, *query=john* matches a user with a `displayName` of *John Smith* and a user with an `emailAddress` of *johnson@example.com*. Required, unless `accountId` is specified. in: query name: query schema: example: query type: string x-showInExample: "true" - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: A query string that is matched exactly against user `accountId`. Required, unless `query` is specified. in: query name: accountId schema: maxLength: 128 type: string - description: A list of project keys (case sensitive). This parameter accepts a comma-separated list. in: query name: projectKeys required: true schema: type: string - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return per page. in: query name: maxResults schema: default: 50 format: int32 type: integer responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10ac8d82e05b22cc7d4ef5","key":"","accountId":"5b10ac8d82e05b22cc7d4ef5","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=32&s=32"},"displayName":"Emma Richards","active":false}]' schema: items: $ref: "#/components/schemas/User" type: array description: Returned if the request is successful. "400": description: |- Returned if: * `projectKeys` is missing. * `query` or `accountId` is missing. * `query` and `accountId` are provided. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if one or more of the projects is not found. "429": description: Returned if the rate limit is exceeded. User search endpoints share a collective rate limit for the tenant, in addition to Jira's normal rate limiting you may receive a rate limit for user search. Please respect the Retry-After header. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Find users assignable to projects tags: - User search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:project:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta /rest/api/3/user/assignable/search: get: deprecated: false description: |- Returns a list of users that can be assigned to an issue. Use this operation to find the list of users who can be assigned to: * a new issue, by providing the `projectKeyOrId`. * an updated issue, by providing the `issueKey`. * to an issue during a transition (workflow action), by providing the `issueKey` and the transition id in `actionDescriptorId`. You can obtain the IDs of an issue's valid transitions using the `transitions` option in the `expand` parameter of [ Get issue](#api-rest-api-3-issue-issueIdOrKey-get). In all these cases, you can pass an account ID to determine if a user can be assigned to an issue. The user is returned in the response if they can be assigned to the issue or issue transition. This operation takes the users in the range defined by `startAt` and `maxResults`, up to the thousandth user, and then returns only the users from that range that can be assigned the issue. This means the operation usually returns fewer users than specified in `maxResults`. To get all the users who can be assigned the issue, use [Get all users](#api-rest-api-3-users-search-get) and filter the records in your code. Privacy controls are applied to the response based on the users' preferences. This could mean, for example, that the user's email address is hidden. See the [Profile visibility overview](https://developer.atlassian.com/cloud/jira/platform/profile-visibility/) for more details. **[Permissions](#permissions) required:** Permission to access Jira. operationId: findAssignableUsers parameters: - description: A query string that is matched against user attributes, such as `displayName`, and `emailAddress`, to find relevant users. The string can match the prefix of the attribute's value. For example, *query=john* matches a user with a `displayName` of *John Smith* and a user with an `emailAddress` of *johnson@example.com*. Required, unless `username` or `accountId` is specified. in: query name: query schema: example: query type: string x-showInExample: "true" - description: The sessionId of this request. SessionId is the same until the assignee is set. in: query name: sessionId schema: type: string - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: A query string that is matched exactly against user `accountId`. Required, unless `query` is specified. in: query name: accountId schema: maxLength: 128 type: string - description: The project ID or project key (case sensitive). Required, unless `issueKey` is specified. in: query name: project schema: type: string - description: The key of the issue. Required, unless `project` is specified. in: query name: issueKey schema: type: string - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return. This operation may return less than the maximum number of items even if more are available. The operation fetches users up to the maximum and then, from the fetched users, returns only the users that can be assigned to the issue. in: query name: maxResults schema: default: 50 format: int32 type: integer - description: The ID of the transition. in: query name: actionDescriptorId schema: format: int32 type: integer - in: query name: recommend schema: default: false type: boolean responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}}' schema: items: $ref: "#/components/schemas/User" type: array description: Returned if the request is successful. "400": description: |- Returned if: * `issueKey` or `project` is missing. * `query` or `accountId` is missing. * `query` and `accountId` are provided. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the project, issue, or transition is not found. "429": description: Returned if the rate limit is exceeded. User search endpoints share a collective rate limit for the tenant, in addition to Jira's normal rate limiting you may receive a rate limit for user search. Please respect the Retry-After header. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Find users assignable to issues tags: - User search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:issue:jira - read:project:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta /rest/api/3/user/bulk: get: deprecated: false description: |- Returns a [paginated](#pagination) list of the users specified by one or more account IDs. **[Permissions](#permissions) required:** Permission to access Jira. operationId: bulkGetUsers 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: 10 format: int32 type: integer - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: items: type: string type: array - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: key schema: items: type: string type: array - description: The account ID of a user. To specify multiple users, pass multiple `accountId` parameters. For example, `accountId=5b10a2844c20165700ede21g&accountId=5b10ac8d82e05b22cc7d4ef5`. in: query name: accountId required: true schema: example: 5b10ac8d82e05b22cc7d4ef5 items: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string maxLength: 128 type: array x-showInExample: "true" responses: "200": content: application/json: example: '{"maxResults":100,"startAt":0,"total":1,"isLast":true,"values":[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney"}]}' schema: $ref: "#/components/schemas/PageBeanUser" description: Returned if the request is successful. "400": description: Returned if `accountID` is missing. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Bulk get users tags: - Users x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:application-role:jira - read:group:jira - read:user:jira - read:avatar:jira state: Beta x-experimental: true /rest/api/3/user/bulk/migration: get: deprecated: false description: |- Returns the account IDs for the users specified in the `key` or `username` parameters. Note that multiple `key` or `username` parameters can be specified. **[Permissions](#permissions) required:** Permission to access Jira. operationId: bulkGetUsersMigration 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: 10 format: int32 type: integer - description: Username of a user. To specify multiple users, pass multiple copies of this parameter. For example, `username=fred&username=barney`. Required if `key` isn't provided. Cannot be provided if `key` is present. in: query name: username schema: items: type: string type: array - description: Key of a user. To specify multiple users, pass multiple copies of this parameter. For example, `key=fred&key=barney`. Required if `username` isn't provided. Cannot be provided if `username` is present. in: query name: key schema: items: type: string type: array responses: "200": content: application/json: example: '[{"username":"mia","accountId":"5b10a2844c20165700ede21g"},{"username":"emma","accountId":"5b10ac8d82e05b22cc7d4ef5"}]' schema: items: $ref: "#/components/schemas/UserMigrationBean" type: array description: Returned if the request is successful. "400": description: Returned if `key` or `username` "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Get account IDs for users tags: - Users x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:user:jira state: Beta x-experimental: true /rest/api/3/user/columns: delete: deprecated: false description: |- Resets the default [ issue table columns](https://confluence.atlassian.com/x/XYdKLg) for the user to the system default. If `accountId` is not passed, the calling user's default columns are reset. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to set the columns on any user. * Permission to access Jira, to set the calling user's columns. operationId: resetUserColumns parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string responses: "204": 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 or is not accessing their user record. security: - basicAuth: [] - {} summary: Reset user default columns tags: - Users x-atlassian-connect-scope: INACCESSIBLE get: deprecated: false description: |- Returns the default [issue table columns](https://confluence.atlassian.com/x/XYdKLg) for the user. If `accountId` is not passed in the request, the calling user's details are returned. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLgl), to get the column details for any user. * Permission to access Jira, to get the calling user's column details. operationId: getUserDefaultColumns parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" - description: This parameter is no longer available See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string responses: "200": content: application/json: schema: items: $ref: "#/components/schemas/ColumnItem" type: array 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 or is not accessing their user record. "404": description: Returned if the requested user is not found. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Get user default columns tags: - Users x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:user.columns:jira - read:filter.column:jira state: Beta put: deprecated: false description: |- Sets the default [ issue table columns](https://confluence.atlassian.com/x/XYdKLg) for the user. If an account ID is not passed, the calling user's default columns are set. If no column details are sent, then all default columns are removed. The parameters for this resource are expressed as HTML form data. For example, in curl: `curl -X PUT -d columns=summary -d columns=description https://your-domain.atlassian.net/rest/api/3/user/columns?accountId=5b10ac8d82e05b22cc7d4ef5'` **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to set the columns on any user. * Permission to access Jira, to set the calling user's columns. operationId: setUserColumns parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" requestBody: content: "*/*": schema: items: type: string type: array multipart/form-data: schema: items: type: string type: array description: The ID of a column to set. To set multiple columns, send multiple `columns` parameters. responses: "200": content: application/json: schema: {} 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 or is not accessing their user record. "404": description: Returned if the requested user is not found. "429": description: Returned if the rate limit is exceeded. User search endpoints share a collective rate limit for the tenant, in addition to Jira's normal rate limiting you may receive a rate limit for user search. Please respect the Retry-After header. "500": description: Returned if an invalid issue table column ID is sent. security: - basicAuth: [] - {} summary: Set user default columns tags: - Users x-atlassian-connect-scope: INACCESSIBLE /rest/api/3/user/email: get: deprecated: false description: Returns a user's email address. This API is only available to apps approved by Atlassian, according to these [guidelines](https://community.developer.atlassian.com/t/guidelines-for-requesting-access-to-email-address/27603). operationId: getUserEmail parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, `5b10ac8d82e05b22cc7d4ef5`. in: query name: accountId required: true schema: maxLength: 128 type: string responses: "200": content: application/json: example: name@example.com schema: $ref: "#/components/schemas/UnrestrictedUserEmail" description: Returned if the request is successful. "400": description: Returned if the calling app is not approved to use this API. "401": description: Returned if the authentication credentials are incorrect or missing from the request (for example if a user is trying to access this API). "404": description: Returned if a user with the given `accountId` doesn't exist "503": description: Indicates the API is not currently enabled security: - basicAuth: [] summary: Get user email tags: - Users x-atlassian-connect-scope: ACCESS_EMAIL_ADDRESSES /rest/api/3/user/email/bulk: get: deprecated: false description: Returns a user's email address. This API is only available to apps approved by Atlassian, according to these [guidelines](https://community.developer.atlassian.com/t/guidelines-for-requesting-access-to-email-address/27603). operationId: getUserEmailBulk parameters: - description: The account IDs of the users for which emails are required. An `accountId` is an identifier that uniquely identifies the user across all Atlassian products. For example, `5b10ac8d82e05b22cc7d4ef5`. Note, this should be treated as an opaque identifier (that is, do not assume any structure in the value). in: query name: accountId required: true schema: items: maxLength: 128 type: string maxLength: 128 type: array responses: "200": content: application/json: schema: $ref: "#/components/schemas/UnrestrictedUserEmail" description: Returned if the request is successful. "400": description: Returned if the calling app is not approved to use this API. "401": description: Returned if the authentication credentials are incorrect, or missing from the request (for example if a user is trying to access this API). "503": description: Indicates the API is not currently enabled. security: - basicAuth: [] summary: Get user email bulk tags: - Users x-atlassian-connect-scope: ACCESS_EMAIL_ADDRESSES /rest/api/3/user/groups: get: deprecated: false description: |- Returns the groups to which a user belongs. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getUserGroups parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId required: true schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: key schema: type: string responses: "200": content: application/json: example: '{"name":"jira-administrators","groupId":"276f955c-63d7-42c8-9520-92d01dca0625","self":"https://your-domain.atlassian.net/rest/api/3/group?groupId=276f955c-63d7-42c8-9520-92d01dca0625"}' schema: items: $ref: "#/components/schemas/GroupName" type: array description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the calling user does not have the *Browse users and groups* global permission. "404": description: Returned if the user is not found. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Get user groups tags: - Users x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:group:jira state: Beta /rest/api/3/user/permission/search: get: deprecated: false description: |- Returns a list of users who fulfill these criteria: * their user attributes match a search string. * they have a set of permissions for a project or issue. If no search string is provided, a list of all users with the permissions is returned. This operation takes the users in the range defined by `startAt` and `maxResults`, up to the thousandth user, and then returns only the users from that range that match the search string and have permission for the project or issue. This means the operation usually returns fewer users than specified in `maxResults`. To get all the users who match the search string and have permission for the project or issue, use [Get all users](#api-rest-api-3-users-search-get) and filter the records in your code. Privacy controls are applied to the response based on the users' preferences. This could mean, for example, that the user's email address is hidden. See the [Profile visibility overview](https://developer.atlassian.com/cloud/jira/platform/profile-visibility/) for more details. This operation can be accessed anonymously. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to get users for any project. * *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for a project, to get users for that project. operationId: findUsersWithAllPermissions parameters: - description: A query string that is matched against user attributes, such as `displayName` and `emailAddress`, to find relevant users. The string can match the prefix of the attribute's value. For example, *query=john* matches a user with a `displayName` of *John Smith* and a user with an `emailAddress` of *johnson@example.com*. Required, unless `accountId` is specified. in: query name: query schema: example: query type: string x-showInExample: "true" - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: A query string that is matched exactly against user `accountId`. Required, unless `query` is specified. in: query name: accountId schema: maxLength: 128 type: string - description: |- A comma separated list of permissions. Permissions can be specified as any: * permission returned by [Get all permissions](#api-rest-api-3-permissions-get). * custom project permission added by Connect apps. * (deprecated) one of the following: * ASSIGNABLE\_USER * ASSIGN\_ISSUE * ATTACHMENT\_DELETE\_ALL * ATTACHMENT\_DELETE\_OWN * BROWSE * CLOSE\_ISSUE * COMMENT\_DELETE\_ALL * COMMENT\_DELETE\_OWN * COMMENT\_EDIT\_ALL * COMMENT\_EDIT\_OWN * COMMENT\_ISSUE * CREATE\_ATTACHMENT * CREATE\_ISSUE * DELETE\_ISSUE * EDIT\_ISSUE * LINK\_ISSUE * MANAGE\_WATCHER\_LIST * MODIFY\_REPORTER * MOVE\_ISSUE * PROJECT\_ADMIN * RESOLVE\_ISSUE * SCHEDULE\_ISSUE * SET\_ISSUE\_SECURITY * TRANSITION\_ISSUE * VIEW\_VERSION\_CONTROL * VIEW\_VOTERS\_AND\_WATCHERS * VIEW\_WORKFLOW\_READONLY * WORKLOG\_DELETE\_ALL * WORKLOG\_DELETE\_OWN * WORKLOG\_EDIT\_ALL * WORKLOG\_EDIT\_OWN * WORK\_ISSUE in: query name: permissions required: true schema: type: string - description: The issue key for the issue. in: query name: issueKey schema: type: string - description: The project key for the project (case sensitive). in: query name: projectKey schema: type: string - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return per page. in: query name: maxResults schema: default: 50 format: int32 type: integer responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10ac8d82e05b22cc7d4ef5","key":"","accountId":"5b10ac8d82e05b22cc7d4ef5","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=32&s=32"},"displayName":"Emma Richards","active":false}]' schema: items: $ref: "#/components/schemas/User" type: array description: Returned if the request is successful. "400": description: |- Returned if: * `issueKey` or `projectKey` is missing. * `query` or `accountId` is missing. * `query` and `accountId` are provided. * `permissions` is empty or contains an invalid entry. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the issue or project is not found. "429": description: Returned if the rate limit is exceeded. User search endpoints share a collective rate limit for the tenant, in addition to Jira's normal rate limiting you may receive a rate limit for user search. Please respect the Retry-After header. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Find users with permissions tags: - User search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:issue:jira - read:project:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta /rest/api/3/user/picker: get: deprecated: false description: |- Returns a list of users whose attributes match the query term. The returned object includes the `html` field where the matched query term is highlighted with the HTML strong tag. A list of account IDs can be provided to exclude users from the results. This operation takes the users in the range defined by `maxResults`, up to the thousandth user, and then returns only the users from that range that match the query term. This means the operation usually returns fewer users than specified in `maxResults`. To get all the users who match the query term, use [Get all users](#api-rest-api-3-users-search-get) and filter the records in your code. Privacy controls are applied to the response based on the users' preferences. This could mean, for example, that the user's email address is hidden. See the [Profile visibility overview](https://developer.atlassian.com/cloud/jira/platform/profile-visibility/) for more details. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). Anonymous calls and calls by users without the required permission return search results for an exact name match only. operationId: findUsersForPicker parameters: - description: A query string that is matched against user attributes, such as `displayName`, and `emailAddress`, to find relevant users. The string can match the prefix of the attribute's value. For example, *query=john* matches a user with a `displayName` of *John Smith* and a user with an `emailAddress` of *johnson@example.com*. in: query name: query required: true schema: type: string - description: The maximum number of items to return. The total number of matched users is returned in `total`. in: query name: maxResults schema: default: 50 format: int32 type: integer - description: Include the URI to the user's avatar. in: query name: showAvatar schema: default: false type: boolean - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: exclude schema: items: type: string type: array - description: A list of account IDs to exclude from the search results. This parameter accepts a comma-separated list. Multiple account IDs can also be provided using an ampersand-separated list. For example, `excludeAccountIds=5b10a2844c20165700ede21g,5b10a0effa615349cb016cd8&excludeAccountIds=5b10ac8d82e05b22cc7d4ef5`. Cannot be provided with `exclude`. in: query name: excludeAccountIds schema: items: type: string type: array - in: query name: avatarSize schema: type: string - in: query name: excludeConnectUsers schema: default: false type: boolean responses: "200": content: application/json: example: '{"users":[{"accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"mia","key":"mia","html":"Mia Krystof - mia@example.com (mia)","displayName":"Mia Krystof","avatarUrl":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16"}],"total":25,"header":"Showing 20 of 25 matching groups"}' schema: $ref: "#/components/schemas/FoundUsers" description: Returned if the request is successful. "400": description: Returned if `exclude` and `excludeAccountIds` are provided. "401": description: Returned if the authentication credentials are incorrect or missing. "429": description: Returned if the rate limit is exceeded. User search endpoints share a collective rate limit for the tenant, in addition to Jira's normal rate limiting you may receive a rate limit for user search. Please respect the Retry-After header. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Find users for picker tags: - User search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:user:jira state: Beta /rest/api/3/user/properties: get: deprecated: false description: |- Returns the keys of all properties for a user. Note: This operation does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to access the property keys on any user. * Access to Jira, to access the calling user's property keys. operationId: getUserPropertyKeys parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: userKey schema: type: string - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string responses: "200": content: application/json: example: '{"keys":[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support","key":"issue.support"}]}' schema: $ref: "#/components/schemas/PropertyKeys" description: Returned if the request is successful. "400": description: Returned if `accountId` is missing. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission or is not accessing their user record. "404": description: Returned if the user is not found. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Get user property keys tags: - User properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:user.property:jira - read:comment.property:jira - read:dashboard.property:jira - read:issue-type.property:jira - read:issue-worklog.property:jira - read:issue.property:jira - read:project.property:jira - read:workflow.property:jira state: Beta "/rest/api/3/user/properties/{propertyKey}": delete: deprecated: false description: |- Deletes a property from a user. Note: This operation does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to delete a property from any user. * Access to Jira, to delete a property from the calling user's record. operationId: deleteUserProperty parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: userKey schema: type: string - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: The key of the user's property. in: path name: propertyKey required: true schema: type: string responses: "204": description: Returned if the user property is deleted. "400": description: Returned if `accountId` is missing. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission or is not accessing their user record. "404": description: Returned if the user or the property is not found. security: - basicAuth: [] - OAuth2: - write:jira-work summary: Delete user property tags: - User properties x-atlassian-connect-scope: DELETE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - delete:user.property:jira state: Beta get: deprecated: false description: |- Returns the value of a user's property. If no property key is provided [Get user property keys](#api-rest-api-3-user-properties-get) is called. Note: This operation does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to get a property from any user. * Access to Jira, to get a property from the calling user's record. operationId: getUserProperty parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: userKey schema: type: string - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: The key of the user's property. in: path name: propertyKey required: true schema: type: string responses: "200": content: application/json: example: '{"key":"issue.support","value":{"system.conversation.id":"b1bf38be-5e94-4b40-a3b8-9278735ee1e6","system.support.time":"1m"}}' schema: $ref: "#/components/schemas/EntityProperty" description: Returned if the request is successful. "400": description: Returned if `accountId` is missing. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission or is not accessing their user record. "404": description: Returned if the user is not found. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Get user property tags: - User properties x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:user.property:jira state: Beta put: deprecated: false description: |- Sets the value of a user's property. Use this resource to store custom data against a user. Note: This operation does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira. **[Permissions](#permissions) required:** * *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to set a property on any user. * Access to Jira, to set a property on the calling user's record. operationId: setUserProperty parameters: - description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. in: query name: accountId schema: example: 5b10ac8d82e05b22cc7d4ef5 maxLength: 128 type: string x-showInExample: "true" - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: userKey schema: type: string - description: This parameter is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: The key of the user's property. The maximum length is 255 characters. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: schema: {} required: true responses: "200": content: application/json: schema: {} description: Returned if the user property is updated. "201": content: application/json: schema: {} description: Returned if the user property is created. "400": description: Returned if `accountId` is missing. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission or is not accessing their user record. "404": description: Returned if the user is not found. "405": description: Returned if the property key is not specified. security: - basicAuth: [] - OAuth2: - write:jira-work summary: Set user property tags: - User properties x-atlassian-connect-scope: WRITE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - write:jira-work state: Current - scheme: OAuth2 scopes: - write:user.property:jira state: Beta /rest/api/3/user/search: get: deprecated: false description: |- Returns a list of users that match the search string and property. This operation first applies a filter to match the search string and property, and then takes the filtered users in the range defined by `startAt` and `maxResults`, up to the thousandth user. To get all the users who match the search string and property, use [Get all users](#api-rest-api-3-users-search-get) and filter the records in your code. This operation can be accessed anonymously. Privacy controls are applied to the response based on the users' preferences. This could mean, for example, that the user's email address is hidden. See the [Profile visibility overview](https://developer.atlassian.com/cloud/jira/platform/profile-visibility/) for more details. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). Anonymous calls or calls by users without the required permission return empty search results. operationId: findUsers parameters: - description: A query string that is matched against user attributes ( `displayName`, and `emailAddress`) to find relevant users. The string can match the prefix of the attribute's value. For example, *query=john* matches a user with a `displayName` of *John Smith* and a user with an `emailAddress` of *johnson@example.com*. Required, unless `accountId` or `property` is specified. in: query name: query schema: example: query type: string x-showInExample: "true" - in: query name: username schema: type: string - description: A query string that is matched exactly against a user `accountId`. Required, unless `query` or `property` is specified. in: query name: accountId schema: maxLength: 128 type: string - description: The index of the first item to return in a page of filtered results (page offset). in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return per page. in: query name: maxResults schema: default: 50 format: int32 type: integer - description: 'A query string used to search properties. Property keys are specified by path, so property keys containing dot (.) or equals (=) characters cannot be used. The query string cannot be specified using a JSON object. Example: To search for the value of `nested` from `{"something":{"nested":1,"other":2}}` use `thepropertykey.something.nested=1`. Required, unless `accountId` or `query` is specified.' in: query name: property schema: type: string responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10ac8d82e05b22cc7d4ef5","key":"","accountId":"5b10ac8d82e05b22cc7d4ef5","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=32&s=32"},"displayName":"Emma Richards","active":false}]' schema: items: $ref: "#/components/schemas/User" type: array description: Returned if the request is successful. "400": description: |- Returned if: * `accountId`, `query` or `property` is missing. * `query` and `accountId` are provided. * `property` parameter is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "429": description: Returned if the rate limit is exceeded. User search endpoints share a collective rate limit for the tenant, in addition to Jira's normal rate limiting you may receive a rate limit for user search. Please respect the Retry-After header. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Find users tags: - User search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:user:jira - read:user.property:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta /rest/api/3/user/search/query: get: deprecated: false description: |- Finds users with a structured query and returns a [paginated](#pagination) list of user details. This operation takes the users in the range defined by `startAt` and `maxResults`, up to the thousandth user, and then returns only the users from that range that match the structured query. This means the operation usually returns fewer users than specified in `maxResults`. To get all the users who match the structured query, use [Get all users](#api-rest-api-3-users-search-get) and filter the records in your code. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). The query statements are: * `is assignee of PROJ` Returns the users that are assignees of at least one issue in project *PROJ*. * `is assignee of (PROJ-1, PROJ-2)` Returns users that are assignees on the issues *PROJ-1* or *PROJ-2*. * `is reporter of (PROJ-1, PROJ-2)` Returns users that are reporters on the issues *PROJ-1* or *PROJ-2*. * `is watcher of (PROJ-1, PROJ-2)` Returns users that are watchers on the issues *PROJ-1* or *PROJ-2*. * `is voter of (PROJ-1, PROJ-2)` Returns users that are voters on the issues *PROJ-1* or *PROJ-2*. * `is commenter of (PROJ-1, PROJ-2)` Returns users that have posted a comment on the issues *PROJ-1* or *PROJ-2*. * `is transitioner of (PROJ-1, PROJ-2)` Returns users that have performed a transition on issues *PROJ-1* or *PROJ-2*. * `[propertyKey].entity.property.path is "property value"` Returns users with the entity property value. The list of issues can be extended as needed, as in *(PROJ-1, PROJ-2, ... PROJ-n)*. Statements can be combined using the `AND` and `OR` operators to form more complex queries. For example: `is assignee of PROJ AND [propertyKey].entity.property.path is "property value"` operationId: findUsersByQuery parameters: - description: The search query. in: query name: query required: true schema: type: string - 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: 100 format: int32 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/PageBeanUser" description: Returned if the request is successful. "400": description: Returned if the query is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "408": description: Returned if the search is timed out. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Find users by query tags: - User search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:comment:jira - read:issue:jira - read:issue.vote:jira - read:issue.watcher:jira - read:project:jira - read:user:jira - read:user.property:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta /rest/api/3/user/search/query/key: get: deprecated: false description: |- Finds users with a structured query and returns a [paginated](#pagination) list of user keys. This operation takes the users in the range defined by `startAt` and `maxResults`, up to the thousandth user, and then returns only the users from that range that match the structured query. This means the operation usually returns fewer users than specified in `maxResults`. To get all the users who match the structured query, use [Get all users](#api-rest-api-3-users-search-get) and filter the records in your code. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). The query statements are: * `is assignee of PROJ` Returns the users that are assignees of at least one issue in project *PROJ*. * `is assignee of (PROJ-1, PROJ-2)` Returns users that are assignees on the issues *PROJ-1* or *PROJ-2*. * `is reporter of (PROJ-1, PROJ-2)` Returns users that are reporters on the issues *PROJ-1* or *PROJ-2*. * `is watcher of (PROJ-1, PROJ-2)` Returns users that are watchers on the issues *PROJ-1* or *PROJ-2*. * `is voter of (PROJ-1, PROJ-2)` Returns users that are voters on the issues *PROJ-1* or *PROJ-2*. * `is commenter of (PROJ-1, PROJ-2)` Returns users that have posted a comment on the issues *PROJ-1* or *PROJ-2*. * `is transitioner of (PROJ-1, PROJ-2)` Returns users that have performed a transition on issues *PROJ-1* or *PROJ-2*. * `[propertyKey].entity.property.path is "property value"` Returns users with the entity property value. The list of issues can be extended as needed, as in *(PROJ-1, PROJ-2, ... PROJ-n)*. Statements can be combined using the `AND` and `OR` operators to form more complex queries. For example: `is assignee of PROJ AND [propertyKey].entity.property.path is "property value"` operationId: findUserKeysByQuery parameters: - description: The search query. in: query name: query required: true schema: type: string - 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: 100 format: int32 type: integer responses: "200": content: application/json: schema: $ref: "#/components/schemas/PageBeanUserKey" description: Returned if the request is successful. "400": description: Returned if the query is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "408": description: Returned if the search is timed out. security: - basicAuth: [] - OAuth2: - read:jira-user summary: Find user keys by query tags: - User search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:comment:jira - read:issue:jira - read:issue.vote:jira - read:issue.watcher:jira - read:project:jira - read:user.property:jira - read:user:jira state: Beta /rest/api/3/user/viewissue/search: get: deprecated: false description: |- Returns a list of users who fulfill these criteria: * their user attributes match a search string. * they have permission to browse issues. Use this resource to find users who can browse: * an issue, by providing the `issueKey`. * any issue in a project, by providing the `projectKey`. This operation takes the users in the range defined by `startAt` and `maxResults`, up to the thousandth user, and then returns only the users from that range that match the search string and have permission to browse issues. This means the operation usually returns fewer users than specified in `maxResults`. To get all the users who match the search string and have permission to browse issues, use [Get all users](#api-rest-api-3-users-search-get) and filter the records in your code. Privacy controls are applied to the response based on the users' preferences. This could mean, for example, that the user's email address is hidden. See the [Profile visibility overview](https://developer.atlassian.com/cloud/jira/platform/profile-visibility/) for more details. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). Anonymous calls and calls by users without the required permission return empty search results. operationId: findUsersWithBrowsePermission parameters: - description: A query string that is matched against user attributes, such as `displayName` and `emailAddress`, to find relevant users. The string can match the prefix of the attribute's value. For example, *query=john* matches a user with a `displayName` of *John Smith* and a user with an `emailAddress` of *johnson@example.com*. Required, unless `accountId` is specified. in: query name: query schema: example: query type: string x-showInExample: "true" - description: This parameter is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. in: query name: username schema: type: string - description: A query string that is matched exactly against user `accountId`. Required, unless `query` is specified. in: query name: accountId schema: maxLength: 128 type: string - description: The issue key for the issue. Required, unless `projectKey` is specified. in: query name: issueKey schema: type: string - description: The project key for the project (case sensitive). Required, unless `issueKey` is specified. in: query name: projectKey schema: type: string - description: The index of the first item to return in a page of results (page offset). in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return per page. in: query name: maxResults schema: default: 50 format: int32 type: integer responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10ac8d82e05b22cc7d4ef5","key":"","accountId":"5b10ac8d82e05b22cc7d4ef5","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=32&s=32"},"displayName":"Emma Richards","active":false}]' schema: items: $ref: "#/components/schemas/User" type: array description: Returned if the request is successful. "400": description: |- Returned if: * `issueKey` or `projectKey` is missing. * `query` or `accountId` is missing. * `query` and `accountId` are provided. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the issue or project is not found. "429": description: Returned if the rate limit is exceeded. User search endpoints share a collective rate limit for the tenant, in addition to Jira's normal rate limiting you may receive a rate limit for user search. Please respect the Retry-After header. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Find users with browse permission tags: - User search x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:issue:jira - read:project:jira - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta /rest/api/3/users: get: deprecated: false description: |- Returns a list of all users, including active users, inactive users and previously deleted users that have an Atlassian account. Privacy controls are applied to the response based on the users' preferences. This could mean, for example, that the user's email address is hidden. See the [Profile visibility overview](https://developer.atlassian.com/cloud/jira/platform/profile-visibility/) for more details. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllUsersDefault parameters: - description: The index of the first item to return. in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return. in: query name: maxResults schema: default: 50 format: int32 type: integer responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10ac8d82e05b22cc7d4ef5","key":"","accountId":"5b10ac8d82e05b22cc7d4ef5","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=32&s=32"},"displayName":"Emma Richards","active":false}]' schema: items: $ref: "#/components/schemas/User" type: array description: Returned if the request is successful. "400": description: Returned if the request is invalid. "403": description: Returned if the user doesn't have the necessary permission. "409": description: Returned if the request takes longer than 10 seconds or is interrupted. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Get all users default tags: - Users x-atlassian-connect-scope: INACCESSIBLE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta /rest/api/3/users/search: get: deprecated: false description: |- Returns a list of all users, including active users, inactive users and previously deleted users that have an Atlassian account. Privacy controls are applied to the response based on the users' preferences. This could mean, for example, that the user's email address is hidden. See the [Profile visibility overview](https://developer.atlassian.com/cloud/jira/platform/profile-visibility/) for more details. **[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllUsers parameters: - description: The index of the first item to return. in: query name: startAt schema: default: 0 format: int32 type: integer - description: The maximum number of items to return. in: query name: maxResults schema: default: 50 format: int32 type: integer responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":false},{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10ac8d82e05b22cc7d4ef5","key":"","accountId":"5b10ac8d82e05b22cc7d4ef5","accountType":"atlassian","name":"","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/AA-3.png?size=32&s=32"},"displayName":"Emma Richards","active":false}]' schema: items: $ref: "#/components/schemas/User" type: array description: Returned if the request is successful. "400": description: Returned if the request is invalid. "403": description: Returned if the user doesn't have the necessary permission. "409": description: Returned if the request takes longer than 10 seconds or is interrupted. security: - basicAuth: [] - OAuth2: - read:jira-user - {} summary: Get all users tags: - Users x-atlassian-connect-scope: INACCESSIBLE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-user state: Current - scheme: OAuth2 scopes: - read:user:jira - read:application-role:jira - read:avatar:jira - read:group:jira state: Beta /rest/api/3/version: post: deprecated: false description: |- Creates a project version. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project the version is added to. operationId: createVersion parameters: [] requestBody: content: application/json: example: archived: false description: An excellent version name: New Version 1 projectId: 10000 releaseDate: 2010-07-06 released: true schema: $ref: "#/components/schemas/Version" required: true responses: "201": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/version/10000","id":"10000","description":"An excellent version","name":"New Version 1","archived":false,"released":true,"releaseDate":"2010-07-06","userReleaseDate":"6/Jul/2010","project":"PXA","projectId":10000}' schema: $ref: "#/components/schemas/Version" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the project is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Create version tags: - Project versions x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project-version:jira - read:project-version:jira state: Beta "/rest/api/3/version/{id}": delete: deprecated: true description: |- Deletes a project version. Deprecated, use [ Delete and replace version](#api-rest-api-3-version-id-removeAndSwap-post) that supports swapping version values in custom fields, in addition to the swapping for `fixVersion` and `affectedVersion` provided in this resource. Alternative versions can be provided to update issues that use the deleted version in `fixVersion` or `affectedVersion`. If alternatives are not provided, occurrences of `fixVersion` and `affectedVersion` that contain the deleted version are cleared. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that contains the version. operationId: deleteVersion parameters: - description: The ID of the version. in: path name: id required: true schema: type: string - description: The ID of the version to update `fixVersion` to when the field contains the deleted version. The replacement version must be in the same project as the version being deleted and cannot be the version being deleted. in: query name: moveFixIssuesTo schema: type: string - description: The ID of the version to update `affectedVersion` to when the field contains the deleted version. The replacement version must be in the same project as the version being deleted and cannot be the version being deleted. in: query name: moveAffectedIssuesTo schema: type: string responses: "204": description: Returned if the version is deleted. "400": description: Returned if the request is invalid. "401": description: |- Returned if: * the authentication credentials are incorrect. * the user does not have the required permissions. "404": description: Returned if the version is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Delete version tags: - Project versions x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:project-version:jira state: Beta get: deprecated: false description: |- Returns a project version. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the version. operationId: getVersion parameters: - description: The ID of the version. in: path name: id required: true schema: type: string - description: |- Use [expand](#expansion) to include additional information about version in the response. This parameter accepts a comma-separated list. Expand options include: * `operations` Returns the list of operations available for this version. * `issuesstatus` Returns the count of issues in this version for each of the status categories *to do*, *in progress*, *done*, and *unmapped*. The *unmapped* property represents the number of issues with a status other than *to do*, *in progress*, and *done*. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/version/10000","id":"10000","description":"An excellent version","name":"New Version 1","archived":false,"released":true,"releaseDate":"2010-07-06","overdue":true,"userReleaseDate":"6/Jul/2010","projectId":10000}' schema: $ref: "#/components/schemas/Version" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: Returned if the version is not found or the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get version tags: - Project versions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-version:jira state: Beta put: deprecated: false description: |- Updates a project version. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that contains the version. operationId: updateVersion parameters: - description: The ID of the version. in: path name: id required: true schema: type: string requestBody: content: application/json: example: archived: false description: An excellent version id: "10000" name: New Version 1 overdue: true projectId: 10000 releaseDate: 2010-07-06 released: true self: https://your-domain.atlassian.net/rest/api/~ver~/version/10000 userReleaseDate: 6/Jul/2010 schema: $ref: "#/components/schemas/Version" required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/version/10000","id":"10000","description":"An excellent version","name":"New Version 1","archived":false,"released":true,"releaseDate":"2010-07-06","userReleaseDate":"6/Jul/2010","project":"PXA","projectId":10000}' schema: $ref: "#/components/schemas/Version" description: Returned if the request is successful. "400": description: |- Returned if: * the request is invalid. * the user does not have the required permissions. "401": description: Returned if the authentication credentials are incorrect. "404": description: Returned if the version is not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Update version tags: - Project versions x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project-version:jira - read:project-version:jira state: Beta "/rest/api/3/version/{id}/mergeto/{moveIssuesTo}": put: deprecated: false description: |- Merges two project versions. The merge is completed by deleting the version specified in `id` and replacing any occurrences of its ID in `fixVersion` with the version ID specified in `moveIssuesTo`. Consider using [ Delete and replace version](#api-rest-api-3-version-id-removeAndSwap-post) instead. This resource supports swapping version values in `fixVersion`, `affectedVersion`, and custom fields. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that contains the version. operationId: mergeVersions parameters: - description: The ID of the version to delete. in: path name: id required: true schema: type: string - description: The ID of the version to merge into. in: path name: moveIssuesTo required: true schema: type: string responses: "204": content: application/json: schema: {} description: Returned if the version is deleted. "400": description: Returned if the request is invalid. "401": description: |- Returned if: * the authentication credentials are incorrect or missing. * the user does not have the required permissions. "404": description: Returned if the version to be deleted or the version to merge to are not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Merge versions tags: - Project versions x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:project-version:jira - write:project-version:jira state: Beta "/rest/api/3/version/{id}/move": post: deprecated: false description: |- Modifies the version's sequence within the project, which affects the display order of the versions in Jira. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* project permission for the project that contains the version. operationId: moveVersion parameters: - description: The ID of the version to be moved. in: path name: id required: true schema: type: string requestBody: content: application/json: example: after: https://your-domain.atlassian.net/rest/api/~ver~/version/10000 schema: $ref: "#/components/schemas/VersionMoveBean" required: true responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/version/10000","id":"10000","description":"An excellent version","name":"New Version 1","archived":false,"released":true,"releaseDate":"2010-07-06","overdue":true,"userReleaseDate":"6/Jul/2010","projectId":10000}' schema: $ref: "#/components/schemas/Version" description: Returned if the request is successful. "400": description: |- Returned if: * no body parameters are provided. * `after` and `position` are provided. * `position` is invalid. "401": description: |- Returned if: * the authentication credentials are incorrect or missing * the user does not have the required commissions. "404": description: Returned if the version or move after version are not found. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Move version tags: - Project versions x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - write:project-version:jira - read:project-version:jira state: Beta "/rest/api/3/version/{id}/relatedIssueCounts": get: deprecated: false description: |- Returns the following counts for a version: * Number of issues where the `fixVersion` is set to the version. * Number of issues where the `affectedVersion` is set to the version. * Number of issues where a version custom field is set to the version. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* project permission for the project that contains the version. operationId: getVersionRelatedIssues parameters: - description: The ID of the version. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/version/10000","issuesFixedCount":23,"issuesAffectedCount":101,"issueCountWithCustomFieldsShowingVersion":54,"customFieldUsage":[{"fieldName":"Field1","customFieldId":10000,"issueCountWithVersionInCustomField":2},{"fieldName":"Field2","customFieldId":10010,"issueCountWithVersionInCustomField":3}]}' schema: $ref: "#/components/schemas/VersionIssueCounts" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect. "404": description: |- Returned if: * the version is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get version's related issues count tags: - Project versions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:field:jira - read:project-version:jira state: Beta "/rest/api/3/version/{id}/removeAndSwap": post: deprecated: false description: |- Deletes a project version. Alternative versions can be provided to update issues that use the deleted version in `fixVersion`, `affectedVersion`, or any version picker custom fields. If alternatives are not provided, occurrences of `fixVersion`, `affectedVersion`, and any version picker custom field, that contain the deleted version, are cleared. Any replacement version must be in the same project as the version being deleted and cannot be the version being deleted. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) or *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that contains the version. operationId: deleteAndReplaceVersion parameters: - description: The ID of the version. in: path name: id required: true schema: type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/DeleteAndReplaceVersionBean" required: true responses: "204": content: application/json: schema: {} description: Returned if the version is deleted. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the version to delete is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - manage:jira-project - {} summary: Delete and replace version tags: - Project versions x-atlassian-connect-scope: PROJECT_ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - delete:project-version:jira - write:project-version:jira state: Beta "/rest/api/3/version/{id}/unresolvedIssueCount": get: deprecated: false description: |- Returns counts of the issues and unresolved issues for the project version. This operation can be accessed anonymously. **[Permissions](#permissions) required:** *Browse projects* project permission for the project that contains the version. operationId: getVersionUnresolvedIssues parameters: - description: The ID of the version. in: path name: id required: true schema: type: string responses: "200": content: application/json: example: '{"self":"https://your-domain.atlassian.net/rest/api/3/version/10000","issuesUnresolvedCount":23,"issuesCount":30}' schema: $ref: "#/components/schemas/VersionUnresolvedIssuesCount" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "404": description: |- Returned if: * the version is not found. * the user does not have the required permissions. security: - basicAuth: [] - OAuth2: - read:jira-work - {} summary: Get version's unresolved issues count tags: - Project versions x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:project-version:jira state: Beta /rest/api/3/webhook: delete: deprecated: false description: |- Removes webhooks by ID. Only webhooks registered by the calling app are removed. If webhooks created by other apps are specified, they are ignored. **[Permissions](#permissions) required:** Only [Connect](https://developer.atlassian.com/cloud/jira/platform/#connect-apps) and [OAuth 2.0](https://developer.atlassian.com/cloud/jira/platform/oauth-2-3lo-apps) apps can use this operation. operationId: deleteWebhookById parameters: [] requestBody: content: application/json: example: webhookIds: - 10000 - 10001 - 10042 schema: $ref: "#/components/schemas/ContainerForWebhookIDs" required: true responses: "202": description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the list of webhook IDs is missing. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the caller isn't an app. security: - basicAuth: [] - OAuth2: - read:jira-work - manage:jira-webhook summary: Delete webhooks by ID tags: - Webhooks x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work - manage:jira-webhook state: Current - scheme: OAuth2 scopes: - delete:webhook:jira state: Beta get: deprecated: false description: |- Returns a [paginated](#pagination) list of the webhooks registered by the calling app. **[Permissions](#permissions) required:** Only [Connect](https://developer.atlassian.com/cloud/jira/platform/#connect-apps) and [OAuth 2.0](https://developer.atlassian.com/cloud/jira/platform/oauth-2-3lo-apps) apps can use this operation. operationId: getDynamicWebhooksForApp 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: 100 format: int32 type: integer responses: "200": content: application/json: example: '{"maxResults":3,"startAt":0,"total":3,"isLast":true,"values":[{"id":10000,"jqlFilter":"project = PRJ","fieldIdsFilter":["summary","customfield_10029"],"events":["jira:issue_updated","jira:issue_created"],"expirationDate":"2019-06-01T12:42:30.000+0000"},{"id":10001,"jqlFilter":"issuetype = Bug","events":["jira:issue_created"],"expirationDate":"2019-06-01T12:42:30.000+0000"},{"id":10002,"jqlFilter":"project = PRJ","issuePropertyKeysFilter":["my-issue-property-key"],"events":["issue_property_set"],"expirationDate":"2019-06-01T12:42:30.000+0000"}]}' schema: $ref: "#/components/schemas/PageBeanWebhook" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the caller isn't an app. security: - basicAuth: [] - OAuth2: - read:jira-work - manage:jira-webhook summary: Get dynamic webhooks for app tags: - Webhooks x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work - manage:jira-webhook state: Current - scheme: OAuth2 scopes: - read:webhook:jira - read:jql:jira state: Beta post: deprecated: false description: |- Registers webhooks. **NOTE:** for non-public OAuth apps, webhooks are delivered only if there is a match between the app owner and the user who registered a dynamic webhook. **[Permissions](#permissions) required:** Only [Connect](https://developer.atlassian.com/cloud/jira/platform/#connect-apps) and [OAuth 2.0](https://developer.atlassian.com/cloud/jira/platform/oauth-2-3lo-apps) apps can use this operation. operationId: registerDynamicWebhooks parameters: [] requestBody: content: application/json: example: url: https://your-app.example.com/webhook-received webhooks: - events: - jira:issue_created - jira:issue_updated fieldIdsFilter: - summary - customfield_10029 jqlFilter: project = PROJ - events: - jira:issue_deleted jqlFilter: project IN (PROJ, EXP) AND status = done - events: - issue_property_set issuePropertyKeysFilter: - my-issue-property-key jqlFilter: project = PROJ schema: $ref: "#/components/schemas/WebhookRegistrationDetails" required: true responses: "200": content: application/json: example: '{"webhookRegistrationResult":[{"createdWebhookId":1000},{"errors":["The clause watchCount is unsupported"]},{"createdWebhookId":1001}]}' schema: $ref: "#/components/schemas/ContainerForRegisteredWebhooks" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the caller isn't an app. security: - basicAuth: [] - OAuth2: - read:jira-work - manage:jira-webhook summary: Register dynamic webhooks tags: - Webhooks x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work - manage:jira-webhook state: Current - scheme: OAuth2 scopes: - read:field:jira - read:project:jira - write:webhook:jira state: Beta /rest/api/3/webhook/failed: get: deprecated: false description: |- Returns webhooks that have recently failed to be delivered to the requesting app after the maximum number of retries. After 72 hours the failure may no longer be returned by this operation. The oldest failure is returned first. This method uses a cursor-based pagination. To request the next page use the failure time of the last webhook on the list as the `failedAfter` value or use the URL provided in `next`. **[Permissions](#permissions) required:** Only [Connect apps](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) can use this operation. operationId: getFailedWebhooks parameters: - description: The maximum number of webhooks to return per page. If obeying the maxResults directive would result in records with the same failure time being split across pages, the directive is ignored and all records with the same failure time included on the page. in: query name: maxResults schema: format: int32 type: integer - description: The time after which any webhook failure must have occurred for the record to be returned, expressed as milliseconds since the UNIX epoch. in: query name: after schema: format: int64 type: integer responses: "200": content: application/json: example: '{"values":[{"id":"1","body":"{\"data\":\"webhook data\"}","url":"https://example.com","failureTime":1573118132000},{"id":"2","url":"https://example.com","failureTime":1573540473480}],"maxResults":100,"next":"https://your-domain.atlassian.net/rest/api/3/webhook/failed?failedAfter=1573540473480&maxResults=100"}' schema: $ref: "#/components/schemas/FailedWebhooks" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: 400 response "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the caller is not a Connect app. security: - basicAuth: [] - OAuth2: - read:jira-work - manage:jira-webhook summary: Get failed webhooks tags: - Webhooks x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work - manage:jira-webhook state: Current - scheme: OAuth2 scopes: - read:issue-details:jira - read:webhook:jira - read:comment.property:jira - read:group:jira - read:issue-type:jira - read:project-role:jira - read:epic:jira-software state: Beta x-experimental: true /rest/api/3/webhook/refresh: put: deprecated: false description: |- Extends the life of webhook. Webhooks registered through the REST API expire after 30 days. Call this operation to keep them alive. Unrecognized webhook IDs (those that are not found or belong to other apps) are ignored. **[Permissions](#permissions) required:** Only [Connect](https://developer.atlassian.com/cloud/jira/platform/#connect-apps) and [OAuth 2.0](https://developer.atlassian.com/cloud/jira/platform/oauth-2-3lo-apps) apps can use this operation. operationId: refreshWebhooks parameters: [] requestBody: content: application/json: example: webhookIds: - 10000 - 10001 - 10042 schema: $ref: "#/components/schemas/ContainerForWebhookIDs" required: true responses: "200": content: application/json: example: '{"expirationDate":"2019-06-01T12:42:30.000+0000"}' schema: $ref: "#/components/schemas/WebhooksExpirationDate" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the caller isn't an app. security: - basicAuth: [] - OAuth2: - read:jira-work - manage:jira-webhook summary: Extend webhook life tags: - Webhooks x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work - manage:jira-webhook state: Current - scheme: OAuth2 scopes: - write:webhook:jira - read:webhook:jira state: Beta /rest/api/3/workflow: get: deprecated: true description: |- Returns all workflows in Jira or a workflow. Deprecated, use [Get workflows paginated](#api-rest-api-3-workflow-search-get). If the `workflowName` parameter is specified, the workflow is returned as an object (not in an array). Otherwise, an array of workflow objects is returned. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllWorkflows parameters: - description: The name of the workflow to be returned. Only one workflow can be specified. in: query name: workflowName schema: type: string responses: "200": content: application/json: example: '[{"name":"classic workflow","description":"A classic Jira workflow","lastModifiedDate":"01-01-2011","lastModifiedUser":"admin","lastModifiedUserAccountId":"5b10a2844c20165700ede21g","steps":5,"default":true}]' schema: items: $ref: "#/components/schemas/DeprecatedWorkflow" type: array description: Returned if the request is successful. "401": description: Returned if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get all workflows tags: - Workflows x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow:jira - read:project:jira - read:project-category:jira - read:avatar:jira state: Beta post: deprecated: false description: |- Creates a workflow. You can define transition rules using the shapes detailed in the following sections. If no transitional rules are specified the default system transition rules are used. #### Conditions #### Conditions enable workflow rules that govern whether a transition can execute. ##### Always false condition ##### A condition that always fails. { "type": "AlwaysFalseCondition" } ##### Block transition until approval ##### A condition that blocks issue transition if there is a pending approval. { "type": "BlockInProgressApprovalCondition" } ##### Compare number custom field condition ##### A condition that allows transition if a comparison between a number custom field and a value is true. { "type": "CompareNumberCFCondition", "configuration": { "comparator": "=", "fieldId": "customfield_10029", "fieldValue": 2 } } * `comparator` One of the supported comparator: `=`, `>`, and `<`. * `fieldId` The custom numeric field ID. Allowed field types: * `com.atlassian.jira.plugin.system.customfieldtypes:float` * `com.pyxis.greenhopper.jira:jsw-story-points` * `fieldValue` The value for comparison. ##### Hide from user condition ##### A condition that hides a transition from users. The transition can only be triggered from a workflow function or REST API operation. { "type": "RemoteOnlyCondition" } ##### Only assignee condition ##### A condition that allows only the assignee to execute a transition. { "type": "AllowOnlyAssignee" } ##### Only Bamboo notifications workflow condition ##### A condition that makes the transition available only to Bamboo build notifications. { "type": "OnlyBambooNotificationsCondition" } ##### Only reporter condition ##### A condition that allows only the reporter to execute a transition. { "type": "AllowOnlyReporter" } ##### Permission condition ##### A condition that allows only users with a permission to execute a transition. { "type": "PermissionCondition", "configuration": { "permissionKey": "BROWSE_PROJECTS" } } * `permissionKey` The permission required to perform the transition. Allowed values: [built-in](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-permission-schemes/#built-in-permissions) or app defined permissions. ##### Previous status condition ##### A condition that allows a transition based on whether an issue has or has not transitioned through a status. { "type": "PreviousStatusCondition", "configuration": { "ignoreLoopTransitions": true, "includeCurrentStatus": true, "mostRecentStatusOnly": true, "reverseCondition": true, "previousStatus": { "id": "5" } } } By default this condition allows the transition if the status, as defined by its ID in the `previousStatus` object, matches any previous issue status, unless: * `ignoreLoopTransitions` is `true`, then loop transitions (from and to the same status) are ignored. * `includeCurrentStatus` is `true`, then the current issue status is also checked. * `mostRecentStatusOnly` is `true`, then only the issue's preceding status (the one immediately before the current status) is checked. * `reverseCondition` is `true`, then the status must not be present. ##### Separation of duties condition ##### A condition that prevents a user to perform the transition, if the user has already performed a transition on the issue. { "type": "SeparationOfDutiesCondition", "configuration": { "fromStatus": { "id": "5" }, "toStatus": { "id": "6" } } } * `fromStatus` OPTIONAL. An object containing the ID of the source status of the transition that is blocked. If omitted any transition to `toStatus` is blocked. * `toStatus` An object containing the ID of the target status of the transition that is blocked. ##### Subtask blocking condition ##### A condition that blocks transition on a parent issue if any of its subtasks are in any of one or more statuses. { "type": "SubTaskBlockingCondition", "configuration": { "statuses": [ { "id": "1" }, { "id": "3" } ] } } * `statuses` A list of objects containing status IDs. ##### User is in any group condition ##### A condition that allows users belonging to any group from a list of groups to execute a transition. { "type": "UserInAnyGroupCondition", "configuration": { "groups": [ "administrators", "atlassian-addons-admin" ] } } * `groups` A list of group names. ##### User is in any project role condition ##### A condition that allows only users with at least one project roles from a list of project roles to execute a transition. { "type": "InAnyProjectRoleCondition", "configuration": { "projectRoles": [ { "id": "10002" }, { "id": "10003" }, { "id": "10012" }, { "id": "10013" } ] } } * `projectRoles` A list of objects containing project role IDs. ##### User is in custom field condition ##### A condition that allows only users listed in a given custom field to execute the transition. { "type": "UserIsInCustomFieldCondition", "configuration": { "allowUserInField": false, "fieldId": "customfield_10010" } } * `allowUserInField` If `true` only a user who is listed in `fieldId` can perform the transition, otherwise, only a user who is not listed in `fieldId` can perform the transition. * `fieldId` The ID of the field containing the list of users. ##### User is in group condition ##### A condition that allows users belonging to a group to execute a transition. { "type": "UserInGroupCondition", "configuration": { "group": "administrators" } } * `group` The name of the group. ##### User is in group custom field condition ##### A condition that allows users belonging to a group specified in a custom field to execute a transition. { "type": "InGroupCFCondition", "configuration": { "fieldId": "customfield_10012" } } * `fieldId` The ID of the field. Allowed field types: * `com.atlassian.jira.plugin.system.customfieldtypes:multigrouppicker` * `com.atlassian.jira.plugin.system.customfieldtypes:grouppicker` * `com.atlassian.jira.plugin.system.customfieldtypes:select` * `com.atlassian.jira.plugin.system.customfieldtypes:multiselect` * `com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons` * `com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes` * `com.pyxis.greenhopper.jira:gh-epic-status` ##### User is in project role condition ##### A condition that allows users with a project role to execute a transition. { "type": "InProjectRoleCondition", "configuration": { "projectRole": { "id": "10002" } } } * `projectRole` An object containing the ID of a project role. ##### Value field condition ##### A conditions that allows a transition to execute if the value of a field is equal to a constant value or simply set. { "type": "ValueFieldCondition", "configuration": { "fieldId": "assignee", "fieldValue": "qm:6e1ecee6-8e64-4db6-8c85-916bb3275f51:54b56885-2bd2-4381-8239-78263442520f", "comparisonType": "NUMBER", "comparator": "=" } } * `fieldId` The ID of a field used in the comparison. * `fieldValue` The expected value of the field. * `comparisonType` The type of the comparison. Allowed values: `STRING`, `NUMBER`, `DATE`, `DATE_WITHOUT_TIME`, or `OPTIONID`. * `comparator` One of the supported comparator: `>`, `>=`, `=`, `<=`, `<`, `!=`. **Notes:** * If you choose the comparison type `STRING`, only `=` and `!=` are valid options. * You may leave `fieldValue` empty when comparison type is `!=` to indicate that a value is required in the field. * For date fields without time format values as `yyyy-MM-dd`, and for those with time as `yyyy-MM-dd HH:mm`. For example, for July 16 2021 use `2021-07-16`, for 8:05 AM use `2021-07-16 08:05`, and for 4 PM: `2021-07-16 16:00`. #### Validators #### Validators check that any input made to the transition is valid before the transition is performed. ##### Date field validator ##### A validator that compares two dates. { "type": "DateFieldValidator", "configuration": { "comparator": ">", "date1": "updated", "date2": "created", "expression": "1d", "includeTime": true } } * `comparator` One of the supported comparator: `>`, `>=`, `=`, `<=`, `<`, or `!=`. * `date1` The date field to validate. Allowed field types: * `com.atlassian.jira.plugin.system.customfieldtypes:datepicker` * `com.atlassian.jira.plugin.system.customfieldtypes:datetime` * `com.atlassian.jpo:jpo-custom-field-baseline-end` * `com.atlassian.jpo:jpo-custom-field-baseline-start` * `duedate` * `created` * `updated` * `resolutiondate` * `date2` The second date field. Required, if `expression` is not passed. Allowed field types: * `com.atlassian.jira.plugin.system.customfieldtypes:datepicker` * `com.atlassian.jira.plugin.system.customfieldtypes:datetime` * `com.atlassian.jpo:jpo-custom-field-baseline-end` * `com.atlassian.jpo:jpo-custom-field-baseline-start` * `duedate` * `created` * `updated` * `resolutiondate` * `expression` An expression specifying an offset. Required, if `date2` is not passed. Offsets are built with a number, with `-` as prefix for the past, and one of these time units: `d` for day, `w` for week, `m` for month, or `y` for year. For example, -2d means two days into the past and 1w means one week into the future. The `now` keyword enables a comparison with the current date. * `includeTime` If `true`, then the time part of the data is included for the comparison. If the field doesn't have a time part, 00:00:00 is used. ##### Windows date validator ##### A validator that checks that a date falls on or after a reference date and before or on the reference date plus a number of days. { "type": "WindowsDateValidator", "configuration": { "date1": "customfield_10009", "date2": "created", "windowsDays": 5 } } * `date1` The date field to validate. Allowed field types: * `com.atlassian.jira.plugin.system.customfieldtypes:datepicker` * `com.atlassian.jira.plugin.system.customfieldtypes:datetime` * `com.atlassian.jpo:jpo-custom-field-baseline-end` * `com.atlassian.jpo:jpo-custom-field-baseline-start` * `duedate` * `created` * `updated` * `resolutiondate` * `date2` The reference date. Allowed field types: * `com.atlassian.jira.plugin.system.customfieldtypes:datepicker` * `com.atlassian.jira.plugin.system.customfieldtypes:datetime` * `com.atlassian.jpo:jpo-custom-field-baseline-end` * `com.atlassian.jpo:jpo-custom-field-baseline-start` * `duedate` * `created` * `updated` * `resolutiondate` * `windowsDays` A positive integer indicating a number of days. ##### Field required validator ##### A validator that checks fields are not empty. By default, if a field is not included in the current context it's ignored and not validated. { "type": "FieldRequiredValidator", "configuration": { "ignoreContext": true, "errorMessage": "Hey", "fieldIds": [ "versions", "customfield_10037", "customfield_10003" ] } } * `ignoreContext` If `true`, then the context is ignored and all the fields are validated. * `errorMessage` OPTIONAL. The error message displayed when one or more fields are empty. A default error message is shown if an error message is not provided. * `fieldIds` The list of fields to validate. ##### Field changed validator ##### A validator that checks that a field value is changed. However, this validation can be ignored for users from a list of groups. { "type": "FieldChangedValidator", "configuration": { "fieldId": "comment", "errorMessage": "Hey", "exemptedGroups": [ "administrators", "atlassian-addons-admin" ] } } * `fieldId` The ID of a field. * `errorMessage` OPTIONAL. The error message displayed if the field is not changed. A default error message is shown if the error message is not provided. * `exemptedGroups` OPTIONAL. The list of groups. ##### Field has single value validator ##### A validator that checks that a multi-select field has only one value. Optionally, the validation can ignore values copied from subtasks. { "type": "FieldHasSingleValueValidator", "configuration": { "fieldId": "attachment, "excludeSubtasks": true } } * `fieldId` The ID of a field. * `excludeSubtasks` If `true`, then values copied from subtasks are ignored. ##### Parent status validator ##### A validator that checks the status of the parent issue of a subtask. Ìf the issue is not a subtask, no validation is performed. { "type": "ParentStatusValidator", "configuration": { "parentStatuses": [ { "id":"1" }, { "id":"2" } ] } } * `parentStatus` The list of required parent issue statuses. ##### Permission validator ##### A validator that checks the user has a permission. { "type": "PermissionValidator", "configuration": { "permissionKey": "ADMINISTER_PROJECTS" } } * `permissionKey` The permission required to perform the transition. Allowed values: [built-in](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-permission-schemes/#built-in-permissions) or app defined permissions. ##### Previous status validator ##### A validator that checks if the issue has held a status. { "type": "PreviousStatusValidator", "configuration": { "mostRecentStatusOnly": false, "previousStatus": { "id": "15" } } } * `mostRecentStatusOnly` If `true`, then only the issue's preceding status (the one immediately before the current status) is checked. * `previousStatus` An object containing the ID of an issue status. ##### Regular expression validator ##### A validator that checks the content of a field against a regular expression. { "type": "RegexpFieldValidator", "configuration": { "regExp": "[0-9]", "fieldId": "customfield_10029" } } * `regExp`A regular expression. * `fieldId` The ID of a field. Allowed field types: * `com.atlassian.jira.plugin.system.customfieldtypes:select` * `com.atlassian.jira.plugin.system.customfieldtypes:multiselect` * `com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons` * `com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes` * `com.atlassian.jira.plugin.system.customfieldtypes:textarea` * `com.atlassian.jira.plugin.system.customfieldtypes:textfield` * `com.atlassian.jira.plugin.system.customfieldtypes:url` * `com.atlassian.jira.plugin.system.customfieldtypes:float` * `com.pyxis.greenhopper.jira:jsw-story-points` * `com.pyxis.greenhopper.jira:gh-epic-status` * `description` * `summary` ##### User permission validator ##### A validator that checks if a user has a permission. Obsolete. You may encounter this validator when getting transition rules and can pass it when updating or creating rules, for example, when you want to duplicate the rules from a workflow on a new workflow. { "type": "UserPermissionValidator", "configuration": { "permissionKey": "BROWSE_PROJECTS", "nullAllowed": false, "username": "TestUser" } } * `permissionKey` The permission to be validated. Allowed values: [built-in](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-permission-schemes/#built-in-permissions) or app defined permissions. * `nullAllowed` If `true`, allows the transition when `username` is empty. * `username` The username to validate against the `permissionKey`. #### Post functions #### Post functions carry out any additional processing required after a Jira workflow transition is executed. ##### Fire issue event function ##### A post function that fires an event that is processed by the listeners. { "type": "FireIssueEventFunction", "configuration": { "event": { "id":"1" } } } **Note:** If provided, this post function overrides the default `FireIssueEventFunction`. Can be included once in a transition. * `event` An object containing the ID of the issue event. ##### Update issue status ##### A post function that sets issue status to the linked status of the destination workflow status. { "type": "UpdateIssueStatusFunction" } **Note:** This post function is a default function in global and directed transitions. It can only be added to the initial transition and can only be added once. ##### Create comment ##### A post function that adds a comment entered during the transition to an issue. { "type": "CreateCommentFunction" } **Note:** This post function is a default function in global and directed transitions. It can only be added to the initial transition and can only be added once. ##### Store issue ##### A post function that stores updates to an issue. { "type": "IssueStoreFunction" } **Note:** This post function can only be added to the initial transition and can only be added once. ##### Assign to current user function ##### A post function that assigns the issue to the current user if the current user has the `ASSIGNABLE_USER` permission. { "type": "AssignToCurrentUserFunction" } **Note:** This post function can be included once in a transition. ##### Assign to lead function ##### A post function that assigns the issue to the project or component lead developer. { "type": "AssignToLeadFunction" } **Note:** This post function can be included once in a transition. ##### Assign to reporter function ##### A post function that assigns the issue to the reporter. { "type": "AssignToReporterFunction" } **Note:** This post function can be included once in a transition. ##### Clear field value function ##### A post function that clears the value from a field. { "type": "ClearFieldValuePostFunction", "configuration": { "fieldId": "assignee" } } * `fieldId` The ID of the field. ##### Copy value from other field function ##### A post function that copies the value of one field to another, either within an issue or from parent to subtask. { "type": "CopyValueFromOtherFieldPostFunction", "configuration": { "sourceFieldId": "assignee", "destinationFieldId": "creator", "copyType": "same" } } * `sourceFieldId` The ID of the source field. * `destinationFieldId` The ID of the destination field. * `copyType` Use `same` to copy the value from a field inside the issue, or `parent` to copy the value from the parent issue. ##### Create Crucible review workflow function ##### A post function that creates a Crucible review for all unreviewed code for the issue. { "type": "CreateCrucibleReviewWorkflowFunction" } **Note:** This post function can be included once in a transition. ##### Set issue security level based on user's project role function ##### A post function that sets the issue's security level if the current user has a project role. { "type": "SetIssueSecurityFromRoleFunction", "configuration": { "projectRole": { "id":"10002" }, "issueSecurityLevel": { "id":"10000" } } } * `projectRole` An object containing the ID of the project role. * `issueSecurityLevel` OPTIONAL. The object containing the ID of the security level. If not passed, then the security level is set to `none`. ##### Trigger a webhook function ##### A post function that triggers a webhook. { "type": "TriggerWebhookFunction", "configuration": { "webhook": { "id": "1" } } } * `webhook` An object containing the ID of the webhook listener to trigger. ##### Update issue custom field function ##### A post function that updates the content of an issue custom field. { "type": "UpdateIssueCustomFieldPostFunction", "configuration": { "mode": "append", "fieldId": "customfield_10003", "fieldValue": "yikes" } } * `mode` Use `replace` to override the field content with `fieldValue` or `append` to add `fieldValue` to the end of the field content. * `fieldId` The ID of the field. * `fieldValue` The update content. ##### Update issue field function ##### A post function that updates a simple issue field. { "type": "UpdateIssueFieldFunction", "configuration": { "fieldId": "assignee", "fieldValue": "5f0c277e70b8a90025a00776" } } * `fieldId` The ID of the field. Allowed field types: * `assignee` * `description` * `environment` * `priority` * `resolution` * `summary` * `timeoriginalestimate` * `timeestimate` * `timespent` * `fieldValue` The update value. * If the `fieldId` is `assignee`, the `fieldValue` should be one of these values: * an account ID. * `automatic`. * a blank string, which sets the value to `unassigned`. #### Connect rules #### Connect rules are conditions, validators, and post functions of a transition that are registered by Connect apps. To create a rule registered by the app, the app must be enabled and the rule's module must exist. { "type": "appKey__moduleKey", "configuration": { "value":"{\"isValid\":\"true\"}" } } * `type` A Connect rule key in a form of `appKey__moduleKey`. * `value` The stringified JSON configuration of a Connect rule. #### Forge rules #### Forge transition rules are not yet supported. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createWorkflow parameters: [] requestBody: content: application/json: example: description: This is a workflow used for Stories and Tasks name: Workflow 1 statuses: - id: "1" properties: jira.issue.editable: "false" - id: "2" - id: "3" transitions: - from: [] name: Created to: "1" type: initial - from: - "1" name: In progress properties: custom-property: custom-value rules: conditions: conditions: - type: RemoteOnlyCondition - configuration: groups: - developers - qa-testers type: UserInAnyGroupCondition operator: AND postFunctions: - type: AssignToCurrentUserFunction screen: id: "10001" to: "2" type: directed - name: Completed rules: postFunctions: - configuration: fieldId: assignee type: ClearFieldValuePostFunction validators: - configuration: parentStatuses: - id: "3" type: ParentStatusValidator - configuration: permissionKey: ADMINISTER_PROJECTS type: PermissionValidator to: "3" type: global schema: $ref: "#/components/schemas/CreateWorkflowDetails" description: The workflow details. required: true responses: "201": content: application/json: example: '{"name":"Workflow 1","entityId":"a633e8d8-a84a-4d25-b97d-3520de554c93"}' schema: $ref: "#/components/schemas/WorkflowIDs" description: Returned if the workflow is created. "400": content: application/json: example: '{"errorMessages":["The request body parameters are missing."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access the workflow configuration."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["Status with ID 10000 was not found"],"errors":{}}' description: Returned if one or more statuses is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create workflow tags: - Workflows x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow:jira - read:workflow:jira state: Beta x-experimental: true /rest/api/3/workflow/rule/config: get: deprecated: false description: |- Returns a [paginated](#pagination) list of workflows with transition rules. The workflows can be filtered to return only those containing workflow transition rules: * of one or more transition rule types, such as [workflow post functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/). * matching one or more transition rule keys. Only workflows containing transition rules created by the calling [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) app are returned. Due to server-side optimizations, workflows with an empty list of rules may be returned; these workflows can be ignored. **[Permissions](#permissions) required:** Only [Connect](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) or [Forge](https://developer.atlassian.com/cloud/jira/platform/index/#forge-apps) apps can use this operation. operationId: getWorkflowTransitionRuleConfigurations 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: 10 format: int32 maximum: 50 type: integer - description: The types of the transition rules to return. in: query name: types required: true schema: items: enum: - postfunction - condition - validator type: string type: array uniqueItems: true - description: The transition rule class keys, as defined in the Connect or the Forge app descriptor, of the transition rules to return. in: query name: keys schema: items: type: string type: array uniqueItems: true - description: "EXPERIMENTAL: The list of workflow names to filter by." in: query name: workflowNames schema: items: maxLength: 50 type: string maxLength: 50 type: array uniqueItems: true - description: "EXPERIMENTAL: The list of `tags` to filter by." in: query name: withTags schema: items: maxLength: 20 type: string maxLength: 20 type: array uniqueItems: true - description: "EXPERIMENTAL: Whether draft or published workflows are returned. If not provided, both workflow types are returned." in: query name: draft schema: type: boolean - description: Use [expand](#expansion) to include additional information in the response. This parameter accepts `transition`, which, for each rule, returns information about the transition the rule is assigned to. in: query name: expand schema: type: string responses: "200": content: application/json: example: '{"maxResults":10,"startAt":0,"total":1,"isLast":true,"values":[{"workflowId":{"name":"My Workflow name","draft":false},"postFunctions":[{"id":"b4d6cbdc-59f5-11e9-8647-d663bd873d93","key":"postfunction-key","configuration":{"value":"{ \"color\": \"red\" }","disabled":false},"transition":{"id":1,"name":"Open"}}],"conditions":[{"id":"d663bd873d93-59f5-11e9-8647-b4d6cbdc","key":"condition-key","configuration":{"value":"{ \"size\": \"medium\" }","disabled":false},"transition":{"id":1,"name":"Open"}}],"validators":[{"id":"11e9-59f5-b4d6cbdc-8647-d663bd873d93","key":"validator-key","configuration":{"value":"\"{ \\\"shape\\\": \\\"square\\\" }\"","disabled":false},"transition":{"id":1,"name":"Open"}}]}]}' schema: $ref: "#/components/schemas/PageBeanWorkflowTransitionRules" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the caller is not a Connect or a Forge app. "404": description: Returned if any transition rule type is not supported. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get workflow transition rule configurations tags: - Workflow transition rules x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow:jira state: Beta put: deprecated: false description: |- Updates configuration of workflow transition rules. The following rule types are supported: * [post functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/) * [conditions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-condition/) * [validators](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-validator/) Only rules created by the calling Connect app can be updated. To assist with app migration, this operation can be used to: * Disable a rule. * Add a `tag`. Use this to filter rules in the [Get workflow transition rule configurations](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-workflow-transition-rules/#api-rest-api-3-workflow-rule-config-get). Rules are enabled if the `disabled` parameter is not provided. **[Permissions](#permissions) required:** Only Connect apps can use this operation. operationId: updateWorkflowTransitionRuleConfigurations parameters: [] requestBody: content: application/json: example: workflows: - conditions: - configuration: disabled: false value: '{ "size": "medium" }' id: d663bd873d93-59f5-11e9-8647-b4d6cbdc postFunctions: - configuration: disabled: false value: '{ "color": "red" }' id: b4d6cbdc-59f5-11e9-8647-d663bd873d93 validators: - configuration: disabled: false value: '{ "shape": "square" }' id: 11e9-59f5-b4d6cbdc-8647-d663bd873d93 workflowId: draft: false name: My Workflow name schema: $ref: "#/components/schemas/WorkflowTransitionRulesUpdate" required: true responses: "200": content: application/json: example: '{"updateResults":[{"workflowId":{"name":"Workflow with one rule not updated","draft":false},"ruleUpdateErrors":{"example-rule-id":["The rule with this id does not exist: example-rule-id"]},"updateErrors":[]},{"workflowId":{"name":"Workflow with all rules successfully updated","draft":true},"ruleUpdateErrors":{},"updateErrors":[]},{"workflowId":{"name":"Non-existing workflow","draft":false},"ruleUpdateErrors":{},"updateErrors":["Workflow not found: WorkflowIdBean{name=Non-existing workflow, draft=false}"]}]}' schema: $ref: "#/components/schemas/WorkflowTransitionRulesUpdateErrors" description: Returned if the request is successful. "400": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the caller is not a Connect app. security: - basicAuth: [] summary: Update workflow transition rule configurations tags: - Workflow transition rules x-atlassian-connect-scope: ADMIN /rest/api/3/workflow/rule/config/delete: put: deprecated: false description: |- Deletes workflow transition rules from one or more workflows. These rule types are supported: * [post functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/) * [conditions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-condition/) * [validators](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-validator/) Only rules created by the calling Connect app can be deleted. **[Permissions](#permissions) required:** Only Connect apps can use this operation. operationId: deleteWorkflowTransitionRuleConfigurations parameters: [] requestBody: content: application/json: example: workflows: - workflowId: draft: false name: Internal support workflow workflowRuleIds: - b4d6cbdc-59f5-11e9-8647-d663bd873d93 - d663bd873d93-59f5-11e9-8647-b4d6cbdc - 11e9-59f5-b4d6cbdc-8647-d663bd873d93 schema: $ref: "#/components/schemas/WorkflowsWithTransitionRulesDetails" required: true responses: "200": content: application/json: example: '{"updateResults":[{"workflowId":{"name":"Workflow with one rule not updated","draft":false},"ruleUpdateErrors":{"example-rule-id":["The rule with this id does not exist: example-rule-id"]},"updateErrors":[]},{"workflowId":{"name":"Workflow with all rules successfully updated","draft":true},"ruleUpdateErrors":{},"updateErrors":[]},{"workflowId":{"name":"Non-existing workflow","draft":false},"ruleUpdateErrors":{},"updateErrors":["Workflow not found: WorkflowIdBean{name=Non-existing workflow, draft=false}"]}]}' schema: $ref: "#/components/schemas/WorkflowTransitionRulesUpdateErrors" description: Returned if the request is successful. "400": content: application/json: example: '{"errors":{},"errorMessages":["Jira Administration permission is required to access workflow configuration."],"httpStatusCode":{"empty":false,"present":true}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the request is invalid. "403": content: application/json: schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the caller is not a Connect app. security: - basicAuth: [] summary: Delete workflow transition rule configurations tags: - Workflow transition rules x-atlassian-connect-scope: ADMIN /rest/api/3/workflow/search: get: deprecated: false description: |- Returns a [paginated](#pagination) list of published classic workflows. When workflow names are specified, details of those workflows are returned. Otherwise, all published classic workflows are returned. This operation does not return next-gen workflows. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getWorkflowsPaginated 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: The name of a workflow to return. To include multiple workflows, provide an ampersand-separated list. For example, `workflowName=name1&workflowName=name2`. in: query name: workflowName schema: items: type: string type: array uniqueItems: true - description: |- Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include: * `transitions` For each workflow, returns information about the transitions inside the workflow. * `transitions.rules` For each workflow transition, returns information about its rules. Transitions are included automatically if this expand is requested. * `transitions.properties` For each workflow transition, returns information about its properties. Transitions are included automatically if this expand is requested. * `statuses` For each workflow, returns information about the statuses inside the workflow. * `statuses.properties` For each workflow status, returns information about its properties. Statuses are included automatically if this expand is requested. * `default` For each workflow, returns information about whether this is the default workflow. * `schemes` For each workflow, returns information about the workflow schemes the workflow is assigned to. * `projects` For each workflow, returns information about the projects the workflow is assigned to, through workflow schemes. * `hasDraftWorkflow` For each workflow, returns information about whether the workflow has a draft version. * `operations` For each workflow, returns information about the actions that can be undertaken on the workflow. in: query name: expand schema: type: string - description: String used to perform a case-insensitive partial match with workflow name. in: query name: queryString schema: type: string - description: |- [Order](#ordering) the results by a field: * `name` Sorts by workflow name. * `created` Sorts by create time. * `updated` Sorts by update time. in: query name: orderBy schema: enum: - name - -name - +name - created - -created - +created - updated - +updated - -updated type: string - description: Filters active and inactive workflows. in: query name: isActive schema: type: boolean responses: "200": content: application/json: example: "{\"maxResults\":1,\"startAt\":0,\"total\":5,\"isLast\":false,\"values\":[{\"id\":{\"name\":\"SCRUM Workflow\",\"entityId\":\"5ed312c5-f7a6-4a78-a1f6-8ff7f307d063\"},\"description\":\"A workflow used for Software projects in the SCRUM methodology\",\"transitions\":[{\"id\":\"5\",\"name\":\"In Progress\",\"description\":\"Start working on the issue.\",\"from\":[\"10\",\"13\"],\"to\":\"14\",\"type\":\"directed\",\"screen\":{\"id\":\"10000\",\"name\":\"Issue screen\"},\"rules\":{\"conditionsTree\":{\"nodeType\":\"compound\",\"operator\":\"AND\",\"conditions\":[{\"nodeType\":\"simple\",\"type\":\"PermissionCondition\",\"configuration\":{\"permissionKey\":\"WORK_ON_ISSUES\"}},{\"nodeType\":\"simple\",\"type\":\"PermissionCondition\",\"configuration\":{\"permissionKey\":\"RESOLVE_ISSUES\"}}]},\"validators\":[{\"type\":\"FieldRequiredValidator\",\"configuration\":{\"ignoreContext\":true,\"errorMessage\":\"A custom error message\",\"fields\":[\"description\",\"assignee\"]}}],\"postFunctions\":[{\"type\":\"UpdateIssueStatusFunction\"},{\"type\":\"GenerateChangeHistoryFunction\"},{\"type\":\"FireIssueEventFunction\"}]},\"properties\":{\"jira.fieldscreen.id\":1}}],\"statuses\":[{\"id\":\"3\",\"name\":\"In Progress\",\"properties\":{\"jira.issue.editable\":\"false\",\"issueEditable\":false}}],\"isDefault\":false,\"schemes\":[{\"id\":\"10001\",\"name\":\"Test Workflow Scheme\"}],\"projects\":[{\"self\":\"project/EX\",\"id\":\"10000\",\"key\":\"EX\",\"name\":\"Example\",\"projectTypeKey\":\"ProjectTypeKey{key='software'}\",\"simplified\":false,\"avatarUrls\":{\"48x48\":\"secure/projectavatar?size=large&pid=10000\",\"24x24\":\"secure/projectavatar?size=small&pid=10000\",\"16x16\":\"secure/projectavatar?size=xsmall&pid=10000\",\"32x32\":\"secure/projectavatar?size=medium&pid=10000\"},\"projectCategory\":{\"id\":\"10000\",\"description\":\"Project category description\",\"name\":\"A project category\"}}],\"hasDraftWorkflow\":true,\"operations\":{\"canEdit\":true,\"canDelete\":false},\"created\":\"2023-04-21T12:39:32.775+0000\",\"updated\":\"2023-04-21T12:39:32.775+0000\"}]}" schema: $ref: "#/components/schemas/PageBeanWorkflow" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access workflows."],"errors":{}}' schema: $ref: "#/components/schemas/ErrorCollection" description: Returned if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-project summary: Get workflows paginated tags: - Workflows x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-project state: Current - scheme: OAuth2 scopes: - read:group:jira - read:issue-security-level:jira - read:project-role:jira - read:screen:jira - read:status:jira - read:user:jira - read:workflow:jira - read:webhook:jira - read:avatar:jira - read:project-category:jira - read:project:jira state: Beta "/rest/api/3/workflow/transitions/{transitionId}/properties": delete: deprecated: false description: |- Deletes a property from a workflow transition. Transition properties are used to change the behavior of a transition. For more information, see [Transition properties](https://confluence.atlassian.com/x/zIhKLg#Advancedworkflowconfiguration-transitionproperties) and [Workflow properties](https://confluence.atlassian.com/x/JYlKLg). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteWorkflowTransitionProperty parameters: - description: The ID of the transition. To get the ID, view the workflow in text mode in the Jira admin settings. The ID is shown next to the transition. in: path name: transitionId required: true schema: format: int64 type: integer - description: The name of the transition property to delete, also known as the name of the property. in: query name: key required: true schema: type: string - description: The name of the workflow that the transition belongs to. in: query name: workflowName required: true schema: type: string - description: The workflow status. Set to `live` for inactive workflows or `draft` for draft workflows. Active workflows cannot be edited. in: query name: workflowMode schema: enum: - live - draft type: string responses: "200": description: 200 response "304": description: Returned if no changes were made by the request. For example, trying to delete a property that cannot be found. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow transition is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete workflow transition property tags: - Workflow transition properties x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:workflow.property:jira state: Beta get: deprecated: false description: |- Returns the properties on a workflow transition. Transition properties are used to change the behavior of a transition. For more information, see [Transition properties](https://confluence.atlassian.com/x/zIhKLg#Advancedworkflowconfiguration-transitionproperties) and [Workflow properties](https://confluence.atlassian.com/x/JYlKLg). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getWorkflowTransitionProperties parameters: - description: The ID of the transition. To get the ID, view the workflow in text mode in the Jira administration console. The ID is shown next to the transition. in: path name: transitionId required: true schema: format: int64 type: integer - description: Some properties with keys that have the *jira.* prefix are reserved, which means they are not editable. To include these properties in the results, set this parameter to *true*. in: query name: includeReservedKeys schema: default: false type: boolean - description: The key of the property being returned, also known as the name of the property. If this parameter is not specified, all properties on the transition are returned. in: query name: key schema: type: string - description: The name of the workflow that the transition belongs to. in: query name: workflowName required: true schema: type: string - description: The workflow status. Set to *live* for active and inactive workflows, or *draft* for draft workflows. in: query name: workflowMode schema: default: live enum: - live - draft type: string responses: "200": content: application/json: example: '[{"key":"jira.i18n.title","value":"some.title","id":"jira.i18n.title"},{"key":"jira.permission","value":"createissue","id":"jira.permission"}]' schema: $ref: "#/components/schemas/WorkflowTransitionProperty" description: 200 response "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have admin permission "404": description: Returned if the workflow transition or property is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get workflow transition properties tags: - Workflow transition properties x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow.property:jira state: Beta post: deprecated: false description: |- Adds a property to a workflow transition. Transition properties are used to change the behavior of a transition. For more information, see [Transition properties](https://confluence.atlassian.com/x/zIhKLg#Advancedworkflowconfiguration-transitionproperties) and [Workflow properties](https://confluence.atlassian.com/x/JYlKLg). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createWorkflowTransitionProperty parameters: - description: The ID of the transition. To get the ID, view the workflow in text mode in the Jira admin settings. The ID is shown next to the transition. in: path name: transitionId required: true schema: format: int64 type: integer - description: The key of the property being added, also known as the name of the property. Set this to the same value as the `key` defined in the request body. in: query name: key required: true schema: type: string - description: The name of the workflow that the transition belongs to. in: query name: workflowName required: true schema: type: string - description: The workflow status. Set to *live* for inactive workflows or *draft* for draft workflows. Active workflows cannot be edited. in: query name: workflowMode schema: default: live enum: - live - draft type: string requestBody: content: application/json: example: value: createissue schema: $ref: "#/components/schemas/WorkflowTransitionProperty" required: true responses: "200": content: application/json: example: '{"key":"jira.i18n.title","value":"some.title","id":"jira.i18n.title"}' schema: $ref: "#/components/schemas/WorkflowTransitionProperty" description: 200 response "400": description: Returned if a workflow property with the same key is present on the transition. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow transition is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Create workflow transition property tags: - Workflow transition properties x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow.property:jira - read:workflow.property:jira state: Beta put: deprecated: false description: |- Updates a workflow transition by changing the property value. Trying to update a property that does not exist results in a new property being added to the transition. Transition properties are used to change the behavior of a transition. For more information, see [Transition properties](https://confluence.atlassian.com/x/zIhKLg#Advancedworkflowconfiguration-transitionproperties) and [Workflow properties](https://confluence.atlassian.com/x/JYlKLg). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateWorkflowTransitionProperty parameters: - description: The ID of the transition. To get the ID, view the workflow in text mode in the Jira admin settings. The ID is shown next to the transition. in: path name: transitionId required: true schema: format: int64 type: integer - description: The key of the property being updated, also known as the name of the property. Set this to the same value as the `key` defined in the request body. in: query name: key required: true schema: type: string - description: The name of the workflow that the transition belongs to. in: query name: workflowName required: true schema: type: string - description: The workflow status. Set to `live` for inactive workflows or `draft` for draft workflows. Active workflows cannot be edited. in: query name: workflowMode schema: enum: - live - draft type: string requestBody: content: application/json: example: value: createissue schema: $ref: "#/components/schemas/WorkflowTransitionProperty" required: true responses: "200": content: application/json: example: '{"key":"jira.i18n.title","value":"some.title","id":"jira.i18n.title"}' schema: $ref: "#/components/schemas/WorkflowTransitionProperty" description: 200 response "304": description: Returned if no changes were made by the request. For example, attempting to update a property with its current value. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow transition is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update workflow transition property tags: - Workflow transition properties x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow.property:jira - read:workflow.property:jira state: Beta "/rest/api/3/workflow/{entityId}": delete: deprecated: false description: |- Deletes a workflow. The workflow cannot be deleted if it is: * an active workflow. * a system workflow. * associated with any workflow scheme. * associated with any draft workflow scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteInactiveWorkflow parameters: - description: The entity ID of the workflow. in: path name: entityId required: true schema: type: string responses: "204": description: Returned if the workflow is deleted. "400": content: application/json: example: '{"errorMessages":["Cannot delete an active workflow."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access the workflow configuration."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The workflow was not found."],"errors":{}}' description: Returned if the workflow is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete inactive workflow tags: - Workflows x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:workflow:jira state: Beta x-experimental: true /rest/api/3/workflowscheme: get: deprecated: false description: |- Returns a [paginated](#pagination) list of all workflow schemes, not including draft workflow schemes. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getAllWorkflowSchemes 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 responses: "200": content: application/json: example: '{"maxResults":50,"startAt":0,"total":2,"isLast":true,"values":[{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"},{"id":101011,"name":"Another example workflow scheme","description":"The description of the another example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101011"}]}' schema: $ref: "#/components/schemas/PageBeanWorkflowScheme" 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 workflow schemes tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta post: deprecated: false description: |- Creates a workflow scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createWorkflowScheme parameters: [] requestBody: content: application/json: example: defaultWorkflow: jira description: The description of the example workflow scheme. issueTypeMappings: "10000": scrum workflow "10001": builds workflow name: Example workflow scheme schema: $ref: "#/components/schemas/WorkflowScheme" required: true responses: "201": content: application/json: example: '{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"draft":false,"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "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: Create workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira - read:workflow-scheme:jira state: Beta /rest/api/3/workflowscheme/project: get: deprecated: false description: |- Returns a list of the workflow schemes associated with a list of projects. Each returned workflow scheme includes a list of the requested projects associated with it. Any team-managed or non-existent projects in the request are ignored and no errors are returned. If the project is associated with the `Default Workflow Scheme` no ID is returned. This is because the way the `Default Workflow Scheme` is stored means it has no ID. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getWorkflowSchemeProjectAssociations parameters: - description: "The ID of a project to return the workflow schemes for. To include multiple projects, provide an ampersand-Jim: oneseparated list. For example, `projectId=10000&projectId=10001`." in: query name: projectId required: true schema: items: example: 10010 format: int64 type: integer maxItems: 100 minItems: 1 type: array uniqueItems: true responses: "200": content: application/json: example: '{"values":[{"projectIds":["10010","10020"],"workflowScheme":{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}}]}' schema: $ref: "#/components/schemas/ContainerOfWorkflowSchemeAssociations" description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":[],"errors":{"projectId":"The ID of a project has to be provided."}}' description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access workflow scheme associations."],"errors":{}}' description: Returned if the user does not have the necessary permission. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get workflow scheme project associations tags: - Workflow scheme project associations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - read:workflow:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta put: deprecated: false description: |- Assigns a workflow scheme to a project. This operation is performed only when there are no issues in the project. Workflow schemes can only be assigned to classic projects. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: assignSchemeToProject parameters: [] requestBody: content: application/json: example: projectId: "10001" workflowSchemeId: "10032" schema: $ref: "#/components/schemas/WorkflowSchemeProjectAssociation" required: true responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": content: application/json: example: '{"errorMessages":["Only classic projects can have workflow schemes assigned."],"errors":{}}' description: Returned if the request is not valid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": content: application/json: example: '{"errorMessages":["Only Jira administrators can access workflow scheme associations."],"errors":{}}' description: Returned if the user does not have the required permissions. "404": content: application/json: example: '{"errorMessages":["The workflow scheme was not found."],"errors":{}}' description: Returned if the workflow scheme or the project are not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Assign workflow scheme to project tags: - Workflow scheme project associations x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow-scheme:jira state: Beta x-experimental: true "/rest/api/3/workflowscheme/{id}": delete: deprecated: false description: |- Deletes a workflow scheme. Note that a workflow scheme cannot be deleted if it is active (that is, being used by at least one project). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteWorkflowScheme parameters: - description: The ID of the workflow scheme. Find this ID by editing the desired workflow scheme in Jira. The ID is shown in the URL as `schemeId`. For example, *schemeId=10301*. in: path name: id required: true schema: format: int64 type: integer responses: "204": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the scheme is active. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:workflow-scheme:jira state: Beta get: deprecated: false description: |- Returns a workflow scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getWorkflowScheme parameters: - description: The ID of the workflow scheme. Find this ID by editing the desired workflow scheme in Jira. The ID is shown in the URL as `schemeId`. For example, *schemeId=10301*. in: path name: id required: true schema: format: int64 type: integer - description: Returns the workflow scheme's draft rather than scheme itself, if set to true. If the workflow scheme does not have a draft, then the workflow scheme is returned. in: query name: returnDraftIfExists schema: default: false type: boolean responses: "200": content: application/json: example: '{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"draft":false,"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}' schema: $ref: "#/components/schemas/WorkflowScheme" 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. "404": description: Returned if the workflow scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta put: deprecated: false description: |- Updates a workflow scheme, including the name, default workflow, issue type to project mappings, and more. If the workflow scheme is active (that is, being used by at least one project), then a draft workflow scheme is created or updated instead, provided that `updateDraftIfNeeded` is set to `true`. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateWorkflowScheme parameters: - description: The ID of the workflow scheme. Find this ID by editing the desired workflow scheme in Jira. The ID is shown in the URL as `schemeId`. For example, *schemeId=10301*. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: defaultWorkflow: jira description: The description of the example workflow scheme. issueTypeMappings: "10000": scrum workflow name: Example workflow scheme updateDraftIfNeeded: false schema: $ref: "#/components/schemas/WorkflowScheme" required: true responses: "200": content: application/json: example: '{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"draft":false,"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - write:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta "/rest/api/3/workflowscheme/{id}/createdraft": post: deprecated: false description: |- Create a draft workflow scheme from an active workflow scheme, by copying the active workflow scheme. Note that an active workflow scheme can only have one draft workflow scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: createWorkflowSchemeDraftFromParent parameters: - description: The ID of the active workflow scheme that the draft is created from. in: path name: id required: true schema: format: int64 type: integer responses: "201": content: application/json: example: '{"id":17218781,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"scrum workflow","issueTypeMappings":{"10000":"jira","10001":"jira"},"originalDefaultWorkflow":"jira","originalIssueTypeMappings":{"10001":"builds workflow"},"draft":true,"lastModifiedUser":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}},"lastModified":"Today 6:38 PM","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/17218781/draft"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "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: Create draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:group:jira - read:issue-security-level:jira - read:project-role:jira - read:screen:jira - read:status:jira - read:user:jira - read:workflow-scheme:jira - read:workflow:jira - write:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:issue-type:jira - read:project-category:jira - read:project:jira state: Beta "/rest/api/3/workflowscheme/{id}/default": delete: deprecated: false description: |- Resets the default workflow for a workflow scheme. That is, the default workflow is set to Jira's system workflow (the *jira* workflow). Note that active workflow schemes cannot be edited. If the workflow scheme is active, set `updateDraftIfNeeded` to `true` and a draft workflow scheme is created or updated with the default workflow reset. The draft workflow scheme can be published in Jira. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteDefaultWorkflow parameters: - description: The ID of the workflow scheme. in: path name: id required: true schema: format: int64 type: integer - description: Set to true to create or update the draft of a workflow scheme and delete the mapping from the draft, when the workflow scheme cannot be edited. Defaults to `false`. in: query name: updateDraftIfNeeded schema: type: boolean responses: "200": content: application/json: example: '{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"draft":false,"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the workflow scheme cannot be edited and `updateDraftIfNeeded` is not `true`. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete default workflow tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - write:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta get: deprecated: false description: |- Returns the default workflow for a workflow scheme. The default workflow is the workflow that is assigned any issue types that have not been mapped to any other workflow. The default workflow has *All Unassigned Issue Types* listed in its issue types for the workflow scheme in Jira. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getDefaultWorkflow parameters: - description: The ID of the workflow scheme. in: path name: id required: true schema: format: int64 type: integer - description: Set to `true` to return the default workflow for the workflow scheme's draft rather than scheme itself. If the workflow scheme does not have a draft, then the default workflow for the workflow scheme is returned. in: query name: returnDraftIfExists schema: default: false type: boolean responses: "200": content: application/json: example: '{"workflow":"jira"}' schema: $ref: "#/components/schemas/DefaultWorkflow" 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. "404": description: Returned if the workflow scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get default workflow tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - read:workflow:jira state: Beta put: deprecated: false description: |- Sets the default workflow for a workflow scheme. Note that active workflow schemes cannot be edited. If the workflow scheme is active, set `updateDraftIfNeeded` to `true` in the request object and a draft workflow scheme is created or updated with the new default workflow. The draft workflow scheme can be published in Jira. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateDefaultWorkflow parameters: - description: The ID of the workflow scheme. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: updateDraftIfNeeded: false workflow: jira schema: $ref: "#/components/schemas/DefaultWorkflow" description: The new default workflow. required: true responses: "200": content: application/json: example: '{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"draft":false,"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the workflow scheme cannot be edited and `updateDraftIfNeeded` is not `true`. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update default workflow tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - write:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta "/rest/api/3/workflowscheme/{id}/draft": delete: deprecated: false description: |- Deletes a draft workflow scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteWorkflowSchemeDraft parameters: - description: The ID of the active workflow scheme that the draft was created from. in: path name: id required: true schema: format: int64 type: integer responses: "204": 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.. "404": description: |- Returned if: * the original active workflow scheme is not found. * the original active workflow scheme does not have a draft. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:workflow-scheme:jira state: Beta get: deprecated: false description: |- Returns the draft workflow scheme for an active workflow scheme. Draft workflow schemes allow changes to be made to the active workflow schemes: When an active workflow scheme is updated, a draft copy is created. The draft is modified, then the changes in the draft are copied back to the active workflow scheme. See [Configuring workflow schemes](https://confluence.atlassian.com/x/tohKLg) for more information. Note that: * Only active workflow schemes can have draft workflow schemes. * An active workflow scheme can only have one draft workflow scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getWorkflowSchemeDraft parameters: - description: The ID of the active workflow scheme that the draft was created from. in: path name: id required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"id":17218781,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"scrum workflow","issueTypeMappings":{"10000":"jira","10001":"jira"},"originalDefaultWorkflow":"jira","originalIssueTypeMappings":{"10001":"builds workflow"},"draft":true,"lastModifiedUser":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}},"lastModified":"Today 6:38 PM","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/17218781/draft"}' schema: $ref: "#/components/schemas/WorkflowScheme" 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. "404": description: |- Returned if: * the original active workflow scheme is not found. * the original active workflow scheme does not have a draft. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:group:jira - read:issue-security-level:jira - read:project-role:jira - read:screen:jira - read:status:jira - read:user:jira - read:workflow-scheme:jira - read:workflow:jira - read:application-role:jira - read:avatar:jira - read:issue-type:jira - read:project-category:jira - read:project:jira state: Beta put: deprecated: false description: |- Updates a draft workflow scheme. If a draft workflow scheme does not exist for the active workflow scheme, then a draft is created. Note that an active workflow scheme can only have one draft workflow scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateWorkflowSchemeDraft parameters: - description: The ID of the active workflow scheme that the draft was created from. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: defaultWorkflow: jira description: The description of the example workflow scheme. issueTypeMappings: "10000": scrum workflow name: Example workflow scheme updateDraftIfNeeded: false schema: $ref: "#/components/schemas/WorkflowScheme" required: true responses: "200": content: application/json: example: '{"id":17218781,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"scrum workflow","issueTypeMappings":{"10000":"jira","10001":"jira"},"originalDefaultWorkflow":"jira","originalIssueTypeMappings":{"10001":"builds workflow"},"draft":true,"lastModifiedUser":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}},"lastModified":"Today 6:38 PM","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/17218781/draft"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: |- Returned if: * the original active workflow scheme is not found. * the original active workflow scheme does not have a draft. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:group:jira - read:issue-security-level:jira - read:project-role:jira - read:screen:jira - read:status:jira - read:user:jira - read:workflow-scheme:jira - read:workflow:jira - write:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:issue-type:jira - read:project-category:jira - read:project:jira state: Beta "/rest/api/3/workflowscheme/{id}/draft/default": delete: deprecated: false description: |- Resets the default workflow for a workflow scheme's draft. That is, the default workflow is set to Jira's system workflow (the *jira* workflow). **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteDraftDefaultWorkflow parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"id":17218781,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"scrum workflow","issueTypeMappings":{"10000":"jira","10001":"jira"},"originalDefaultWorkflow":"jira","originalIssueTypeMappings":{"10001":"builds workflow"},"draft":true,"lastModifiedUser":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}},"lastModified":"Today 6:38 PM","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/17218781/draft"}' schema: $ref: "#/components/schemas/WorkflowScheme" 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. "404": description: |- Returned if any of the following is true: * The workflow scheme is not found. * The workflow scheme does not have a draft. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete draft default workflow tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira - read:workflow-scheme:jira - read:workflow:jira state: Beta get: deprecated: false description: |- Returns the default workflow for a workflow scheme's draft. The default workflow is the workflow that is assigned any issue types that have not been mapped to any other workflow. The default workflow has *All Unassigned Issue Types* listed in its issue types for the workflow scheme in Jira. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getDraftDefaultWorkflow parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer responses: "200": content: application/json: example: '{"workflow":"jira"}' schema: $ref: "#/components/schemas/DefaultWorkflow" 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.. "404": description: |- Returned if any of the following is true: * The workflow scheme is not found. * The workflow scheme does not have a draft. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get draft default workflow tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - read:workflow:jira state: Beta put: deprecated: false description: |- Sets the default workflow for a workflow scheme's draft. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateDraftDefaultWorkflow parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer requestBody: content: application/json: example: updateDraftIfNeeded: false workflow: jira schema: $ref: "#/components/schemas/DefaultWorkflow" description: The object for the new default workflow. required: true responses: "200": content: application/json: example: '{"id":17218781,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"scrum workflow","issueTypeMappings":{"10000":"jira","10001":"jira"},"originalDefaultWorkflow":"jira","originalIssueTypeMappings":{"10001":"builds workflow"},"draft":true,"lastModifiedUser":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}},"lastModified":"Today 6:38 PM","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/17218781/draft"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: |- Returned if any of the following is true: * The workflow scheme is not found. * The workflow scheme does not have a draft. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Update draft default workflow tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow-scheme:jira - read:workflow-scheme:jira - read:workflow:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta "/rest/api/3/workflowscheme/{id}/draft/issuetype/{issueType}": delete: deprecated: false description: |- Deletes the issue type-workflow mapping for an issue type in a workflow scheme's draft. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteWorkflowSchemeDraftIssueType parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer - description: The ID of the issue type. in: path name: issueType required: true schema: type: string responses: "200": content: application/json: example: '{"id":17218781,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"scrum workflow","issueTypeMappings":{"10000":"jira","10001":"jira"},"originalDefaultWorkflow":"jira","originalIssueTypeMappings":{"10001":"builds workflow"},"draft":true,"lastModifiedUser":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}},"lastModified":"Today 6:38 PM","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/17218781/draft"}' schema: $ref: "#/components/schemas/WorkflowScheme" 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. "404": description: Returned if the workflow scheme or issue type is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete workflow for issue type in draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira - read:workflow-scheme:jira - read:workflow:jira state: Beta get: deprecated: false description: |- Returns the issue type-workflow mapping for an issue type in a workflow scheme's draft. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getWorkflowSchemeDraftIssueType parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer - description: The ID of the issue type. in: path name: issueType required: true schema: type: string responses: "200": content: application/json: example: '{"issueType":"10000","workflow":"jira"}' schema: $ref: "#/components/schemas/IssueTypeWorkflowMapping" 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. "404": description: Returned if the workflow scheme or issue type is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get workflow for issue type in draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - read:workflow:jira - read:issue-type:jira state: Beta put: deprecated: false description: |- Sets the workflow for an issue type in a workflow scheme's draft. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setWorkflowSchemeDraftIssueType parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer - description: The ID of the issue type. in: path name: issueType required: true schema: type: string requestBody: content: application/json: example: issueType: "10000" updateDraftIfNeeded: false workflow: jira schema: $ref: "#/components/schemas/IssueTypeWorkflowMapping" description: The issue type-project mapping. required: true responses: "200": content: application/json: example: '{"id":17218781,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"scrum workflow","issueTypeMappings":{"10000":"jira","10001":"jira"},"originalDefaultWorkflow":"jira","originalIssueTypeMappings":{"10001":"builds workflow"},"draft":true,"lastModifiedUser":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","key":"","accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","name":"","emailAddress":"mia@example.com","avatarUrls":{"48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32"},"displayName":"Mia Krystof","active":true,"timeZone":"Australia/Sydney","groups":{"size":3,"items":[]},"applicationRoles":{"size":1,"items":[]}},"lastModified":"Today 6:38 PM","self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/17218781/draft"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow scheme or issue type is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set workflow for issue type in draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow-scheme:jira - read:workflow-scheme:jira - read:workflow:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta "/rest/api/3/workflowscheme/{id}/draft/publish": post: deprecated: false description: |- Publishes a draft workflow scheme. Where the draft workflow includes new workflow statuses for an issue type, mappings are provided to update issues with the original workflow status to the new workflow status. This operation is [asynchronous](#async). Follow the `location` link in the response to determine the status of the task and use [Get task](#api-rest-api-3-task-taskId-get) to obtain updates. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: publishDraftWorkflowScheme parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer - description: Whether the request only performs a validation. in: query name: validateOnly schema: default: false type: boolean requestBody: content: application/json: example: statusMappings: - issueTypeId: "10001" newStatusId: "1" statusId: "3" - issueTypeId: "10001" newStatusId: "2" statusId: "2" - issueTypeId: "10002" newStatusId: "10003" statusId: "10005" - issueTypeId: "10003" newStatusId: "1" statusId: "4" schema: $ref: "#/components/schemas/PublishDraftWorkflowScheme" description: Details of the status mappings. required: true responses: "204": description: Returned if the request is only for validation and is successful. "303": content: application/json: schema: $ref: "#/components/schemas/TaskProgressBeanObject" description: Returned if the request is successful. "400": content: application/json: example: "{\"errorMessages\":[\"Issue type with ID '2','4' is missing the mappings required for statuses with IDs 10004.\"],\"errors\":{}}" description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": content: application/json: example: '{"errorMessages":["Draft workflow scheme was not found."],"errors":{}}' description: |- Returned if any of these are true: * The workflow scheme is not found. * The workflow scheme does not have a draft. * A new status in the draft workflow scheme is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Publish draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow-scheme:jira state: Beta x-experimental: true "/rest/api/3/workflowscheme/{id}/draft/workflow": delete: deprecated: false description: |- Deletes the workflow-issue type mapping for a workflow in a workflow scheme's draft. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteDraftWorkflowMapping parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer - description: The name of the workflow. in: query name: workflowName required: true schema: type: string responses: "200": 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. "404": description: |- Returned if any of the following is true: * The workflow scheme is not found. * The workflow scheme does not have a draft. * The workflow is not found. * The workflow is not specified. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete issue types for workflow in draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:workflow-scheme:jira state: Beta get: deprecated: false description: |- Returns the workflow-issue type mappings for a workflow scheme's draft. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getDraftWorkflow parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer - description: The name of a workflow in the scheme. Limits the results to the workflow-issue type mapping for the specified workflow. in: query name: workflowName schema: type: string responses: "200": content: application/json: example: '{"workflow":"jira","issueTypes":["10000","10001"],"defaultMapping":false}' schema: $ref: "#/components/schemas/IssueTypesWorkflowMapping" 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. "404": description: Returned if either the workflow scheme or workflow (if specified) is not found. session. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue types for workflows in draft workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - read:workflow:jira - read:issue-type:jira state: Beta put: deprecated: false description: |- Sets the issue types for a workflow in a workflow scheme's draft. The workflow can also be set as the default workflow for the draft workflow scheme. Unmapped issues types are mapped to the default workflow. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateDraftWorkflowMapping parameters: - description: The ID of the workflow scheme that the draft belongs to. in: path name: id required: true schema: format: int64 type: integer - description: The name of the workflow. in: query name: workflowName required: true schema: type: string requestBody: content: application/json: example: issueTypes: - "10000" updateDraftIfNeeded: true workflow: jira schema: $ref: "#/components/schemas/IssueTypesWorkflowMapping" required: true responses: "200": content: application/json: example: '{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"draft":false,"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: |- Returned if any of the following is true: * The workflow scheme is not found. * The workflow scheme does not have a draft. * The workflow is not found. * The workflow is not specified. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set issue types for workflow in workflow scheme tags: - Workflow scheme drafts x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow-scheme:jira - read:workflow-scheme:jira - read:workflow:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta "/rest/api/3/workflowscheme/{id}/issuetype/{issueType}": delete: deprecated: false description: |- Deletes the issue type-workflow mapping for an issue type in a workflow scheme. Note that active workflow schemes cannot be edited. If the workflow scheme is active, set `updateDraftIfNeeded` to `true` and a draft workflow scheme is created or updated with the issue type-workflow mapping deleted. The draft workflow scheme can be published in Jira. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteWorkflowSchemeIssueType parameters: - description: The ID of the workflow scheme. in: path name: id required: true schema: format: int64 type: integer - description: The ID of the issue type. in: path name: issueType required: true schema: type: string - description: Set to true to create or update the draft of a workflow scheme and update the mapping in the draft, when the workflow scheme cannot be edited. Defaults to `false`. in: query name: updateDraftIfNeeded schema: type: boolean responses: "200": content: application/json: example: '{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"draft":false,"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the workflow cannot be edited and `updateDraftIfNeeded` is false. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow scheme or issue type is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete workflow for issue type in workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:workflow-scheme:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira - read:workflow-scheme:jira - read:workflow:jira state: Beta get: deprecated: false description: |- Returns the issue type-workflow mapping for an issue type in a workflow scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getWorkflowSchemeIssueType parameters: - description: The ID of the workflow scheme. in: path name: id required: true schema: format: int64 type: integer - description: The ID of the issue type. in: path name: issueType required: true schema: type: string - description: Returns the mapping from the workflow scheme's draft rather than the workflow scheme, if set to true. If no draft exists, the mapping from the workflow scheme is returned. in: query name: returnDraftIfExists schema: default: false type: boolean responses: "200": content: application/json: example: '{"issueType":"10000","workflow":"jira"}' schema: $ref: "#/components/schemas/IssueTypeWorkflowMapping" 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. "404": description: Returned if the workflow scheme or issue type is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get workflow for issue type in workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - read:workflow:jira - read:issue-type:jira state: Beta put: deprecated: false description: |- Sets the workflow for an issue type in a workflow scheme. Note that active workflow schemes cannot be edited. If the workflow scheme is active, set `updateDraftIfNeeded` to `true` in the request body and a draft workflow scheme is created or updated with the new issue type-workflow mapping. The draft workflow scheme can be published in Jira. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: setWorkflowSchemeIssueType parameters: - description: The ID of the workflow scheme. in: path name: id required: true schema: format: int64 type: integer - description: The ID of the issue type. in: path name: issueType required: true schema: type: string requestBody: content: application/json: example: issueType: "10000" updateDraftIfNeeded: false workflow: jira schema: $ref: "#/components/schemas/IssueTypeWorkflowMapping" description: The issue type-project mapping. required: true responses: "200": content: application/json: example: '{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"draft":false,"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the workflow cannot be edited and `updateDraftIfNeeded` is false. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: Returned if the workflow scheme or issue type is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set workflow for issue type in workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow-scheme:jira - read:workflow-scheme:jira - read:workflow:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta "/rest/api/3/workflowscheme/{id}/workflow": delete: deprecated: false description: |- Deletes the workflow-issue type mapping for a workflow in a workflow scheme. Note that active workflow schemes cannot be edited. If the workflow scheme is active, set `updateDraftIfNeeded` to `true` and a draft workflow scheme is created or updated with the workflow-issue type mapping deleted. The draft workflow scheme can be published in Jira. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: deleteWorkflowMapping parameters: - description: The ID of the workflow scheme. in: path name: id required: true schema: format: int64 type: integer - description: The name of the workflow. in: query name: workflowName required: true schema: type: string - description: Set to true to create or update the draft of a workflow scheme and delete the mapping from the draft, when the workflow scheme cannot be edited. Defaults to `false`. in: query name: updateDraftIfNeeded schema: type: boolean responses: "200": description: Returned if the request is successful. "400": description: Returned if the workflow cannot be edited and `updateDraftIfNeeded` is not true. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: |- Returned if any of the following is true: * The workflow scheme is not found. * The workflow is not found. * The workflow is not specified. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Delete issue types for workflow in workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - delete:workflow-scheme:jira state: Beta get: deprecated: false description: |- Returns the workflow-issue type mappings for a workflow scheme. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: getWorkflow parameters: - description: The ID of the workflow scheme. in: path name: id required: true schema: format: int64 type: integer - description: The name of a workflow in the scheme. Limits the results to the workflow-issue type mapping for the specified workflow. in: query name: workflowName schema: type: string - description: Returns the mapping from the workflow scheme's draft rather than the workflow scheme, if set to true. If no draft exists, the mapping from the workflow scheme is returned. in: query name: returnDraftIfExists schema: default: false type: boolean responses: "200": content: application/json: example: '{"workflow":"jira","issueTypes":["10000","10001"],"defaultMapping":false}' schema: $ref: "#/components/schemas/IssueTypesWorkflowMapping" 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. "404": description: Returned if either the workflow scheme or workflow is not found. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Get issue types for workflows in workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - read:workflow-scheme:jira - read:workflow:jira - read:issue-type:jira state: Beta put: deprecated: false description: |- Sets the issue types for a workflow in a workflow scheme. The workflow can also be set as the default workflow for the workflow scheme. Unmapped issues types are mapped to the default workflow. Note that active workflow schemes cannot be edited. If the workflow scheme is active, set `updateDraftIfNeeded` to `true` in the request body and a draft workflow scheme is created or updated with the new workflow-issue types mappings. The draft workflow scheme can be published in Jira. **[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg). operationId: updateWorkflowMapping parameters: - description: The ID of the workflow scheme. in: path name: id required: true schema: format: int64 type: integer - description: The name of the workflow. in: query name: workflowName required: true schema: type: string requestBody: content: application/json: example: issueTypes: - "10000" updateDraftIfNeeded: true workflow: jira schema: $ref: "#/components/schemas/IssueTypesWorkflowMapping" required: true responses: "200": content: application/json: example: '{"id":101010,"name":"Example workflow scheme","description":"The description of the example workflow scheme.","defaultWorkflow":"jira","issueTypeMappings":{"10000":"scrum workflow","10001":"builds workflow"},"draft":false,"self":"https://your-domain.atlassian.net/rest/api/3/workflowscheme/101010"}' schema: $ref: "#/components/schemas/WorkflowScheme" description: Returned if the request is successful. "400": description: Returned if the request is invalid. "401": description: Returned if the authentication credentials are incorrect or missing. "403": description: Returned if the user does not have the necessary permission. "404": description: |- Returned if any of the following is true: * The workflow scheme is not found. * The workflow is not found. * The workflow is not specified. security: - basicAuth: [] - OAuth2: - manage:jira-configuration summary: Set issue types for workflow in workflow scheme tags: - Workflow schemes x-atlassian-connect-scope: ADMIN x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - manage:jira-configuration state: Current - scheme: OAuth2 scopes: - write:workflow-scheme:jira - read:workflow-scheme:jira - read:workflow:jira - read:application-role:jira - read:avatar:jira - read:group:jira - read:issue-type:jira - read:project-category:jira - read:project:jira - read:user:jira state: Beta /rest/api/3/worklog/deleted: get: deprecated: false description: |- Returns a list of IDs and delete timestamps for worklogs deleted after a date and time. This resource is paginated, with a limit of 1000 worklogs per page. Each page lists worklogs from oldest to youngest. If the number of items in the date range exceeds 1000, `until` indicates the timestamp of the youngest item on the page. Also, `nextPage` provides the URL for the next page of worklogs. The `lastPage` parameter is set to true on the last page of worklogs. This resource does not return worklogs deleted during the minute preceding the request. **[Permissions](#permissions) required:** Permission to access Jira. operationId: getIdsOfWorklogsDeletedSince parameters: - description: The date and time, as a UNIX timestamp in milliseconds, after which deleted worklogs are returned. in: query name: since schema: default: 0 format: int64 type: integer responses: "200": content: application/json: example: '{"values":[{"worklogId":103,"updatedTime":1438013671562,"properties":[]},{"worklogId":104,"updatedTime":1438013672165,"properties":[]},{"worklogId":105,"updatedTime":1438013693136,"properties":[]}],"since":1438013671562,"until":1438013693136,"self":"https://your-domain.atlassian.net/api/~ver~/worklog/deleted?since=1438013671562","nextPage":"https://your-domain.atlassian.net/api/~ver~/worklog/deleted?since=1438013693136","lastPage":true}' schema: $ref: "#/components/schemas/ChangedWorklogs" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get IDs of deleted worklogs tags: - Issue worklogs x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-worklog:jira - read:issue-worklog.property:jira state: Beta /rest/api/3/worklog/list: post: deprecated: false description: |- Returns worklog details for a list of worklog IDs. The returned list of worklogs is limited to 1000 items. **[Permissions](#permissions) required:** Permission to access Jira, however, worklogs are only returned where either of the following is true: * the worklog is set as *Viewable by All Users*. * the user is a member of a project role or group with permission to view the worklog. operationId: getWorklogsForIds parameters: - description: Use [expand](#expansion) to include additional information about worklogs in the response. This parameter accepts `properties` that returns the properties of each worklog. in: query name: expand schema: default: "" type: string requestBody: content: application/json: example: ids: - 1 - 2 - 5 - 10 schema: $ref: "#/components/schemas/WorklogIdsRequestBean" description: A JSON object containing a list of worklog IDs. required: true responses: "200": content: application/json: example: '[{"self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/worklog/10000","author":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"updateAuthor":{"self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","accountId":"5b10a2844c20165700ede21g","displayName":"Mia Krystof","active":false},"comment":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"I did some work here."}]}]},"updated":"2021-01-18T23:45:00.000+0000","visibility":{"type":"group","value":"jira-developers","identifier":"276f955c-63d7-42c8-9520-92d01dca0625"},"started":"2021-01-17T12:34:00.000+0000","timeSpent":"3h 20m","timeSpentSeconds":12000,"id":"100028","issueId":"10002"}]' schema: items: $ref: "#/components/schemas/Worklog" type: array description: Returned if the request is successful. "400": description: Returned if the request contains more than 1000 worklog IDs or is empty. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get worklogs tags: - Issue worklogs x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:comment:jira - read:group:jira - read:issue-worklog:jira - read:issue-worklog.property:jira - read:project-role:jira - read:user:jira - read:avatar:jira state: Beta /rest/api/3/worklog/updated: get: deprecated: false description: |- Returns a list of IDs and update timestamps for worklogs updated after a date and time. This resource is paginated, with a limit of 1000 worklogs per page. Each page lists worklogs from oldest to youngest. If the number of items in the date range exceeds 1000, `until` indicates the timestamp of the youngest item on the page. Also, `nextPage` provides the URL for the next page of worklogs. The `lastPage` parameter is set to true on the last page of worklogs. This resource does not return worklogs updated during the minute preceding the request. **[Permissions](#permissions) required:** Permission to access Jira, however, worklogs are only returned where either of the following is true: * the worklog is set as *Viewable by All Users*. * the user is a member of a project role or group with permission to view the worklog. operationId: getIdsOfWorklogsModifiedSince parameters: - description: The date and time, as a UNIX timestamp in milliseconds, after which updated worklogs are returned. in: query name: since schema: default: 0 format: int64 type: integer - description: Use [expand](#expansion) to include additional information about worklogs in the response. This parameter accepts `properties` that returns the properties of each worklog. in: query name: expand schema: default: "" type: string responses: "200": content: application/json: example: '{"values":[{"worklogId":103,"updatedTime":1438013671562,"properties":[]},{"worklogId":104,"updatedTime":1438013672165,"properties":[]},{"worklogId":105,"updatedTime":1438013693136,"properties":[]}],"since":1438013671562,"until":1438013693136,"self":"https://your-domain.atlassian.net/api/~ver~/worklog/updated?since=1438013671562","nextPage":"https://your-domain.atlassian.net/api/~ver~/worklog/updated?since=1438013693136","lastPage":true}' schema: $ref: "#/components/schemas/ChangedWorklogs" description: Returned if the request is successful. "401": description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: - read:jira-work summary: Get IDs of updated worklogs tags: - Issue worklogs x-atlassian-connect-scope: READ x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: - read:jira-work state: Current - scheme: OAuth2 scopes: - read:issue-worklog:jira - read:issue-worklog.property:jira state: Beta "/rest/atlassian-connect/1/addons/{addonKey}/properties": get: deprecated: false description: |- Gets all the properties of an app. **[Permissions](#permissions) required:** Only a Connect app whose key matches `addonKey` can make this request. Additionally, Forge apps published on the Marketplace can access properties of Connect apps they were [migrated from](https://developer.atlassian.com/platform/forge/build-a-connect-on-forge-app/). operationId: AddonPropertiesResource.getAddonProperties_get parameters: - description: The key of the app, as defined in its descriptor. in: path name: addonKey required: true schema: type: string responses: "200": content: application/json: example: keys: - key: propertyKey self: https://your-domain.atlassian.net/jira/rest/atlassian-connect/1/addon/example.app.key/properties/propertyKey schema: $ref: "#/components/schemas/PropertyKeys" description: Returned if the request is successful. "401": content: application/json: example: message: Access to this resource must be authenticated as an app. statusCode: 401 schema: $ref: "#/components/schemas/OperationMessage" description: Returned if the authentication credentials are incorrect or missing. security: - basicAuth: [] - OAuth2: [] summary: Get app properties tags: - App properties x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: [] state: Beta "/rest/atlassian-connect/1/addons/{addonKey}/properties/{propertyKey}": delete: deprecated: false description: |- Deletes an app's property. **[Permissions](#permissions) required:** Only a Connect app whose key matches `addonKey` can make this request. operationId: AddonPropertiesResource.deleteAddonProperty_delete parameters: - description: The key of the app, as defined in its descriptor. in: path name: addonKey required: true schema: type: string - description: The key of the property. in: path name: propertyKey required: true schema: type: string responses: "204": description: Returned if the request is successful. "400": content: application/json: example: message: The property key cannot be longer than 127 characters. statusCode: 400 schema: $ref: "#/components/schemas/OperationMessage" description: Returned if the property key is longer than 127 characters. "401": content: application/json: example: message: Access to this resource must be authenticated as an app. statusCode: 401 schema: $ref: "#/components/schemas/OperationMessage" description: Returned if the authentication credentials are incorrect or missing. "404": content: application/json: example: message: Property with key not found. statusCode: 404 schema: $ref: "#/components/schemas/OperationMessage" description: Returned if the property is not found or doesn't belong to the app. summary: Delete app property tags: - App properties x-atlassian-connect-scope: NONE get: deprecated: false description: |- Returns the key and value of an app's property. **[Permissions](#permissions) required:** Only a Connect app whose key matches `addonKey` can make this request. Additionally, Forge apps published on the Marketplace can access properties of Connect apps they were [migrated from](https://developer.atlassian.com/platform/forge/build-a-connect-on-forge-app/). operationId: AddonPropertiesResource.getAddonProperty_get parameters: - description: The key of the app, as defined in its descriptor. in: path name: addonKey required: true schema: type: string - description: The key of the property. in: path name: propertyKey required: true schema: type: string responses: "200": content: application/json: example: key: propertyKey self: https://your-domain.atlassian.net/jira/rest/atlassian-connect/1/addon/example.app.key/properties/propertyKey value: propertyValue schema: $ref: "#/components/schemas/EntityProperty" description: Returned if the request is successful. "400": content: application/json: example: message: The property key cannot be longer than 127 characters. statusCode: 400 schema: $ref: "#/components/schemas/OperationMessage" description: Returned if the property key is longer than 127 characters. "401": content: application/json: example: message: Access to this resource must be authenticated as an app. statusCode: 401 schema: $ref: "#/components/schemas/OperationMessage" description: Returned if the authentication credentials are incorrect or missing. "404": content: application/json: example: message: Property with key not found. statusCode: 404 schema: $ref: "#/components/schemas/OperationMessage" description: Returned if the property is not found or doesn't belong to the app. security: - basicAuth: [] - OAuth2: [] summary: Get app property tags: - App properties x-atlassian-connect-scope: NONE x-atlassian-oauth2-scopes: - scheme: OAuth2 scopes: [] state: Current - scheme: OAuth2 scopes: [] state: Beta put: deprecated: false description: |- Sets the value of an app's property. Use this resource to store custom data for your app. The value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON blob. The maximum length is 32768 characters. **[Permissions](#permissions) required:** Only a Connect app whose key matches `addonKey` can make this request. operationId: AddonPropertiesResource.putAddonProperty_put parameters: - description: The key of the app, as defined in its descriptor. in: path name: addonKey required: true schema: type: string - description: The key of the property. in: path name: propertyKey required: true schema: type: string requestBody: content: application/json: schema: {} required: true responses: "200": content: application/json: example: message: Property updated. statusCode: 200 schema: $ref: "#/components/schemas/OperationMessage" description: Returned if the property is updated. "201": content: application/json: example: message: Property created. statusCode: 201 schema: $ref: "#/components/schemas/OperationMessage" description: Returned is the property is created. "400": content: application/json: example: message: The property key cannot be longer than 127 characters. statusCode: 400 schema: $ref: "#/components/schemas/OperationMessage" description: |- Returned if: * the property key is longer than 127 characters. * the value is not valid JSON. * the value is longer than 32768 characters. "401": content: application/json: example: message: Access to this resource must be authenticated as an app. statusCode: 401 schema: $ref: "#/components/schemas/OperationMessage" description: Returned if the authentication credentials are incorrect or missing. summary: Set app property tags: - App properties x-atlassian-connect-scope: NONE /rest/atlassian-connect/1/app/module/dynamic: delete: deprecated: false description: |- Remove all or a list of modules registered by the calling app. **[Permissions](#permissions) required:** Only Connect apps can make this request. operationId: DynamicModulesResource.removeModules_delete parameters: - description: |- The key of the module to remove. To include multiple module keys, provide multiple copies of this parameter. For example, `moduleKey=dynamic-attachment-entity-property&moduleKey=dynamic-select-field`. Nonexistent keys are ignored. in: query name: moduleKey required: false schema: items: type: string type: array responses: "204": description: Returned if the request is successful. "401": content: application/json: example: message: The request is not from a Connect app. schema: $ref: "#/components/schemas/ErrorMessage" description: Returned if the call is not from a Connect app. summary: Remove modules tags: - Dynamic modules x-atlassian-connect-scope: NONE get: deprecated: false description: |- Returns all modules registered dynamically by the calling app. **[Permissions](#permissions) required:** Only Connect apps can make this request. operationId: DynamicModulesResource.getModules_get parameters: [] responses: "200": content: application/json: schema: $ref: "#/components/schemas/ConnectModules" description: Returned if the request is successful. "401": content: application/json: example: message: The request is not from a Connect app. schema: $ref: "#/components/schemas/ErrorMessage" description: Returned if the call is not from a Connect app. summary: Get modules tags: - Dynamic modules x-atlassian-connect-scope: NONE post: deprecated: false description: |- Registers a list of modules. **[Permissions](#permissions) required:** Only Connect apps can make this request. operationId: DynamicModulesResource.registerModules_post parameters: [] requestBody: content: application/json: schema: $ref: "#/components/schemas/ConnectModules" required: true responses: "200": description: Returned if the request is successful. "400": content: application/json: example: message: "Installation failed. The app com.example.app.key has duplicate module keys: [module-key]. Please contact the app vendor." schema: $ref: "#/components/schemas/ErrorMessage" description: |- Returned if: * any of the provided modules is invalid. For example, required properties are missing. * any of the modules conflict with registered dynamic modules or modules defined in the app descriptor. For example, there are duplicate keys. Details of the issues encountered are included in the error message. "401": content: application/json: example: message: The request is not from a Connect app. schema: $ref: "#/components/schemas/ErrorMessage" description: Returned if the call is not from a Connect app. summary: Register modules tags: - Dynamic modules x-atlassian-connect-scope: NONE /rest/atlassian-connect/1/migration/field: put: deprecated: false description: |- Updates the value of a custom field added by Connect apps on one or more issues. The values of up to 200 custom fields can be updated. **[Permissions](#permissions) required:** Only Connect apps can make this request. operationId: AppIssueFieldValueUpdateResource.updateIssueFields_put parameters: - description: The ID of the transfer. in: header name: Atlassian-Transfer-Id required: true schema: format: uuid type: string requestBody: content: application/json: example: updateValueList: - _type: StringIssueField fieldID: 10076 issueID: 10001 string: new string value - _type: TextIssueField fieldID: 10077 issueID: 10002 text: new text value - _type: SingleSelectIssueField fieldID: 10078 issueID: 10003 optionID: "1" - _type: MultiSelectIssueField fieldID: 10079 issueID: 10004 optionID: "2" - _type: RichTextIssueField fieldID: 10080 issueID: 10005 richText: new rich text value - _type: NumberIssueField fieldID: 10082 issueID: 10006 number: 54 schema: $ref: "#/components/schemas/ConnectCustomFieldValues" required: true responses: "200": content: application/json: schema: {} description: Returned if the request is successful. "400": description: Returned if the request is invalid. "403": description: |- Returned if: * the transfer ID is not found. * the authorisation credentials are incorrect or missing. summary: Bulk update custom field value tags: - App migration x-atlassian-connect-scope: NONE "/rest/atlassian-connect/1/migration/properties/{entityType}": put: description: Updates the values of multiple entity properties for an object, up to 50 updates per request. This operation is for use by Connect apps during app migration. operationId: MigrationResource.updateEntityPropertiesValue_put parameters: - description: The app migration transfer ID. in: header name: Atlassian-Transfer-Id required: true schema: format: uuid type: string - description: The type indicating the object that contains the entity properties. in: path name: entityType required: true schema: enum: - IssueProperty - CommentProperty - DashboardItemProperty - IssueTypeProperty - ProjectProperty - UserProperty - WorklogProperty - BoardProperty - SprintProperty type: string requestBody: content: application/json: schema: items: $ref: "#/components/schemas/EntityPropertyDetails" maxItems: 50 minItems: 1 type: array required: true responses: "200": description: Returned if the request is successful. "400": description: Returned if the request is not valid. "403": description: Returned if the authorisation credentials are incorrect or missing. summary: Bulk update entity properties tags: - App migration x-atlassian-connect-scope: NONE /rest/atlassian-connect/1/migration/workflow/rule/search: post: description: Returns configurations for workflow transition rules migrated from server to cloud and owned by the calling Connect app. operationId: MigrationResource.workflowRuleSearch_post parameters: - description: The app migration transfer ID. in: header name: Atlassian-Transfer-Id required: true schema: format: uuid type: string requestBody: content: application/json: schema: $ref: "#/components/schemas/WorkflowRulesSearch" required: true responses: "200": content: application/json: example: invalidRules: - 55d44f1d-c859-42e5-9c27-2c5ec3f340b1 validRules: - conditions: - configuration: value: WorkflowValidator id: "123" key: WorkflowKey transition: id: 123 name: transition postFunctions: - configuration: value: WorkflowValidator id: "123" key: WorkflowKey transition: id: 123 name: transition validators: - configuration: value: WorkflowValidator id: "123" key: WorkflowKey transition: id: 123 name: transition workflowId: draft: true name: Workflow name workflowEntityId: a498d711-685d-428d-8c3e-bc03bb450ea7 schema: $ref: "#/components/schemas/WorkflowRulesSearchDetails" description: Returned if the request is successful. "400": description: Returned if the request is not valid. "403": description: Returned if the authorisation credentials are incorrect or missing. summary: Get workflow transition rule configurations tags: - App migration x-atlassian-connect-scope: NONE components: schemas: ActorInputBean: additionalProperties: false properties: group: description: The name of the group to add as a default actor. This parameter cannot be used with the `groupId` parameter. As a group's name can change,use of `groupId` is recommended. This parameter accepts a comma-separated list. For example, `"group":["project-admin", "jira-developers"]`. items: type: string type: array groupId: description: The ID of the group to add as a default actor. This parameter cannot be used with the `group` parameter This parameter accepts a comma-separated list. For example, `"groupId":["77f6ab39-e755-4570-a6ae-2d7a8df0bcb8", "0c011f85-69ed-49c4-a801-3b18d0f771bc"]`. items: type: string type: array user: description: The account IDs of the users to add as default actors. This parameter accepts a comma-separated list. For example, `"user":["5b10a2844c20165700ede21g", "5b109f2e9729b51b54dc274d"]`. items: type: string type: array type: object ActorsMap: additionalProperties: false properties: group: description: The name of the group to add. This parameter cannot be used with the `groupId` parameter. As a group's name can change, use of `groupId` is recommended. items: type: string type: array groupId: description: The ID of the group to add. This parameter cannot be used with the `group` parameter. items: type: string type: array user: description: The user account ID of the user to add. items: type: string type: array type: object AddFieldBean: additionalProperties: false properties: fieldId: description: The ID of the field to add. type: string required: - fieldId type: object AddGroupBean: additionalProperties: true properties: name: description: The name of the group. type: string required: - name type: object AddNotificationsDetails: additionalProperties: true description: Details of notifications which should be added to the notification scheme. properties: notificationSchemeEvents: description: The list of notifications which should be added to the notification scheme. items: $ref: "#/components/schemas/NotificationSchemeEventDetails" type: array writeOnly: true required: - notificationSchemeEvents type: object AddSecuritySchemeLevelsRequestBean: additionalProperties: false properties: levels: description: The list of scheme levels which should be added to the security scheme. items: $ref: "#/components/schemas/SecuritySchemeLevelBean" type: array writeOnly: true type: object AnnouncementBannerConfiguration: additionalProperties: false description: Announcement banner configuration. properties: hashId: description: Hash of the banner data. The client detects updates by comparing hash IDs. readOnly: true type: string isDismissible: description: Flag indicating if the announcement banner can be dismissed by the user. readOnly: true type: boolean isEnabled: description: Flag indicating if the announcement banner is enabled or not. readOnly: true type: boolean message: description: The text on the announcement banner. readOnly: true type: string visibility: description: Visibility of the announcement banner. enum: - PUBLIC - PRIVATE readOnly: true type: string type: object AnnouncementBannerConfigurationUpdate: additionalProperties: false description: Configuration of the announcement banner. properties: isDismissible: description: Flag indicating if the announcement banner can be dismissed by the user. type: boolean isEnabled: description: Flag indicating if the announcement banner is enabled or not. type: boolean message: description: The text on the announcement banner. type: string visibility: description: Visibility of the announcement banner. Can be public or private. type: string type: object writeOnly: true AppWorkflowTransitionRule: additionalProperties: false description: A workflow transition rule. properties: configuration: $ref: "#/components/schemas/RuleConfiguration" id: description: The ID of the transition rule. type: string key: description: The key of the rule, as defined in the Connect or the Forge app descriptor. readOnly: true type: string transition: allOf: - $ref: "#/components/schemas/WorkflowTransition" readOnly: true required: - configuration - id - key type: object Application: additionalProperties: true description: The application the linked item is in. properties: name: description: The name of the application. Used in conjunction with the (remote) object icon title to display a tooltip for the link's icon. The tooltip takes the format "\[application name\] icon title". Blank items are excluded from the tooltip title. If both items are blank, the icon tooltop displays as "Web Link". Grouping and sorting of links may place links without an application name last. type: string type: description: The name-spaced type of the application, used by registered rendering apps. type: string type: object ApplicationProperty: additionalProperties: false description: Details of an application property. properties: allowedValues: description: The allowed values, if applicable. items: type: string type: array defaultValue: description: The default value of the application property. type: string desc: description: The description of the application property. type: string example: type: string id: description: The ID of the application property. The ID and key are the same. type: string key: description: The key of the application property. The ID and key are the same. type: string name: description: The name of the application property. type: string type: description: The data type of the application property. type: string value: description: The new value. type: string type: object ApplicationRole: additionalProperties: false description: Details of an application role. properties: defaultGroups: description: The groups that are granted default access for this application role. As a group's name can change, use of `defaultGroupsDetails` is recommended to identify a groups. items: type: string type: array uniqueItems: true defaultGroupsDetails: description: The groups that are granted default access for this application role. items: $ref: "#/components/schemas/GroupName" type: array defined: description: Deprecated. type: boolean groupDetails: description: The groups associated with the application role. items: $ref: "#/components/schemas/GroupName" type: array groups: description: The groups associated with the application role. As a group's name can change, use of `groupDetails` is recommended to identify a groups. items: type: string type: array uniqueItems: true hasUnlimitedSeats: type: boolean key: description: The key of the application role. type: string name: description: The display name of the application role. type: string numberOfSeats: description: The maximum count of users on your license. format: int32 type: integer platform: description: Indicates if the application role belongs to Jira platform (`jira-core`). type: boolean remainingSeats: description: The count of users remaining on your license. format: int32 type: integer selectedByDefault: description: Determines whether this application role should be selected by default on user creation. type: boolean userCount: description: The number of users counting against your license. format: int32 type: integer userCountDescription: description: The [type of users](https://confluence.atlassian.com/x/lRW3Ng) being counted against your license. type: string type: object AssociateFieldConfigurationsWithIssueTypesRequest: additionalProperties: false description: Details of a field configuration to issue type mappings. properties: mappings: description: Field configuration to issue type mappings. items: $ref: "#/components/schemas/FieldConfigurationToIssueTypeMapping" type: array uniqueItems: true writeOnly: true required: - mappings type: object AssociatedItemBean: additionalProperties: false description: Details of an item associated with the changed record. properties: id: description: The ID of the associated record. readOnly: true type: string name: description: The name of the associated record. readOnly: true type: string parentId: description: The ID of the associated parent record. readOnly: true type: string parentName: description: The name of the associated parent record. readOnly: true type: string typeName: description: The type of the associated record. readOnly: true type: string type: object Attachment: additionalProperties: true description: Details about an attachment. properties: author: allOf: - $ref: "#/components/schemas/UserDetails" description: Details of the user who added the attachment. readOnly: true content: description: The content of the attachment. readOnly: true type: string created: description: The datetime the attachment was created. format: date-time readOnly: true type: string filename: description: The file name of the attachment. readOnly: true type: string id: description: The ID of the attachment. readOnly: true type: string mimeType: description: The MIME type of the attachment. readOnly: true type: string self: description: The URL of the attachment details response. readOnly: true type: string size: description: The size of the attachment. format: int64 readOnly: true type: integer thumbnail: description: The URL of a thumbnail representing the attachment. readOnly: true type: string type: object AttachmentArchive: additionalProperties: false properties: entries: items: $ref: "#/components/schemas/AttachmentArchiveEntry" type: array moreAvailable: type: boolean totalEntryCount: format: int32 type: integer totalNumberOfEntriesAvailable: format: int32 type: integer type: object AttachmentArchiveEntry: additionalProperties: false properties: abbreviatedName: type: string entryIndex: format: int64 type: integer mediaType: type: string name: type: string size: format: int64 type: integer type: object AttachmentArchiveImpl: additionalProperties: false properties: entries: description: The list of the items included in the archive. items: $ref: "#/components/schemas/AttachmentArchiveEntry" type: array totalEntryCount: description: The number of items in the archive. format: int32 type: integer type: object AttachmentArchiveItemReadable: additionalProperties: false description: Metadata for an item in an attachment archive. properties: index: description: The position of the item within the archive. format: int64 readOnly: true type: integer label: description: The label for the archive item. readOnly: true type: string mediaType: description: The MIME type of the archive item. readOnly: true type: string path: description: The path of the archive item. readOnly: true type: string size: description: The size of the archive item. readOnly: true type: string type: object AttachmentArchiveMetadataReadable: additionalProperties: false description: Metadata for an archive (for example a zip) and its contents. properties: entries: description: The list of the items included in the archive. items: $ref: "#/components/schemas/AttachmentArchiveItemReadable" readOnly: true type: array id: description: The ID of the attachment. format: int64 readOnly: true type: integer mediaType: description: The MIME type of the attachment. readOnly: true type: string name: description: The name of the archive file. readOnly: true type: string totalEntryCount: description: The number of items included in the archive. format: int64 readOnly: true type: integer type: object AttachmentMetadata: additionalProperties: false description: Metadata for an issue attachment. properties: author: allOf: - $ref: "#/components/schemas/User" description: Details of the user who attached the file. readOnly: true content: description: The URL of the attachment. readOnly: true type: string created: description: The datetime the attachment was created. format: date-time readOnly: true type: string filename: description: The name of the attachment file. readOnly: true type: string id: description: The ID of the attachment. format: int64 readOnly: true type: integer mimeType: description: The MIME type of the attachment. readOnly: true type: string properties: additionalProperties: readOnly: true description: Additional properties of the attachment. readOnly: true type: object self: description: The URL of the attachment metadata details. format: uri readOnly: true type: string size: description: The size of the attachment. format: int64 readOnly: true type: integer thumbnail: description: The URL of a thumbnail representing the attachment. readOnly: true type: string type: object xml: name: attachment AttachmentSettings: additionalProperties: false description: Details of the instance's attachment settings. properties: enabled: description: Whether the ability to add attachments is enabled. readOnly: true type: boolean uploadLimit: description: The maximum size of attachments permitted, in bytes. format: int64 readOnly: true type: integer type: object AuditRecordBean: additionalProperties: false description: An audit record. properties: associatedItems: description: The list of items associated with the changed record. items: $ref: "#/components/schemas/AssociatedItemBean" readOnly: true type: array authorKey: description: Deprecated, use `authorAccountId` instead. The key of the user who created the audit record. readOnly: true type: string category: description: The category of the audit record. For a list of these categories, see the help article [Auditing in Jira applications](https://confluence.atlassian.com/x/noXKM). readOnly: true type: string changedValues: description: The list of values changed in the record event. items: $ref: "#/components/schemas/ChangedValueBean" readOnly: true type: array created: description: The date and time on which the audit record was created. format: date-time readOnly: true type: string description: description: The description of the audit record. readOnly: true type: string eventSource: description: The event the audit record originated from. readOnly: true type: string id: description: The ID of the audit record. format: int64 readOnly: true type: integer objectItem: $ref: "#/components/schemas/AssociatedItemBean" remoteAddress: description: The URL of the computer where the creation of the audit record was initiated. readOnly: true type: string summary: description: The summary of the audit record. readOnly: true type: string type: object AuditRecords: additionalProperties: false description: Container for a list of audit records. properties: limit: description: The requested or default limit on the number of audit items to be returned. format: int32 readOnly: true type: integer offset: description: The number of audit items skipped before the first item in this list. format: int32 readOnly: true type: integer records: description: The list of audit items. items: $ref: "#/components/schemas/AuditRecordBean" readOnly: true type: array total: description: The total number of audit items returned. format: int64 readOnly: true type: integer type: object AutoCompleteSuggestion: additionalProperties: false description: A field auto-complete suggestion. properties: displayName: description: The display name of a suggested item. If `fieldValue` or `predicateValue` are provided, the matching text is highlighted with the HTML bold tag. type: string value: description: The value of a suggested item. type: string type: object AutoCompleteSuggestions: additionalProperties: false description: The results from a JQL query. properties: results: description: The list of suggested item. items: $ref: "#/components/schemas/AutoCompleteSuggestion" type: array type: object AvailableDashboardGadget: additionalProperties: false description: The details of the available dashboard gadget. properties: moduleKey: description: The module key of the gadget type. readOnly: true type: string title: description: The title of the gadget. readOnly: true type: string uri: description: The URI of the gadget type. readOnly: true type: string required: - title type: object AvailableDashboardGadgetsResponse: additionalProperties: false description: The list of available gadgets. properties: gadgets: description: The list of available gadgets. items: $ref: "#/components/schemas/AvailableDashboardGadget" readOnly: true type: array required: - gadgets type: object Avatar: additionalProperties: true description: Details of an avatar. properties: fileName: description: The file name of the avatar icon. Returned for system avatars. readOnly: true type: string id: description: The ID of the avatar. type: string isDeletable: description: Whether the avatar can be deleted. readOnly: true type: boolean isSelected: description: Whether the avatar is used in Jira. For example, shown as a project's avatar. readOnly: true type: boolean isSystemAvatar: description: Whether the avatar is a system avatar. readOnly: true type: boolean owner: description: The owner of the avatar. For a system avatar the owner is null (and nothing is returned). For non-system avatars this is the appropriate identifier, such as the ID for a project or the account ID for a user. readOnly: true type: string urls: additionalProperties: format: uri readOnly: true type: string description: The list of avatar icon URLs. readOnly: true type: object required: - id type: object AvatarUrlsBean: additionalProperties: false properties: 16x16: description: The URL of the item's 16x16 pixel avatar. format: uri type: string 24x24: description: The URL of the item's 24x24 pixel avatar. format: uri type: string 32x32: description: The URL of the item's 32x32 pixel avatar. format: uri type: string 48x48: description: The URL of the item's 48x48 pixel avatar. format: uri type: string type: object Avatars: additionalProperties: false description: Details about system and custom avatars. properties: custom: description: Custom avatars list. items: $ref: "#/components/schemas/Avatar" readOnly: true type: array system: description: System avatars list. items: $ref: "#/components/schemas/Avatar" readOnly: true type: array type: object BulkCustomFieldOptionCreateRequest: additionalProperties: false description: Details of the options to create for a custom field. properties: options: description: Details of options to create. items: $ref: "#/components/schemas/CustomFieldOptionCreate" type: array type: object writeOnly: true BulkCustomFieldOptionUpdateRequest: additionalProperties: false description: Details of the options to update for a custom field. properties: options: description: Details of the options to update. items: $ref: "#/components/schemas/CustomFieldOptionUpdate" type: array type: object writeOnly: true BulkIssueIsWatching: additionalProperties: false description: A container for the watch status of a list of issues. properties: issuesIsWatching: additionalProperties: readOnly: true type: boolean description: The map of issue ID to boolean watch status. readOnly: true type: object type: object BulkIssuePropertyUpdateRequest: additionalProperties: false description: Bulk issue property update request details. properties: expression: description: EXPERIMENTAL. The Jira expression to calculate the value of the property. The value of the expression must be an object that can be converted to JSON, such as a number, boolean, string, list, or map. The context variables available to the expression are `issue` and `user`. Issues for which the expression returns a value whose JSON representation is longer than 32768 characters are ignored. type: string filter: allOf: - $ref: "#/components/schemas/IssueFilterForBulkPropertySet" description: The bulk operation filter. value: description: The value of the property. The value must be a [valid](https://tools.ietf.org/html/rfc4627), non-empty JSON blob. The maximum length is 32768 characters. type: object BulkOperationErrorResult: additionalProperties: false properties: elementErrors: $ref: "#/components/schemas/ErrorCollection" failedElementNumber: format: int32 type: integer 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 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 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 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 ChangeDetails: additionalProperties: false description: A change item. properties: field: description: The name of the field changed. readOnly: true type: string fieldId: description: The ID of the field changed. readOnly: true type: string fieldtype: description: The type of the field changed. readOnly: true type: string from: description: The details of the original value. readOnly: true type: string fromString: description: The details of the original value as a string. readOnly: true type: string to: description: The details of the new value. readOnly: true type: string type: object ChangeFilterOwner: additionalProperties: false description: The account ID of the new owner. properties: accountId: description: The account ID of the new owner. type: string required: - accountId type: object writeOnly: true ChangedValueBean: additionalProperties: false description: Details of names changed in the record event. properties: changedFrom: description: The value of the field before the change. readOnly: true type: string changedTo: description: The value of the field after the change. readOnly: true type: string fieldName: description: The name of the field changed. readOnly: true type: string type: object ChangedWorklog: additionalProperties: false description: Details of a changed worklog. properties: properties: description: Details of properties associated with the change. items: $ref: "#/components/schemas/EntityProperty" readOnly: true type: array updatedTime: description: The datetime of the change. format: int64 readOnly: true type: integer worklogId: description: The ID of the worklog. format: int64 readOnly: true type: integer type: object ChangedWorklogs: additionalProperties: false description: List of changed worklogs. properties: lastPage: type: boolean nextPage: description: The URL of the next list of changed worklogs. format: uri readOnly: true type: string self: description: The URL of this changed worklogs list. format: uri readOnly: true type: string since: description: The datetime of the first worklog item in the list. format: int64 readOnly: true type: integer until: description: The datetime of the last worklog item in the list. format: int64 readOnly: true type: integer values: description: Changed worklog list. items: $ref: "#/components/schemas/ChangedWorklog" readOnly: true type: array type: object Changelog: additionalProperties: false description: A log of changes made to issue fields. Changelogs related to workflow associations are currently being deprecated. properties: author: allOf: - $ref: "#/components/schemas/UserDetails" description: The user who made the change. readOnly: true created: description: The date on which the change took place. format: date-time readOnly: true type: string historyMetadata: allOf: - $ref: "#/components/schemas/HistoryMetadata" description: The history metadata associated with the changed. readOnly: true id: description: The ID of the changelog. readOnly: true type: string items: description: The list of items changed. items: $ref: "#/components/schemas/ChangeDetails" readOnly: true type: array type: object ColumnItem: additionalProperties: false description: Details of an issue navigator column item. properties: label: description: The issue navigator column label. type: string value: description: The issue navigator column value. type: string type: object Comment: additionalProperties: true description: A comment. properties: author: allOf: - $ref: "#/components/schemas/UserDetails" description: The ID of the user who created the comment. readOnly: true body: description: The comment text in [Atlassian Document Format](https://developer.atlassian.com/cloud/jira/platform/apis/document/structure/). created: description: The date and time at which the comment was created. format: date-time readOnly: true type: string id: description: The ID of the comment. readOnly: true type: string jsdAuthorCanSeeRequest: description: Whether the comment was added from an email sent by a person who is not part of the issue. See [Allow external emails to be added as comments on issues](https://support.atlassian.com/jira-service-management-cloud/docs/allow-external-emails-to-be-added-as-comments-on-issues/)for information on setting up this feature. readOnly: true type: boolean jsdPublic: description: Whether the comment is visible in Jira Service Desk. Defaults to true when comments are created in the Jira Cloud Platform. This includes when the site doesn't use Jira Service Desk or the project isn't a Jira Service Desk project and, therefore, there is no Jira Service Desk for the issue to be visible on. To create a comment with its visibility in Jira Service Desk set to false, use the Jira Service Desk REST API [Create request comment](https://developer.atlassian.com/cloud/jira/service-desk/rest/#api-rest-servicedeskapi-request-issueIdOrKey-comment-post) operation. readOnly: true type: boolean properties: description: A list of comment properties. Optional on create and update. items: $ref: "#/components/schemas/EntityProperty" type: array renderedBody: description: The rendered version of the comment. readOnly: true type: string self: description: The URL of the comment. readOnly: true type: string updateAuthor: allOf: - $ref: "#/components/schemas/UserDetails" description: The ID of the user who updated the comment last. readOnly: true updated: description: The date and time at which the comment was updated last. format: date-time readOnly: true type: string visibility: allOf: - $ref: "#/components/schemas/Visibility" description: The group or role to which this comment is visible. Optional on create and update. type: object ComponentIssuesCount: additionalProperties: false description: Count of issues assigned to a component. properties: issueCount: description: The count of issues assigned to a component. format: int64 readOnly: true type: integer self: description: The URL for this count of issues for a component. format: uri readOnly: true type: string type: object xml: name: component ComponentWithIssueCount: additionalProperties: false description: Details about a component with a count of the issues it contains. properties: assignee: allOf: - $ref: "#/components/schemas/User" description: The details of the user associated with `assigneeType`, if any. See `realAssignee` for details of the user assigned to issues created with this component. assigneeType: description: |- The nominal user type used to determine the assignee for issues created with this component. See `realAssigneeType` for details on how the type of the user, and hence the user, assigned to issues is determined. Takes the following values: * `PROJECT_LEAD` the assignee to any issues created with this component is nominally the lead for the project the component is in. * `COMPONENT_LEAD` the assignee to any issues created with this component is nominally the lead for the component. * `UNASSIGNED` an assignee is not set for issues created with this component. * `PROJECT_DEFAULT` the assignee to any issues created with this component is nominally the default assignee for the project that the component is in. enum: - PROJECT_DEFAULT - COMPONENT_LEAD - PROJECT_LEAD - UNASSIGNED readOnly: true type: string description: description: The description for the component. readOnly: true type: string id: description: The unique identifier for the component. readOnly: true type: string isAssigneeTypeValid: description: Whether a user is associated with `assigneeType`. For example, if the `assigneeType` is set to `COMPONENT_LEAD` but the component lead is not set, then `false` is returned. readOnly: true type: boolean issueCount: description: Count of issues for the component. format: int64 readOnly: true type: integer lead: allOf: - $ref: "#/components/schemas/User" description: The user details for the component's lead user. name: description: The name for the component. readOnly: true type: string project: description: The key of the project to which the component is assigned. readOnly: true type: string projectId: description: Not used. format: int64 readOnly: true type: integer realAssignee: allOf: - $ref: "#/components/schemas/User" description: The user assigned to issues created with this component, when `assigneeType` does not identify a valid assignee. realAssigneeType: description: |- The type of the assignee that is assigned to issues created with this component, when an assignee cannot be set from the `assigneeType`. For example, `assigneeType` is set to `COMPONENT_LEAD` but no component lead is set. This property is set to one of the following values: * `PROJECT_LEAD` when `assigneeType` is `PROJECT_LEAD` and the project lead has permission to be assigned issues in the project that the component is in. * `COMPONENT_LEAD` when `assignee`Type is `COMPONENT_LEAD` and the component lead has permission to be assigned issues in the project that the component is in. * `UNASSIGNED` when `assigneeType` is `UNASSIGNED` and Jira is configured to allow unassigned issues. * `PROJECT_DEFAULT` when none of the preceding cases are true. enum: - PROJECT_DEFAULT - COMPONENT_LEAD - PROJECT_LEAD - UNASSIGNED readOnly: true type: string self: description: The URL for this count of the issues contained in the component. format: uri readOnly: true type: string type: object CompoundClause: description: A JQL query clause that consists of nested clauses. For example, `(labels in (urgent, blocker) OR lastCommentedBy = currentUser()). Note that, where nesting is not defined, the parser nests JQL clauses based on the operator precedence. For example, "A OR B AND C" is parsed as "(A OR B) AND C". See Setting the precedence of operators for more information about precedence in JQL queries.` properties: clauses: description: The list of nested clauses. items: $ref: "#/components/schemas/JqlQueryClause" type: array operator: description: The operator between the clauses. enum: - and - or - not type: string required: - clauses - operator type: object Configuration: additionalProperties: false description: Details about the configuration of Jira. properties: attachmentsEnabled: description: Whether the ability to add attachments to issues is enabled. readOnly: true type: boolean issueLinkingEnabled: description: Whether the ability to link issues is enabled. readOnly: true type: boolean subTasksEnabled: description: Whether the ability to create subtasks for issues is enabled. readOnly: true type: boolean timeTrackingConfiguration: allOf: - $ref: "#/components/schemas/TimeTrackingConfiguration" description: The configuration of time tracking. readOnly: true timeTrackingEnabled: description: Whether the ability to track time is enabled. This property is deprecated. readOnly: true type: boolean unassignedIssuesAllowed: description: Whether the ability to create unassigned issues is enabled. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. readOnly: true type: boolean votingEnabled: description: Whether the ability for users to vote on issues is enabled. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. readOnly: true type: boolean watchingEnabled: description: Whether the ability for users to watch issues is enabled. See [Configuring Jira application options](https://confluence.atlassian.com/x/uYXKM) for details. readOnly: true type: boolean type: object ConnectCustomFieldValue: description: A list of custom field details. properties: _type: description: The type of custom field. enum: - StringIssueField - NumberIssueField - RichTextIssueField - SingleSelectIssueField - MultiSelectIssueField - TextIssueField type: string writeOnly: true fieldID: description: The custom field ID. type: integer writeOnly: true issueID: description: The issue ID. type: integer writeOnly: true number: description: The value of number type custom field when `_type` is `NumberIssueField`. type: number optionID: description: The value of single select and multiselect custom field type when `_type` is `SingleSelectIssueField` or `MultiSelectIssueField`. type: string richText: description: The value of richText type custom field when `_type` is `RichTextIssueField`. type: string string: description: The value of string type custom field when `_type` is `StringIssueField`. type: string text: description: The value of of text custom field type when `_type` is `TextIssueField`. type: string required: - _type - fieldID - issueID type: object writeOnly: true ConnectCustomFieldValues: additionalProperties: false description: Details of updates for a custom field. properties: updateValueList: description: The list of custom field update details. items: $ref: "#/components/schemas/ConnectCustomFieldValue" type: array type: object writeOnly: true ConnectModule: description: |- A [Connect module](https://developer.atlassian.com/cloud/jira/platform/about-jira-modules/) in the same format as in the [app descriptor](https://developer.atlassian.com/cloud/jira/platform/app-descriptor/). example: description: value: field with team extractions: - name: categoryName path: category type: text key: team-field name: value: Team type: single_select type: object ConnectModules: example: jiraEntityProperties: - entityType: issue key: dynamic-attachment-entity-property keyConfigurations: - extractions: - alias: attachmentExtension objectName: extension type: text propertyKey: attachment name: value: Attachment Index Document jiraIssueFields: - description: value: A dynamically added single-select field extractions: - name: categoryName path: category type: text key: dynamic-select-field name: value: Dynamic single select type: single_select properties: modules: description: |- A list of app modules in the same format as the `modules` property in the [app descriptor](https://developer.atlassian.com/cloud/jira/platform/app-descriptor/). items: $ref: "#/components/schemas/ConnectModule" type: array required: - modules type: object ConnectWorkflowTransitionRule: description: A workflow transition rule. properties: configuration: $ref: "#/components/schemas/RuleConfiguration" id: description: The ID of the transition rule. example: "123" type: string key: description: The key of the rule, as defined in the Connect app descriptor. example: WorkflowKey type: string transition: $ref: "#/components/schemas/WorkflowTransition" required: - configuration - id - key type: object ContainerForProjectFeatures: additionalProperties: false description: The list of features on a project. properties: features: description: The project features. items: $ref: "#/components/schemas/ProjectFeature" type: array type: object ContainerForRegisteredWebhooks: additionalProperties: false description: Container for a list of registered webhooks. Webhook details are returned in the same order as the request. properties: webhookRegistrationResult: description: A list of registered webhooks. items: $ref: "#/components/schemas/RegisteredWebhook" type: array type: object ContainerForWebhookIDs: additionalProperties: false description: Container for a list of webhook IDs. properties: webhookIds: description: A list of webhook IDs. items: description: A list of webhook IDs. format: int64 type: integer type: array required: - webhookIds type: object ContainerOfWorkflowSchemeAssociations: additionalProperties: false description: A container for a list of workflow schemes together with the projects they are associated with. properties: values: description: A list of workflow schemes together with projects they are associated with. items: $ref: "#/components/schemas/WorkflowSchemeAssociations" type: array required: - values type: object Context: additionalProperties: false description: A context. properties: id: description: The ID of the context. format: int64 readOnly: true type: integer name: description: The name of the context. readOnly: true type: string scope: allOf: - $ref: "#/components/schemas/Scope" description: The scope of the context. type: object ContextForProjectAndIssueType: additionalProperties: false description: The project and issue type mapping with a matching custom field context. properties: contextId: description: The ID of the custom field context. type: string issueTypeId: description: The ID of the issue type. type: string projectId: description: The ID of the project. type: string required: - contextId - issueTypeId - projectId type: object ContextualConfiguration: additionalProperties: false description: Details of the contextual configuration for a custom field. properties: configuration: description: The field configuration. fieldContextId: description: The ID of the field context the configuration is associated with. readOnly: true type: string id: description: The ID of the configuration. type: string schema: description: The field value schema. required: - fieldContextId - id type: object ConvertedJQLQueries: additionalProperties: false description: The converted JQL queries. properties: queriesWithUnknownUsers: description: List of queries containing user information that could not be mapped to an existing user items: $ref: "#/components/schemas/JQLQueryWithUnknownUsers" type: array queryStrings: description: The list of converted query strings with account IDs in place of user identifiers. items: type: string type: array type: object CreateCustomFieldContext: additionalProperties: false description: The details of a created custom field context. properties: description: description: The description of the context. type: string id: description: The ID of the context. readOnly: true type: string issueTypeIds: description: The list of issue types IDs for the context. If the list is empty, the context refers to all issue types. items: type: string type: array name: description: The name of the context. type: string projectIds: description: The list of project IDs associated with the context. If the list is empty, the context is global. items: type: string type: array required: - name type: object CreateIssueSecuritySchemeDetails: additionalProperties: true description: Issue security scheme and it's details properties: description: description: The description of the issue security scheme. maxLength: 255 type: string writeOnly: true levels: description: The list of scheme levels which should be added to the security scheme. items: $ref: "#/components/schemas/SecuritySchemeLevelBean" type: array writeOnly: true name: description: The name of the issue security scheme. Must be unique (case-insensitive). maxLength: 60 type: string writeOnly: true required: - name type: object CreateNotificationSchemeDetails: additionalProperties: true description: Details of an notification scheme. properties: description: description: The description of the notification scheme. maxLength: 4000 type: string writeOnly: true name: description: The name of the notification scheme. Must be unique (case-insensitive). maxLength: 255 type: string writeOnly: true notificationSchemeEvents: description: The list of notifications which should be added to the notification scheme. items: $ref: "#/components/schemas/NotificationSchemeEventDetails" type: array writeOnly: true required: - name type: object CreatePriorityDetails: additionalProperties: true description: Details of an issue priority. properties: description: description: The description of the priority. maxLength: 255 type: string writeOnly: true iconUrl: description: The URL of an icon for the priority. Accepted protocols are HTTP and HTTPS. Built in icons can also be used. enum: - /images/icons/priorities/blocker.png - /images/icons/priorities/critical.png - /images/icons/priorities/high.png - /images/icons/priorities/highest.png - /images/icons/priorities/low.png - /images/icons/priorities/lowest.png - /images/icons/priorities/major.png - /images/icons/priorities/medium.png - /images/icons/priorities/minor.png - /images/icons/priorities/trivial.png maxLength: 255 type: string writeOnly: true name: description: The name of the priority. Must be unique. maxLength: 60 type: string writeOnly: true statusColor: description: The status color of the priority in 3-digit or 6-digit hexadecimal format. type: string writeOnly: true required: - name - statusColor type: object CreateProjectDetails: additionalProperties: false description: Details about the project. properties: assigneeType: description: The default assignee when creating issues for this project. enum: - PROJECT_LEAD - UNASSIGNED type: string avatarId: description: An integer value for the project's avatar. format: int64 type: integer categoryId: description: The ID of the project's category. A complete list of category IDs is found using the [Get all project categories](#api-rest-api-3-projectCategory-get) operation. format: int64 type: integer description: description: A brief description of the project. type: string fieldConfigurationScheme: description: The ID of the field configuration scheme for the project. Use the [Get all field configuration schemes](#api-rest-api-3-fieldconfigurationscheme-get) operation to get a list of field configuration scheme IDs. If you specify the field configuration scheme you cannot specify the project template key. format: int64 type: integer issueSecurityScheme: description: The ID of the issue security scheme for the project, which enables you to control who can and cannot view issues. Use the [Get issue security schemes](#api-rest-api-3-issuesecurityschemes-get) resource to get all issue security scheme IDs. format: int64 type: integer issueTypeScheme: description: The ID of the issue type scheme for the project. Use the [Get all issue type schemes](#api-rest-api-3-issuetypescheme-get) operation to get a list of issue type scheme IDs. If you specify the issue type scheme you cannot specify the project template key. format: int64 type: integer issueTypeScreenScheme: description: The ID of the issue type screen scheme for the project. Use the [Get all issue type screen schemes](#api-rest-api-3-issuetypescreenscheme-get) operation to get a list of issue type screen scheme IDs. If you specify the issue type screen scheme you cannot specify the project template key. format: int64 type: integer key: description: Project keys must be unique and start with an uppercase letter followed by one or more uppercase alphanumeric characters. The maximum length is 10 characters. type: string lead: description: This parameter is deprecated because of privacy changes. Use `leadAccountId` instead. See the [migration guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. The user name of the project lead. Either `lead` or `leadAccountId` must be set when creating a project. Cannot be provided with `leadAccountId`. type: string leadAccountId: description: The account ID of the project lead. Either `lead` or `leadAccountId` must be set when creating a project. Cannot be provided with `lead`. maxLength: 128 type: string name: description: The name of the project. type: string notificationScheme: description: The ID of the notification scheme for the project. Use the [Get notification schemes](#api-rest-api-3-notificationscheme-get) resource to get a list of notification scheme IDs. format: int64 type: integer permissionScheme: description: The ID of the permission scheme for the project. Use the [Get all permission schemes](#api-rest-api-3-permissionscheme-get) resource to see a list of all permission scheme IDs. format: int64 type: integer projectTemplateKey: description: A predefined configuration for a project. The type of the `projectTemplateKey` must match with the type of the `projectTypeKey`. enum: - com.pyxis.greenhopper.jira:gh-simplified-agility-kanban - com.pyxis.greenhopper.jira:gh-simplified-agility-scrum - com.pyxis.greenhopper.jira:gh-simplified-basic - com.pyxis.greenhopper.jira:gh-simplified-kanban-classic - com.pyxis.greenhopper.jira:gh-simplified-scrum-classic - com.atlassian.servicedesk:simplified-it-service-management - com.atlassian.servicedesk:simplified-general-service-desk - com.atlassian.servicedesk:simplified-general-service-desk-it - com.atlassian.servicedesk:simplified-general-service-desk-business - com.atlassian.servicedesk:simplified-internal-service-desk - com.atlassian.servicedesk:simplified-external-service-desk - com.atlassian.servicedesk:simplified-hr-service-desk - com.atlassian.servicedesk:simplified-facilities-service-desk - com.atlassian.servicedesk:simplified-legal-service-desk - com.atlassian.servicedesk:simplified-marketing-service-desk - com.atlassian.servicedesk:simplified-finance-service-desk - com.atlassian.servicedesk:simplified-analytics-service-desk - com.atlassian.servicedesk:simplified-design-service-desk - com.atlassian.servicedesk:simplified-sales-service-desk - com.atlassian.servicedesk:simplified-halp-service-desk - com.atlassian.servicedesk:simplified-custom-project-service-desk - com.atlassian.jira-core-project-templates:jira-core-simplified-content-management - com.atlassian.jira-core-project-templates:jira-core-simplified-document-approval - com.atlassian.jira-core-project-templates:jira-core-simplified-lead-tracking - com.atlassian.jira-core-project-templates:jira-core-simplified-process-control - com.atlassian.jira-core-project-templates:jira-core-simplified-procurement - com.atlassian.jira-core-project-templates:jira-core-simplified-project-management - com.atlassian.jira-core-project-templates:jira-core-simplified-recruitment - com.atlassian.jira-core-project-templates:jira-core-simplified-task- type: string projectTypeKey: description: The [project type](https://confluence.atlassian.com/x/GwiiLQ#Jiraapplicationsoverview-Productfeaturesandprojecttypes), which defines the application-specific feature set. If you don't specify the project template you have to specify the project type. enum: - software - service_desk - business type: string url: description: A link to information about this project, such as project documentation type: string workflowScheme: description: The ID of the workflow scheme for the project. Use the [Get all workflow schemes](#api-rest-api-3-workflowscheme-get) operation to get a list of workflow scheme IDs. If you specify the workflow scheme you cannot specify the project template key. format: int64 type: integer required: - key - name type: object CreateResolutionDetails: additionalProperties: true description: Details of an issue resolution. properties: description: description: The description of the resolution. maxLength: 255 type: string writeOnly: true name: description: The name of the resolution. Must be unique (case-insensitive). maxLength: 60 type: string writeOnly: true required: - name 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 CreateUpdateRoleRequestBean: additionalProperties: false properties: description: description: A description of the project role. Required when fully updating a project role. Optional when creating or partially updating a project role. type: string name: description: The name of the project role. Must be unique. Cannot begin or end with whitespace. The maximum length is 255 characters. Required when creating a project role. Optional when partially updating a project role. type: string type: object CreateWorkflowCondition: additionalProperties: false description: A workflow transition condition. properties: conditions: description: The list of workflow conditions. items: $ref: "#/components/schemas/CreateWorkflowCondition" type: array configuration: additionalProperties: description: EXPERIMENTAL. The configuration of the transition rule. description: EXPERIMENTAL. The configuration of the transition rule. type: object operator: description: The compound condition operator. enum: - AND - OR type: string type: description: The type of the transition rule. type: string type: object CreateWorkflowDetails: additionalProperties: false description: The details of a workflow. properties: description: description: The description of the workflow. The maximum length is 1000 characters. type: string name: description: The name of the workflow. The name must be unique. The maximum length is 255 characters. Characters can be separated by a whitespace but the name cannot start or end with a whitespace. type: string statuses: description: The statuses of the workflow. Any status that does not include a transition is added to the workflow without a transition. items: $ref: "#/components/schemas/CreateWorkflowStatusDetails" type: array uniqueItems: true transitions: description: |- The transitions of the workflow. For the request to be valid, these transitions must: * include one *initial* transition. * not use the same name for a *global* and *directed* transition. * have a unique name for each *global* transition. * have a unique 'to' status for each *global* transition. * have unique names for each transition from a status. * not have a 'from' status on *initial* and *global* transitions. * have a 'from' status on *directed* transitions. All the transition statuses must be included in `statuses`. items: $ref: "#/components/schemas/CreateWorkflowTransitionDetails" type: array required: - name - statuses - transitions type: object writeOnly: true CreateWorkflowStatusDetails: additionalProperties: false description: The details of a transition status. properties: id: description: The ID of the status. type: string properties: additionalProperties: type: string description: The properties of the status. type: object required: - id type: object writeOnly: true CreateWorkflowTransitionDetails: additionalProperties: false description: The details of a workflow transition. properties: description: description: The description of the transition. The maximum length is 1000 characters. type: string from: description: The statuses the transition can start from. items: type: string type: array name: description: The name of the transition. The maximum length is 60 characters. type: string properties: additionalProperties: type: string description: The properties of the transition. type: object rules: allOf: - $ref: "#/components/schemas/CreateWorkflowTransitionRulesDetails" description: The rules of the transition. screen: allOf: - $ref: "#/components/schemas/CreateWorkflowTransitionScreenDetails" description: The screen of the transition. to: description: The status the transition goes to. type: string type: description: The type of the transition. enum: - global - initial - directed type: string required: - name - to - type type: object writeOnly: true CreateWorkflowTransitionRule: additionalProperties: false description: A workflow transition rule. properties: configuration: additionalProperties: description: EXPERIMENTAL. The configuration of the transition rule. description: EXPERIMENTAL. The configuration of the transition rule. type: object type: description: The type of the transition rule. type: string required: - type type: object CreateWorkflowTransitionRulesDetails: additionalProperties: false description: The details of a workflow transition rules. properties: conditions: allOf: - $ref: "#/components/schemas/CreateWorkflowCondition" description: The workflow conditions. postFunctions: description: |- The workflow post functions. **Note:** The default post functions are always added to the *initial* transition, as in: "postFunctions": [ { "type": "IssueCreateFunction" }, { "type": "IssueReindexFunction" }, { "type": "FireIssueEventFunction", "configuration": { "event": { "id": "1", "name": "issue_created" } } } ] **Note:** The default post functions are always added to the *global* and *directed* transitions, as in: "postFunctions": [ { "type": "UpdateIssueStatusFunction" }, { "type": "CreateCommentFunction" }, { "type": "GenerateChangeHistoryFunction" }, { "type": "IssueReindexFunction" }, { "type": "FireIssueEventFunction", "configuration": { "event": { "id": "13", "name": "issue_generic" } } } ] items: $ref: "#/components/schemas/CreateWorkflowTransitionRule" type: array validators: description: |- The workflow validators. **Note:** The default permission validator is always added to the *initial* transition, as in: "validators": [ { "type": "PermissionValidator", "configuration": { "permissionKey": "CREATE_ISSUES" } } ] items: $ref: "#/components/schemas/CreateWorkflowTransitionRule" type: array type: object writeOnly: true CreateWorkflowTransitionScreenDetails: additionalProperties: false description: The details of a transition screen. properties: id: description: The ID of the screen. type: string required: - id type: object writeOnly: true CreatedIssue: additionalProperties: false description: Details about a created issue or subtask. properties: id: description: The ID of the created issue or subtask. readOnly: true type: string key: description: The key of the created issue or subtask. readOnly: true type: string self: description: The URL of the created issue or subtask. readOnly: true type: string transition: allOf: - $ref: "#/components/schemas/NestedResponse" description: The response code and messages related to any requested transition. readOnly: true watchers: allOf: - $ref: "#/components/schemas/NestedResponse" description: The response code and messages related to any requested watchers. readOnly: true type: object CreatedIssues: additionalProperties: false description: Details about the issues created and the errors for requests that failed. properties: errors: description: Error details for failed issue creation requests. items: $ref: "#/components/schemas/BulkOperationErrorResult" readOnly: true type: array issues: description: Details of the issues created. items: $ref: "#/components/schemas/CreatedIssue" readOnly: true type: array type: object CustomContextVariable: additionalProperties: false discriminator: mapping: issue: "#/components/schemas/IssueContextVariable" json: "#/components/schemas/JsonContextVariable" user: "#/components/schemas/UserContextVariable" propertyName: type oneOf: - $ref: "#/components/schemas/UserContextVariable" - $ref: "#/components/schemas/IssueContextVariable" - $ref: "#/components/schemas/JsonContextVariable" properties: type: description: Type of custom context variable. type: string required: - type type: object CustomFieldConfigurations: additionalProperties: false description: Details of configurations for a custom field. properties: configurations: description: The list of custom field configuration details. items: $ref: "#/components/schemas/ContextualConfiguration" maxItems: 1000 minItems: 1 type: array uniqueItems: true required: - configurations type: object writeOnly: true CustomFieldContext: additionalProperties: false description: The details of a custom field context. properties: description: description: The description of the context. type: string id: description: The ID of the context. type: string isAnyIssueType: description: Whether the context apply to all issue types. type: boolean isGlobalContext: description: Whether the context is global. type: boolean name: description: The name of the context. type: string required: - description - id - isAnyIssueType - isGlobalContext - name type: object CustomFieldContextDefaultValue: additionalProperties: false discriminator: mapping: datepicker: "#/components/schemas/CustomFieldContextDefaultValueDate" datetimepicker: "#/components/schemas/CustomFieldContextDefaultValueDateTime" float: "#/components/schemas/CustomFieldContextDefaultValueFloat" forge.datetime: "#/components/schemas/CustomFieldContextDefaultValueForgeDateTimeField" forge.group: "#/components/schemas/CustomFieldContextDefaultValueForgeGroupField" forge.group.list: "#/components/schemas/CustomFieldContextDefaultValueForgeMultiGroupField" forge.number: "#/components/schemas/CustomFieldContextDefaultValueForgeNumberField" forge.object: "#/components/schemas/CustomFieldContextDefaultValueForgeObjectField" forge.string: "#/components/schemas/CustomFieldContextDefaultValueForgeStringField" forge.string.list: "#/components/schemas/CustomFieldContextDefaultValueForgeMultiStringField" forge.user: "#/components/schemas/CustomFieldContextDefaultValueForgeUserField" forge.user.list: "#/components/schemas/CustomFieldContextDefaultValueForgeMultiUserField" grouppicker.multiple: "#/components/schemas/CustomFieldContextDefaultValueMultipleGroupPicker" grouppicker.single: "#/components/schemas/CustomFieldContextDefaultValueSingleGroupPicker" labels: "#/components/schemas/CustomFieldContextDefaultValueLabels" multi.user.select: "#/components/schemas/CustomFieldContextDefaultValueMultiUserPicker" option.cascading: "#/components/schemas/CustomFieldContextDefaultValueCascadingOption" option.multiple: "#/components/schemas/CustomFieldContextDefaultValueMultipleOption" option.single: "#/components/schemas/CustomFieldContextDefaultValueSingleOption" project: "#/components/schemas/CustomFieldContextDefaultValueProject" readonly: "#/components/schemas/CustomFieldContextDefaultValueReadOnly" single.user.select: "#/components/schemas/CustomFieldContextSingleUserPickerDefaults" textarea: "#/components/schemas/CustomFieldContextDefaultValueTextArea" textfield: "#/components/schemas/CustomFieldContextDefaultValueTextField" url: "#/components/schemas/CustomFieldContextDefaultValueURL" version.multiple: "#/components/schemas/CustomFieldContextDefaultValueMultipleVersionPicker" version.single: "#/components/schemas/CustomFieldContextDefaultValueSingleVersionPicker" propertyName: type oneOf: - $ref: "#/components/schemas/CustomFieldContextDefaultValueCascadingOption" - $ref: "#/components/schemas/CustomFieldContextDefaultValueMultipleOption" - $ref: "#/components/schemas/CustomFieldContextDefaultValueSingleOption" - $ref: "#/components/schemas/CustomFieldContextSingleUserPickerDefaults" - $ref: "#/components/schemas/CustomFieldContextDefaultValueMultiUserPicker" - $ref: "#/components/schemas/CustomFieldContextDefaultValueSingleGroupPicker" - $ref: "#/components/schemas/CustomFieldContextDefaultValueMultipleGroupPicker" - $ref: "#/components/schemas/CustomFieldContextDefaultValueDate" - $ref: "#/components/schemas/CustomFieldContextDefaultValueDateTime" - $ref: "#/components/schemas/CustomFieldContextDefaultValueURL" - $ref: "#/components/schemas/CustomFieldContextDefaultValueProject" - $ref: "#/components/schemas/CustomFieldContextDefaultValueFloat" - $ref: "#/components/schemas/CustomFieldContextDefaultValueLabels" - $ref: "#/components/schemas/CustomFieldContextDefaultValueTextField" - $ref: "#/components/schemas/CustomFieldContextDefaultValueTextArea" - $ref: "#/components/schemas/CustomFieldContextDefaultValueReadOnly" - $ref: "#/components/schemas/CustomFieldContextDefaultValueSingleVersionPicker" - $ref: "#/components/schemas/CustomFieldContextDefaultValueMultipleVersionPicker" - $ref: "#/components/schemas/CustomFieldContextDefaultValueForgeStringField" - $ref: "#/components/schemas/CustomFieldContextDefaultValueForgeMultiStringField" - $ref: "#/components/schemas/CustomFieldContextDefaultValueForgeObjectField" - $ref: "#/components/schemas/CustomFieldContextDefaultValueForgeDateTimeField" - $ref: "#/components/schemas/CustomFieldContextDefaultValueForgeGroupField" - $ref: "#/components/schemas/CustomFieldContextDefaultValueForgeMultiGroupField" - $ref: "#/components/schemas/CustomFieldContextDefaultValueForgeNumberField" - $ref: "#/components/schemas/CustomFieldContextDefaultValueForgeUserField" - $ref: "#/components/schemas/CustomFieldContextDefaultValueForgeMultiUserField" type: object CustomFieldContextDefaultValueCascadingOption: description: The default value for a cascading select custom field. properties: cascadingOptionId: description: The ID of the default cascading option. type: string contextId: description: The ID of the context. type: string optionId: description: The ID of the default option. type: string type: type: string required: - contextId - optionId - type type: object CustomFieldContextDefaultValueDate: description: The default value for a Date custom field. properties: date: description: The default date in ISO format. Ignored if `useCurrent` is true. type: string type: type: string useCurrent: default: false description: Whether to use the current date. type: boolean required: - type type: object CustomFieldContextDefaultValueDateTime: description: The default value for a date time custom field. properties: dateTime: description: The default date-time in ISO format. Ignored if `useCurrent` is true. type: string type: type: string useCurrent: default: false description: Whether to use the current date. type: boolean required: - type type: object CustomFieldContextDefaultValueFloat: description: Default value for a float (number) custom field. properties: number: description: The default floating-point number. format: double type: number type: type: string required: - number - type type: object CustomFieldContextDefaultValueForgeDateTimeField: description: The default value for a Forge date time custom field. properties: contextId: description: The ID of the context. type: string dateTime: description: The default date-time in ISO format. Ignored if `useCurrent` is true. type: string type: type: string useCurrent: default: false description: Whether to use the current date. type: boolean required: - contextId - type type: object CustomFieldContextDefaultValueForgeGroupField: description: The default value for a Forge group custom field. properties: contextId: description: The ID of the context. type: string groupId: description: The ID of the the default group. type: string type: type: string required: - contextId - groupId - type type: object CustomFieldContextDefaultValueForgeMultiGroupField: description: The default value for a Forge collection of groups custom field. properties: contextId: description: The ID of the context. type: string groupIds: description: The IDs of the default groups. items: description: The IDs of the default groups. type: string type: array uniqueItems: true type: type: string required: - contextId - groupIds - type type: object CustomFieldContextDefaultValueForgeMultiStringField: description: The default text for a Forge collection of strings custom field. properties: type: type: string values: description: List of string values. The maximum length for a value is 254 characters. items: description: List of string values. The maximum length for a value is 254 characters. type: string type: array required: - type type: object CustomFieldContextDefaultValueForgeMultiUserField: description: Defaults for a Forge collection of users custom field. properties: accountIds: description: The IDs of the default users. items: description: The IDs of the default users. type: string type: array contextId: description: The ID of the context. type: string type: type: string required: - accountIds - contextId - type type: object CustomFieldContextDefaultValueForgeNumberField: description: Default value for a Forge number custom field. properties: contextId: description: The ID of the context. type: string number: description: The default floating-point number. format: double type: number type: type: string required: - contextId - number - type type: object CustomFieldContextDefaultValueForgeObjectField: description: The default value for a Forge object custom field. properties: object: description: The default JSON object. type: object type: type: string required: - type type: object CustomFieldContextDefaultValueForgeStringField: description: The default text for a Forge string custom field. properties: contextId: description: The ID of the context. type: string text: description: The default text. The maximum length is 254 characters. type: string type: type: string required: - contextId - type type: object CustomFieldContextDefaultValueForgeUserField: description: Defaults for a Forge user custom field. properties: accountId: description: The ID of the default user. type: string contextId: description: The ID of the context. type: string type: type: string userFilter: $ref: "#/components/schemas/UserFilter" required: - accountId - contextId - type - userFilter type: object CustomFieldContextDefaultValueLabels: description: Default value for a labels custom field. properties: labels: description: The default labels value. items: description: The default labels value. type: string type: array type: type: string required: - labels - type type: object CustomFieldContextDefaultValueMultiUserPicker: description: The default value for a User Picker (multiple) custom field. properties: accountIds: description: The IDs of the default users. items: description: The IDs of the default users. type: string type: array contextId: description: The ID of the context. type: string type: type: string required: - accountIds - contextId - type type: object CustomFieldContextDefaultValueMultipleGroupPicker: description: The default value for a multiple group picker custom field. properties: contextId: description: The ID of the context. type: string groupIds: description: The IDs of the default groups. items: description: The IDs of the default groups. type: string type: array uniqueItems: true type: type: string required: - contextId - groupIds - type type: object CustomFieldContextDefaultValueMultipleOption: description: The default value for a multi-select custom field. properties: contextId: description: The ID of the context. type: string optionIds: description: The list of IDs of the default options. items: description: The list of IDs of the default options. type: string type: array type: type: string required: - contextId - optionIds - type type: object CustomFieldContextDefaultValueMultipleVersionPicker: description: The default value for a multiple version picker custom field. properties: type: type: string versionIds: description: The IDs of the default versions. items: description: The IDs of the default versions. type: string type: array uniqueItems: true versionOrder: description: The order the pickable versions are displayed in. If not provided, the released-first order is used. Available version orders are `"releasedFirst"` and `"unreleasedFirst"`. type: string required: - type - versionIds type: object CustomFieldContextDefaultValueProject: description: The default value for a project custom field. properties: contextId: description: The ID of the context. type: string projectId: description: The ID of the default project. type: string type: type: string required: - contextId - projectId - type type: object CustomFieldContextDefaultValueReadOnly: description: The default text for a read only custom field. properties: text: description: The default text. The maximum length is 255 characters. type: string type: type: string required: - type type: object CustomFieldContextDefaultValueSingleGroupPicker: description: The default value for a group picker custom field. properties: contextId: description: The ID of the context. type: string groupId: description: The ID of the the default group. type: string type: type: string required: - contextId - groupId - type type: object CustomFieldContextDefaultValueSingleOption: description: The default value for a single select custom field. properties: contextId: description: The ID of the context. type: string optionId: description: The ID of the default option. type: string type: type: string required: - contextId - optionId - type type: object CustomFieldContextDefaultValueSingleVersionPicker: description: The default value for a version picker custom field. properties: type: type: string versionId: description: The ID of the default version. type: string versionOrder: description: The order the pickable versions are displayed in. If not provided, the released-first order is used. Available version orders are `"releasedFirst"` and `"unreleasedFirst"`. type: string required: - type - versionId type: object CustomFieldContextDefaultValueTextArea: description: The default text for a text area custom field. properties: text: description: The default text. The maximum length is 32767 characters. type: string type: type: string required: - type type: object CustomFieldContextDefaultValueTextField: description: The default text for a text custom field. properties: text: description: The default text. The maximum length is 254 characters. type: string type: type: string required: - type type: object CustomFieldContextDefaultValueURL: description: The default value for a URL custom field. properties: contextId: description: The ID of the context. type: string type: type: string url: description: The default URL. type: string required: - contextId - type - url type: object CustomFieldContextDefaultValueUpdate: additionalProperties: false description: Default values to update. properties: defaultValues: items: $ref: "#/components/schemas/CustomFieldContextDefaultValue" type: array type: object CustomFieldContextOption: additionalProperties: false description: Details of the custom field options for a context. properties: disabled: description: Whether the option is disabled. type: boolean id: description: The ID of the custom field option. type: string optionId: description: For cascading options, the ID of the custom field option containing the cascading option. type: string value: description: The value of the custom field option. type: string required: - disabled - id - value type: object CustomFieldContextProjectMapping: additionalProperties: false description: Details of a context to project association. properties: contextId: description: The ID of the context. readOnly: true type: string isGlobalContext: description: Whether context is global. readOnly: true type: boolean projectId: description: The ID of the project. readOnly: true type: string required: - contextId type: object CustomFieldContextSingleUserPickerDefaults: description: Defaults for a User Picker (single) custom field. properties: accountId: description: The ID of the default user. type: string contextId: description: The ID of the context. type: string type: type: string userFilter: $ref: "#/components/schemas/UserFilter" required: - accountId - contextId - type - userFilter type: object CustomFieldContextUpdateDetails: additionalProperties: false description: Details of a custom field context. properties: description: description: The description of the custom field context. The maximum length is 255 characters. type: string writeOnly: true name: description: The name of the custom field context. The name must be unique. The maximum length is 255 characters. type: string writeOnly: true type: object CustomFieldCreatedContextOptionsList: additionalProperties: false description: A list of custom field options for a context. properties: options: description: The created custom field options. items: $ref: "#/components/schemas/CustomFieldContextOption" type: array type: object CustomFieldDefinitionJsonBean: additionalProperties: false properties: description: description: The description of the custom field, which is displayed in Jira. type: string name: description: The name of the custom field, which is displayed in Jira. This is not the unique identifier. type: string searcherKey: description: |- The searcher defines the way the field is searched in Jira. For example, *com.atlassian.jira.plugin.system.customfieldtypes:grouppickersearcher*. The search UI (basic search and JQL search) will display different operations and values for the field, based on the field searcher. You must specify a searcher that is valid for the field type, as listed below (abbreviated values shown): * `cascadingselect`: `cascadingselectsearcher` * `datepicker`: `daterange` * `datetime`: `datetimerange` * `float`: `exactnumber` or `numberrange` * `grouppicker`: `grouppickersearcher` * `importid`: `exactnumber` or `numberrange` * `labels`: `labelsearcher` * `multicheckboxes`: `multiselectsearcher` * `multigrouppicker`: `multiselectsearcher` * `multiselect`: `multiselectsearcher` * `multiuserpicker`: `userpickergroupsearcher` * `multiversion`: `versionsearcher` * `project`: `projectsearcher` * `radiobuttons`: `multiselectsearcher` * `readonlyfield`: `textsearcher` * `select`: `multiselectsearcher` * `textarea`: `textsearcher` * `textfield`: `textsearcher` * `url`: `exacttextsearcher` * `userpicker`: `userpickergroupsearcher` * `version`: `versionsearcher` If no searcher is provided, the field isn't searchable. However, [Forge custom fields](https://developer.atlassian.com/platform/forge/manifest-reference/modules/#jira-custom-field-type--beta-) have a searcher set automatically, so are always searchable. enum: - com.atlassian.jira.plugin.system.customfieldtypes:cascadingselectsearcher - com.atlassian.jira.plugin.system.customfieldtypes:daterange - com.atlassian.jira.plugin.system.customfieldtypes:datetimerange - com.atlassian.jira.plugin.system.customfieldtypes:exactnumber - com.atlassian.jira.plugin.system.customfieldtypes:exacttextsearcher - com.atlassian.jira.plugin.system.customfieldtypes:grouppickersearcher - com.atlassian.jira.plugin.system.customfieldtypes:labelsearcher - com.atlassian.jira.plugin.system.customfieldtypes:multiselectsearcher - com.atlassian.jira.plugin.system.customfieldtypes:numberrange - com.atlassian.jira.plugin.system.customfieldtypes:projectsearcher - com.atlassian.jira.plugin.system.customfieldtypes:textsearcher - com.atlassian.jira.plugin.system.customfieldtypes:userpickergroupsearcher - com.atlassian.jira.plugin.system.customfieldtypes:versionsearcher type: string type: description: |- The type of the custom field. These built-in custom field types are available: * `cascadingselect`: Enables values to be selected from two levels of select lists (value: `com.atlassian.jira.plugin.system.customfieldtypes:cascadingselect`) * `datepicker`: Stores a date using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`) * `datetime`: Stores a date with a time component (value: `com.atlassian.jira.plugin.system.customfieldtypes:datetime`) * `float`: Stores and validates a numeric (floating point) input (value: `com.atlassian.jira.plugin.system.customfieldtypes:float`) * `grouppicker`: Stores a user group using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:grouppicker`) * `importid`: A read-only field that stores the ID the issue had in the system it was imported from (value: `com.atlassian.jira.plugin.system.customfieldtypes:importid`) * `labels`: Stores labels (value: `com.atlassian.jira.plugin.system.customfieldtypes:labels`) * `multicheckboxes`: Stores multiple values using checkboxes (value: ``) * `multigrouppicker`: Stores multiple user groups using a picker control (value: ``) * `multiselect`: Stores multiple values using a select list (value: `com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes`) * `multiuserpicker`: Stores multiple users using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:multigrouppicker`) * `multiversion`: Stores multiple versions from the versions available in a project using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:multiversion`) * `project`: Stores a project from a list of projects that the user is permitted to view (value: `com.atlassian.jira.plugin.system.customfieldtypes:project`) * `radiobuttons`: Stores a value using radio buttons (value: `com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons`) * `readonlyfield`: Stores a read-only text value, which can only be populated via the API (value: `com.atlassian.jira.plugin.system.customfieldtypes:readonlyfield`) * `select`: Stores a value from a configurable list of options (value: `com.atlassian.jira.plugin.system.customfieldtypes:select`) * `textarea`: Stores a long text string using a multiline text area (value: `com.atlassian.jira.plugin.system.customfieldtypes:textarea`) * `textfield`: Stores a text string using a single-line text box (value: `com.atlassian.jira.plugin.system.customfieldtypes:textfield`) * `url`: Stores a URL (value: `com.atlassian.jira.plugin.system.customfieldtypes:url`) * `userpicker`: Stores a user using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:userpicker`) * `version`: Stores a version using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:version`) To create a field based on a [Forge custom field type](https://developer.atlassian.com/platform/forge/manifest-reference/modules/#jira-custom-field-type--beta-), use the ID of the Forge custom field type as the value. For example, `ari:cloud:ecosystem::extension/e62f20a2-4b61-4dbe-bfb9-9a88b5e3ac84/548c5df1-24aa-4f7c-bbbb-3038d947cb05/static/my-cf-type-key`. type: string required: - name - type type: object CustomFieldOption: additionalProperties: false description: Details of a custom option for a field. properties: self: description: The URL of these custom field option details. format: uri readOnly: true type: string value: description: The value of the custom field option. readOnly: true type: string type: object xml: name: customFieldOption CustomFieldOptionCreate: additionalProperties: false description: Details of a custom field option to create. properties: disabled: description: Whether the option is disabled. type: boolean optionId: description: For cascading options, the ID of the custom field object containing the cascading option. type: string value: description: The value of the custom field option. type: string required: - value type: object CustomFieldOptionUpdate: additionalProperties: false description: Details of a custom field option for a context. properties: disabled: description: Whether the option is disabled. type: boolean id: description: The ID of the custom field option. type: string value: description: The value of the custom field option. type: string required: - id type: object CustomFieldReplacement: additionalProperties: false description: Details about the replacement for a deleted version. properties: customFieldId: description: The ID of the custom field in which to replace the version number. format: int64 type: integer moveTo: description: The version number to use as a replacement for the deleted version. format: int64 type: integer type: object CustomFieldUpdatedContextOptionsList: additionalProperties: false description: A list of custom field options for a context. properties: options: description: The updated custom field options. items: $ref: "#/components/schemas/CustomFieldOptionUpdate" type: array type: object CustomFieldValueUpdate: additionalProperties: false description: A list of issue IDs and the value to update a custom field to. properties: issueIds: description: The list of issue IDs. items: format: int64 type: integer writeOnly: true type: array writeOnly: true value: description: |- The value for the custom field. The value must be compatible with the [custom field type](https://developer.atlassian.com/platform/forge/manifest-reference/modules/jira-custom-field/#data-types) as follows: * `string` the value must be a string. * `number` the value must be a number. * `datetime` the value must be a string that represents a date in the ISO format or the simplified extended ISO format. For example, `"2023-01-18T12:00:00-03:00"` or `"2023-01-18T12:00:00.000Z"`. However, the milliseconds part is ignored. * `user` the value must be an object that contains the `accountId` field. * `group` the value must be an object that contains the group `name` or `groupId` field. Because group names can change, we recommend using `groupId`. A list of appropriate values must be provided if the field is of the `list` [collection type](https://developer.atlassian.com/platform/forge/manifest-reference/modules/jira-custom-field/#collection-types). required: - issueIds - value type: object writeOnly: true CustomFieldValueUpdateDetails: additionalProperties: false description: Details of updates for a custom field. properties: updates: description: The list of custom field update details. items: $ref: "#/components/schemas/CustomFieldValueUpdate" type: array type: object writeOnly: true Dashboard: additionalProperties: false description: Details of a dashboard. properties: automaticRefreshMs: description: The automatic refresh interval for the dashboard in milliseconds. format: int32 readOnly: true type: integer description: type: string editPermissions: description: The details of any edit share permissions for the dashboard. items: $ref: "#/components/schemas/SharePermission" readOnly: true type: array id: description: The ID of the dashboard. readOnly: true type: string isFavourite: description: Whether the dashboard is selected as a favorite by the user. readOnly: true type: boolean isWritable: description: Whether the current user has permission to edit the dashboard. readOnly: true type: boolean name: description: The name of the dashboard. readOnly: true type: string owner: allOf: - $ref: "#/components/schemas/UserBean" description: The owner of the dashboard. readOnly: true popularity: description: The number of users who have this dashboard as a favorite. format: int64 readOnly: true type: integer rank: description: The rank of this dashboard. format: int32 readOnly: true type: integer self: description: The URL of these dashboard details. format: uri readOnly: true type: string sharePermissions: description: The details of any view share permissions for the dashboard. items: $ref: "#/components/schemas/SharePermission" readOnly: true type: array systemDashboard: description: Whether the current dashboard is system dashboard. readOnly: true type: boolean view: description: The URL of the dashboard. readOnly: true type: string type: object DashboardDetails: additionalProperties: false description: Details of a dashboard. properties: description: description: The description of the dashboard. type: string editPermissions: description: The edit permissions for the dashboard. items: $ref: "#/components/schemas/SharePermission" type: array name: description: The name of the dashboard. type: string sharePermissions: description: The share permissions for the dashboard. items: $ref: "#/components/schemas/SharePermission" type: array required: - editPermissions - name - sharePermissions type: object DashboardGadget: additionalProperties: false description: Details of a gadget. properties: color: description: The color of the gadget. Should be one of `blue`, `red`, `yellow`, `green`, `cyan`, `purple`, `gray`, or `white`. enum: - blue - red - yellow - green - cyan - purple - gray - white readOnly: true type: string id: description: The ID of the gadget instance. format: int64 readOnly: true type: integer moduleKey: description: The module key of the gadget type. readOnly: true type: string position: allOf: - $ref: "#/components/schemas/DashboardGadgetPosition" description: The position of the gadget. readOnly: true title: description: The title of the gadget. readOnly: true type: string uri: description: The URI of the gadget type. readOnly: true type: string required: - color - id - position - title type: object DashboardGadgetPosition: additionalProperties: false description: Details of a gadget position. properties: The column position of the gadget.: format: int32 type: integer The row position of the gadget.: format: int32 type: integer required: - The column position of the gadget. - The row position of the gadget. type: object writeOnly: true DashboardGadgetResponse: additionalProperties: false description: The list of gadgets on the dashboard. properties: gadgets: description: The list of gadgets. items: $ref: "#/components/schemas/DashboardGadget" readOnly: true type: array required: - gadgets type: object DashboardGadgetSettings: additionalProperties: false description: Details of the settings for a dashboard gadget. properties: color: description: The color of the gadget. Should be one of `blue`, `red`, `yellow`, `green`, `cyan`, `purple`, `gray`, or `white`. type: string writeOnly: true ignoreUriAndModuleKeyValidation: description: Whether to ignore the validation of module key and URI. For example, when a gadget is created that is a part of an application that isn't installed. type: boolean writeOnly: true moduleKey: description: The module key of the gadget type. Can't be provided with `uri`. type: string writeOnly: true position: allOf: - $ref: "#/components/schemas/DashboardGadgetPosition" description: The position of the gadget. When the gadget is placed into the position, other gadgets in the same column are moved down to accommodate it. title: description: The title of the gadget. type: string writeOnly: true uri: description: The URI of the gadget type. Can't be provided with `moduleKey`. type: string writeOnly: true type: object DashboardGadgetUpdateRequest: additionalProperties: false description: The details of the gadget to update. properties: color: description: The color of the gadget. Should be one of `blue`, `red`, `yellow`, `green`, `cyan`, `purple`, `gray`, or `white`. type: string writeOnly: true position: allOf: - $ref: "#/components/schemas/DashboardGadgetPosition" description: The position of the gadget. title: description: The title of the gadget. type: string writeOnly: true type: object DefaultLevelValue: additionalProperties: true description: Details of scheme and new default level. maxLength: 1000 properties: defaultLevelId: description: The ID of the issue security level to set as default for the specified scheme. Providing null will reset the default level. type: string writeOnly: true issueSecuritySchemeId: description: The ID of the issue security scheme to set default level for. type: string writeOnly: true required: - defaultLevelId - issueSecuritySchemeId type: object writeOnly: true DefaultShareScope: additionalProperties: false description: Details of the scope of the default sharing for new filters and dashboards. properties: scope: description: |- The scope of the default sharing for new filters and dashboards: * `AUTHENTICATED` Shared with all logged-in users. * `GLOBAL` Shared with all logged-in users. This shows as `AUTHENTICATED` in the response. * `PRIVATE` Not shared with any users. enum: - GLOBAL - AUTHENTICATED - PRIVATE type: string required: - scope type: object xml: name: defaultShareScope DefaultWorkflow: additionalProperties: false description: Details about the default workflow. properties: updateDraftIfNeeded: description: Whether a draft workflow scheme is created or updated when updating an active workflow scheme. The draft is updated with the new default workflow. Defaults to `false`. type: boolean workflow: description: The name of the workflow to set as the default workflow. type: string required: - workflow type: object DeleteAndReplaceVersionBean: additionalProperties: false properties: customFieldReplacementList: description: An array of custom field IDs (`customFieldId`) and version IDs (`moveTo`) to update when the fields contain the deleted version. items: $ref: "#/components/schemas/CustomFieldReplacement" type: array moveAffectedIssuesTo: description: The ID of the version to update `affectedVersion` to when the field contains the deleted version. format: int64 type: integer moveFixIssuesTo: description: The ID of the version to update `fixVersion` to when the field contains the deleted version. format: int64 type: integer type: object DeprecatedWorkflow: additionalProperties: false description: Details about a workflow. properties: default: type: boolean description: description: The description of the workflow. readOnly: true type: string lastModifiedDate: description: The datetime the workflow was last modified. readOnly: true type: string lastModifiedUser: description: This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. readOnly: true type: string lastModifiedUserAccountId: description: The account ID of the user that last modified the workflow. readOnly: true type: string name: description: The name of the workflow. readOnly: true type: string scope: allOf: - $ref: "#/components/schemas/Scope" description: The scope where this workflow applies readOnly: true steps: description: The number of steps included in the workflow. format: int32 readOnly: true type: integer type: object EntityProperty: additionalProperties: false description: An entity property, for more information see [Entity properties](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/). properties: key: description: The key of the property. Required on create and update. type: string value: description: The value of the property. Required on create and update. type: object EntityPropertyDetails: properties: entityId: description: The entity property ID. example: 123 type: number key: description: The entity property key. example: mykey type: string value: description: The new value of the entity property. example: newValue type: string required: - entityId - key - value 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 ErrorMessage: additionalProperties: false example: message: The request is not from a Connect app. properties: message: description: The error message. type: string required: - message type: object EventNotification: additionalProperties: false description: Details about a notification associated with an event. properties: emailAddress: description: The email address. type: string expand: description: Expand options that include additional event notification details in the response. type: string field: allOf: - $ref: "#/components/schemas/FieldDetails" description: The custom user or group field. group: allOf: - $ref: "#/components/schemas/GroupName" description: The specified group. id: description: The ID of the notification. format: int64 type: integer notificationType: description: Identifies the recipients of the notification. enum: - CurrentAssignee - Reporter - CurrentUser - ProjectLead - ComponentLead - User - Group - ProjectRole - EmailAddress - AllWatchers - UserCustomField - GroupCustomField type: string parameter: description: |- As a group's name can change, use of `recipient` is recommended. The identifier associated with the `notificationType` value that defines the receiver of the notification, where the receiver isn't implied by `notificationType` value. So, when `notificationType` is: * `User` The `parameter` is the user account ID. * `Group` The `parameter` is the group name. * `ProjectRole` The `parameter` is the project role ID. * `UserCustomField` The `parameter` is the ID of the custom field. * `GroupCustomField` The `parameter` is the ID of the custom field. type: string projectRole: allOf: - $ref: "#/components/schemas/ProjectRole" description: The specified project role. recipient: description: |- The identifier associated with the `notificationType` value that defines the receiver of the notification, where the receiver isn't implied by the `notificationType` value. So, when `notificationType` is: * `User`, `recipient` is the user account ID. * `Group`, `recipient` is the group ID. * `ProjectRole`, `recipient` is the project role ID. * `UserCustomField`, `recipient` is the ID of the custom field. * `GroupCustomField`, `recipient` is the ID of the custom field. type: string user: allOf: - $ref: "#/components/schemas/UserDetails" description: The specified user. type: object FailedWebhook: additionalProperties: false description: Details about a failed webhook. properties: body: description: The webhook body. type: string failureTime: description: The time the webhook was added to the list of failed webhooks (that is, the time of the last failed retry). format: int64 type: integer id: description: The webhook ID, as sent in the `X-Atlassian-Webhook-Identifier` header with the webhook. type: string url: description: The original webhook destination. type: string required: - failureTime - id - url type: object FailedWebhooks: additionalProperties: false description: A page of failed webhooks. properties: maxResults: description: The maximum number of items on the page. If the list of values is shorter than this number, then there are no more pages. format: int32 type: integer next: description: The URL to the next page of results. Present only if the request returned at least one result.The next page may be empty at the time of receiving the response, but new failed webhooks may appear in time. You can save the URL to the next page and query for new results periodically (for example, every hour). format: uri type: string values: description: The list of webhooks. items: $ref: "#/components/schemas/FailedWebhook" type: array required: - maxResults - values type: object Field: additionalProperties: false description: Details of a field. properties: contextsCount: description: Number of contexts where the field is used. format: int64 type: integer description: description: The description of the field. type: string id: description: The ID of the field. type: string isLocked: description: Whether the field is locked. type: boolean isUnscreenable: description: Whether the field is shown on screen or not. type: boolean key: description: The key of the field. type: string lastUsed: $ref: "#/components/schemas/FieldLastUsed" name: description: The name of the field. type: string projectsCount: description: Number of projects where the field is used. format: int64 type: integer schema: $ref: "#/components/schemas/JsonTypeBean" screensCount: description: Number of screens where the field is used. format: int64 type: integer searcherKey: description: The searcher key of the field. Returned for custom fields. type: string required: - id - name - schema type: object FieldChangedClause: description: A clause that asserts whether a field was changed. For example, `status CHANGED AFTER startOfMonth(-1M)`.See [CHANGED](https://confluence.atlassian.com/x/dgiiLQ#Advancedsearching-operatorsreference-CHANGEDCHANGED) for more information about the CHANGED operator. properties: field: $ref: "#/components/schemas/JqlQueryField" operator: description: The operator applied to the field. enum: - changed type: string predicates: description: The list of time predicates. items: $ref: "#/components/schemas/JqlQueryClauseTimePredicate" type: array required: - field - operator - predicates type: object FieldConfiguration: additionalProperties: false description: Details of a field configuration. properties: description: description: The description of the field configuration. type: string id: description: The ID of the field configuration. format: int64 type: integer isDefault: description: Whether the field configuration is the default. type: boolean name: description: The name of the field configuration. type: string required: - description - id - name type: object FieldConfigurationDetails: additionalProperties: false description: Details of a field configuration. properties: description: description: The description of the field configuration. maxLength: 255 type: string writeOnly: true name: description: The name of the field configuration. Must be unique. maxLength: 255 type: string writeOnly: true required: - name type: object FieldConfigurationIssueTypeItem: additionalProperties: false description: The field configuration for an issue type. properties: fieldConfigurationId: description: The ID of the field configuration. type: string fieldConfigurationSchemeId: description: The ID of the field configuration scheme. type: string issueTypeId: description: The ID of the issue type or *default*. When set to *default* this field configuration issue type item applies to all issue types without a field configuration. type: string required: - fieldConfigurationId - fieldConfigurationSchemeId - issueTypeId type: object FieldConfigurationItem: additionalProperties: false description: A field within a field configuration. properties: description: description: The description of the field within the field configuration. type: string id: description: The ID of the field within the field configuration. type: string isHidden: description: Whether the field is hidden in the field configuration. type: boolean isRequired: description: Whether the field is required in the field configuration. type: boolean renderer: description: The renderer type for the field within the field configuration. type: string required: - id type: object FieldConfigurationItemsDetails: additionalProperties: false description: Details of field configuration items. properties: fieldConfigurationItems: description: Details of fields in a field configuration. items: $ref: "#/components/schemas/FieldConfigurationItem" type: array writeOnly: true required: - fieldConfigurationItems type: object FieldConfigurationScheme: additionalProperties: false description: Details of a field configuration scheme. properties: description: description: The description of the field configuration scheme. type: string id: description: The ID of the field configuration scheme. type: string name: description: The name of the field configuration scheme. type: string required: - id - name type: object FieldConfigurationSchemeProjectAssociation: additionalProperties: false description: Associated field configuration scheme and project. properties: fieldConfigurationSchemeId: description: The ID of the field configuration scheme. If the field configuration scheme ID is `null`, the operation assigns the default field configuration scheme. type: string writeOnly: true projectId: description: The ID of the project. type: string writeOnly: true required: - projectId type: object FieldConfigurationSchemeProjects: additionalProperties: false description: Project list with assigned field configuration schema. properties: fieldConfigurationScheme: $ref: "#/components/schemas/FieldConfigurationScheme" projectIds: description: The IDs of projects using the field configuration scheme. items: description: The IDs of projects using the field configuration scheme. type: string type: array required: - projectIds type: object FieldConfigurationToIssueTypeMapping: additionalProperties: false description: The field configuration to issue type mapping. properties: fieldConfigurationId: description: The ID of the field configuration. type: string writeOnly: true issueTypeId: description: The ID of the issue type or *default*. When set to *default* this field configuration issue type item applies to all issue types without a field configuration. An issue type can be included only once in a request. type: string writeOnly: true required: - fieldConfigurationId - issueTypeId type: object writeOnly: true FieldDetails: additionalProperties: false description: Details about a field. properties: clauseNames: description: The names that can be used to reference the field in an advanced search. For more information, see [Advanced searching - fields reference](https://confluence.atlassian.com/x/gwORLQ). items: type: string type: array uniqueItems: true custom: description: Whether the field is a custom field. type: boolean id: description: The ID of the field. type: string key: description: The key of the field. type: string name: description: The name of the field. type: string navigable: description: Whether the field can be used as a column on the issue navigator. type: boolean orderable: description: Whether the content of the field can be used to order lists. type: boolean schema: allOf: - $ref: "#/components/schemas/JsonTypeBean" description: The data schema for the field. scope: allOf: - $ref: "#/components/schemas/Scope" description: The scope of the field. searchable: description: Whether the content of the field can be searched. type: boolean type: object xml: name: field FieldLastUsed: additionalProperties: false description: Information about the most recent use of a field. properties: type: description: |- Last used value type: * *TRACKED*: field is tracked and a last used date is available. * *NOT\_TRACKED*: field is not tracked, last used date is not available. * *NO\_INFORMATION*: field is tracked, but no last used date is available. enum: - TRACKED - NOT_TRACKED - NO_INFORMATION type: string value: description: The date when the value of the field last changed. format: date-time type: string type: object FieldMetadata: additionalProperties: false description: The metadata describing an issue field. properties: allowedValues: description: The list of values allowed in the field. items: readOnly: true readOnly: true type: array autoCompleteUrl: description: The URL that can be used to automatically complete the field. readOnly: true type: string configuration: additionalProperties: readOnly: true description: The configuration properties. readOnly: true type: object defaultValue: description: The default value of the field. readOnly: true hasDefaultValue: description: Whether the field has a default value. readOnly: true type: boolean key: description: The key of the field. readOnly: true type: string name: description: The name of the field. readOnly: true type: string operations: description: The list of operations that can be performed on the field. items: readOnly: true type: string readOnly: true type: array required: description: Whether the field is required. readOnly: true type: boolean schema: allOf: - $ref: "#/components/schemas/JsonTypeBean" description: The data type of the field. readOnly: true required: - key - name - operations - required - schema type: object xml: name: availableField FieldReferenceData: additionalProperties: false description: Details of a field that can be used in advanced searches. properties: auto: description: Whether the field provide auto-complete suggestions. enum: - "true" - "false" type: string cfid: description: If the item is a custom field, the ID of the custom field. type: string deprecated: description: Whether this field has been deprecated. enum: - "true" - "false" type: string deprecatedSearcherKey: description: The searcher key of the field, only passed when the field is deprecated. type: string displayName: description: |- The display name contains the following: * for system fields, the field name. For example, `Summary`. * for collapsed custom fields, the field name followed by a hyphen and then the field name and field type. For example, `Component - Component[Dropdown]`. * for other custom fields, the field name followed by a hyphen and then the custom field ID. For example, `Component - cf[10061]`. type: string operators: description: The valid search operators for the field. items: type: string type: array orderable: description: Whether the field can be used in a query's `ORDER BY` clause. enum: - "true" - "false" type: string searchable: description: Whether the content of this field can be searched. enum: - "true" - "false" type: string types: description: The data types of items in the field. items: type: string type: array value: description: The field identifier. type: string type: object FieldUpdateOperation: additionalProperties: false description: Details of an operation to perform on a field. properties: add: description: The value to add to the field. example: triaged copy: description: The field value to copy from another issue. example: issuelinks: sourceIssues: - key: FP-5 edit: description: The value to edit in the field. example: originalEstimate: 1w 1d remainingEstimate: 4d remove: description: The value to removed from the field. example: blocker set: description: The value to set in the field. example: A new summary type: object FieldValueClause: description: A clause that asserts the current value of a field. For example, `summary ~ test`. properties: field: $ref: "#/components/schemas/JqlQueryField" operand: $ref: "#/components/schemas/JqlQueryClauseOperand" operator: description: The operator between the field and operand. enum: - = - "!=" - ">" - < - ">=" - <= - in - not in - "~" - ~= - is - is not type: string required: - field - operand - operator type: object FieldWasClause: description: A clause that asserts a previous value of a field. For example, `status WAS "Resolved" BY currentUser() BEFORE "2019/02/02"`. See [WAS](https://confluence.atlassian.com/x/dgiiLQ#Advancedsearching-operatorsreference-WASWAS) for more information about the WAS operator. properties: field: $ref: "#/components/schemas/JqlQueryField" operand: $ref: "#/components/schemas/JqlQueryClauseOperand" operator: description: The operator between the field and operand. enum: - was - was in - was not in - was not type: string predicates: description: The list of time predicates. items: $ref: "#/components/schemas/JqlQueryClauseTimePredicate" type: array required: - field - operand - operator - predicates type: object Fields: additionalProperties: false description: Key fields from the linked issue. properties: assignee: allOf: - $ref: "#/components/schemas/UserDetails" description: The assignee of the linked issue. readOnly: true issueType: allOf: - $ref: "#/components/schemas/IssueTypeDetails" description: The type of the linked issue. readOnly: true issuetype: $ref: "#/components/schemas/IssueTypeDetails" description: The type of the linked issue. priority: allOf: - $ref: "#/components/schemas/Priority" description: The priority of the linked issue. readOnly: true status: allOf: - $ref: "#/components/schemas/StatusDetails" description: The status of the linked issue. readOnly: true summary: description: The summary description of the linked issue. readOnly: true type: string timetracking: allOf: - $ref: "#/components/schemas/TimeTrackingDetails" description: The time tracking of the linked issue. readOnly: true type: object Filter: additionalProperties: false description: Details about a filter. properties: description: description: A description of the filter. type: string editPermissions: description: The groups and projects that can edit the filter. items: $ref: "#/components/schemas/SharePermission" type: array favourite: description: Whether the filter is selected as a favorite. type: boolean favouritedCount: description: The count of how many users have selected this filter as a favorite, including the filter owner. format: int64 readOnly: true type: integer id: description: The unique identifier for the filter. readOnly: true type: string jql: description: The JQL query for the filter. For example, *project = SSP AND issuetype = Bug*. type: string name: description: The name of the filter. Must be unique. type: string owner: allOf: - $ref: "#/components/schemas/User" description: The user who owns the filter. This is defaulted to the creator of the filter, however Jira administrators can change the owner of a shared filter in the admin settings. readOnly: true searchUrl: description: A URL to view the filter results in Jira, using the [Search for issues using JQL](#api-rest-api-3-filter-search-get) operation with the filter's JQL string to return the filter results. For example, *https://your-domain.atlassian.net/rest/api/3/search?jql=project+%3D+SSP+AND+issuetype+%3D+Bug*. format: uri readOnly: true type: string self: description: The URL of the filter. format: uri readOnly: true type: string sharePermissions: description: The groups and projects that the filter is shared with. items: $ref: "#/components/schemas/SharePermission" type: array sharedUsers: allOf: - $ref: "#/components/schemas/UserList" description: A paginated list of the users that the filter is shared with. This includes users that are members of the groups or can browse the projects that the filter is shared with. readOnly: true subscriptions: allOf: - $ref: "#/components/schemas/FilterSubscriptionsList" description: A paginated list of the users that are subscribed to the filter. readOnly: true viewUrl: description: A URL to view the filter results in Jira, using the ID of the filter. For example, *https://your-domain.atlassian.net/issues/?filter=10100*. format: uri readOnly: true type: string required: - name type: object xml: name: filter FilterDetails: additionalProperties: false description: Details of a filter. properties: description: description: The description of the filter. type: string editPermissions: description: The groups and projects that can edit the filter. This can be specified when updating a filter, but not when creating a filter. items: $ref: "#/components/schemas/SharePermission" type: array expand: description: Expand options that include additional filter details in the response. readOnly: true type: string xml: attribute: true favourite: description: Whether the filter is selected as a favorite by any users, not including the filter owner. readOnly: true type: boolean favouritedCount: description: The count of how many users have selected this filter as a favorite, including the filter owner. format: int64 readOnly: true type: integer id: description: The unique identifier for the filter. readOnly: true type: string jql: description: The JQL query for the filter. For example, *project = SSP AND issuetype = Bug*. readOnly: true type: string name: description: The name of the filter. type: string owner: allOf: - $ref: "#/components/schemas/User" description: The user who owns the filter. Defaults to the creator of the filter, however, Jira administrators can change the owner of a shared filter in the admin settings. readOnly: true searchUrl: description: A URL to view the filter results in Jira, using the [Search for issues using JQL](#api-rest-api-3-filter-search-get) operation with the filter's JQL string to return the filter results. For example, *https://your-domain.atlassian.net/rest/api/3/search?jql=project+%3D+SSP+AND+issuetype+%3D+Bug*. format: uri readOnly: true type: string self: description: The URL of the filter. format: uri readOnly: true type: string sharePermissions: description: The groups and projects that the filter is shared with. This can be specified when updating a filter, but not when creating a filter. items: $ref: "#/components/schemas/SharePermission" type: array subscriptions: description: The users that are subscribed to the filter. items: $ref: "#/components/schemas/FilterSubscription" readOnly: true type: array viewUrl: description: A URL to view the filter results in Jira, using the ID of the filter. For example, *https://your-domain.atlassian.net/issues/?filter=10100*. format: uri readOnly: true type: string required: - name type: object FilterSubscription: additionalProperties: false description: Details of a user or group subscribing to a filter. properties: group: allOf: - $ref: "#/components/schemas/GroupName" description: The group subscribing to filter. readOnly: true id: description: The ID of the filter subscription. format: int64 readOnly: true type: integer user: allOf: - $ref: "#/components/schemas/User" description: The user subscribing to filter. readOnly: true type: object FilterSubscriptionsList: additionalProperties: false description: A paginated list of subscriptions to a filter. properties: end-index: description: The index of the last item returned on the page. format: int32 readOnly: true type: integer xml: attribute: true name: end-index items: description: The list of items. items: $ref: "#/components/schemas/FilterSubscription" readOnly: true type: array max-results: description: The maximum number of results that could be on the page. format: int32 readOnly: true type: integer xml: attribute: true name: max-results size: description: The number of items on the page. format: int32 readOnly: true type: integer xml: attribute: true start-index: description: The index of the first item returned on the page. format: int32 readOnly: true type: integer xml: attribute: true name: start-index type: object FoundGroup: additionalProperties: false description: A group found in a search. properties: groupId: description: The ID of the group, which uniquely identifies the group across all Atlassian products. For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*. type: string html: description: The group name with the matched query string highlighted with the HTML bold tag. type: string labels: items: $ref: "#/components/schemas/GroupLabel" type: array name: description: The name of the group. The name of a group is mutable, to reliably identify a group use ``groupId`.` type: string type: object xml: name: group FoundGroups: additionalProperties: false description: The list of groups found in a search, including header text (Showing X of Y matching groups) and total of matched groups. properties: groups: items: $ref: "#/components/schemas/FoundGroup" type: array header: description: Header text indicating the number of groups in the response and the total number of groups found in the search. type: string total: description: The total number of groups found in the search. format: int32 type: integer type: object xml: name: groupsuggestions FoundUsers: additionalProperties: false description: The list of users found in a search, including header text (Showing X of Y matching users) and total of matched users. properties: header: description: Header text indicating the number of users in the response and the total number of users found in the search. type: string total: description: The total number of users found in the search. format: int32 type: integer users: items: $ref: "#/components/schemas/UserPickerUser" type: array type: object FoundUsersAndGroups: additionalProperties: false description: List of users and groups found in a search. properties: groups: $ref: "#/components/schemas/FoundGroups" users: $ref: "#/components/schemas/FoundUsers" type: object FunctionOperand: description: An operand that is a function. See [Advanced searching - functions reference](https://confluence.atlassian.com/x/dwiiLQ) for more information about JQL functions. properties: arguments: description: The list of function arguments. items: type: string type: array encodedOperand: description: Encoded operand, which can be used directly in a JQL query. type: string function: description: The name of the function. type: string required: - arguments - function type: object FunctionReferenceData: additionalProperties: false description: Details of functions that can be used in advanced searches. properties: displayName: description: The display name of the function. type: string isList: description: Whether the function can take a list of arguments. enum: - "true" - "false" type: string types: description: The data types returned by the function. items: type: string type: array value: description: The function identifier. type: string type: object GlobalScopeBean: additionalProperties: false properties: attributes: description: Defines the behavior of the option in the global context.If notSelectable is set, the option cannot be set as the field's value. This is useful for archiving an option that has previously been selected but shouldn't be used anymore.If defaultValue is set, the option is selected by default. items: enum: - notSelectable - defaultValue type: string type: array uniqueItems: true type: object Group: additionalProperties: false properties: expand: description: Expand options that include additional group details in the response. readOnly: true type: string xml: attribute: true groupId: description: The ID of the group, which uniquely identifies the group across all Atlassian products. For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*. nullable: true type: string name: description: The name of group. type: string self: description: The URL for these group details. format: uri readOnly: true type: string users: allOf: - $ref: "#/components/schemas/PagedListUserDetailsApplicationUser" description: A paginated list of the users that are members of the group. A maximum of 50 users is returned in the list, to access additional users append `[start-index:end-index]` to the expand request. For example, to access the next 50 users, use`?expand=users[51:100]`. readOnly: true type: object GroupDetails: additionalProperties: false description: Details about a group. properties: groupId: description: The ID of the group, which uniquely identifies the group across all Atlassian products. For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*. nullable: true type: string name: description: The name of the group. type: string type: object GroupLabel: additionalProperties: false description: A group label. properties: text: description: The group label name. type: string title: description: The title of the group label. type: string type: description: The type of the group label. enum: - ADMIN - SINGLE - MULTIPLE type: string type: object xml: name: grouplabel GroupName: additionalProperties: false description: Details about a group. properties: groupId: description: The ID of the group, which uniquely identifies the group across all Atlassian products. For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*. nullable: true type: string name: description: The name of group. type: string self: description: The URL for these group details. format: uri readOnly: true type: string type: object HealthCheckResult: additionalProperties: false description: Jira instance health check results. Deprecated and no longer returned. properties: description: description: The description of the Jira health check item. type: string name: description: The name of the Jira health check item. type: string passed: description: Whether the Jira health check item passed or failed. type: boolean type: object Hierarchy: additionalProperties: false description: The project issue type hierarchy. properties: baseLevelId: description: "The ID of the base level. This property is deprecated, see [Change notice: Removing hierarchy level IDs from next-gen APIs](https://developer.atlassian.com/cloud/jira/platform/change-notice-removing-hierarchy-level-ids-from-next-gen-apis/)." format: int64 type: integer levels: description: Details about the hierarchy level. items: $ref: "#/components/schemas/SimplifiedHierarchyLevel" readOnly: true type: array type: object xml: name: hierarchy HistoryMetadata: additionalProperties: true description: Details of issue history metadata. properties: activityDescription: description: The activity described in the history record. type: string activityDescriptionKey: description: The key of the activity described in the history record. type: string actor: allOf: - $ref: "#/components/schemas/HistoryMetadataParticipant" description: Details of the user whose action created the history record. cause: allOf: - $ref: "#/components/schemas/HistoryMetadataParticipant" description: Details of the cause that triggered the creation the history record. description: description: The description of the history record. type: string descriptionKey: description: The description key of the history record. type: string emailDescription: description: The description of the email address associated the history record. type: string emailDescriptionKey: description: The description key of the email address associated the history record. type: string extraData: additionalProperties: type: string description: Additional arbitrary information about the history record. type: object generator: allOf: - $ref: "#/components/schemas/HistoryMetadataParticipant" description: Details of the system that generated the history record. type: description: The type of the history record. type: string type: object HistoryMetadataParticipant: additionalProperties: true description: Details of user or system associated with a issue history metadata item. properties: avatarUrl: description: The URL to an avatar for the user or system associated with a history record. type: string displayName: description: The display name of the user or system associated with a history record. type: string displayNameKey: description: The key of the display name of the user or system associated with a history record. type: string id: description: The ID of the user or system associated with a history record. type: string type: description: The type of the user or system associated with a history record. type: string url: description: The URL of the user or system associated with a history record. type: string type: object Icon: additionalProperties: true description: |- An icon. If no icon is defined: * for a status icon, no status icon displays in Jira. * for the remote object icon, the default link icon displays in Jira. properties: link: description: The URL of the tooltip, used only for a status icon. If not set, the status icon in Jira is not clickable. type: string title: description: |- The title of the icon. This is used as follows: * For a status icon it is used as a tooltip on the icon. If not set, the status icon doesn't display a tooltip in Jira. * For the remote object icon it is used in conjunction with the application name to display a tooltip for the link's icon. The tooltip takes the format "\[application name\] icon title". Blank itemsare excluded from the tooltip title. If both items are blank, the icon tooltop displays as "Web Link". type: string url16x16: description: The URL of an icon that displays at 16x16 pixel in Jira. type: string type: object IconBean: additionalProperties: false description: An icon. properties: link: description: The URL of the tooltip, used only for a status icon. type: string title: description: The title of the icon, for use as a tooltip on the icon. type: string url16x16: description: The URL of a 16x16 pixel icon. type: string type: object xml: name: icon IdBean: additionalProperties: false properties: id: description: The ID of the permission scheme to associate with the project. Use the [Get all permission schemes](#api-rest-api-3-permissionscheme-get) resource to get a list of permission scheme IDs. format: int64 type: integer required: - id type: object IdOrKeyBean: additionalProperties: false properties: id: description: The ID of the referenced item. format: int64 type: integer key: description: The key of the referenced item. type: string type: object IncludedFields: additionalProperties: false properties: actuallyIncluded: items: type: string type: array uniqueItems: true excluded: items: type: string type: array uniqueItems: true included: items: type: string type: array uniqueItems: true type: object IssueBean: additionalProperties: false description: Details about an issue. properties: changelog: allOf: - $ref: "#/components/schemas/PageOfChangelogs" description: Details of changelogs associated with the issue. readOnly: true editmeta: allOf: - $ref: "#/components/schemas/IssueUpdateMetadata" description: The metadata for the fields on the issue that can be amended. readOnly: true expand: description: Expand options that include additional issue details in the response. readOnly: true type: string xml: attribute: true fields: additionalProperties: {} type: object fieldsToInclude: $ref: "#/components/schemas/IncludedFields" id: description: The ID of the issue. readOnly: true type: string key: description: The key of the issue. readOnly: true type: string names: additionalProperties: readOnly: true type: string description: The ID and name of each field present on the issue. readOnly: true type: object operations: allOf: - $ref: "#/components/schemas/Operations" description: The operations that can be performed on the issue. readOnly: true properties: additionalProperties: readOnly: true description: Details of the issue properties identified in the request. readOnly: true type: object renderedFields: additionalProperties: readOnly: true description: The rendered value of each field present on the issue. readOnly: true type: object schema: additionalProperties: $ref: "#/components/schemas/JsonTypeBean" description: The schema describing each field present on the issue. readOnly: true type: object self: description: The URL of the issue details. format: uri readOnly: true type: string transitions: description: The transitions that can be performed on the issue. items: $ref: "#/components/schemas/IssueTransition" readOnly: true type: array versionedRepresentations: additionalProperties: additionalProperties: readOnly: true readOnly: true type: object description: The versions of each field on the issue. readOnly: true type: object type: object xml: name: issue IssueChangelogIds: additionalProperties: false description: A list of changelog IDs. properties: changelogIds: description: The list of changelog IDs. items: format: int64 type: integer type: array uniqueItems: true required: - changelogIds type: object IssueCommentListRequestBean: additionalProperties: false properties: ids: description: The list of comment IDs. A maximum of 1000 IDs can be specified. items: format: int64 type: integer type: array uniqueItems: true required: - ids type: object IssueContextVariable: description: An [issue](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#issue) specified by ID or key. All the fields of the issue object are available in the Jira expression. properties: id: description: The issue ID. format: int64 type: integer key: description: The issue key. type: string type: description: Type of custom context variable. type: string required: - type type: object IssueCreateMetadata: additionalProperties: false description: The wrapper for the issue creation metadata for a list of projects. properties: expand: description: Expand options that include additional project details in the response. readOnly: true type: string xml: attribute: true projects: description: List of projects and their issue creation metadata. items: $ref: "#/components/schemas/ProjectIssueCreateMetadata" readOnly: true type: array type: object IssueEntityProperties: additionalProperties: false description: Lists of issues and entity properties. See [Entity properties](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/) for more information. properties: entitiesIds: description: A list of entity property IDs. items: format: int64 type: integer maxItems: 10000 minItems: 1 type: array uniqueItems: true properties: additionalProperties: $ref: "#/components/schemas/JsonNode" description: A list of entity property keys and values. maxProperties: 10 minProperties: 1 type: object type: object IssueEntityPropertiesForMultiUpdate: additionalProperties: false description: An issue ID with entity property values. See [Entity properties](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/) for more information. maxProperties: 100 minProperties: 1 properties: issueID: description: The ID of the issue. format: int64 type: integer properties: additionalProperties: $ref: "#/components/schemas/JsonNode" description: Entity properties to set on the issue. The maximum length of an issue property value is 32768 characters. maxProperties: 10 minProperties: 1 type: object type: object IssueEvent: additionalProperties: false description: Details about an issue event. properties: id: description: The ID of the event. format: int64 readOnly: true type: integer name: description: The name of the event. readOnly: true type: string type: object IssueFieldOption: additionalProperties: false description: Details of the options for a select list issue field. properties: config: $ref: "#/components/schemas/IssueFieldOptionConfiguration" id: description: The unique identifier for the option. This is only unique within the select field's set of options. format: int64 type: integer properties: additionalProperties: {} description: The properties of the object, as arbitrary key-value pairs. These properties can be searched using JQL, if the extractions (see [Issue Field Option Property Index](https://developer.atlassian.com/cloud/jira/platform/modules/issue-field-option-property-index/)) are defined in the descriptor for the issue field module. type: object value: description: The option's name, which is displayed in Jira. type: string required: - id - value type: object IssueFieldOptionConfiguration: additionalProperties: false description: Details of the projects the option is available in. properties: attributes: description: DEPRECATED items: enum: - notSelectable - defaultValue type: string type: array uniqueItems: true scope: allOf: - $ref: "#/components/schemas/IssueFieldOptionScopeBean" description: Defines the projects that the option is available in. If the scope is not defined, then the option is available in all projects. type: object IssueFieldOptionCreateBean: additionalProperties: true properties: config: $ref: "#/components/schemas/IssueFieldOptionConfiguration" properties: additionalProperties: {} description: The properties of the option as arbitrary key-value pairs. These properties can be searched using JQL, if the extractions (see https://developer.atlassian.com/cloud/jira/platform/modules/issue-field-option-property-index/) are defined in the descriptor for the issue field module. type: object value: description: The option's name, which is displayed in Jira. type: string required: - value type: object IssueFieldOptionScopeBean: additionalProperties: false properties: global: allOf: - $ref: "#/components/schemas/GlobalScopeBean" description: Defines the behavior of the option within the global context. If this property is set, even if set to an empty object, then the option is available in all projects. projects: description: DEPRECATED items: format: int64 type: integer type: array uniqueItems: true projects2: description: Defines the projects in which the option is available and the behavior of the option within each project. Specify one object per project. The behavior of the option in a project context overrides the behavior in the global context. items: $ref: "#/components/schemas/ProjectScopeBean" type: array uniqueItems: true type: object IssueFilterForBulkPropertyDelete: additionalProperties: false description: Bulk operation filter details. properties: currentValue: description: The value of properties to perform the bulk operation on. entityIds: description: List of issues to perform the bulk delete operation on. items: format: int64 type: integer type: array uniqueItems: true type: object IssueFilterForBulkPropertySet: additionalProperties: false description: Bulk operation filter details. properties: currentValue: description: The value of properties to perform the bulk operation on. entityIds: description: List of issues to perform the bulk operation on. items: format: int64 type: integer type: array uniqueItems: true hasProperty: description: Whether the bulk operation occurs only when the property is present on or absent from an issue. type: boolean type: object IssueLink: additionalProperties: false description: Details of a link between issues. properties: id: description: The ID of the issue link. readOnly: true type: string inwardIssue: allOf: - $ref: "#/components/schemas/LinkedIssue" description: Provides details about the linked issue. If presenting this link in a user interface, use the `inward` field of the issue link type to label the link. outwardIssue: allOf: - $ref: "#/components/schemas/LinkedIssue" description: Provides details about the linked issue. If presenting this link in a user interface, use the `outward` field of the issue link type to label the link. self: description: The URL of the issue link. format: uri readOnly: true type: string type: allOf: - $ref: "#/components/schemas/IssueLinkType" description: The type of link between the issues. required: - inwardIssue - outwardIssue - type type: object xml: name: issueLinks IssueLinkType: additionalProperties: false description: |- This object is used as follows: * In the [ issueLink](#api-rest-api-3-issueLink-post) resource it defines and reports on the type of link between the issues. Find a list of issue link types with [Get issue link types](#api-rest-api-3-issueLinkType-get). * In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it defines and reports on issue link types. properties: id: description: |- The ID of the issue link type and is used as follows: * In the [ issueLink](#api-rest-api-3-issueLink-post) resource it is the type of issue link. Required on create when `name` isn't provided. Otherwise, read only. * In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it is read only. type: string inward: description: |- The description of the issue link type inward link and is used as follows: * In the [ issueLink](#api-rest-api-3-issueLink-post) resource it is read only. * In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it is required on create and optional on update. Otherwise, read only. type: string name: description: |- The name of the issue link type and is used as follows: * In the [ issueLink](#api-rest-api-3-issueLink-post) resource it is the type of issue link. Required on create when `id` isn't provided. Otherwise, read only. * In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it is required on create and optional on update. Otherwise, read only. type: string outward: description: |- The description of the issue link type outward link and is used as follows: * In the [ issueLink](#api-rest-api-3-issueLink-post) resource it is read only. * In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it is required on create and optional on update. Otherwise, read only. type: string self: description: The URL of the issue link type. Read only. format: uri readOnly: true type: string type: object IssueLinkTypes: additionalProperties: false description: A list of issue link type beans. properties: issueLinkTypes: description: The issue link type bean. items: $ref: "#/components/schemas/IssueLinkType" readOnly: true type: array xml: name: issueLinkTypes type: object xml: name: issueLinkTypes IssueList: additionalProperties: false description: A list of issue IDs. properties: issueIds: description: The list of issue IDs. items: type: string type: array required: - issueIds type: object IssueMatches: additionalProperties: false description: A list of matched issues or errors for each JQL query, in the order the JQL queries were passed. properties: matches: items: $ref: "#/components/schemas/IssueMatchesForJQL" type: array required: - matches type: object IssueMatchesForJQL: additionalProperties: false description: A list of the issues matched to a JQL query or details of errors encountered during matching. properties: errors: description: A list of errors. items: description: A list of errors. type: string type: array uniqueItems: true matchedIssues: description: A list of issue IDs. items: description: A list of issue IDs. format: int64 type: integer type: array uniqueItems: true required: - errors - matchedIssues type: object IssuePickerSuggestions: additionalProperties: false description: A list of issues suggested for use in auto-completion. properties: sections: description: A list of issues for an issue type suggested for use in auto-completion. items: $ref: "#/components/schemas/IssuePickerSuggestionsIssueType" readOnly: true type: array type: object IssuePickerSuggestionsIssueType: additionalProperties: false description: A type of issue suggested for use in auto-completion. properties: id: description: The ID of the type of issues suggested for use in auto-completion. readOnly: true type: string issues: description: A list of issues suggested for use in auto-completion. items: $ref: "#/components/schemas/SuggestedIssue" readOnly: true type: array label: description: The label of the type of issues suggested for use in auto-completion. readOnly: true type: string msg: description: If no issue suggestions are found, returns a message indicating no suggestions were found, readOnly: true type: string sub: description: If issue suggestions are found, returns a message indicating the number of issues suggestions found and returned. readOnly: true type: string type: object IssueSecurityLevelMember: additionalProperties: false description: Issue security level member. properties: holder: allOf: - $ref: "#/components/schemas/PermissionHolder" description: The user or group being granted the permission. It consists of a `type` and a type-dependent `parameter`. See [Holder object](../api-group-permission-schemes/#holder-object) in *Get all permission schemes* for more information. id: description: The ID of the issue security level member. format: int64 type: integer issueSecurityLevelId: description: The ID of the issue security level. format: int64 type: integer required: - holder - id - issueSecurityLevelId type: object IssueSecuritySchemeToProjectMapping: additionalProperties: true description: Details about an project using security scheme mapping. properties: issueSecuritySchemeId: readOnly: true type: string projectId: readOnly: true type: string type: object IssueTransition: additionalProperties: true description: Details of an issue transition. properties: expand: description: Expand options that include additional transition details in the response. readOnly: true type: string fields: additionalProperties: $ref: "#/components/schemas/FieldMetadata" description: Details of the fields associated with the issue transition screen. Use this information to populate `fields` and `update` in a transition request. readOnly: true type: object hasScreen: description: Whether there is a screen associated with the issue transition. readOnly: true type: boolean id: description: The ID of the issue transition. Required when specifying a transition to undertake. type: string isAvailable: description: Whether the transition is available to be performed. readOnly: true type: boolean isConditional: description: Whether the issue has to meet criteria before the issue transition is applied. readOnly: true type: boolean isGlobal: description: Whether the issue transition is global, that is, the transition is applied to issues regardless of their status. readOnly: true type: boolean isInitial: description: Whether this is the initial issue transition for the workflow. readOnly: true type: boolean looped: type: boolean name: description: The name of the issue transition. readOnly: true type: string to: allOf: - $ref: "#/components/schemas/StatusDetails" description: Details of the issue status after the transition. readOnly: true type: object IssueTypeCreateBean: additionalProperties: false properties: description: description: The description of the issue type. type: string hierarchyLevel: description: |- The hierarchy level of the issue type. Use: * `-1` for Subtask. * `0` for Base. Defaults to `0`. format: int32 type: integer name: description: The unique name for the issue type. The maximum length is 60 characters. type: string type: description: |- Deprecated. Use `hierarchyLevel` instead. See the [deprecation notice](https://community.developer.atlassian.com/t/deprecation-of-the-epic-link-parent-link-and-other-related-fields-in-rest-apis-and-webhooks/54048) for details. Whether the issue type is `subtype` or `standard`. Defaults to `standard`. enum: - subtask - standard type: string required: - name type: object IssueTypeDetails: additionalProperties: false description: Details about an issue type. properties: avatarId: description: The ID of the issue type's avatar. format: int64 readOnly: true type: integer description: description: The description of the issue type. readOnly: true type: string entityId: description: Unique ID for next-gen projects. format: uuid readOnly: true type: string hierarchyLevel: description: Hierarchy level of the issue type. format: int32 readOnly: true type: integer iconUrl: description: The URL of the issue type's avatar. readOnly: true type: string id: description: The ID of the issue type. readOnly: true type: string name: description: The name of the issue type. readOnly: true type: string scope: allOf: - $ref: "#/components/schemas/Scope" description: Details of the next-gen projects the issue type is available in. readOnly: true self: description: The URL of these issue type details. readOnly: true type: string subtask: description: Whether this issue type is used to create subtasks. readOnly: true type: boolean type: object IssueTypeIds: additionalProperties: false description: The list of issue type IDs. properties: issueTypeIds: description: The list of issue type IDs. items: type: string writeOnly: true type: array writeOnly: true required: - issueTypeIds type: object IssueTypeIdsToRemove: additionalProperties: false description: The list of issue type IDs to be removed from the field configuration scheme. properties: issueTypeIds: description: The list of issue type IDs. Must contain unique values not longer than 255 characters and not be empty. Maximum of 100 IDs. items: type: string type: array required: - issueTypeIds type: object IssueTypeInfo: additionalProperties: false description: Details of an issue type. properties: avatarId: description: The avatar of the issue type. format: int64 readOnly: true type: integer id: description: The ID of the issue type. format: int64 readOnly: true type: integer name: description: The name of the issue type. readOnly: true type: string type: object IssueTypeIssueCreateMetadata: additionalProperties: false description: Details of the issue creation metadata for an issue type. properties: avatarId: description: The ID of the issue type's avatar. format: int64 readOnly: true type: integer description: description: The description of the issue type. readOnly: true type: string entityId: description: Unique ID for next-gen projects. format: uuid readOnly: true type: string expand: description: Expand options that include additional issue type metadata details in the response. readOnly: true type: string xml: attribute: true fields: additionalProperties: $ref: "#/components/schemas/FieldMetadata" description: List of the fields available when creating an issue for the issue type. readOnly: true type: object hierarchyLevel: description: Hierarchy level of the issue type. format: int32 readOnly: true type: integer iconUrl: description: The URL of the issue type's avatar. readOnly: true type: string id: description: The ID of the issue type. readOnly: true type: string name: description: The name of the issue type. readOnly: true type: string scope: allOf: - $ref: "#/components/schemas/Scope" description: Details of the next-gen projects the issue type is available in. readOnly: true self: description: The URL of these issue type details. readOnly: true type: string subtask: description: Whether this issue type is used to create subtasks. readOnly: true type: boolean type: object IssueTypeScheme: additionalProperties: false description: Details of an issue type scheme. properties: defaultIssueTypeId: description: The ID of the default issue type of the issue type scheme. type: string description: description: The description of the issue type scheme. type: string id: description: The ID of the issue type scheme. type: string isDefault: description: Whether the issue type scheme is the default. type: boolean name: description: The name of the issue type scheme. type: string required: - id - name type: object IssueTypeSchemeDetails: additionalProperties: false description: Details of an issue type scheme and its associated issue types. properties: defaultIssueTypeId: description: The ID of the default issue type of the issue type scheme. This ID must be included in `issueTypeIds`. type: string writeOnly: true description: description: The description of the issue type scheme. The maximum length is 4000 characters. type: string writeOnly: true issueTypeIds: description: The list of issue types IDs of the issue type scheme. At least one standard issue type ID is required. items: type: string writeOnly: true type: array writeOnly: true name: description: The name of the issue type scheme. The name must be unique. The maximum length is 255 characters. type: string writeOnly: true required: - issueTypeIds - name type: object IssueTypeSchemeID: additionalProperties: false description: The ID of an issue type scheme. properties: issueTypeSchemeId: description: The ID of the issue type scheme. readOnly: true type: string required: - issueTypeSchemeId type: object IssueTypeSchemeMapping: additionalProperties: false description: Issue type scheme item. properties: issueTypeId: description: The ID of the issue type. type: string issueTypeSchemeId: description: The ID of the issue type scheme. type: string required: - issueTypeId - issueTypeSchemeId type: object IssueTypeSchemeProjectAssociation: additionalProperties: false description: Details of the association between an issue type scheme and project. properties: issueTypeSchemeId: description: The ID of the issue type scheme. type: string writeOnly: true projectId: description: The ID of the project. type: string writeOnly: true required: - issueTypeSchemeId - projectId type: object IssueTypeSchemeProjects: additionalProperties: false description: Issue type scheme with a list of the projects that use it. properties: issueTypeScheme: allOf: - $ref: "#/components/schemas/IssueTypeScheme" description: Details of an issue type scheme. projectIds: description: The IDs of the projects using the issue type scheme. items: type: string type: array required: - issueTypeScheme - projectIds type: object IssueTypeSchemeUpdateDetails: additionalProperties: false description: Details of the name, description, and default issue type for an issue type scheme. properties: defaultIssueTypeId: description: The ID of the default issue type of the issue type scheme. type: string writeOnly: true description: description: The description of the issue type scheme. The maximum length is 4000 characters. type: string writeOnly: true name: description: The name of the issue type scheme. The name must be unique. The maximum length is 255 characters. type: string writeOnly: true type: object IssueTypeScreenScheme: additionalProperties: false description: Details of an issue type screen scheme. properties: description: description: The description of the issue type screen scheme. type: string id: description: The ID of the issue type screen scheme. type: string name: description: The name of the issue type screen scheme. type: string required: - id - name type: object IssueTypeScreenSchemeDetails: additionalProperties: false description: The details of an issue type screen scheme. properties: description: description: The description of the issue type screen scheme. The maximum length is 255 characters. type: string writeOnly: true issueTypeMappings: description: The IDs of the screen schemes for the issue type IDs and *default*. A *default* entry is required to create an issue type screen scheme, it defines the mapping for all issue types without a screen scheme. items: $ref: "#/components/schemas/IssueTypeScreenSchemeMapping" type: array writeOnly: true name: description: The name of the issue type screen scheme. The name must be unique. The maximum length is 255 characters. type: string writeOnly: true required: - issueTypeMappings - name type: object IssueTypeScreenSchemeId: additionalProperties: false description: The ID of an issue type screen scheme. properties: id: description: The ID of the issue type screen scheme. readOnly: true type: string required: - id type: object IssueTypeScreenSchemeItem: additionalProperties: false description: The screen scheme for an issue type. properties: issueTypeId: description: The ID of the issue type or *default*. Only issue types used in classic projects are accepted. When creating an issue screen scheme, an entry for *default* must be provided and defines the mapping for all issue types without a screen scheme. Otherwise, a *default* entry can't be provided. type: string issueTypeScreenSchemeId: description: The ID of the issue type screen scheme. type: string screenSchemeId: description: The ID of the screen scheme. type: string required: - issueTypeId - issueTypeScreenSchemeId - screenSchemeId type: object IssueTypeScreenSchemeMapping: additionalProperties: false description: The IDs of the screen schemes for the issue type IDs. properties: issueTypeId: description: The ID of the issue type or *default*. Only issue types used in classic projects are accepted. An entry for *default* must be provided and defines the mapping for all issue types without a screen scheme. type: string writeOnly: true screenSchemeId: description: The ID of the screen scheme. Only screen schemes used in classic projects are accepted. type: string writeOnly: true required: - issueTypeId - screenSchemeId type: object writeOnly: true IssueTypeScreenSchemeMappingDetails: additionalProperties: false description: A list of issue type screen scheme mappings. properties: issueTypeMappings: description: The list of issue type to screen scheme mappings. A *default* entry cannot be specified because a default entry is added when an issue type screen scheme is created. items: $ref: "#/components/schemas/IssueTypeScreenSchemeMapping" type: array writeOnly: true required: - issueTypeMappings type: object IssueTypeScreenSchemeProjectAssociation: additionalProperties: false description: Associated issue type screen scheme and project. properties: issueTypeScreenSchemeId: description: The ID of the issue type screen scheme. type: string writeOnly: true projectId: description: The ID of the project. type: string writeOnly: true type: object IssueTypeScreenSchemeUpdateDetails: additionalProperties: false description: Details of an issue type screen scheme. properties: description: description: The description of the issue type screen scheme. The maximum length is 255 characters. type: string writeOnly: true name: description: The name of the issue type screen scheme. The name must be unique. The maximum length is 255 characters. type: string writeOnly: true type: object IssueTypeScreenSchemesProjects: additionalProperties: false description: Issue type screen scheme with a list of the projects that use it. properties: issueTypeScreenScheme: allOf: - $ref: "#/components/schemas/IssueTypeScreenScheme" description: Details of an issue type screen scheme. projectIds: description: The IDs of the projects using the issue type screen scheme. items: type: string type: array required: - issueTypeScreenScheme - projectIds type: object IssueTypeToContextMapping: additionalProperties: false description: Mapping of an issue type to a context. properties: contextId: description: The ID of the context. type: string isAnyIssueType: description: Whether the context is mapped to any issue type. type: boolean issueTypeId: description: The ID of the issue type. type: string required: - contextId type: object IssueTypeUpdateBean: additionalProperties: false properties: avatarId: description: The ID of an issue type avatar. format: int64 type: integer description: description: The description of the issue type. type: string name: description: The unique name for the issue type. The maximum length is 60 characters. type: string type: object IssueTypeWithStatus: additionalProperties: false description: Status details for an issue type. properties: id: description: The ID of the issue type. readOnly: true type: string name: description: The name of the issue type. readOnly: true type: string self: description: The URL of the issue type's status details. readOnly: true type: string statuses: description: List of status details for the issue type. items: $ref: "#/components/schemas/StatusDetails" readOnly: true type: array subtask: description: Whether this issue type represents subtasks. readOnly: true type: boolean required: - id - name - self - statuses - subtask type: object IssueTypeWorkflowMapping: additionalProperties: false description: Details about the mapping between an issue type and a workflow. properties: issueType: description: The ID of the issue type. Not required if updating the issue type-workflow mapping. type: string updateDraftIfNeeded: description: Set to true to create or update the draft of a workflow scheme and update the mapping in the draft, when the workflow scheme cannot be edited. Defaults to `false`. Only applicable when updating the workflow-issue types mapping. type: boolean workflow: description: The name of the workflow. type: string type: object IssueTypesWorkflowMapping: additionalProperties: false description: Details about the mapping between issue types and a workflow. properties: defaultMapping: description: Whether the workflow is the default workflow for the workflow scheme. type: boolean issueTypes: description: The list of issue type IDs. items: type: string type: array updateDraftIfNeeded: description: Whether a draft workflow scheme is created or updated when updating an active workflow scheme. The draft is updated with the new workflow-issue types mapping. Defaults to `false`. type: boolean workflow: description: The name of the workflow. Optional if updating the workflow-issue types mapping. type: string type: object IssueUpdateDetails: additionalProperties: true description: Details of an issue update request. properties: fields: additionalProperties: {} description: List of issue screen fields to update, specifying the sub-field to update and its value for each field. This field provides a straightforward option when setting a sub-field. When multiple sub-fields or other operations are required, use `update`. Fields included in here cannot be included in `update`. type: object historyMetadata: allOf: - $ref: "#/components/schemas/HistoryMetadata" description: Additional issue history details. properties: description: Details of issue properties to be add or update. items: $ref: "#/components/schemas/EntityProperty" type: array transition: allOf: - $ref: "#/components/schemas/IssueTransition" description: Details of a transition. Required when performing a transition, optional when creating or editing an issue. update: additionalProperties: items: $ref: "#/components/schemas/FieldUpdateOperation" type: array description: A Map containing the field field name and a list of operations to perform on the issue screen field. Note that fields included in here cannot be included in `fields`. type: object type: object IssueUpdateMetadata: description: A list of editable field details. properties: fields: additionalProperties: $ref: "#/components/schemas/FieldMetadata" readOnly: true type: object type: object IssuesAndJQLQueries: additionalProperties: false description: List of issues and JQL queries. properties: issueIds: description: A list of issue IDs. items: description: A list of issue IDs. format: int64 type: integer type: array uniqueItems: true jqls: description: A list of JQL queries. items: description: A list of JQL queries. type: string type: array required: - issueIds - jqls type: object IssuesJqlMetaDataBean: additionalProperties: false description: The description of the page of issues loaded by the provided JQL query. properties: count: description: The number of issues that were loaded in this evaluation. format: int32 type: integer maxResults: description: The maximum number of issues that could be loaded in this evaluation. format: int32 type: integer startAt: description: The index of the first issue. format: int64 type: integer totalCount: description: The total number of issues the JQL returned. format: int64 type: integer validationWarnings: description: Any warnings related to the JQL query. Present only if the validation mode was set to `warn`. items: type: string type: array required: - count - maxResults - startAt - totalCount type: object IssuesMetaBean: additionalProperties: false description: Meta data describing the `issues` context variable. properties: jql: $ref: "#/components/schemas/IssuesJqlMetaDataBean" type: object IssuesUpdateBean: additionalProperties: true properties: issueUpdates: items: $ref: "#/components/schemas/IssueUpdateDetails" type: array type: object JQLPersonalDataMigrationRequest: additionalProperties: false description: The JQL queries to be converted. properties: queryStrings: description: A list of queries with user identifiers. Maximum of 100 queries. items: type: string type: array type: object JQLQueryWithUnknownUsers: additionalProperties: false description: JQL queries that contained users that could not be found properties: convertedQuery: description: The converted query, with accountIDs instead of user identifiers, or 'unknown' for users that could not be found type: string originalQuery: description: The original query, for reference type: string type: object JQLReferenceData: additionalProperties: false description: Lists of JQL reference data. properties: jqlReservedWords: description: List of JQL query reserved words. items: type: string type: array visibleFieldNames: description: List of fields usable in JQL queries. items: $ref: "#/components/schemas/FieldReferenceData" type: array visibleFunctionNames: description: List of functions usable in JQL queries. items: $ref: "#/components/schemas/FunctionReferenceData" type: array type: object JexpIssues: additionalProperties: false description: The JQL specifying the issues available in the evaluated Jira expression under the `issues` context variable. properties: jql: allOf: - $ref: "#/components/schemas/JexpJqlIssues" description: The JQL query that specifies the set of issues available in the Jira expression. type: object JexpJqlIssues: additionalProperties: false description: The JQL specifying the issues available in the evaluated Jira expression under the `issues` context variable. Not all issues returned by the JQL query are loaded, only those described by the `startAt` and `maxResults` properties. To determine whether it is necessary to iterate to ensure all the issues returned by the JQL query are evaluated, inspect `meta.issues.jql.count` in the response. properties: maxResults: description: The maximum number of issues to return from the JQL query. Inspect `meta.issues.jql.maxResults` in the response to ensure the maximum value has not been exceeded. format: int32 type: integer query: description: The JQL query. type: string startAt: description: The index of the first issue to return from the JQL query. format: int64 type: integer validation: default: strict description: Determines how to validate the JQL query and treat the validation results. enum: - strict - warn - none type: string type: object JiraExpressionAnalysis: additionalProperties: false description: Details about the analysed Jira expression. properties: complexity: $ref: "#/components/schemas/JiraExpressionComplexity" errors: description: A list of validation errors. Not included if the expression is valid. items: $ref: "#/components/schemas/JiraExpressionValidationError" type: array expression: description: The analysed expression. type: string type: description: EXPERIMENTAL. The inferred type of the expression. type: string valid: description: Whether the expression is valid and the interpreter will evaluate it. Note that the expression may fail at runtime (for example, if it executes too many expensive operations). type: boolean required: - expression - valid type: object JiraExpressionComplexity: additionalProperties: false description: Details about the complexity of the analysed Jira expression. properties: expensiveOperations: description: |- Information that can be used to determine how many [expensive operations](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#expensive-operations) the evaluation of the expression will perform. This information may be a formula or number. For example: * `issues.map(i => i.comments)` performs as many expensive operations as there are issues on the issues list. So this parameter returns `N`, where `N` is the size of issue list. * `new Issue(10010).comments` gets comments for one issue, so its complexity is `2` (`1` to retrieve issue 10010 from the database plus `1` to get its comments). type: string variables: additionalProperties: description: Variables used in the formula, mapped to the parts of the expression they refer to. type: string description: Variables used in the formula, mapped to the parts of the expression they refer to. type: object required: - expensiveOperations type: object JiraExpressionEvalContextBean: additionalProperties: false properties: board: description: The ID of the board that is available under the `board` variable when evaluating the expression. format: int64 type: integer custom: description: |- Custom context variables and their types. These variable types are available for use in a custom context: * `user`: A [user](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#user) specified as an Atlassian account ID. * `issue`: An [issue](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#issue) specified by ID or key. All the fields of the issue object are available in the Jira expression. * `json`: A JSON object containing custom content. * `list`: A JSON list of `user`, `issue`, or `json` variable types. items: $ref: "#/components/schemas/CustomContextVariable" type: array customerRequest: description: The ID of the customer request that is available under the `customerRequest` variable when evaluating the expression. This is the same as the ID of the underlying Jira issue, but the customer request context variable will have a different type. format: int64 type: integer issue: allOf: - $ref: "#/components/schemas/IdOrKeyBean" description: The issue that is available under the `issue` variable when evaluating the expression. issues: allOf: - $ref: "#/components/schemas/JexpIssues" description: The collection of issues that is available under the `issues` variable when evaluating the expression. project: allOf: - $ref: "#/components/schemas/IdOrKeyBean" description: The project that is available under the `project` variable when evaluating the expression. serviceDesk: description: The ID of the service desk that is available under the `serviceDesk` variable when evaluating the expression. format: int64 type: integer sprint: description: The ID of the sprint that is available under the `sprint` variable when evaluating the expression. format: int64 type: integer type: object JiraExpressionEvalRequestBean: additionalProperties: false properties: context: allOf: - $ref: "#/components/schemas/JiraExpressionEvalContextBean" description: The context in which the Jira expression is evaluated. expression: description: The Jira expression to evaluate. example: "{ key: issue.key, type: issue.issueType.name, links: issue.links.map(link => link.linkedIssue.id) }" type: string required: - expression type: object JiraExpressionEvaluationMetaDataBean: additionalProperties: false properties: complexity: allOf: - $ref: "#/components/schemas/JiraExpressionsComplexityBean" description: Contains information about the expression complexity. For example, the number of steps it took to evaluate the expression. issues: allOf: - $ref: "#/components/schemas/IssuesMetaBean" description: Contains information about the `issues` variable in the context. For example, is the issues were loaded with JQL, information about the page will be included here. type: object JiraExpressionForAnalysis: additionalProperties: false description: Details of Jira expressions for analysis. properties: contextVariables: additionalProperties: description: Context variables and their types. The type checker assumes that common context variables, such as issue or project, are available in context and sets their type. Use this property to override the default types or provide details of new variables. type: string description: Context variables and their types. The type checker assumes that [common context variables](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/#context-variables), such as `issue` or `project`, are available in context and sets their type. Use this property to override the default types or provide details of new variables. type: object expressions: description: The list of Jira expressions to analyse. example: issues.map(issue => issue.properties['property_key']) items: description: The list of Jira expressions to analyse. example: issues.map(issue => issue.properties['property_key']) type: string type: array required: - expressions type: object JiraExpressionResult: additionalProperties: false description: The result of evaluating a Jira expression. properties: meta: allOf: - $ref: "#/components/schemas/JiraExpressionEvaluationMetaDataBean" description: Contains various characteristics of the performed expression evaluation. value: description: The value of the evaluated expression. It may be a primitive JSON value or a Jira REST API object. (Some expressions do not produce any meaningful results—for example, an expression that returns a lambda function—if that's the case a simple string representation is returned. These string representations should not be relied upon and may change without notice.) required: - value type: object JiraExpressionValidationError: additionalProperties: false description: |- Details about syntax and type errors. The error details apply to the entire expression, unless the object includes: * `line` and `column` * `expression` properties: column: description: The text column in which the error occurred. format: int32 type: integer expression: description: The part of the expression in which the error occurred. type: string line: description: The text line in which the error occurred. format: int32 type: integer message: description: Details about the error. example: "!, -, typeof, (, IDENTIFIER, null, true, false, NUMBER, STRING, TEMPLATE_LITERAL, new, [ or { expected, > encountered." type: string type: description: The error type. enum: - syntax - type - other type: string required: - message - type type: object JiraExpressionsAnalysis: additionalProperties: false description: Details about the analysed Jira expression. properties: results: description: The results of Jira expressions analysis. items: $ref: "#/components/schemas/JiraExpressionAnalysis" type: array required: - results type: object JiraExpressionsComplexityBean: additionalProperties: false properties: beans: allOf: - $ref: "#/components/schemas/JiraExpressionsComplexityValueBean" description: The number of Jira REST API beans returned in the response. expensiveOperations: allOf: - $ref: "#/components/schemas/JiraExpressionsComplexityValueBean" description: The number of expensive operations executed while evaluating the expression. Expensive operations are those that load additional data, such as entity properties, comments, or custom fields. primitiveValues: allOf: - $ref: "#/components/schemas/JiraExpressionsComplexityValueBean" description: The number of primitive values returned in the response. steps: allOf: - $ref: "#/components/schemas/JiraExpressionsComplexityValueBean" description: The number of steps it took to evaluate the expression, where a step is a high-level operation performed by the expression. A step is an operation such as arithmetic, accessing a property, accessing a context variable, or calling a function. required: - beans - expensiveOperations - primitiveValues - steps type: object JiraExpressionsComplexityValueBean: additionalProperties: false properties: limit: description: The maximum allowed complexity. The evaluation will fail if this value is exceeded. format: int32 type: integer value: description: The complexity value of the current expression. format: int32 type: integer required: - limit - value type: object JiraStatus: additionalProperties: false description: Details of a status. properties: description: description: The description of the status. type: string id: description: The ID of the status. type: string name: description: The name of the status. type: string scope: $ref: "#/components/schemas/StatusScope" statusCategory: description: The category of the status. enum: - TODO - IN_PROGRESS - DONE type: string usages: description: Projects and issue types where the status is used. Only available if the `usages` expand is requested. items: $ref: "#/components/schemas/ProjectIssueTypes" type: array uniqueItems: true type: object JqlFunctionPrecomputationBean: additionalProperties: false description: Jql function precomputation. properties: arguments: items: readOnly: true type: string readOnly: true type: array created: format: date-time readOnly: true type: string field: readOnly: true type: string functionKey: readOnly: true type: string functionName: readOnly: true type: string id: readOnly: true type: string operator: readOnly: true type: string updated: format: date-time readOnly: true type: string used: format: date-time readOnly: true type: string value: readOnly: true type: string type: object JqlFunctionPrecomputationUpdateBean: additionalProperties: false description: Precomputation id and its new value. properties: id: format: int64 type: integer writeOnly: true value: type: string writeOnly: true required: - id - value type: object writeOnly: true JqlFunctionPrecomputationUpdateRequestBean: additionalProperties: false description: List of pairs (id and value) for precomputation updates. properties: values: items: $ref: "#/components/schemas/JqlFunctionPrecomputationUpdateBean" type: array type: object writeOnly: true JqlQueriesToParse: additionalProperties: false description: A list of JQL queries to parse. properties: queries: description: A list of queries to parse. items: minLength: 1 type: string minLength: 1 type: array required: - queries type: object writeOnly: true JqlQueriesToSanitize: additionalProperties: false description: The list of JQL queries to sanitize for the given account IDs. properties: queries: description: The list of JQL queries to sanitize. Must contain unique values. Maximum of 20 queries. items: $ref: "#/components/schemas/JqlQueryToSanitize" type: array required: - queries type: object writeOnly: true JqlQuery: additionalProperties: false description: A parsed JQL query. properties: orderBy: $ref: "#/components/schemas/JqlQueryOrderByClause" where: $ref: "#/components/schemas/JqlQueryClause" type: object JqlQueryClause: additionalProperties: false anyOf: - $ref: "#/components/schemas/CompoundClause" - $ref: "#/components/schemas/FieldValueClause" - $ref: "#/components/schemas/FieldWasClause" - $ref: "#/components/schemas/FieldChangedClause" description: A JQL query clause. type: object JqlQueryClauseOperand: anyOf: - $ref: "#/components/schemas/ListOperand" - $ref: "#/components/schemas/ValueOperand" - $ref: "#/components/schemas/FunctionOperand" - $ref: "#/components/schemas/KeywordOperand" description: Details of an operand in a JQL clause. type: object JqlQueryClauseTimePredicate: description: A time predicate for a temporal JQL clause. properties: operand: $ref: "#/components/schemas/JqlQueryClauseOperand" operator: description: The operator between the field and the operand. enum: - before - after - from - to - on - during - by type: string required: - operand - operator type: object JqlQueryField: additionalProperties: false description: A field used in a JQL query. See [Advanced searching - fields reference](https://confluence.atlassian.com/x/dAiiLQ) for more information about fields in JQL queries. properties: encodedName: description: The encoded name of the field, which can be used directly in a JQL query. type: string name: description: The name of the field. type: string property: description: When the field refers to a value in an entity property, details of the entity property value. items: $ref: "#/components/schemas/JqlQueryFieldEntityProperty" type: array required: - name type: object JqlQueryFieldEntityProperty: description: Details of an entity property. properties: entity: description: The object on which the property is set. example: issue type: string key: description: The key of the property. example: stats type: string path: description: The path in the property value to query. example: comments.count type: string type: description: The type of the property value extraction. Not available if the extraction for the property is not registered on the instance with the [Entity property](https://developer.atlassian.com/cloud/jira/platform/modules/entity-property/) module. enum: - number - string - text - date - user example: number type: string required: - entity - key - path type: object JqlQueryOrderByClause: additionalProperties: false description: Details of the order-by JQL clause. properties: fields: description: The list of order-by clause fields and their ordering directives. items: $ref: "#/components/schemas/JqlQueryOrderByClauseElement" type: array required: - fields type: object JqlQueryOrderByClauseElement: additionalProperties: false description: An element of the order-by JQL clause. properties: direction: description: The direction in which to order the results. enum: - asc - desc type: string field: $ref: "#/components/schemas/JqlQueryField" required: - field type: object JqlQueryToSanitize: additionalProperties: false description: The JQL query to sanitize for the account ID. If the account ID is null, sanitizing is performed for an anonymous user. properties: accountId: description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. maxLength: 128 nullable: true type: string query: description: The query to sanitize. type: string required: - query type: object writeOnly: true JqlQueryUnitaryOperand: anyOf: - $ref: "#/components/schemas/ValueOperand" - $ref: "#/components/schemas/FunctionOperand" - $ref: "#/components/schemas/KeywordOperand" description: An operand that can be part of a list operand. type: object JsonContextVariable: description: A JSON object with custom content. properties: type: description: Type of custom context variable. type: string value: description: A JSON object containing custom content. type: object required: - type type: object JsonNode: additionalProperties: false maxProperties: 10 minProperties: 1 properties: array: type: boolean bigDecimal: type: boolean bigInteger: type: boolean bigIntegerValue: type: integer binary: type: boolean binaryValue: items: format: byte type: string type: array boolean: type: boolean booleanValue: type: boolean containerNode: type: boolean decimalValue: type: number double: type: boolean doubleValue: format: double type: number elements: type: object fieldNames: type: object fields: type: object floatingPointNumber: type: boolean int: type: boolean intValue: format: int32 type: integer integralNumber: type: boolean long: type: boolean longValue: format: int64 type: integer missingNode: type: boolean "null": type: boolean number: type: boolean numberType: enum: - INT - LONG - BIG_INTEGER - FLOAT - DOUBLE - BIG_DECIMAL type: string numberValue: type: number object: type: boolean pojo: type: boolean textValue: type: string textual: type: boolean valueAsBoolean: type: boolean valueAsDouble: format: double type: number valueAsInt: format: int32 type: integer valueAsLong: format: int64 type: integer valueAsText: type: string valueNode: type: boolean type: object JsonTypeBean: additionalProperties: false description: The schema of a field. properties: configuration: additionalProperties: readOnly: true description: If the field is a custom field, the configuration of the field. readOnly: true type: object custom: description: If the field is a custom field, the URI of the field. readOnly: true type: string customId: description: If the field is a custom field, the custom ID of the field. format: int64 readOnly: true type: integer items: description: When the data type is an array, the name of the field items within the array. readOnly: true type: string system: description: If the field is a system field, the name of the field. readOnly: true type: string type: description: The data type of the field. readOnly: true type: string required: - type type: object KeywordOperand: description: An operand that is a JQL keyword. See [Advanced searching - keywords reference](https://confluence.atlassian.com/jiracorecloud/advanced-searching-keywords-reference-765593717.html#Advancedsearching-keywordsreference-EMPTYEMPTY) for more information about operand keywords. properties: keyword: description: The keyword that is the operand value. enum: - empty type: string required: - keyword type: object License: additionalProperties: false description: Details about a license for the Jira instance. properties: applications: description: The applications under this license. items: $ref: "#/components/schemas/LicensedApplication" readOnly: true type: array required: - applications type: object LicenseMetric: additionalProperties: false description: A license metric properties: key: description: The key of the license metric. type: string value: description: The value for the license metric. type: string type: object LicensedApplication: additionalProperties: false description: Details about a licensed Jira application. properties: id: description: The ID of the application. readOnly: true type: string plan: description: The licensing plan. enum: - UNLICENSED - FREE - PAID readOnly: true type: string required: - id - plan type: object LinkGroup: additionalProperties: false description: Details a link group, which defines issue operations. properties: groups: items: $ref: "#/components/schemas/LinkGroup" type: array header: $ref: "#/components/schemas/SimpleLink" id: type: string links: items: $ref: "#/components/schemas/SimpleLink" type: array styleClass: type: string weight: format: int32 type: integer type: object LinkIssueRequestJsonBean: additionalProperties: false properties: comment: $ref: "#/components/schemas/Comment" inwardIssue: $ref: "#/components/schemas/LinkedIssue" outwardIssue: $ref: "#/components/schemas/LinkedIssue" type: $ref: "#/components/schemas/IssueLinkType" required: - inwardIssue - outwardIssue - type type: object LinkedIssue: additionalProperties: false description: The ID or key of a linked issue. properties: fields: allOf: - $ref: "#/components/schemas/Fields" description: The fields associated with the issue. readOnly: true id: description: The ID of an issue. Required if `key` isn't provided. type: string key: description: The key of an issue. Required if `id` isn't provided. type: string self: description: The URL of the issue. format: uri readOnly: true type: string type: object ListOperand: description: An operand that is a list of values. properties: encodedOperand: description: Encoded operand, which can be used directly in a JQL query. type: string values: description: The list of operand values. items: $ref: "#/components/schemas/JqlQueryUnitaryOperand" minLength: 1 type: array required: - values type: object ListWrapperCallbackApplicationRole: additionalProperties: false type: object ListWrapperCallbackGroupName: additionalProperties: false type: object Locale: additionalProperties: false description: Details of a locale. properties: locale: description: "The locale code. The Java the locale format is used: a two character language code (ISO 639), an underscore, and two letter country code (ISO 3166). For example, en\\_US represents a locale of English (United States). Required on create." type: string type: object MoveFieldBean: additionalProperties: false properties: after: description: The ID of the screen tab field after which to place the moved screen tab field. Required if `position` isn't provided. format: uri type: string position: description: The named position to which the screen tab field should be moved. Required if `after` isn't provided. enum: - Earlier - Later - First - Last type: string type: object MultiIssueEntityProperties: additionalProperties: false description: A list of issues and their respective properties to set or update. See [Entity properties](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/) for more information. properties: issues: description: A list of issue IDs and their respective properties. items: $ref: "#/components/schemas/IssueEntityPropertiesForMultiUpdate" maxProperties: 100 minProperties: 1 type: array type: object MultipleCustomFieldValuesUpdate: additionalProperties: false description: A custom field and its new value with a list of issue to update. properties: customField: description: The ID or key of the custom field. For example, `customfield_10010`. type: string writeOnly: true issueIds: description: The list of issue IDs. items: format: int64 type: integer writeOnly: true type: array writeOnly: true value: description: |- The value for the custom field. The value must be compatible with the [custom field type](https://developer.atlassian.com/platform/forge/manifest-reference/modules/jira-custom-field/#data-types) as follows: * `string` the value must be a string. * `number` the value must be a number. * `datetime` the value must be a string that represents a date in the ISO format or the simplified extended ISO format. For example, `"2023-01-18T12:00:00-03:00"` or `"2023-01-18T12:00:00.000Z"`. However, the milliseconds part is ignored. * `user` the value must be an object that contains the `accountId` field. * `group` the value must be an object that contains the group `name` or `groupId` field. Because group names can change, we recommend using `groupId`. A list of appropriate values must be provided if the field is of the `list` [collection type](https://developer.atlassian.com/platform/forge/manifest-reference/modules/jira-custom-field/#collection-types). required: - customField - issueIds - value type: object writeOnly: true MultipleCustomFieldValuesUpdateDetails: additionalProperties: false description: List of updates for a custom fields. properties: updates: items: $ref: "#/components/schemas/MultipleCustomFieldValuesUpdate" type: array type: object writeOnly: true NestedResponse: additionalProperties: false properties: errorCollection: $ref: "#/components/schemas/ErrorCollection" status: format: int32 type: integer warningCollection: $ref: "#/components/schemas/WarningCollection" type: object NewUserDetails: additionalProperties: true description: The user details. properties: applicationKeys: description: Deprecated, do not use. items: type: string type: array displayName: description: This property is no longer available. If the user has an Atlassian account, their display name is not changed. If the user does not have an Atlassian account, they are sent an email asking them set up an account. type: string emailAddress: description: The email address for the user. type: string key: description: This property is no longer available. See the [migration guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. type: string name: description: This property is no longer available. See the [migration guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. type: string password: description: This property is no longer available. If the user has an Atlassian account, their password is not changed. If the user does not have an Atlassian account, they are sent an email asking them set up an account. type: string products: description: "Products the new user has access to. Valid products are: jira-core, jira-servicedesk, jira-product-discovery, jira-software. If left empty, the user will get default product access. To create a user without product access, set this field to be an empty array." items: type: string type: array uniqueItems: true self: description: The URL of the user. readOnly: true type: string required: - emailAddress type: object Notification: additionalProperties: true description: Details about a notification. properties: htmlBody: description: The HTML body of the email notification for the issue. type: string restrict: allOf: - $ref: "#/components/schemas/NotificationRecipientsRestrictions" description: Restricts the notifications to users with the specified permissions. subject: description: The subject of the email notification for the issue. If this is not specified, then the subject is set to the issue key and summary. type: string textBody: description: The plain text body of the email notification for the issue. type: string to: allOf: - $ref: "#/components/schemas/NotificationRecipients" description: The recipients of the email notification for the issue. type: object NotificationEvent: additionalProperties: false description: Details about a notification event. properties: description: description: The description of the event. type: string id: description: The ID of the event. The event can be a [Jira system event](https://confluence.atlassian.com/x/8YdKLg#Creatinganotificationscheme-eventsEvents) or a [custom event](https://confluence.atlassian.com/x/AIlKLg). format: int64 type: integer name: description: The name of the event. type: string templateEvent: allOf: - $ref: "#/components/schemas/NotificationEvent" description: The template of the event. Only custom events configured by Jira administrators have template. type: object NotificationRecipients: additionalProperties: true description: Details of the users and groups to receive the notification. properties: assignee: description: Whether the notification should be sent to the issue's assignees. type: boolean groupIds: description: List of groupIds to receive the notification. items: type: string type: array groups: description: List of groups to receive the notification. items: $ref: "#/components/schemas/GroupName" type: array reporter: description: Whether the notification should be sent to the issue's reporter. type: boolean users: description: List of users to receive the notification. items: $ref: "#/components/schemas/UserDetails" type: array voters: description: Whether the notification should be sent to the issue's voters. type: boolean watchers: description: Whether the notification should be sent to the issue's watchers. type: boolean type: object NotificationRecipientsRestrictions: additionalProperties: false description: Details of the group membership or permissions needed to receive the notification. properties: groupIds: description: List of groupId memberships required to receive the notification. items: type: string type: array groups: description: List of group memberships required to receive the notification. items: $ref: "#/components/schemas/GroupName" type: array permissions: description: List of permissions required to receive the notification. items: $ref: "#/components/schemas/RestrictedPermission" type: array type: object NotificationScheme: additionalProperties: false description: Details about a notification scheme. properties: description: description: The description of the notification scheme. type: string expand: description: Expand options that include additional notification scheme details in the response. type: string id: description: The ID of the notification scheme. format: int64 type: integer name: description: The name of the notification scheme. type: string notificationSchemeEvents: description: The notification events and associated recipients. items: $ref: "#/components/schemas/NotificationSchemeEvent" type: array projects: description: The list of project IDs associated with the notification scheme. items: format: int64 type: integer type: array scope: allOf: - $ref: "#/components/schemas/Scope" description: The scope of the notification scheme. self: type: string type: object NotificationSchemeAndProjectMappingJsonBean: additionalProperties: false properties: notificationSchemeId: type: string projectId: type: string type: object NotificationSchemeEvent: additionalProperties: false description: Details about a notification scheme event. properties: event: $ref: "#/components/schemas/NotificationEvent" notifications: items: $ref: "#/components/schemas/EventNotification" type: array type: object NotificationSchemeEventDetails: additionalProperties: true description: Details of a notification scheme event. properties: event: allOf: - $ref: "#/components/schemas/NotificationSchemeEventTypeId" description: The ID of the event. notifications: description: The list of notifications mapped to a specified event. items: $ref: "#/components/schemas/NotificationSchemeNotificationDetails" maxLength: 255 type: array writeOnly: true required: - event - notifications type: object writeOnly: true NotificationSchemeEventTypeId: additionalProperties: true description: The ID of an event that is being mapped to notifications. properties: id: description: The ID of the notification scheme event. type: string writeOnly: true required: - id type: object writeOnly: true NotificationSchemeId: additionalProperties: true description: The ID of a notification scheme. properties: id: description: The ID of a notification scheme. readOnly: true type: string required: - id type: object NotificationSchemeNotificationDetails: additionalProperties: true description: Details of a notification within a notification scheme. maxLength: 255 properties: notificationType: description: The notification type, e.g `CurrentAssignee`, `Group`, `EmailAddress`. type: string writeOnly: true parameter: description: The value corresponding to the specified notification type. type: string writeOnly: true required: - notificationType type: object writeOnly: true OperationMessage: additionalProperties: false example: message: An example message. statusCode: 200 properties: message: description: The human-readable message that describes the result. type: string statusCode: description: The status code of the response. type: integer required: - message - statusCode type: object Operations: additionalProperties: true description: Details of the operations that can be performed on the issue. properties: linkGroups: description: Details of the link groups defining issue operations. items: $ref: "#/components/schemas/LinkGroup" readOnly: true type: array type: object OrderOfCustomFieldOptions: additionalProperties: false description: An ordered list of custom field option IDs and information on where to move them. properties: after: description: The ID of the custom field option or cascading option to place the moved options after. Required if `position` isn't provided. type: string writeOnly: true customFieldOptionIds: description: A list of IDs of custom field options to move. The order of the custom field option IDs in the list is the order they are given after the move. The list must contain custom field options or cascading options, but not both. items: type: string writeOnly: true type: array writeOnly: true position: description: The position the custom field options should be moved to. Required if `after` isn't provided. enum: - First - Last type: string writeOnly: true required: - customFieldOptionIds type: object OrderOfIssueTypes: additionalProperties: false description: An ordered list of issue type IDs and information about where to move them. properties: after: description: The ID of the issue type to place the moved issue types after. Required if `position` isn't provided. type: string writeOnly: true issueTypeIds: description: A list of the issue type IDs to move. The order of the issue type IDs in the list is the order they are given after the move. items: type: string writeOnly: true type: array writeOnly: true position: description: The position the issue types should be moved to. Required if `after` isn't provided. enum: - First - Last type: string writeOnly: true required: - issueTypeIds type: object PageBeanChangelog: 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/Changelog" readOnly: true type: array type: object PageBeanComment: 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/Comment" readOnly: true type: array type: object PageBeanComponentWithIssueCount: 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/ComponentWithIssueCount" readOnly: true type: array type: object PageBeanContext: 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/Context" readOnly: true type: array type: object PageBeanContextForProjectAndIssueType: 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/ContextForProjectAndIssueType" readOnly: true type: array type: object PageBeanContextualConfiguration: 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/ContextualConfiguration" readOnly: true type: array type: object PageBeanCustomFieldContext: 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/CustomFieldContext" readOnly: true type: array type: object PageBeanCustomFieldContextDefaultValue: 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/CustomFieldContextDefaultValue" readOnly: true type: array type: object PageBeanCustomFieldContextOption: 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/CustomFieldContextOption" readOnly: true type: array type: object PageBeanCustomFieldContextProjectMapping: 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/CustomFieldContextProjectMapping" readOnly: true type: array type: object PageBeanDashboard: 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/Dashboard" readOnly: true type: array type: object PageBeanField: 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/Field" readOnly: true type: array type: object PageBeanFieldConfigurationDetails: 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/FieldConfigurationDetails" readOnly: true type: array type: object PageBeanFieldConfigurationIssueTypeItem: 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/FieldConfigurationIssueTypeItem" readOnly: true type: array type: object PageBeanFieldConfigurationItem: 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/FieldConfigurationItem" readOnly: true type: array type: object PageBeanFieldConfigurationScheme: 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/FieldConfigurationScheme" readOnly: true type: array type: object PageBeanFieldConfigurationSchemeProjects: 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/FieldConfigurationSchemeProjects" readOnly: true type: array type: object PageBeanFilterDetails: 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/FilterDetails" readOnly: true type: array type: object PageBeanGroupDetails: 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/GroupDetails" readOnly: true type: array type: object PageBeanIssueFieldOption: 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/IssueFieldOption" readOnly: true type: array type: object PageBeanIssueSecurityLevelMember: 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/IssueSecurityLevelMember" readOnly: true type: array type: object PageBeanIssueSecuritySchemeToProjectMapping: 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/IssueSecuritySchemeToProjectMapping" readOnly: true type: array type: object PageBeanIssueTypeScheme: 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/IssueTypeScheme" readOnly: true type: array type: object PageBeanIssueTypeSchemeMapping: 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/IssueTypeSchemeMapping" readOnly: true type: array type: object PageBeanIssueTypeSchemeProjects: 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/IssueTypeSchemeProjects" readOnly: true type: array type: object PageBeanIssueTypeScreenScheme: 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/IssueTypeScreenScheme" readOnly: true type: array type: object PageBeanIssueTypeScreenSchemeItem: 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/IssueTypeScreenSchemeItem" readOnly: true type: array type: object PageBeanIssueTypeScreenSchemesProjects: 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/IssueTypeScreenSchemesProjects" readOnly: true type: array type: object PageBeanIssueTypeToContextMapping: 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/IssueTypeToContextMapping" readOnly: true type: array type: object PageBeanJqlFunctionPrecomputationBean: 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/JqlFunctionPrecomputationBean" readOnly: true type: array type: object PageBeanNotificationScheme: 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/NotificationScheme" readOnly: true type: array type: object PageBeanNotificationSchemeAndProjectMappingJsonBean: 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/NotificationSchemeAndProjectMappingJsonBean" readOnly: true type: array type: object PageBeanPriority: 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/Priority" readOnly: true type: array type: object PageBeanProject: 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/Project" readOnly: true type: array type: object PageBeanProjectDetails: 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/ProjectDetails" readOnly: true type: array type: object PageBeanResolutionJsonBean: 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/ResolutionJsonBean" readOnly: true type: array type: object PageBeanScreen: 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/Screen" readOnly: true type: array type: object PageBeanScreenScheme: 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/ScreenScheme" readOnly: true type: array type: object PageBeanScreenWithTab: 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/ScreenWithTab" readOnly: true type: array type: object PageBeanSecurityLevel: 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/SecurityLevel" readOnly: true type: array type: object PageBeanSecurityLevelMember: 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/SecurityLevelMember" readOnly: true type: array type: object PageBeanSecuritySchemeWithProjects: 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/SecuritySchemeWithProjects" readOnly: true type: array type: object PageBeanString: 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: readOnly: true type: string readOnly: true type: array 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 PageBeanUser: 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/User" readOnly: true type: array type: object PageBeanUserDetails: 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/UserDetails" readOnly: true type: array type: object PageBeanUserKey: 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/UserKey" readOnly: true type: array type: object PageBeanVersion: 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/Version" readOnly: true type: array type: object PageBeanWebhook: 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/Webhook" readOnly: true type: array type: object PageBeanWorkflow: 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/Workflow" readOnly: true type: array type: object PageBeanWorkflowScheme: 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/WorkflowScheme" readOnly: true type: array type: object PageBeanWorkflowTransitionRules: 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/WorkflowTransitionRules" readOnly: true type: array type: object PageOfChangelogs: additionalProperties: false description: A page of changelogs. properties: histories: description: The list of changelogs. items: $ref: "#/components/schemas/Changelog" readOnly: true type: array maxResults: description: The maximum number of results that could be on the page. format: int32 readOnly: true type: integer startAt: description: The index of the first item returned on the page. format: int32 readOnly: true type: integer total: description: The number of results on the page. format: int32 readOnly: true type: integer type: object PageOfComments: additionalProperties: true description: A page of comments. properties: comments: description: The list of comments. items: $ref: "#/components/schemas/Comment" readOnly: true type: array maxResults: description: The maximum number of items that could be returned. format: int32 readOnly: true type: integer 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 type: object PageOfDashboards: additionalProperties: false description: A page containing dashboard details. properties: dashboards: description: List of dashboards. items: $ref: "#/components/schemas/Dashboard" readOnly: true type: array maxResults: description: The maximum number of results that could be on the page. format: int32 readOnly: true type: integer next: description: The URL of the next page of results, if any. readOnly: true type: string prev: description: The URL of the previous page of results, if any. readOnly: true type: string startAt: description: The index of the first item returned on the page. format: int32 readOnly: true type: integer total: description: The number of results on the page. format: int32 readOnly: true type: integer type: object PageOfStatuses: additionalProperties: false properties: isLast: description: Whether this is the last page. type: boolean maxResults: description: The maximum number of items that could be returned. format: int32 type: integer nextPage: description: The URL of the next page of results, if any. type: string self: description: The URL of this page. type: string startAt: description: The index of the first item returned on the page. format: int64 type: integer total: description: Number of items that satisfy the search. format: int64 type: integer values: description: The list of items. items: $ref: "#/components/schemas/JiraStatus" type: array type: object PageOfWorklogs: additionalProperties: true description: Paginated list of worklog details properties: maxResults: description: The maximum number of results that could be on the page. format: int32 readOnly: true type: integer startAt: description: The index of the first item returned on the page. format: int32 readOnly: true type: integer total: description: The number of results on the page. format: int32 readOnly: true type: integer worklogs: description: List of worklogs. items: $ref: "#/components/schemas/Worklog" readOnly: true type: array type: object PagedListUserDetailsApplicationUser: additionalProperties: false description: A paged list. To access additional details append `[start-index:end-index]` to the expand request. For example, `?expand=sharedUsers[10:40]` returns a list starting at item 10 and finishing at item 40. properties: end-index: description: The index of the last item returned on the page. format: int32 readOnly: true type: integer xml: attribute: true name: end-index items: description: The list of items. items: $ref: "#/components/schemas/UserDetails" readOnly: true type: array max-results: description: The maximum number of results that could be on the page. format: int32 readOnly: true type: integer xml: attribute: true name: max-results size: description: The number of items on the page. format: int32 readOnly: true type: integer xml: attribute: true start-index: description: The index of the first item returned on the page. format: int32 readOnly: true type: integer xml: attribute: true name: start-index type: object PaginatedResponseComment: additionalProperties: false properties: maxResults: format: int32 type: integer results: items: $ref: "#/components/schemas/Comment" type: array startAt: format: int64 type: integer total: format: int64 type: integer type: object ParsedJqlQueries: additionalProperties: false description: A list of parsed JQL queries. properties: queries: description: A list of parsed JQL queries. items: $ref: "#/components/schemas/ParsedJqlQuery" minLength: 1 type: array required: - queries type: object ParsedJqlQuery: additionalProperties: false description: Details of a parsed JQL query. minLength: 1 properties: errors: description: The list of syntax or validation errors. items: type: string type: array uniqueItems: true query: description: The JQL query that was parsed and validated. type: string structure: allOf: - $ref: "#/components/schemas/JqlQuery" description: The syntax tree of the query. Empty if the query was invalid. required: - query type: object PermissionGrant: additionalProperties: false description: Details about a permission granted to a user or group. properties: holder: allOf: - $ref: "#/components/schemas/PermissionHolder" description: The user or group being granted the permission. It consists of a `type`, a type-dependent `parameter` and a type-dependent `value`. See [Holder object](../api-group-permission-schemes/#holder-object) in *Get all permission schemes* for more information. id: description: The ID of the permission granted details. format: int64 readOnly: true type: integer permission: description: The permission to grant. This permission can be one of the built-in permissions or a custom permission added by an app. See [Built-in permissions](../api-group-permission-schemes/#built-in-permissions) in *Get all permission schemes* for more information about the built-in permissions. See the [project permission](https://developer.atlassian.com/cloud/jira/platform/modules/project-permission/) and [global permission](https://developer.atlassian.com/cloud/jira/platform/modules/global-permission/) module documentation for more information about custom permissions. type: string self: description: The URL of the permission granted details. format: uri readOnly: true type: string type: object PermissionGrants: additionalProperties: false description: List of permission grants. properties: expand: description: Expand options that include additional permission grant details in the response. readOnly: true type: string permissions: description: Permission grants list. items: $ref: "#/components/schemas/PermissionGrant" readOnly: true type: array type: object PermissionHolder: additionalProperties: false description: Details of a user, group, field, or project role that holds a permission. See [Holder object](../api-group-permission-schemes/#holder-object) in *Get all permission schemes* for more information. properties: expand: description: Expand options that include additional permission holder details in the response. readOnly: true type: string parameter: description: As a group's name can change, use of `value` is recommended. The identifier associated withthe `type` value that defines the holder of the permission. type: string type: description: The type of permission holder. type: string value: description: The identifier associated with the `type` value that defines the holder of the permission. type: string required: - type type: object PermissionScheme: additionalProperties: true description: Details of a permission scheme. properties: description: description: A description for the permission scheme. type: string expand: description: The expand options available for the permission scheme. readOnly: true type: string id: description: The ID of the permission scheme. format: int64 readOnly: true type: integer name: description: The name of the permission scheme. Must be unique. type: string permissions: description: The permission scheme to create or update. See [About permission schemes and grants](../api-group-permission-schemes/#about-permission-schemes-and-grants) for more information. items: $ref: "#/components/schemas/PermissionGrant" type: array scope: allOf: - $ref: "#/components/schemas/Scope" description: The scope of the permission scheme. self: description: The URL of the permission scheme. format: uri readOnly: true type: string required: - name type: object PermissionSchemes: additionalProperties: false description: List of all permission schemes. properties: permissionSchemes: description: Permission schemes list. items: $ref: "#/components/schemas/PermissionScheme" readOnly: true type: array type: object Permissions: additionalProperties: false description: Details about permissions. properties: permissions: additionalProperties: $ref: "#/components/schemas/UserPermission" description: List of permissions. readOnly: true type: object type: object PermissionsKeysBean: additionalProperties: false properties: permissions: description: A list of permission keys. items: type: string type: array required: - permissions 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 Priority: additionalProperties: true description: An issue priority. properties: description: description: The description of the issue priority. type: string iconUrl: description: The URL of the icon for the issue priority. type: string id: description: The ID of the issue priority. type: string isDefault: description: Whether this priority is the default. type: boolean name: description: The name of the issue priority. type: string self: description: The URL of the issue priority. type: string statusColor: description: The color used to indicate the issue priority. type: string type: object PriorityId: additionalProperties: true description: The ID of an issue priority. properties: id: description: The ID of the issue priority. readOnly: true type: string required: - id type: object Project: additionalProperties: false description: Details about a project. properties: archived: description: Whether the project is archived. readOnly: true type: boolean archivedBy: allOf: - $ref: "#/components/schemas/User" description: The user who archived the project. readOnly: true archivedDate: description: The date when the project was archived. format: date-time readOnly: true type: string assigneeType: description: The default assignee when creating issues for this project. enum: - PROJECT_LEAD - UNASSIGNED readOnly: true type: string avatarUrls: allOf: - $ref: "#/components/schemas/AvatarUrlsBean" description: The URLs of the project's avatars. readOnly: true components: description: List of the components contained in the project. items: $ref: "#/components/schemas/ProjectComponent" readOnly: true type: array deleted: description: Whether the project is marked as deleted. readOnly: true type: boolean deletedBy: allOf: - $ref: "#/components/schemas/User" description: The user who marked the project as deleted. readOnly: true deletedDate: description: The date when the project was marked as deleted. format: date-time readOnly: true type: string description: description: A brief description of the project. readOnly: true type: string email: description: An email address associated with the project. type: string expand: description: Expand options that include additional project details in the response. readOnly: true type: string xml: attribute: true favourite: description: Whether the project is selected as a favorite. type: boolean id: description: The ID of the project. type: string insight: allOf: - $ref: "#/components/schemas/ProjectInsight" description: Insights about the project. readOnly: true isPrivate: description: Whether the project is private. readOnly: true type: boolean issueTypeHierarchy: allOf: - $ref: "#/components/schemas/Hierarchy" description: The issue type hierarchy for the project. readOnly: true issueTypes: description: List of the issue types available in the project. items: $ref: "#/components/schemas/IssueTypeDetails" readOnly: true type: array key: description: The key of the project. readOnly: true type: string landingPageInfo: allOf: - $ref: "#/components/schemas/ProjectLandingPageInfo" description: The project landing page info. readOnly: true lead: allOf: - $ref: "#/components/schemas/User" description: The username of the project lead. readOnly: true name: description: The name of the project. readOnly: true type: string permissions: allOf: - $ref: "#/components/schemas/ProjectPermissions" description: User permissions on the project readOnly: true projectCategory: allOf: - $ref: "#/components/schemas/ProjectCategory" description: The category the project belongs to. readOnly: true projectTypeKey: description: The [project type](https://confluence.atlassian.com/x/GwiiLQ#Jiraapplicationsoverview-Productfeaturesandprojecttypes) of the project. enum: - software - service_desk - business readOnly: true type: string properties: additionalProperties: readOnly: true description: Map of project properties readOnly: true type: object retentionTillDate: description: The date when the project is deleted permanently. format: date-time readOnly: true type: string roles: additionalProperties: format: uri readOnly: true type: string description: The name and self URL for each role defined in the project. For more information, see [Create project role](#api-rest-api-3-role-post). readOnly: true type: object self: description: The URL of the project details. format: uri readOnly: true type: string simplified: description: Whether the project is simplified. readOnly: true type: boolean style: description: The type of the project. enum: - classic - next-gen readOnly: true type: string url: description: A link to information about this project, such as project documentation. readOnly: true type: string uuid: description: Unique ID for next-gen projects. format: uuid readOnly: true type: string versions: description: The versions defined in the project. For more information, see [Create version](#api-rest-api-3-version-post). items: $ref: "#/components/schemas/Version" readOnly: true type: array type: object xml: name: project ProjectAvatars: additionalProperties: false description: List of project avatars. properties: custom: description: List of avatars added to Jira. These avatars may be deleted. items: $ref: "#/components/schemas/Avatar" readOnly: true type: array system: description: List of avatars included with Jira. These avatars cannot be deleted. items: $ref: "#/components/schemas/Avatar" readOnly: true type: array type: object ProjectCategory: additionalProperties: false description: A project category. properties: description: description: The description of the project category. type: string id: description: The ID of the project category. readOnly: true type: string name: description: The name of the project category. Required on create, optional on update. type: string self: description: The URL of the project category. format: uri readOnly: true type: string type: object ProjectComponent: additionalProperties: false description: Details about a project component. properties: assignee: allOf: - $ref: "#/components/schemas/User" description: The details of the user associated with `assigneeType`, if any. See `realAssignee` for details of the user assigned to issues created with this component. readOnly: true assigneeType: description: |- The nominal user type used to determine the assignee for issues created with this component. See `realAssigneeType` for details on how the type of the user, and hence the user, assigned to issues is determined. Can take the following values: * `PROJECT_LEAD` the assignee to any issues created with this component is nominally the lead for the project the component is in. * `COMPONENT_LEAD` the assignee to any issues created with this component is nominally the lead for the component. * `UNASSIGNED` an assignee is not set for issues created with this component. * `PROJECT_DEFAULT` the assignee to any issues created with this component is nominally the default assignee for the project that the component is in. Default value: `PROJECT_DEFAULT`. Optional when creating or updating a component. enum: - PROJECT_DEFAULT - COMPONENT_LEAD - PROJECT_LEAD - UNASSIGNED type: string description: description: The description for the component. Optional when creating or updating a component. type: string id: description: The unique identifier for the component. readOnly: true type: string isAssigneeTypeValid: description: Whether a user is associated with `assigneeType`. For example, if the `assigneeType` is set to `COMPONENT_LEAD` but the component lead is not set, then `false` is returned. readOnly: true type: boolean lead: allOf: - $ref: "#/components/schemas/User" description: The user details for the component's lead user. readOnly: true leadAccountId: description: The accountId of the component's lead user. The accountId uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. maxLength: 128 type: string writeOnly: true leadUserName: description: This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. type: string name: description: The unique name for the component in the project. Required when creating a component. Optional when updating a component. The maximum length is 255 characters. type: string project: description: The key of the project the component is assigned to. Required when creating a component. Can't be updated. type: string projectId: description: The ID of the project the component is assigned to. format: int64 readOnly: true type: integer realAssignee: allOf: - $ref: "#/components/schemas/User" description: The user assigned to issues created with this component, when `assigneeType` does not identify a valid assignee. readOnly: true realAssigneeType: description: |- The type of the assignee that is assigned to issues created with this component, when an assignee cannot be set from the `assigneeType`. For example, `assigneeType` is set to `COMPONENT_LEAD` but no component lead is set. This property is set to one of the following values: * `PROJECT_LEAD` when `assigneeType` is `PROJECT_LEAD` and the project lead has permission to be assigned issues in the project that the component is in. * `COMPONENT_LEAD` when `assignee`Type is `COMPONENT_LEAD` and the component lead has permission to be assigned issues in the project that the component is in. * `UNASSIGNED` when `assigneeType` is `UNASSIGNED` and Jira is configured to allow unassigned issues. * `PROJECT_DEFAULT` when none of the preceding cases are true. enum: - PROJECT_DEFAULT - COMPONENT_LEAD - PROJECT_LEAD - UNASSIGNED readOnly: true type: string self: description: The URL of the component. format: uri readOnly: true type: string type: object xml: name: component ProjectDetails: additionalProperties: false description: Details about a project. properties: avatarUrls: allOf: - $ref: "#/components/schemas/AvatarUrlsBean" description: The URLs of the project's avatars. readOnly: true id: description: The ID of the project. type: string key: description: The key of the project. readOnly: true type: string name: description: The name of the project. readOnly: true type: string projectCategory: allOf: - $ref: "#/components/schemas/UpdatedProjectCategory" description: The category the project belongs to. readOnly: true projectTypeKey: description: The [project type](https://confluence.atlassian.com/x/GwiiLQ#Jiraapplicationsoverview-Productfeaturesandprojecttypes) of the project. enum: - software - service_desk - business readOnly: true type: string self: description: The URL of the project details. readOnly: true type: string simplified: description: Whether or not the project is simplified. readOnly: true type: boolean type: object ProjectEmailAddress: additionalProperties: false description: A project's sender email address. properties: emailAddress: description: The email address. type: string emailAddressStatus: description: When using a custom domain, the status of the email address. items: type: string type: array type: object ProjectFeature: additionalProperties: false description: Details of a project feature. properties: feature: description: The key of the feature. type: string imageUri: description: URI for the image representing the feature. type: string localisedDescription: description: Localized display description for the feature. type: string localisedName: description: Localized display name for the feature. type: string prerequisites: description: List of keys of the features required to enable the feature. items: type: string type: array projectId: description: The ID of the project. format: int64 type: integer state: description: The state of the feature. When updating the state of a feature, only ENABLED and DISABLED are supported. Responses can contain all values enum: - ENABLED - DISABLED - COMING_SOON type: string toggleLocked: description: Whether the state of the feature can be updated. type: boolean type: object ProjectFeatureState: additionalProperties: false description: Details of the feature state. properties: state: description: The feature state. enum: - ENABLED - DISABLED - COMING_SOON type: string type: object ProjectId: additionalProperties: false description: Project ID details. properties: id: description: The ID of the project. type: string required: - id 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 ProjectIdentifiers: additionalProperties: false description: Identifiers for a project. properties: id: description: The ID of the created project. format: int64 readOnly: true type: integer key: description: The key of the created project. readOnly: true type: string self: description: The URL of the created project. format: uri readOnly: true type: string required: - id - key - self type: object ProjectIds: additionalProperties: false description: A list of project IDs. properties: projectIds: description: The IDs of projects. items: type: string writeOnly: true type: array writeOnly: true required: - projectIds type: object ProjectInsight: additionalProperties: false description: Additional details about a project. properties: lastIssueUpdateTime: description: The last issue update time. format: date-time readOnly: true type: string totalIssueCount: description: Total issue count. format: int64 readOnly: true type: integer type: object ProjectIssueCreateMetadata: additionalProperties: false description: Details of the issue creation metadata for a project. properties: avatarUrls: allOf: - $ref: "#/components/schemas/AvatarUrlsBean" description: List of the project's avatars, returning the avatar size and associated URL. readOnly: true expand: description: Expand options that include additional project issue create metadata details in the response. readOnly: true type: string xml: attribute: true id: description: The ID of the project. readOnly: true type: string issuetypes: description: List of the issue types supported by the project. items: $ref: "#/components/schemas/IssueTypeIssueCreateMetadata" readOnly: true type: array key: description: The key of the project. readOnly: true type: string name: description: The name of the project. readOnly: true type: string self: description: The URL of the project. readOnly: true type: string type: object ProjectIssueSecurityLevels: additionalProperties: false description: List of issue level security items in a project. properties: levels: description: Issue level security items list. items: $ref: "#/components/schemas/SecurityLevel" readOnly: true type: array required: - levels type: object ProjectIssueTypeHierarchy: additionalProperties: false description: The hierarchy of issue types within a project. properties: hierarchy: description: Details of an issue type hierarchy level. items: $ref: "#/components/schemas/ProjectIssueTypesHierarchyLevel" readOnly: true type: array projectId: description: The ID of the project. format: int64 readOnly: true type: integer type: object ProjectIssueTypeMapping: additionalProperties: false description: The project and issue type mapping. properties: issueTypeId: description: The ID of the issue type. type: string writeOnly: true projectId: description: The ID of the project. type: string writeOnly: true required: - issueTypeId - projectId type: object writeOnly: true ProjectIssueTypeMappings: additionalProperties: false description: The project and issue type mappings. properties: mappings: description: The project and issue type mappings. items: $ref: "#/components/schemas/ProjectIssueTypeMapping" type: array writeOnly: true required: - mappings type: object ProjectIssueTypes: additionalProperties: false description: Projects and issue types where the status is used. Only available if the `usages` expand is requested. properties: issueTypes: description: IDs of the issue types items: description: IDs of the issue types type: string type: array uniqueItems: true project: $ref: "#/components/schemas/ProjectId" type: object ProjectIssueTypesHierarchyLevel: additionalProperties: false description: Details of an issue type hierarchy level. properties: entityId: description: "The ID of the issue type hierarchy level. This property is deprecated, see [Change notice: Removing hierarchy level IDs from next-gen APIs](https://developer.atlassian.com/cloud/jira/platform/change-notice-removing-hierarchy-level-ids-from-next-gen-apis/)." format: uuid readOnly: true type: string issueTypes: description: The list of issue types in the hierarchy level. items: $ref: "#/components/schemas/IssueTypeInfo" readOnly: true type: array level: description: The level of the issue type hierarchy level. format: int32 readOnly: true type: integer name: description: The name of the issue type hierarchy level. readOnly: true type: string type: object ProjectLandingPageInfo: additionalProperties: false properties: attributes: additionalProperties: type: string type: object boardId: format: int64 type: integer boardName: type: string projectKey: type: string projectType: type: string queueCategory: type: string queueId: format: int64 type: integer queueName: type: string simpleBoard: type: boolean simplified: type: boolean url: type: string type: object ProjectPermissions: additionalProperties: false description: Permissions which a user has on a project. properties: canEdit: description: Whether the logged user can edit the project. readOnly: true type: boolean type: object ProjectRole: additionalProperties: false description: Details about the roles in a project. properties: actors: description: The list of users who act in this role. items: $ref: "#/components/schemas/RoleActor" readOnly: true type: array admin: description: Whether this role is the admin role for the project. readOnly: true type: boolean currentUserRole: description: Whether the calling user is part of this role. type: boolean default: description: Whether this role is the default role for the project readOnly: true type: boolean description: description: The description of the project role. readOnly: true type: string id: description: The ID of the project role. format: int64 readOnly: true type: integer name: description: The name of the project role. type: string roleConfigurable: description: Whether the roles are configurable for this project. readOnly: true type: boolean scope: allOf: - $ref: "#/components/schemas/Scope" description: The scope of the role. Indicated for roles associated with [next-gen projects](https://confluence.atlassian.com/x/loMyO). readOnly: true self: description: The URL the project role details. format: uri readOnly: true type: string translatedName: description: The translated name of the project role. type: string type: object ProjectRoleActorsUpdateBean: additionalProperties: false properties: categorisedActors: additionalProperties: items: type: string type: array description: |- The actors to add to the project role. Add groups using: * `atlassian-group-role-actor` and a list of group names. * `atlassian-group-role-actor-id` and a list of group IDs. As a group's name can change, use of `atlassian-group-role-actor-id` is recommended. For example, `"atlassian-group-role-actor-id":["eef79f81-0b89-4fca-a736-4be531a10869","77f6ab39-e755-4570-a6ae-2d7a8df0bcb8"]`. Add users using `atlassian-user-role-actor` and a list of account IDs. For example, `"atlassian-user-role-actor":["12345678-9abc-def1-2345-6789abcdef12", "abcdef12-3456-789a-bcde-f123456789ab"]`. type: object id: description: The ID of the project role. Use [Get all project roles](#api-rest-api-3-role-get) to get a list of project role IDs. format: int64 readOnly: true type: integer type: object xml: name: actor ProjectRoleDetails: additionalProperties: false description: Details about a project role. properties: admin: description: Whether this role is the admin role for the project. readOnly: true type: boolean default: description: Whether this role is the default role for the project. readOnly: true type: boolean description: description: The description of the project role. readOnly: true type: string id: description: The ID of the project role. format: int64 readOnly: true type: integer name: description: The name of the project role. type: string roleConfigurable: description: Whether the roles are configurable for this project. readOnly: true type: boolean scope: allOf: - $ref: "#/components/schemas/Scope" description: The scope of the role. Indicated for roles associated with [next-gen projects](https://confluence.atlassian.com/x/loMyO). readOnly: true self: description: The URL the project role details. format: uri readOnly: true type: string translatedName: description: The translated name of the project role. type: string type: object ProjectRoleGroup: additionalProperties: false description: Details of the group associated with the role. properties: displayName: description: The display name of the group. type: string groupId: description: The ID of the group. type: string name: description: The name of the group. As a group's name can change, use of `groupId` is recommended to identify the group. type: string type: object ProjectRoleUser: additionalProperties: false description: Details of the user associated with the role. properties: accountId: description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Returns *unknown* if the record is deleted and corrupted, for example, as the result of a server import. maxLength: 128 readOnly: true type: string type: object ProjectScopeBean: additionalProperties: false properties: attributes: description: Defines the behavior of the option in the project.If notSelectable is set, the option cannot be set as the field's value. This is useful for archiving an option that has previously been selected but shouldn't be used anymore.If defaultValue is set, the option is selected by default. items: enum: - notSelectable - defaultValue type: string type: array uniqueItems: true id: description: The ID of the project that the option's behavior applies to. format: int64 type: integer type: object ProjectType: additionalProperties: false description: Details about a project type. properties: color: description: The color of the project type. readOnly: true type: string descriptionI18nKey: description: The key of the project type's description. readOnly: true type: string formattedKey: description: The formatted key of the project type. readOnly: true type: string icon: description: The icon of the project type. readOnly: true type: string key: description: The key of the project type. readOnly: true type: string type: object PropertyKey: additionalProperties: false description: Property key details. properties: key: description: The key of the property. readOnly: true type: string self: description: The URL of the property. readOnly: true type: string type: object PropertyKeys: additionalProperties: false description: List of property keys. properties: keys: description: Property key details. items: $ref: "#/components/schemas/PropertyKey" readOnly: true type: array type: object PublishDraftWorkflowScheme: additionalProperties: false description: Details about the status mappings for publishing a draft workflow scheme. properties: statusMappings: description: Mappings of statuses to new statuses for issue types. items: $ref: "#/components/schemas/StatusMapping" type: array uniqueItems: true type: object PublishedWorkflowId: additionalProperties: false description: Properties that identify a published workflow. properties: entityId: description: The entity ID of the workflow. type: string name: description: The name of the workflow. type: string required: - name type: object RegisteredWebhook: additionalProperties: false description: ID of a registered webhook or error messages explaining why a webhook wasn't registered. properties: createdWebhookId: description: The ID of the webhook. Returned if the webhook is created. format: int64 type: integer errors: description: Error messages specifying why the webhook creation failed. items: description: Error messages specifying why the webhook creation failed. type: string type: array type: object RemoteIssueLink: additionalProperties: false description: Details of an issue remote link. properties: application: allOf: - $ref: "#/components/schemas/Application" description: Details of the remote application the linked item is in. globalId: description: The global ID of the link, such as the ID of the item on the remote system. type: string id: description: The ID of the link. format: int64 type: integer object: allOf: - $ref: "#/components/schemas/RemoteObject" description: Details of the item linked to. relationship: description: Description of the relationship between the issue and the linked item. type: string self: description: The URL of the link. format: uri type: string type: object RemoteIssueLinkIdentifies: additionalProperties: false description: Details of the identifiers for a created or updated remote issue link. properties: id: description: The ID of the remote issue link, such as the ID of the item on the remote system. format: int64 readOnly: true type: integer xml: attribute: true self: description: The URL of the remote issue link. readOnly: true type: string xml: attribute: true type: object RemoteIssueLinkRequest: additionalProperties: true description: Details of a remote issue link. properties: application: allOf: - $ref: "#/components/schemas/Application" description: Details of the remote application the linked item is in. For example, trello. globalId: description: |- An identifier for the remote item in the remote system. For example, the global ID for a remote item in Confluence would consist of the app ID and page ID, like this: `appId=456&pageId=123`. Setting this field enables the remote issue link details to be updated or deleted using remote system and item details as the record identifier, rather than using the record's Jira ID. The maximum length is 255 characters. type: string object: allOf: - $ref: "#/components/schemas/RemoteObject" description: Details of the item linked to. relationship: description: Description of the relationship between the issue and the linked item. If not set, the relationship description "links to" is used in Jira. type: string required: - object type: object RemoteObject: additionalProperties: true description: The linked item. properties: icon: allOf: - $ref: "#/components/schemas/Icon" description: Details of the icon for the item. If no icon is defined, the default link icon is used in Jira. status: allOf: - $ref: "#/components/schemas/Status" description: The status of the item. summary: description: The summary details of the item. type: string title: description: The title of the item. type: string url: description: The URL of the item. type: string required: - title - url type: object RemoveOptionFromIssuesResult: additionalProperties: false properties: errors: allOf: - $ref: "#/components/schemas/SimpleErrorCollection" description: A collection of errors related to unchanged issues. The collection size is limited, which means not all errors may be returned. modifiedIssues: description: The IDs of the modified issues. items: format: int64 type: integer type: array unmodifiedIssues: description: The IDs of the unchanged issues, those issues where errors prevent modification. items: format: int64 type: integer type: array type: object ReorderIssuePriorities: additionalProperties: false description: Change the order of issue priorities. properties: after: description: The ID of the priority. Required if `position` isn't provided. type: string writeOnly: true ids: description: The list of issue IDs to be reordered. Cannot contain duplicates nor after ID. items: type: string writeOnly: true type: array writeOnly: true position: description: The position for issue priorities to be moved to. Required if `after` isn't provided. type: string writeOnly: true required: - ids type: object ReorderIssueResolutionsRequest: additionalProperties: false description: Change the order of issue resolutions. properties: after: description: The ID of the resolution. Required if `position` isn't provided. type: string writeOnly: true ids: description: The list of resolution IDs to be reordered. Cannot contain duplicates nor after ID. items: type: string writeOnly: true type: array writeOnly: true position: description: The position for issue resolutions to be moved to. Required if `after` isn't provided. type: string writeOnly: true required: - ids type: object Resolution: additionalProperties: false description: Details of an issue resolution. properties: description: description: The description of the issue resolution. type: string id: description: The ID of the issue resolution. type: string name: description: The name of the issue resolution. type: string self: description: The URL of the issue resolution. format: uri type: string type: object xml: name: resolution ResolutionId: additionalProperties: true description: The ID of an issue resolution. properties: id: description: The ID of the issue resolution. readOnly: true type: string required: - id type: object ResolutionJsonBean: additionalProperties: false properties: default: type: boolean description: type: string iconUrl: type: string id: type: string name: type: string self: type: string type: object RestrictedPermission: additionalProperties: true description: Details of the permission. properties: 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 type: object RichText: properties: empty: type: boolean emptyAdf: type: boolean finalised: type: boolean valueSet: type: boolean type: object RoleActor: additionalProperties: false description: Details about a user assigned to a project role. properties: actorGroup: allOf: - $ref: "#/components/schemas/ProjectRoleGroup" readOnly: true actorUser: allOf: - $ref: "#/components/schemas/ProjectRoleUser" readOnly: true avatarUrl: description: The avatar of the role actor. format: uri readOnly: true type: string displayName: description: The display name of the role actor. For users, depending on the user’s privacy setting, this may return an alternative value for the user's name. readOnly: true type: string id: description: The ID of the role actor. format: int64 readOnly: true type: integer name: description: This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. readOnly: true type: string type: description: The type of role actor. enum: - atlassian-group-role-actor - atlassian-user-role-actor readOnly: true type: string type: object xml: name: projectRoleActor RuleConfiguration: additionalProperties: false description: A rule configuration. properties: disabled: default: false description: "EXPERIMENTAL: Whether the rule is disabled." type: boolean tag: description: "EXPERIMENTAL: A tag used to filter rules in [Get workflow transition rule configurations](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-workflow-transition-rules/#api-rest-api-3-workflow-rule-config-get)." maxLength: 255 type: string value: description: Configuration of the rule, as it is stored by the Connect or the Forge app on the rule configuration page. type: string required: - value type: object SanitizedJqlQueries: additionalProperties: false description: The sanitized JQL queries for the given account IDs. properties: queries: description: The list of sanitized JQL queries. items: $ref: "#/components/schemas/SanitizedJqlQuery" type: array type: object SanitizedJqlQuery: additionalProperties: false description: Details of the sanitized JQL query. properties: accountId: description: The account ID of the user for whom sanitization was performed. maxLength: 128 nullable: true type: string errors: allOf: - $ref: "#/components/schemas/ErrorCollection" description: The list of errors. initialQuery: description: The initial query. type: string sanitizedQuery: description: The sanitized query, if there were no errors. nullable: true type: string type: object Scope: additionalProperties: true description: The projects the item is associated with. Indicated for items associated with [next-gen projects](https://confluence.atlassian.com/x/loMyO). properties: project: allOf: - $ref: "#/components/schemas/ProjectDetails" description: The project the item has scope in. readOnly: true type: description: The type of scope. enum: - PROJECT - TEMPLATE readOnly: true type: string type: object Screen: additionalProperties: false description: A screen. properties: description: description: The description of the screen. readOnly: true type: string id: description: The ID of the screen. format: int64 readOnly: true type: integer name: description: The name of the screen. readOnly: true type: string scope: allOf: - $ref: "#/components/schemas/Scope" description: The scope of the screen. type: object ScreenDetails: additionalProperties: false description: Details of a screen. properties: description: description: The description of the screen. The maximum length is 255 characters. type: string writeOnly: true name: description: The name of the screen. The name must be unique. The maximum length is 255 characters. type: string writeOnly: true required: - name type: object ScreenScheme: additionalProperties: false description: A screen scheme. properties: description: description: The description of the screen scheme. type: string id: description: The ID of the screen scheme. format: int64 type: integer issueTypeScreenSchemes: allOf: - $ref: "#/components/schemas/PageBeanIssueTypeScreenScheme" description: Details of the issue type screen schemes associated with the screen scheme. name: description: The name of the screen scheme. type: string screens: allOf: - $ref: "#/components/schemas/ScreenTypes" description: The IDs of the screens for the screen types of the screen scheme. type: object ScreenSchemeDetails: additionalProperties: false description: Details of a screen scheme. properties: description: description: The description of the screen scheme. The maximum length is 255 characters. type: string writeOnly: true name: description: The name of the screen scheme. The name must be unique. The maximum length is 255 characters. type: string writeOnly: true screens: allOf: - $ref: "#/components/schemas/ScreenTypes" description: The IDs of the screens for the screen types of the screen scheme. Only screens used in classic projects are accepted. required: - name - screens type: object ScreenSchemeId: additionalProperties: false description: The ID of a screen scheme. properties: id: description: The ID of the screen scheme. format: int64 readOnly: true type: integer required: - id type: object ScreenTypes: additionalProperties: false description: The IDs of the screens for the screen types of the screen scheme. properties: create: description: The ID of the create screen. format: int64 type: integer default: description: The ID of the default screen. Required when creating a screen scheme. format: int64 type: integer edit: description: The ID of the edit screen. format: int64 type: integer view: description: The ID of the view screen. format: int64 type: integer required: - defaultScreen type: object writeOnly: true ScreenWithTab: additionalProperties: false description: A screen with tab details. properties: description: description: The description of the screen. readOnly: true type: string id: description: The ID of the screen. format: int64 readOnly: true type: integer name: description: The name of the screen. readOnly: true type: string scope: allOf: - $ref: "#/components/schemas/Scope" description: The scope of the screen. tab: allOf: - $ref: "#/components/schemas/ScreenableTab" description: The tab for the screen. type: object ScreenableField: additionalProperties: false description: A screen tab field. properties: id: description: The ID of the screen tab field. readOnly: true type: string name: description: The name of the screen tab field. Required on create and update. The maximum length is 255 characters. type: string type: object ScreenableTab: additionalProperties: false description: A screen tab. properties: id: description: The ID of the screen tab. format: int64 readOnly: true type: integer name: description: The name of the screen tab. The maximum length is 255 characters. type: string required: - name type: object SearchAutoCompleteFilter: additionalProperties: false description: Details of how to filter and list search auto complete information. properties: includeCollapsedFields: default: false description: Include collapsed fields for fields that have non-unique names. type: boolean projectIds: description: List of project IDs used to filter the visible field details returned. items: format: int64 type: integer type: array type: object SearchRequestBean: additionalProperties: false properties: expand: description: |- Use [expand](em>#expansion) to include additional information about issues in the response. Note that, unlike the majority of instances where `expand` is specified, `expand` is defined as a list of values. The expand options are: * `renderedFields` Returns field values rendered in HTML format. * `names` Returns the display name of each field. * `schema` Returns the schema describing a field type. * `transitions` Returns all possible transitions for the issue. * `operations` Returns all possible operations for the issue. * `editmeta` Returns information about how each field can be edited. * `changelog` Returns a list of recent updates to an issue, sorted by date, starting from the most recent. * `versionedRepresentations` Instead of `fields`, returns `versionedRepresentations` a JSON array containing each version of a field's value, with the highest numbered item representing the most recent version. items: type: string type: array fields: description: |- A list of fields to return for each issue, use it to retrieve a subset of fields. This parameter accepts a comma-separated list. Expand options include: * `*all` Returns all fields. * `*navigable` Returns navigable fields. * Any issue field, prefixed with a minus to exclude. The default is `*navigable`. Examples: * `summary,comment` Returns the summary and comments fields only. * `-description` Returns all navigable (default) fields except description. * `*all,-comment` Returns all fields except comments. Multiple `fields` parameters can be included in a request. Note: All navigable fields are returned by default. This differs from [GET issue](#api-rest-api-3-issue-issueIdOrKey-get) where the default is all fields. items: type: string type: array fieldsByKeys: description: Reference fields by their key (rather than ID). The default is `false`. type: boolean jql: description: A [JQL](https://confluence.atlassian.com/x/egORLQ) expression. type: string maxResults: default: 50 description: The maximum number of items to return per page. format: int32 type: integer properties: description: A list of up to 5 issue properties to include in the results. This parameter accepts a comma-separated list. items: type: string type: array startAt: description: The index of the first item to return in the page of results (page offset). The base index is `0`. format: int32 type: integer validateQuery: description: |- Determines how to validate the JQL query and treat the validation results. Supported values: * `strict` Returns a 400 response code if any errors are found, along with a list of all errors (and warnings). * `warn` Returns all errors as warnings. * `none` No validation is performed. * `true` *Deprecated* A legacy synonym for `strict`. * `false` *Deprecated* A legacy synonym for `warn`. The default is `strict`. Note: If the JQL is not correctly formed a 400 response code is returned, regardless of the `validateQuery` value. enum: - strict - warn - none - "true" - "false" type: string type: object SearchResults: additionalProperties: false description: The result of a JQL search. properties: expand: description: Expand options that include additional search result details in the response. readOnly: true type: string issues: description: The list of issues found by the search. items: $ref: "#/components/schemas/IssueBean" readOnly: true type: array maxResults: description: The maximum number of results that could be on the page. format: int32 readOnly: true type: integer names: additionalProperties: readOnly: true type: string description: The ID and name of each field in the search results. readOnly: true type: object schema: additionalProperties: $ref: "#/components/schemas/JsonTypeBean" description: The schema describing the field types in the search results. readOnly: true type: object startAt: description: The index of the first item returned on the page. format: int32 readOnly: true type: integer total: description: The number of results on the page. format: int32 readOnly: true type: integer warningMessages: description: Any warnings related to the JQL query. items: readOnly: true type: string readOnly: true type: array type: object SecurityLevel: additionalProperties: false description: Details of an issue level security item. properties: description: description: The description of the issue level security item. readOnly: true type: string id: description: The ID of the issue level security item. readOnly: true type: string isDefault: description: Whether the issue level security item is the default. readOnly: true type: boolean issueSecuritySchemeId: description: The ID of the issue level security scheme. readOnly: true type: string name: description: The name of the issue level security item. readOnly: true type: string self: description: The URL of the issue level security item. readOnly: true type: string type: object SecurityLevelMember: additionalProperties: true description: Issue security level member. properties: holder: allOf: - $ref: "#/components/schemas/PermissionHolder" description: The user or group being granted the permission. It consists of a `type` and a type-dependent `parameter`. See [Holder object](../api-group-permission-schemes/#holder-object) in *Get all permission schemes* for more information. readOnly: true id: description: The ID of the issue security level member. readOnly: true type: string issueSecurityLevelId: description: The ID of the issue security level. readOnly: true type: string issueSecuritySchemeId: description: The ID of the issue security scheme. readOnly: true type: string required: - holder - id - issueSecurityLevelId - issueSecuritySchemeId type: object SecurityScheme: additionalProperties: false description: Details about a security scheme. properties: defaultSecurityLevelId: description: The ID of the default security level. format: int64 readOnly: true type: integer description: description: The description of the issue security scheme. readOnly: true type: string id: description: The ID of the issue security scheme. format: int64 readOnly: true type: integer levels: items: $ref: "#/components/schemas/SecurityLevel" type: array name: description: The name of the issue security scheme. readOnly: true type: string self: description: The URL of the issue security scheme. readOnly: true type: string type: object SecuritySchemeId: additionalProperties: true description: The ID of the issue security scheme. properties: id: description: The ID of the issue security scheme. readOnly: true type: string required: - id type: object SecuritySchemeLevelBean: additionalProperties: false properties: description: description: The description of the issue security scheme level. maxLength: 4000 type: string writeOnly: true isDefault: description: Specifies whether the level is the default level. False by default. type: boolean writeOnly: true members: description: The list of level members which should be added to the issue security scheme level. items: $ref: "#/components/schemas/SecuritySchemeLevelMemberBean" type: array writeOnly: true name: description: The name of the issue security scheme level. Must be unique. maxLength: 255 type: string writeOnly: true required: - name type: object writeOnly: true SecuritySchemeLevelMemberBean: additionalProperties: false properties: parameter: description: The value corresponding to the specified member type. type: string writeOnly: true type: description: The issue security level member type, e.g `reporter`, `group`, `user`. type: string writeOnly: true required: - type type: object writeOnly: true SecuritySchemeMembersRequest: additionalProperties: false description: Details of issue security scheme level new members. properties: members: description: The list of level members which should be added to the issue security scheme level. items: $ref: "#/components/schemas/SecuritySchemeLevelMemberBean" type: array writeOnly: true required: - securitySchemeLevelMembers type: object SecuritySchemeWithProjects: additionalProperties: true description: Details about an issue security scheme. properties: defaultLevel: description: The default level ID of the issue security scheme. format: int64 readOnly: true type: integer description: description: The description of the issue security scheme. readOnly: true type: string id: description: The ID of the issue security scheme. format: int64 readOnly: true type: integer name: description: The name of the issue security scheme. readOnly: true type: string projectIds: description: The list of project IDs associated with the issue security scheme. items: format: int64 readOnly: true type: integer readOnly: true type: array uniqueItems: true self: description: The URL of the issue security scheme. readOnly: true type: string required: - id - name - self type: object SecuritySchemes: additionalProperties: false description: List of security schemes. properties: issueSecuritySchemes: description: List of security schemes. items: $ref: "#/components/schemas/SecurityScheme" readOnly: true type: array type: object ServerInformation: additionalProperties: false description: Details about the Jira instance. properties: baseUrl: description: The base URL of the Jira instance. type: string buildDate: description: The timestamp when the Jira version was built. format: date-time type: string buildNumber: description: The build number of the Jira version. format: int32 type: integer deploymentType: description: The type of server deployment. This is always returned as *Cloud*. type: string healthChecks: description: Jira instance health check results. Deprecated and no longer returned. items: $ref: "#/components/schemas/HealthCheckResult" type: array scmInfo: description: The unique identifier of the Jira version. type: string serverTime: description: The time in Jira when this request was responded to. format: date-time type: string serverTitle: description: The name of the Jira instance. type: string version: description: The version of Jira. type: string versionNumbers: description: The major, minor, and revision version numbers of the Jira version. items: format: int32 type: integer type: array type: object ServiceManagementNavigationInfo: properties: queueCategory: type: string queueId: format: int64 type: integer queueName: type: string type: object SetDefaultLevelsRequest: additionalProperties: true description: Details of new default levels. properties: defaultValues: description: List of objects with issue security scheme ID and new default level ID. items: $ref: "#/components/schemas/DefaultLevelValue" maxLength: 1000 type: array writeOnly: true required: - defaultValues type: object SetDefaultPriorityRequest: additionalProperties: false description: The new default issue priority. properties: id: description: The ID of the new default issue priority. Must be an existing ID or null. Setting this to null erases the default priority setting. type: string writeOnly: true required: - id type: object SetDefaultResolutionRequest: additionalProperties: false description: The new default issue resolution. properties: id: description: The ID of the new default issue resolution. Must be an existing ID or null. Setting this to null erases the default resolution setting. type: string writeOnly: true required: - id type: object SharePermission: additionalProperties: false description: Details of a share permission for the filter. properties: group: allOf: - $ref: "#/components/schemas/GroupName" description: The group that the filter is shared with. For a request, specify the `groupId` or `name` property for the group. As a group's name can change, use of `groupId` is recommended. id: description: The unique identifier of the share permission. format: int64 readOnly: true type: integer project: allOf: - $ref: "#/components/schemas/Project" description: |- The project that the filter is shared with. This is similar to the project object returned by [Get project](#api-rest-api-3-project-projectIdOrKey-get) but it contains a subset of the properties, which are: `self`, `id`, `key`, `assigneeType`, `name`, `roles`, `avatarUrls`, `projectType`, `simplified`. For a request, specify the `id` for the project. role: allOf: - $ref: "#/components/schemas/ProjectRole" description: |- The project role that the filter is shared with. For a request, specify the `id` for the role. You must also specify the `project` object and `id` for the project that the role is in. type: description: |- The type of share permission: * `user` Shared with a user. * `group` Shared with a group. If set in a request, then specify `sharePermission.group` as well. * `project` Shared with a project. If set in a request, then specify `sharePermission.project` as well. * `projectRole` Share with a project role in a project. This value is not returned in responses. It is used in requests, where it needs to be specify with `projectId` and `projectRoleId`. * `global` Shared globally. If set in a request, no other `sharePermission` properties need to be specified. * `loggedin` Shared with all logged-in users. Note: This value is set in a request by specifying `authenticated` as the `type`. * `project-unknown` Shared with a project that the user does not have access to. Cannot be set in a request. enum: - user - group - project - projectRole - global - loggedin - authenticated - project-unknown type: string user: allOf: - $ref: "#/components/schemas/UserBean" description: The user account ID that the filter is shared with. For a request, specify the `accountId` property for the user. required: - type type: object SharePermissionInputBean: additionalProperties: false properties: accountId: description: The user account ID that the filter is shared with. For a request, specify the `accountId` property for the user. type: string groupId: description: The ID of the group, which uniquely identifies the group across all Atlassian products.For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*. Cannot be provided with `groupname`. type: string groupname: description: The name of the group to share the filter with. Set `type` to `group`. Please note that the name of a group is mutable, to reliably identify a group use `groupId`. type: string projectId: description: The ID of the project to share the filter with. Set `type` to `project`. type: string projectRoleId: description: The ID of the project role to share the filter with. Set `type` to `projectRole` and the `projectId` for the project that the role is in. type: string rights: description: The rights for the share permission. format: int32 type: integer type: description: |- The type of the share permission.Specify the type as follows: * `user` Share with a user. * `group` Share with a group. Specify `groupname` as well. * `project` Share with a project. Specify `projectId` as well. * `projectRole` Share with a project role in a project. Specify `projectId` and `projectRoleId` as well. * `global` Share globally, including anonymous users. If set, this type overrides all existing share permissions and must be deleted before any non-global share permissions is set. * `authenticated` Share with all logged-in users. This shows as `loggedin` in the response. If set, this type overrides all existing share permissions and must be deleted before any non-global share permissions is set. enum: - user - project - group - projectRole - global - authenticated type: string required: - type type: object SimpleApplicationPropertyBean: additionalProperties: false properties: id: description: The ID of the application property. type: string value: description: The new value. type: string type: object xml: name: applicationProperty SimpleErrorCollection: additionalProperties: false 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 httpStatusCode: format: int32 type: integer type: object SimpleLink: additionalProperties: false description: Details about the operations available in this version. properties: href: type: string iconClass: type: string id: type: string label: type: string styleClass: type: string title: type: string weight: format: int32 type: integer type: object xml: name: link SimpleListWrapperApplicationRole: additionalProperties: false properties: callback: $ref: "#/components/schemas/ListWrapperCallbackApplicationRole" items: items: $ref: "#/components/schemas/ApplicationRole" type: array max-results: format: int32 type: integer xml: attribute: true name: max-results pagingCallback: $ref: "#/components/schemas/ListWrapperCallbackApplicationRole" size: format: int32 type: integer xml: attribute: true type: object xml: name: list SimpleListWrapperGroupName: additionalProperties: false properties: callback: $ref: "#/components/schemas/ListWrapperCallbackGroupName" items: items: $ref: "#/components/schemas/GroupName" type: array max-results: format: int32 type: integer xml: attribute: true name: max-results pagingCallback: $ref: "#/components/schemas/ListWrapperCallbackGroupName" size: format: int32 type: integer xml: attribute: true type: object xml: name: list SimplifiedHierarchyLevel: additionalProperties: false properties: aboveLevelId: description: "The ID of the level above this one in the hierarchy. This property is deprecated, see [Change notice: Removing hierarchy level IDs from next-gen APIs](https://developer.atlassian.com/cloud/jira/platform/change-notice-removing-hierarchy-level-ids-from-next-gen-apis/)." format: int64 type: integer belowLevelId: description: "The ID of the level below this one in the hierarchy. This property is deprecated, see [Change notice: Removing hierarchy level IDs from next-gen APIs](https://developer.atlassian.com/cloud/jira/platform/change-notice-removing-hierarchy-level-ids-from-next-gen-apis/)." format: int64 type: integer externalUuid: description: "The external UUID of the hierarchy level. This property is deprecated, see [Change notice: Removing hierarchy level IDs from next-gen APIs](https://developer.atlassian.com/cloud/jira/platform/change-notice-removing-hierarchy-level-ids-from-next-gen-apis/)." format: uuid type: string hierarchyLevelNumber: format: int32 type: integer id: description: "The ID of the hierarchy level. This property is deprecated, see [Change notice: Removing hierarchy level IDs from next-gen APIs](https://developer.atlassian.com/cloud/jira/platform/change-notice-removing-hierarchy-level-ids-from-next-gen-apis/)." format: int64 type: integer issueTypeIds: description: The issue types available in this hierarchy level. items: format: int64 type: integer type: array level: description: The level of this item in the hierarchy. format: int32 type: integer name: description: The name of this hierarchy level. type: string projectConfigurationId: description: "The ID of the project configuration. This property is deprecated, see [Change oticen: Removing hierarchy level IDs from next-gen APIs](https://developer.atlassian.com/cloud/jira/platform/change-notice-removing-hierarchy-level-ids-from-next-gen-apis/)." format: int64 type: integer type: object SoftwareNavigationInfo: properties: boardId: format: int64 type: integer boardName: type: string simpleBoard: type: boolean totalBoardsInProject: format: int64 type: integer type: object Status: additionalProperties: true description: The status of the item. properties: icon: allOf: - $ref: "#/components/schemas/Icon" description: Details of the icon representing the status. If not provided, no status icon displays in Jira. resolved: description: Whether the item is resolved. If set to "true", the link to the issue is displayed in a strikethrough font, otherwise the link displays in normal font. type: boolean type: object StatusCategory: additionalProperties: true description: A status category. properties: colorName: description: The name of the color used to represent the status category. readOnly: true type: string id: description: The ID of the status category. format: int64 readOnly: true type: integer key: description: The key of the status category. readOnly: true type: string name: description: The name of the status category. readOnly: true type: string self: description: The URL of the status category. readOnly: true type: string type: object StatusCreate: additionalProperties: false description: Details of the status being created. properties: description: description: The description of the status. type: string name: description: The name of the status. maxLength: 255 type: string statusCategory: description: The category of the status. enum: - TODO - IN_PROGRESS - DONE type: string required: - name - statusCategory type: object StatusCreateRequest: additionalProperties: false description: Details of the statuses being created and their scope. properties: scope: $ref: "#/components/schemas/StatusScope" statuses: description: Details of the statuses being created. items: $ref: "#/components/schemas/StatusCreate" type: array required: - scope - statuses type: object StatusDetails: additionalProperties: true description: A status. properties: description: description: The description of the status. readOnly: true type: string iconUrl: description: The URL of the icon used to represent the status. readOnly: true type: string id: description: The ID of the status. readOnly: true type: string name: description: The name of the status. readOnly: true type: string self: description: The URL of the status. readOnly: true type: string statusCategory: allOf: - $ref: "#/components/schemas/StatusCategory" description: The category assigned to the status. readOnly: true type: object StatusMapping: additionalProperties: false description: Details about the mapping from a status to a new status for an issue type. properties: issueTypeId: description: The ID of the issue type. type: string newStatusId: description: The ID of the new status. type: string statusId: description: The ID of the status. type: string required: - issueTypeId - newStatusId - statusId type: object StatusScope: additionalProperties: false description: The scope of the status. properties: project: $ref: "#/components/schemas/ProjectId" type: description: The scope of the status. `GLOBAL` for company-managed projects and `PROJECT` for team-managed projects. enum: - PROJECT - GLOBAL type: string required: - type type: object StatusUpdate: additionalProperties: true description: Details of the status being updated. properties: description: description: The description of the status. type: string id: description: The ID of the status. type: string name: description: The name of the status. type: string statusCategory: description: The category of the status. enum: - TODO - IN_PROGRESS - DONE type: string required: - id - name - statusCategory type: object StatusUpdateRequest: additionalProperties: false description: The list of statuses that will be updated. properties: statuses: description: The list of statuses that will be updated. items: $ref: "#/components/schemas/StatusUpdate" type: array type: object StringList: additionalProperties: false type: object SuggestedIssue: additionalProperties: false description: An issue suggested for use in the issue picker auto-completion. properties: id: description: The ID of the issue. format: int64 readOnly: true type: integer img: description: The URL of the issue type's avatar. readOnly: true type: string key: description: The key of the issue. readOnly: true type: string keyHtml: description: The key of the issue in HTML format. readOnly: true type: string summary: description: The phrase containing the query string in HTML format, with the string highlighted with HTML bold tags. readOnly: true type: string summaryText: description: The phrase containing the query string, as plain text. readOnly: true type: string type: object SystemAvatars: additionalProperties: false description: List of system avatars. properties: system: description: A list of avatar details. items: $ref: "#/components/schemas/Avatar" readOnly: true type: array type: object TaskProgressBeanObject: additionalProperties: false description: Details about a task. properties: description: description: The description of the task. type: string elapsedRuntime: description: The execution time of the task, in milliseconds. format: int64 type: integer finished: description: A timestamp recording when the task was finished. format: int64 type: integer id: description: The ID of the task. type: string lastUpdate: description: A timestamp recording when the task progress was last updated. format: int64 type: integer message: description: Information about the progress of the task. type: string progress: description: The progress of the task, as a percentage complete. format: int64 type: integer result: description: The result of the task execution. self: description: The URL of the task. format: uri type: string started: description: A timestamp recording when the task was started. format: int64 type: integer status: description: The status of the task. enum: - ENQUEUED - RUNNING - COMPLETE - FAILED - CANCEL_REQUESTED - CANCELLED - DEAD type: string submitted: description: A timestamp recording when the task was submitted. format: int64 type: integer submittedBy: description: The ID of the user who submitted the task. format: int64 type: integer required: - elapsedRuntime - id - lastUpdate - progress - self - status - submitted - submittedBy type: object TaskProgressBeanRemoveOptionFromIssuesResult: additionalProperties: false description: Details about a task. properties: description: description: The description of the task. type: string elapsedRuntime: description: The execution time of the task, in milliseconds. format: int64 type: integer finished: description: A timestamp recording when the task was finished. format: int64 type: integer id: description: The ID of the task. type: string lastUpdate: description: A timestamp recording when the task progress was last updated. format: int64 type: integer message: description: Information about the progress of the task. type: string progress: description: The progress of the task, as a percentage complete. format: int64 type: integer result: allOf: - $ref: "#/components/schemas/RemoveOptionFromIssuesResult" description: The result of the task execution. self: description: The URL of the task. format: uri type: string started: description: A timestamp recording when the task was started. format: int64 type: integer status: description: The status of the task. enum: - ENQUEUED - RUNNING - COMPLETE - FAILED - CANCEL_REQUESTED - CANCELLED - DEAD type: string submitted: description: A timestamp recording when the task was submitted. format: int64 type: integer submittedBy: description: The ID of the user who submitted the task. format: int64 type: integer required: - elapsedRuntime - id - lastUpdate - progress - self - status - submitted - submittedBy type: object TimeTrackingConfiguration: additionalProperties: false description: Details of the time tracking configuration. properties: defaultUnit: description: The default unit of time applied to logged time. enum: - minute - hour - day - week type: string timeFormat: description: The format that will appear on an issue's *Time Spent* field. enum: - pretty - days - hours type: string workingDaysPerWeek: description: The number of days in a working week. format: double type: number workingHoursPerDay: description: The number of hours in a working day. format: double type: number required: - defaultUnit - timeFormat - workingDaysPerWeek - workingHoursPerDay type: object TimeTrackingDetails: additionalProperties: false description: Time tracking details. properties: originalEstimate: description: The original estimate of time needed for this issue in readable format. readOnly: true type: string originalEstimateSeconds: description: The original estimate of time needed for this issue in seconds. format: int64 readOnly: true type: integer remainingEstimate: description: The remaining estimate of time needed for this issue in readable format. readOnly: true type: string remainingEstimateSeconds: description: The remaining estimate of time needed for this issue in seconds. format: int64 readOnly: true type: integer timeSpent: description: Time worked on this issue in readable format. readOnly: true type: string timeSpentSeconds: description: Time worked on this issue in seconds. format: int64 readOnly: true type: integer type: object TimeTrackingProvider: additionalProperties: false description: Details about the time tracking provider. properties: key: description: The key for the time tracking provider. For example, *JIRA*. type: string name: description: The name of the time tracking provider. For example, *JIRA provided time tracking*. type: string url: description: The URL of the configuration page for the time tracking provider app. For example, */example/config/url*. This property is only returned if the `adminPageKey` property is set in the module descriptor of the time tracking provider app. readOnly: true type: string required: - key type: object Transition: additionalProperties: false description: Details of a workflow transition. properties: description: description: The description of the transition. type: string from: description: The statuses the transition can start from. items: description: The statuses the transition can start from. type: string type: array id: description: The ID of the transition. type: string name: description: The name of the transition. type: string properties: additionalProperties: description: The properties of the transition. description: The properties of the transition. type: object rules: $ref: "#/components/schemas/WorkflowRules" screen: $ref: "#/components/schemas/TransitionScreenDetails" to: description: The status the transition goes to. type: string type: description: The type of the transition. enum: - global - initial - directed type: string required: - description - from - id - name - to - type type: object TransitionScreenDetails: additionalProperties: false description: The details of a transition screen. properties: id: description: The ID of the screen. type: string name: description: The name of the screen. type: string required: - id type: object Transitions: additionalProperties: false description: List of issue transitions. properties: expand: description: Expand options that include additional transitions details in the response. readOnly: true type: string xml: attribute: true transitions: description: List of issue transitions. items: $ref: "#/components/schemas/IssueTransition" readOnly: true type: array 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. type: string projectId: description: The project ID of the context. type: string viewType: description: The view type of the context. Only `GIC` (Global Issue Create) is supported. type: string required: - issueTypeId - projectId - viewType 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 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 UnrestrictedUserEmail: additionalProperties: true properties: accountId: description: The accountId of the user type: string email: description: The email of the user type: string type: object UpdateCustomFieldDetails: additionalProperties: false description: Details of a custom field. properties: description: description: The description of the custom field. The maximum length is 40000 characters. type: string name: description: The name of the custom field. It doesn't have to be unique. The maximum length is 255 characters. type: string searcherKey: description: |- The searcher that defines the way the field is searched in Jira. It can be set to `null`, otherwise you must specify the valid searcher for the field type, as listed below (abbreviated values shown): * `cascadingselect`: `cascadingselectsearcher` * `datepicker`: `daterange` * `datetime`: `datetimerange` * `float`: `exactnumber` or `numberrange` * `grouppicker`: `grouppickersearcher` * `importid`: `exactnumber` or `numberrange` * `labels`: `labelsearcher` * `multicheckboxes`: `multiselectsearcher` * `multigrouppicker`: `multiselectsearcher` * `multiselect`: `multiselectsearcher` * `multiuserpicker`: `userpickergroupsearcher` * `multiversion`: `versionsearcher` * `project`: `projectsearcher` * `radiobuttons`: `multiselectsearcher` * `readonlyfield`: `textsearcher` * `select`: `multiselectsearcher` * `textarea`: `textsearcher` * `textfield`: `textsearcher` * `url`: `exacttextsearcher` * `userpicker`: `userpickergroupsearcher` * `version`: `versionsearcher` enum: - com.atlassian.jira.plugin.system.customfieldtypes:cascadingselectsearcher - com.atlassian.jira.plugin.system.customfieldtypes:daterange - com.atlassian.jira.plugin.system.customfieldtypes:datetimerange - com.atlassian.jira.plugin.system.customfieldtypes:exactnumber - com.atlassian.jira.plugin.system.customfieldtypes:exacttextsearcher - com.atlassian.jira.plugin.system.customfieldtypes:grouppickersearcher - com.atlassian.jira.plugin.system.customfieldtypes:labelsearcher - com.atlassian.jira.plugin.system.customfieldtypes:multiselectsearcher - com.atlassian.jira.plugin.system.customfieldtypes:numberrange - com.atlassian.jira.plugin.system.customfieldtypes:projectsearcher - com.atlassian.jira.plugin.system.customfieldtypes:textsearcher - com.atlassian.jira.plugin.system.customfieldtypes:userpickergroupsearcher - com.atlassian.jira.plugin.system.customfieldtypes:versionsearcher type: string type: object writeOnly: true UpdateDefaultScreenScheme: additionalProperties: false description: The ID of a screen scheme. properties: screenSchemeId: description: The ID of the screen scheme. type: string writeOnly: true required: - screenSchemeId type: object UpdateFieldConfigurationSchemeDetails: additionalProperties: false description: The details of the field configuration scheme. properties: description: description: The description of the field configuration scheme. maxLength: 1024 type: string writeOnly: true name: description: The name of the field configuration scheme. The name must be unique. maxLength: 255 type: string writeOnly: true required: - name type: object UpdateIssueSecurityLevelDetails: additionalProperties: true description: Details of issue security scheme level. properties: description: description: The description of the issue security scheme level. maxLength: 255 type: string writeOnly: true name: description: The name of the issue security scheme level. Must be unique. maxLength: 60 type: string writeOnly: true type: object UpdateIssueSecuritySchemeRequestBean: additionalProperties: false properties: description: description: The description of the security scheme scheme. maxLength: 255 type: string writeOnly: true name: description: The name of the security scheme scheme. Must be unique. maxLength: 60 type: string writeOnly: true type: object UpdateNotificationSchemeDetails: additionalProperties: true description: Details of a notification scheme. properties: description: description: The description of the notification scheme. maxLength: 4000 type: string writeOnly: true name: description: The name of the notification scheme. Must be unique. maxLength: 255 type: string writeOnly: true type: object UpdatePriorityDetails: additionalProperties: true description: Details of an issue priority. properties: description: description: The description of the priority. maxLength: 255 type: string writeOnly: true iconUrl: description: The URL of an icon for the priority. Accepted protocols are HTTP and HTTPS. Built in icons can also be used. enum: - /images/icons/priorities/blocker.png - /images/icons/priorities/critical.png - /images/icons/priorities/high.png - /images/icons/priorities/highest.png - /images/icons/priorities/low.png - /images/icons/priorities/lowest.png - /images/icons/priorities/major.png - /images/icons/priorities/medium.png - /images/icons/priorities/minor.png - /images/icons/priorities/trivial.png maxLength: 255 type: string writeOnly: true name: description: The name of the priority. Must be unique. maxLength: 60 type: string writeOnly: true statusColor: description: The status color of the priority in 3-digit or 6-digit hexadecimal format. type: string writeOnly: true type: object UpdateProjectDetails: additionalProperties: false description: Details about the project. properties: assigneeType: description: The default assignee when creating issues for this project. enum: - PROJECT_LEAD - UNASSIGNED type: string avatarId: description: An integer value for the project's avatar. format: int64 type: integer categoryId: description: The ID of the project's category. A complete list of category IDs is found using the [Get all project categories](#api-rest-api-3-projectCategory-get) operation. To remove the project category from the project, set the value to `-1.` format: int64 type: integer description: description: A brief description of the project. type: string issueSecurityScheme: description: The ID of the issue security scheme for the project, which enables you to control who can and cannot view issues. Use the [Get issue security schemes](#api-rest-api-3-issuesecurityschemes-get) resource to get all issue security scheme IDs. format: int64 type: integer key: description: Project keys must be unique and start with an uppercase letter followed by one or more uppercase alphanumeric characters. The maximum length is 10 characters. type: string lead: description: This parameter is deprecated because of privacy changes. Use `leadAccountId` instead. See the [migration guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. The user name of the project lead. Cannot be provided with `leadAccountId`. type: string leadAccountId: description: The account ID of the project lead. Cannot be provided with `lead`. maxLength: 128 type: string name: description: The name of the project. type: string notificationScheme: description: The ID of the notification scheme for the project. Use the [Get notification schemes](#api-rest-api-3-notificationscheme-get) resource to get a list of notification scheme IDs. format: int64 type: integer permissionScheme: description: The ID of the permission scheme for the project. Use the [Get all permission schemes](#api-rest-api-3-permissionscheme-get) resource to see a list of all permission scheme IDs. format: int64 type: integer url: description: A link to information about this project, such as project documentation type: string type: object UpdateResolutionDetails: additionalProperties: true description: Details of an issue resolution. properties: description: description: The description of the resolution. maxLength: 255 type: string writeOnly: true name: description: The name of the resolution. Must be unique. maxLength: 60 type: string writeOnly: true required: - name type: object UpdateScreenDetails: additionalProperties: false description: Details of a screen. properties: description: description: The description of the screen. The maximum length is 255 characters. type: string writeOnly: true name: description: The name of the screen. The name must be unique. The maximum length is 255 characters. type: string writeOnly: true type: object UpdateScreenSchemeDetails: additionalProperties: false description: Details of a screen scheme. properties: description: description: The description of the screen scheme. The maximum length is 255 characters. type: string writeOnly: true name: description: The name of the screen scheme. The name must be unique. The maximum length is 255 characters. type: string writeOnly: true screens: allOf: - $ref: "#/components/schemas/UpdateScreenTypes" description: The IDs of the screens for the screen types of the screen scheme. Only screens used in classic projects are accepted. type: object UpdateScreenTypes: additionalProperties: false description: The IDs of the screens for the screen types of the screen scheme. properties: create: description: The ID of the create screen. To remove the screen association, pass a null. type: string writeOnly: true default: description: The ID of the default screen. When specified, must include a screen ID as a default screen is required. type: string writeOnly: true edit: description: The ID of the edit screen. To remove the screen association, pass a null. type: string writeOnly: true view: description: The ID of the view screen. To remove the screen association, pass a null. type: string writeOnly: true type: object writeOnly: true 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 UpdateUserToGroupBean: additionalProperties: true properties: accountId: description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. maxLength: 128 type: string name: description: This property is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. type: string type: object UpdatedProjectCategory: additionalProperties: false description: A project category. properties: description: description: The name of the project category. readOnly: true type: string id: description: The ID of the project category. readOnly: true type: string name: description: The description of the project category. readOnly: true type: string self: description: The URL of the project category. readOnly: true type: string type: object User: additionalProperties: false description: |- A user with details as permitted by the user's Atlassian Account privacy settings. However, be aware of these exceptions: * User record deleted from Atlassian: This occurs as the result of a right to be forgotten request. In this case, `displayName` provides an indication and other parameters have default values or are blank (for example, email is blank). * User record corrupted: This occurs as a results of events such as a server import and can only happen to deleted users. In this case, `accountId` returns *unknown* and all other parameters have fallback values. * User record unavailable: This usually occurs due to an internal service outage. In this case, all parameters have fallback values. properties: accountId: description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Required in requests. maxLength: 128 type: string accountType: description: |- The user account type. Can take the following values: * `atlassian` regular Atlassian user account * `app` system account used for Connect applications and OAuth to represent external systems * `customer` Jira Service Desk account representing an external service desk enum: - atlassian - app - customer - unknown readOnly: true type: string active: description: Whether the user is active. readOnly: true type: boolean applicationRoles: allOf: - $ref: "#/components/schemas/SimpleListWrapperApplicationRole" description: The application roles the user is assigned to. readOnly: true avatarUrls: allOf: - $ref: "#/components/schemas/AvatarUrlsBean" description: The avatars of the user. readOnly: true displayName: description: The display name of the user. Depending on the user’s privacy setting, this may return an alternative value. readOnly: true type: string emailAddress: description: The email address of the user. Depending on the user’s privacy setting, this may be returned as null. readOnly: true type: string expand: description: Expand options that include additional user details in the response. readOnly: true type: string xml: attribute: true groups: allOf: - $ref: "#/components/schemas/SimpleListWrapperGroupName" description: The groups that the user belongs to. readOnly: true key: description: This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. type: string locale: description: The locale of the user. Depending on the user’s privacy setting, this may be returned as null. readOnly: true type: string name: description: This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. type: string self: description: The URL of the user. format: uri readOnly: true type: string timeZone: description: The time zone specified in the user's profile. Depending on the user’s privacy setting, this may be returned as null. readOnly: true type: string type: object xml: name: user UserBean: additionalProperties: false properties: accountId: description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. maxLength: 128 type: string active: description: Whether the user is active. type: boolean avatarUrls: allOf: - $ref: "#/components/schemas/UserBeanAvatarUrls" description: The avatars of the user. displayName: description: The display name of the user. Depending on the user’s privacy setting, this may return an alternative value. type: string key: description: |- This property is deprecated in favor of `accountId` because of privacy changes. See the [migration guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. The key of the user. type: string name: description: |- This property is deprecated in favor of `accountId` because of privacy changes. See the [migration guide](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. The username of the user. type: string self: description: The URL of the user. format: uri type: string type: object UserBeanAvatarUrls: additionalProperties: false properties: 16x16: description: The URL of the user's 16x16 pixel avatar. format: uri type: string 24x24: description: The URL of the user's 24x24 pixel avatar. format: uri type: string 32x32: description: The URL of the user's 32x32 pixel avatar. format: uri type: string 48x48: description: The URL of the user's 48x48 pixel avatar. format: uri type: string type: object UserContextVariable: description: A [user](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#user) specified as an Atlassian account ID. properties: accountId: description: The account ID of the user. type: string type: description: Type of custom context variable. type: string required: - accountId - type type: object UserDetails: additionalProperties: false description: |- User details permitted by the user's Atlassian Account privacy settings. However, be aware of these exceptions: * User record deleted from Atlassian: This occurs as the result of a right to be forgotten request. In this case, `displayName` provides an indication and other parameters have default values or are blank (for example, email is blank). * User record corrupted: This occurs as a results of events such as a server import and can only happen to deleted users. In this case, `accountId` returns *unknown* and all other parameters have fallback values. * User record unavailable: This usually occurs due to an internal service outage. In this case, all parameters have fallback values. properties: accountId: description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. maxLength: 128 type: string accountType: description: The type of account represented by this user. This will be one of 'atlassian' (normal users), 'app' (application user) or 'customer' (Jira Service Desk customer user) readOnly: true type: string active: description: Whether the user is active. readOnly: true type: boolean avatarUrls: allOf: - $ref: "#/components/schemas/AvatarUrlsBean" description: The avatars of the user. readOnly: true displayName: description: The display name of the user. Depending on the user’s privacy settings, this may return an alternative value. readOnly: true type: string emailAddress: description: The email address of the user. Depending on the user’s privacy settings, this may be returned as null. readOnly: true type: string key: description: This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. readOnly: true type: string name: description: This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. readOnly: true type: string self: description: The URL of the user. readOnly: true type: string timeZone: description: The time zone specified in the user's profile. Depending on the user’s privacy settings, this may be returned as null. readOnly: true type: string type: object UserFilter: description: Filter for a User Picker (single) custom field. properties: enabled: description: Whether the filter is enabled. type: boolean groups: description: User groups autocomplete suggestion users must belong to. If not provided, the default values are used. A maximum of 10 groups can be provided. items: description: User groups autocomplete suggestion users must belong to. If not provided, the default values are used. A maximum of 10 groups can be provided. type: string type: array uniqueItems: true roleIds: description: Roles that autocomplete suggestion users must belong to. If not provided, the default values are used. A maximum of 10 roles can be provided. items: description: Roles that autocomplete suggestion users must belong to. If not provided, the default values are used. A maximum of 10 roles can be provided. format: int64 type: integer type: array uniqueItems: true required: - enabled type: object UserKey: additionalProperties: false description: List of user account IDs. properties: accountId: description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Returns *unknown* if the record is deleted and corrupted, for example, as the result of a server import. maxLength: 128 type: string key: description: This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. type: string type: object UserList: additionalProperties: false description: A paginated list of users sharing the filter. This includes users that are members of the groups or can browse the projects that the filter is shared with. properties: end-index: description: The index of the last item returned on the page. format: int32 readOnly: true type: integer xml: attribute: true name: end-index items: description: The list of items. items: $ref: "#/components/schemas/User" readOnly: true type: array max-results: description: The maximum number of results that could be on the page. format: int32 readOnly: true type: integer xml: attribute: true name: max-results size: description: The number of items on the page. format: int32 readOnly: true type: integer xml: attribute: true start-index: description: The index of the first item returned on the page. format: int32 readOnly: true type: integer xml: attribute: true name: start-index type: object UserMigrationBean: additionalProperties: false properties: accountId: type: string key: type: string username: 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 UserPickerUser: additionalProperties: false description: A user found in a search. properties: accountId: description: The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. type: string avatarUrl: description: The avatar URL of the user. format: uri type: string displayName: description: The display name of the user. Depending on the user’s privacy setting, this may be returned as null. type: string html: description: The display name, email address, and key of the user with the matched query string highlighted with the HTML bold tag. type: string key: description: This property is no longer available. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. type: string name: description: This property is no longer available . See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details. type: string type: object ValueOperand: description: An operand that is a user-provided value. properties: encodedValue: description: Encoded value, which can be used directly in a JQL query. type: string value: description: The operand value. type: string required: - value type: object Version: additionalProperties: false description: Details about a project version. properties: archived: description: Indicates that the version is archived. Optional when creating or updating a version. type: boolean description: description: The description of the version. Optional when creating or updating a version. type: string expand: description: |- Use [expand](em>#expansion) to include additional information about version in the response. This parameter accepts a comma-separated list. Expand options include: * `operations` Returns the list of operations available for this version. * `issuesstatus` Returns the count of issues in this version for each of the status categories *to do*, *in progress*, *done*, and *unmapped*. The *unmapped* property contains a count of issues with a status other than *to do*, *in progress*, and *done*. Optional for create and update. type: string xml: attribute: true id: description: The ID of the version. readOnly: true type: string issuesStatusForFixVersion: allOf: - $ref: "#/components/schemas/VersionIssuesStatus" description: If the expand option `issuesstatus` is used, returns the count of issues in this version for each of the status categories *to do*, *in progress*, *done*, and *unmapped*. The *unmapped* property contains a count of issues with a status other than *to do*, *in progress*, and *done*. readOnly: true moveUnfixedIssuesTo: description: The URL of the self link to the version to which all unfixed issues are moved when a version is released. Not applicable when creating a version. Optional when updating a version. format: uri type: string name: description: The unique name of the version. Required when creating a version. Optional when updating a version. The maximum length is 255 characters. type: string operations: description: If the expand option `operations` is used, returns the list of operations available for this version. items: $ref: "#/components/schemas/SimpleLink" readOnly: true type: array overdue: description: Indicates that the version is overdue. readOnly: true type: boolean project: description: Deprecated. Use `projectId`. type: string projectId: description: The ID of the project to which this version is attached. Required when creating a version. Not applicable when updating a version. format: int64 type: integer releaseDate: description: The release date of the version. Expressed in ISO 8601 format (yyyy-mm-dd). Optional when creating or updating a version. format: date type: string released: description: Indicates that the version is released. If the version is released a request to release again is ignored. Not applicable when creating a version. Optional when updating a version. type: boolean self: description: The URL of the version. format: uri readOnly: true type: string startDate: description: The start date of the version. Expressed in ISO 8601 format (yyyy-mm-dd). Optional when creating or updating a version. format: date type: string userReleaseDate: description: The date on which work on this version is expected to finish, expressed in the instance's *Day/Month/Year Format* date format. readOnly: true type: string userStartDate: description: The date on which work on this version is expected to start, expressed in the instance's *Day/Month/Year Format* date format. readOnly: true type: string type: object xml: name: version VersionIssueCounts: additionalProperties: false description: Various counts of issues within a version. properties: customFieldUsage: description: List of custom fields using the version. items: $ref: "#/components/schemas/VersionUsageInCustomField" readOnly: true type: array issueCountWithCustomFieldsShowingVersion: description: Count of issues where a version custom field is set to the version. format: int64 readOnly: true type: integer issuesAffectedCount: description: Count of issues where the `affectedVersion` is set to the version. format: int64 readOnly: true type: integer issuesFixedCount: description: Count of issues where the `fixVersion` is set to the version. format: int64 readOnly: true type: integer self: description: The URL of these count details. format: uri readOnly: true type: string type: object xml: name: version VersionIssuesStatus: additionalProperties: true description: Counts of the number of issues in various statuses. properties: done: description: Count of issues with status *done*. format: int64 readOnly: true type: integer inProgress: description: Count of issues with status *in progress*. format: int64 readOnly: true type: integer toDo: description: Count of issues with status *to do*. format: int64 readOnly: true type: integer unmapped: description: Count of issues with a status other than *to do*, *in progress*, and *done*. format: int64 readOnly: true type: integer type: object VersionMoveBean: additionalProperties: false properties: after: description: The URL (self link) of the version after which to place the moved version. Cannot be used with `position`. format: uri type: string position: description: An absolute position in which to place the moved version. Cannot be used with `after`. enum: - Earlier - Later - First - Last type: string type: object xml: name: version VersionUnresolvedIssuesCount: additionalProperties: false description: Count of a version's unresolved issues. properties: issuesCount: description: Count of issues. format: int64 readOnly: true type: integer issuesUnresolvedCount: description: Count of unresolved issues. format: int64 readOnly: true type: integer self: description: The URL of these count details. format: uri readOnly: true type: string type: object xml: name: version VersionUsageInCustomField: additionalProperties: false description: List of custom fields using the version. properties: customFieldId: description: The ID of the custom field. format: int64 readOnly: true type: integer fieldName: description: The name of the custom field. readOnly: true type: string issueCountWithVersionInCustomField: description: Count of the issues where the custom field contains the version. format: int64 readOnly: true type: integer type: object Visibility: additionalProperties: true description: The group or role to which this item is visible. properties: identifier: description: The ID of the group or the name of the role that visibility of this item is restricted to. nullable: true type: string type: description: Whether visibility of this item is restricted to a group or role. enum: - group - role type: string value: description: The name of the group or role that visibility of this item is restricted to. Please note that the name of a group is mutable, to reliably identify a group use `identifier`. type: string type: object Votes: additionalProperties: false description: The details of votes on an issue. properties: hasVoted: description: Whether the user making this request has voted on the issue. readOnly: true type: boolean self: description: The URL of these issue vote details. format: uri readOnly: true type: string voters: description: List of the users who have voted on this issue. An empty list is returned when the calling user doesn't have the *View voters and watchers* project permission. items: $ref: "#/components/schemas/User" readOnly: true type: array votes: description: The number of votes on the issue. format: int64 readOnly: true type: integer type: object WarningCollection: additionalProperties: false properties: warnings: items: type: string type: array type: object Watchers: additionalProperties: false description: The details of watchers on an issue. properties: isWatching: description: Whether the calling user is watching this issue. readOnly: true type: boolean self: description: The URL of these issue watcher details. readOnly: true type: string watchCount: description: The number of users watching this issue. format: int32 readOnly: true type: integer watchers: description: Details of the users watching this issue. items: $ref: "#/components/schemas/UserDetails" readOnly: true type: array type: object xml: name: watchers Webhook: additionalProperties: false description: A webhook. properties: events: description: The Jira events that trigger the webhook. items: enum: - jira:issue_created - jira:issue_updated - jira:issue_deleted - comment_created - comment_updated - comment_deleted - issue_property_set - issue_property_deleted type: string type: array expirationDate: description: The date after which the webhook is no longer sent. Use [Extend webhook life](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-webhooks/#api-rest-api-3-webhook-refresh-put) to extend the date. format: int64 readOnly: true type: integer fieldIdsFilter: description: A list of field IDs. When the issue changelog contains any of the fields, the webhook `jira:issue_updated` is sent. If this parameter is not present, the app is notified about all field updates. items: description: A list of field IDs. When the issue changelog contains any of the fields, the webhook jira:issue_updated is sent. If this parameter is not present, the app is notified about all field updates. type: string type: array id: description: The ID of the webhook. format: int64 type: integer issuePropertyKeysFilter: description: A list of issue property keys. A change of those issue properties triggers the `issue_property_set` or `issue_property_deleted` webhooks. If this parameter is not present, the app is notified about all issue property updates. items: description: A list of issue property keys. A change of those issue properties triggers the issue_property_set or issue_property_deleted webhooks. If this parameter is not present, the app is notified about all issue property updates. type: string type: array jqlFilter: description: The JQL filter that specifies which issues the webhook is sent for. type: string required: - events - id - jqlFilter type: object WebhookDetails: additionalProperties: false description: A list of webhooks. properties: events: description: The Jira events that trigger the webhook. items: enum: - jira:issue_created - jira:issue_updated - jira:issue_deleted - comment_created - comment_updated - comment_deleted - issue_property_set - issue_property_deleted type: string type: array fieldIdsFilter: description: A list of field IDs. When the issue changelog contains any of the fields, the webhook `jira:issue_updated` is sent. If this parameter is not present, the app is notified about all field updates. items: description: A list of field IDs. When the issue changelog contains any of the fields, the webhook jira:issue_updated is sent. If this parameter is not present, the app is notified about all field updates. type: string type: array issuePropertyKeysFilter: description: A list of issue property keys. A change of those issue properties triggers the `issue_property_set` or `issue_property_deleted` webhooks. If this parameter is not present, the app is notified about all issue property updates. items: description: A list of issue property keys. A change of those issue properties triggers the issue_property_set or issue_property_deleted webhooks. If this parameter is not present, the app is notified about all issue property updates. type: string type: array jqlFilter: description: |- The JQL filter that specifies which issues the webhook is sent for. Only a subset of JQL can be used. The supported elements are: * Fields: `issueKey`, `project`, `issuetype`, `status`, `assignee`, `reporter`, `issue.property`, and `cf[id]`. For custom fields (`cf[id]`), only the epic label custom field is supported.". * Operators: `=`, `!=`, `IN`, and `NOT IN`. type: string required: - events - jqlFilter type: object WebhookRegistrationDetails: additionalProperties: false description: Details of webhooks to register. properties: url: description: The URL that specifies where to send the webhooks. This URL must use the same base URL as the Connect app. Only a single URL per app is allowed to be registered. type: string webhooks: description: A list of webhooks. items: $ref: "#/components/schemas/WebhookDetails" type: array required: - url - webhooks type: object WebhooksExpirationDate: additionalProperties: false description: The date the refreshed webhooks expire. properties: expirationDate: description: The expiration date of all the refreshed webhooks. format: int64 readOnly: true type: integer required: - expirationDate type: object WorkManagementNavigationInfo: properties: boardName: type: string type: object Workflow: additionalProperties: false description: Details about a workflow. properties: created: description: The creation date of the workflow. format: date-time type: string description: description: The description of the workflow. type: string hasDraftWorkflow: description: Whether the workflow has a draft version. type: boolean id: $ref: "#/components/schemas/PublishedWorkflowId" isDefault: description: Whether this is the default workflow. type: boolean operations: $ref: "#/components/schemas/WorkflowOperations" projects: description: The projects the workflow is assigned to, through workflow schemes. items: $ref: "#/components/schemas/ProjectDetails" type: array schemes: description: The workflow schemes the workflow is assigned to. items: $ref: "#/components/schemas/WorkflowSchemeIdName" type: array statuses: description: The statuses of the workflow. items: $ref: "#/components/schemas/WorkflowStatus" type: array transitions: description: The transitions of the workflow. items: $ref: "#/components/schemas/Transition" type: array updated: description: The last edited date of the workflow. format: date-time type: string required: - description - id type: object WorkflowCompoundCondition: description: A compound workflow transition rule condition. This object returns `nodeType` as `compound`. properties: conditions: description: The list of workflow conditions. items: $ref: "#/components/schemas/WorkflowCondition" type: array nodeType: type: string operator: description: The compound condition operator. enum: - AND - OR type: string required: - conditions - nodeType - operator type: object WorkflowCondition: additionalProperties: false description: The workflow transition rule conditions tree. discriminator: mapping: compound: "#/components/schemas/WorkflowCompoundCondition" simple: "#/components/schemas/WorkflowSimpleCondition" propertyName: nodeType oneOf: - $ref: "#/components/schemas/WorkflowSimpleCondition" - $ref: "#/components/schemas/WorkflowCompoundCondition" type: object WorkflowIDs: additionalProperties: false description: The classic workflow identifiers. properties: entityId: description: The entity ID of the workflow. type: string name: description: The name of the workflow. type: string required: - name type: object WorkflowId: additionalProperties: false description: Properties that identify a workflow. properties: draft: description: Whether the workflow is in the draft state. type: boolean name: description: The name of the workflow. type: string required: - draft - name type: object WorkflowOperations: additionalProperties: false description: Operations allowed on a workflow properties: canDelete: description: Whether the workflow can be deleted. type: boolean canEdit: description: Whether the workflow can be updated. type: boolean required: - canDelete - canEdit type: object WorkflowRules: additionalProperties: false description: A collection of transition rules. properties: conditionsTree: $ref: "#/components/schemas/WorkflowCondition" postFunctions: description: The workflow post functions. items: $ref: "#/components/schemas/WorkflowTransitionRule" type: array validators: description: The workflow validators. items: $ref: "#/components/schemas/WorkflowTransitionRule" type: array type: object WorkflowRulesSearch: description: Details of the workflow and its transition rules. properties: expand: description: Use expand to include additional information in the response. This parameter accepts `transition` which, for each rule, returns information about the transition the rule is assigned to. example: transition type: string ruleIds: description: The list of workflow rule IDs. items: description: Workflow rule ID. example: 55d44f1d-c859-42e5-9c27-2c5ec3f340b1 format: uuid type: string maxItems: 10 minItems: 1 type: array workflowEntityId: description: The workflow ID. example: a498d711-685d-428d-8c3e-bc03bb450ea7 format: uuid type: string required: - ruleIds - workflowEntityId type: object WorkflowRulesSearchDetails: description: Details of workflow transition rules. properties: invalidRules: description: List of workflow rule IDs that do not belong to the workflow or can not be found. items: description: Workflow rule ID. example: 55d44f1d-c859-42e5-9c27-2c5ec3f340b1 format: uuid type: string type: array validRules: description: List of valid workflow transition rules. items: $ref: "#/components/schemas/WorkflowTransitionRules" type: array workflowEntityId: description: The workflow ID. example: a498d711-685d-428d-8c3e-bc03bb450ea7 format: uuid type: string type: object WorkflowScheme: additionalProperties: false description: Details about a workflow scheme. properties: defaultWorkflow: description: The name of the default workflow for the workflow scheme. The default workflow has *All Unassigned Issue Types* assigned to it in Jira. If `defaultWorkflow` is not specified when creating a workflow scheme, it is set to *Jira Workflow (jira)*. type: string description: description: The description of the workflow scheme. type: string draft: description: Whether the workflow scheme is a draft or not. readOnly: true type: boolean id: description: The ID of the workflow scheme. format: int64 readOnly: true type: integer issueTypeMappings: additionalProperties: type: string description: The issue type to workflow mappings, where each mapping is an issue type ID and workflow name pair. Note that an issue type can only be mapped to one workflow in a workflow scheme. type: object issueTypes: additionalProperties: $ref: "#/components/schemas/IssueTypeDetails" description: The issue types available in Jira. readOnly: true type: object lastModified: description: The date-time that the draft workflow scheme was last modified. A modification is a change to the issue type-project mappings only. This property does not apply to non-draft workflows. readOnly: true type: string lastModifiedUser: allOf: - $ref: "#/components/schemas/User" description: The user that last modified the draft workflow scheme. A modification is a change to the issue type-project mappings only. This property does not apply to non-draft workflows. readOnly: true name: description: The name of the workflow scheme. The name must be unique. The maximum length is 255 characters. Required when creating a workflow scheme. type: string originalDefaultWorkflow: description: For draft workflow schemes, this property is the name of the default workflow for the original workflow scheme. The default workflow has *All Unassigned Issue Types* assigned to it in Jira. readOnly: true type: string originalIssueTypeMappings: additionalProperties: readOnly: true type: string description: For draft workflow schemes, this property is the issue type to workflow mappings for the original workflow scheme, where each mapping is an issue type ID and workflow name pair. Note that an issue type can only be mapped to one workflow in a workflow scheme. readOnly: true type: object self: format: uri readOnly: true type: string updateDraftIfNeeded: description: |- Whether to create or update a draft workflow scheme when updating an active workflow scheme. An active workflow scheme is a workflow scheme that is used by at least one project. The following examples show how this property works: * Update an active workflow scheme with `updateDraftIfNeeded` set to `true`: If a draft workflow scheme exists, it is updated. Otherwise, a draft workflow scheme is created. * Update an active workflow scheme with `updateDraftIfNeeded` set to `false`: An error is returned, as active workflow schemes cannot be updated. * Update an inactive workflow scheme with `updateDraftIfNeeded` set to `true`: The workflow scheme is updated, as inactive workflow schemes do not require drafts to update. Defaults to `false`. type: boolean type: object WorkflowSchemeAssociations: additionalProperties: false description: A workflow scheme along with a list of projects that use it. properties: projectIds: description: The list of projects that use the workflow scheme. items: type: string type: array workflowScheme: allOf: - $ref: "#/components/schemas/WorkflowScheme" description: The workflow scheme. required: - projectIds - workflowScheme type: object WorkflowSchemeIdName: additionalProperties: false description: The ID and the name of the workflow scheme. properties: id: description: The ID of the workflow scheme. type: string name: description: The name of the workflow scheme. type: string required: - id - name type: object WorkflowSchemeProjectAssociation: additionalProperties: false description: An associated workflow scheme and project. properties: projectId: description: The ID of the project. type: string workflowSchemeId: description: The ID of the workflow scheme. If the workflow scheme ID is `null`, the operation assigns the default workflow scheme. type: string required: - projectId type: object WorkflowSimpleCondition: description: A workflow transition rule condition. This object returns `nodeType` as `simple`. properties: configuration: description: EXPERIMENTAL. The configuration of the transition rule. type: object nodeType: type: string type: description: The type of the transition rule. type: string required: - nodeType - type type: object WorkflowStatus: additionalProperties: false description: Details of a workflow status. properties: id: description: The ID of the issue status. type: string name: description: The name of the status in the workflow. type: string properties: additionalProperties: description: Additional properties that modify the behavior of issues in this status. Supports the properties jira.issue.editable and issueEditable (deprecated) that indicate whether issues are editable. description: Additional properties that modify the behavior of issues in this status. Supports the properties `jira.issue.editable` and `issueEditable` (deprecated) that indicate whether issues are editable. type: object required: - id - name type: object WorkflowTransition: additionalProperties: false description: A workflow transition. properties: id: description: The transition ID. format: int32 type: integer name: description: The transition name. type: string required: - id - name type: object WorkflowTransitionProperty: additionalProperties: true description: Details about the server Jira is running on. properties: id: description: The ID of the transition property. readOnly: true type: string key: description: The key of the transition property. Also known as the name of the transition property. readOnly: true type: string value: description: The value of the transition property. type: string required: - value type: object WorkflowTransitionRule: additionalProperties: false description: A workflow transition rule. properties: configuration: description: EXPERIMENTAL. The configuration of the transition rule. type: description: The type of the transition rule. type: string required: - type type: object WorkflowTransitionRules: additionalProperties: false description: A workflow with transition rules. properties: conditions: description: The list of conditions within the workflow. items: $ref: "#/components/schemas/AppWorkflowTransitionRule" type: array postFunctions: description: The list of post functions within the workflow. items: $ref: "#/components/schemas/AppWorkflowTransitionRule" type: array validators: description: The list of validators within the workflow. items: $ref: "#/components/schemas/AppWorkflowTransitionRule" type: array workflowId: $ref: "#/components/schemas/WorkflowId" required: - workflowId type: object WorkflowTransitionRulesDetails: additionalProperties: false description: Details about a workflow configuration update request. properties: workflowId: $ref: "#/components/schemas/WorkflowId" workflowRuleIds: description: The list of connect workflow rule IDs. items: description: The list of connect workflow rule IDs. type: string type: array uniqueItems: true required: - workflowId - workflowRuleIds type: object WorkflowTransitionRulesUpdate: additionalProperties: false description: Details about a workflow configuration update request. properties: workflows: description: The list of workflows with transition rules to update. items: $ref: "#/components/schemas/WorkflowTransitionRules" type: array required: - workflows type: object WorkflowTransitionRulesUpdateErrorDetails: additionalProperties: false description: Details of any errors encountered while updating workflow transition rules for a workflow. properties: ruleUpdateErrors: additionalProperties: description: A list of transition rule update errors, indexed by the transition rule ID. Any transition rule that appears here wasn't updated. items: description: A list of transition rule update errors, indexed by the transition rule ID. Any transition rule that appears here wasn't updated. type: string type: array uniqueItems: true description: A list of transition rule update errors, indexed by the transition rule ID. Any transition rule that appears here wasn't updated. type: object updateErrors: description: The list of errors that specify why the workflow update failed. The workflow was not updated if the list contains any entries. items: description: An error specifying why the workflow update failed. type: string type: array uniqueItems: true workflowId: $ref: "#/components/schemas/WorkflowId" required: - ruleUpdateErrors - updateErrors - workflowId type: object WorkflowTransitionRulesUpdateErrors: additionalProperties: false description: Details of any errors encountered while updating workflow transition rules. properties: updateResults: description: A list of workflows. items: $ref: "#/components/schemas/WorkflowTransitionRulesUpdateErrorDetails" type: array required: - updateResults type: object WorkflowsWithTransitionRulesDetails: additionalProperties: false description: Details of workflows and their transition rules to delete. properties: workflows: description: The list of workflows with transition rules to delete. items: $ref: "#/components/schemas/WorkflowTransitionRulesDetails" type: array required: - workflows type: object Worklog: additionalProperties: true description: Details of a worklog. properties: author: allOf: - $ref: "#/components/schemas/UserDetails" description: Details of the user who created the worklog. readOnly: true comment: description: A comment about the worklog in [Atlassian Document Format](https://developer.atlassian.com/cloud/jira/platform/apis/document/structure/). Optional when creating or updating a worklog. created: description: The datetime on which the worklog was created. format: date-time readOnly: true type: string id: description: The ID of the worklog record. readOnly: true type: string issueId: description: The ID of the issue this worklog is for. readOnly: true type: string properties: description: Details of properties for the worklog. Optional when creating or updating a worklog. items: $ref: "#/components/schemas/EntityProperty" type: array self: description: The URL of the worklog item. format: uri readOnly: true type: string started: description: The datetime on which the worklog effort was started. Required when creating a worklog. Optional when updating a worklog. format: date-time type: string timeSpent: description: The time spent working on the issue as days (\#d), hours (\#h), or minutes (\#m or \#). Required when creating a worklog if `timeSpentSeconds` isn't provided. Optional when updating a worklog. Cannot be provided if `timeSpentSecond` is provided. type: string timeSpentSeconds: description: The time in seconds spent working on the issue. Required when creating a worklog if `timeSpent` isn't provided. Optional when updating a worklog. Cannot be provided if `timeSpent` is provided. format: int64 type: integer updateAuthor: allOf: - $ref: "#/components/schemas/UserDetails" description: Details of the user who last updated the worklog. readOnly: true updated: description: The datetime on which the worklog was last updated. format: date-time readOnly: true type: string visibility: allOf: - $ref: "#/components/schemas/Visibility" description: Details about any restrictions in the visibility of the worklog. Optional when creating or updating a worklog. type: object xml: name: worklog WorklogIdsRequestBean: additionalProperties: false properties: ids: description: A list of worklog IDs. items: format: int64 type: integer type: array uniqueItems: true required: - ids 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 x-atlassian-narrative: documents: - anchor: about body: |- The Jira REST API enables you to interact with Jira programmatically. Use this API to [build apps](https://developer.atlassian.com/cloud/jira/platform/integrating-with-jira-cloud/), script interactions with Jira, or develop any other type of integration. This page documents the REST resources available in Jira Cloud, including the 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 but is in **beta**. [Version 2](https://developer.atlassian.com/cloud/jira/platform/rest/v2/) and version 3 of the API offer the same collection of operations. However, version 3 provides support for the [Atlassian Document Format](https://developer.atlassian.com/cloud/jira/platform/apis/document/structure/) (ADF) in: - `body` in comments, including where comments are used in issue, issue link, and transition resources. - `comment` in worklogs. - `description` and `environment` fields in issues. - `textarea` type custom fields (multi-line text fields) in issues. Single line custom fields (`textfield`) accept a string and don't handle Atlassian Document Format content. However, these new features are under development and may change. title: Version - anchor: authentication body: | ### Forge apps For Forge apps, [REST API scopes](https://developer.atlassian.com/cloud/jira/platform/scopes-for-oauth-2-3LO-and-forge-apps/) are used when authenticating with Jira Cloud platform. See [Add scopes to call an Atlassian REST API](https://developer.atlassian.com/platform/forge/add-scopes-to-call-an-atlassian-rest-api/) for more details. The URIs for Forge app REST API calls have this structure: `/rest/api/3/` For example, `/rest/api/3/issue/DEMO-1` ### Connect apps For Connect apps, authentication (JWT-based) is built into the Connect libraries. Authorization is implemented using either scopes (shown as _App scope required_ for operations on this page) or user impersonation. See [Security for Connect apps](https://developer.atlassian.com/cloud/jira/platform/security-for-connect-apps/) for details. The URIs for Connect app REST API calls have this structure: `https:///rest/api/3/` For example, `https://your-domain.atlassian.net/rest/api/3/issue/DEMO-1` ### Other integrations For integrations that are not Forge or Connect apps, use OAuth 2.0 authorization code grants (3LO) for security (3LO scopes are shown as for operations _OAuth scopes required_). See [OAuth 2.0 (3LO) apps](https://developer.atlassian.com/cloud/jira/platform/oauth-2-3lo-apps/) for details. The URIs for OAuth 2.0 (3LO) app REST API calls have this structure: `https://api.atlassian.com/ex/jira//rest/api/3/` For example, `https://api.atlassian.com/ex/jira/35273b54-3f06-40d2-880f-dd28cf8daafa/rest/api/3/issue/DEMO-1` ### Ad-hoc API calls For personal scripts, bots, and ad-hoc execution of the REST APIs use basic authentication. See [Basic auth for REST APIs](https://developer.atlassian.com/cloud/jira/platform/basic-auth-for-rest-apis/) for details. The URIs for basic authentication REST API calls have this structure: `https:///rest/api/3/` For example, `https://your-domain.atlassian.net/rest/api/3/issue/DEMO-1` title: Authentication and authorization - anchor: permissions body: | ### Operation permissions Most operations in this API require permissions. The calling user must have the required permissions for an operation to use it. Note that for Connect apps, the app user must have the required permissions for the operation and the app must have scopes that permit the operation. A permission can be granted to a group, project role, or issue role that the user is a member of, or granted directly to a user. See [Permissions overview](https://confluence.atlassian.com/x/FQiiLQ) for details. The most common permissions are: - **Administer the Cloud site**: Users in the _site-admins_ group have this permission. See [Manage groups](https://confluence.atlassian.com/x/24xjL) for details. - **Administer Jira**: Granted by the _Jira Administrators_ global permission. There is a default group for this permission. See [Manage groups](https://confluence.atlassian.com/x/24xjL) and [Managing global permissions](https://confluence.atlassian.com/x/x4dKLg) for details. - **Administer a project in Jira**: Granted by the _Administer projects_ project permission for a project. This can be granted to a user, a group, a project role, and more. See [Managing project permissions](https://confluence.atlassian.com/x/yodKLg) for details. - **Access a project in Jira**: Granted by the _Browse projects_ project permission for a project. This can be granted to a user, a group, a project role, and more. See [Managing project permissions](https://confluence.atlassian.com/x/yodKLg) for details. - **Access Jira**: Granted by the _Jira Users_ global permission. Users in the default product access group (for example, _jira-software-users-acmesite_) have this permission. See [Manage groups](https://confluence.atlassian.com/x/24xjL) and [Managing global permissions](https://confluence.atlassian.com/x/x4dKLg) for details. ### Anonymous access Some operations provide support for anonymous access. However, anonymous access is only available if the Jira permission needed to access the object or records returned by the operation is granted to the _Public_ group. See [Allowing anonymous access to your project](https://confluence.atlassian.com/x/GDxxLg) for details. If an operation is called anonymously and anonymous access is not available, the operation will return an error. Note that not all operations that correspond to objects that can be given public access provide for anonymous access. title: Permissions - anchor: expansion body: |+ ### Expansion The Jira REST API uses resource expansion, which means that some parts of a resource are not returned unless specified in the request. This simplifies responses and minimizes network traffic. To expand part of a resource in a request, use the expand query parameter and specify the object(s) to be expanded. If you need to expand nested objects, use the `.` dot notation. If you need to expand multiple objects, use a comma-separated list. For example, the following request expands the `names` and `renderedFields` properties for the _JRACLOUD-34423_ issue: `GET issue/JRACLOUD-34423?expand=names,renderedFields` To discover which object can be expanded, refer to the `expand` property in the object. In the JSON example below, the resource declares `widgets` as expandable. ```json { "expand": "widgets", "self": "https://your-domain.atlassian.net/rest/api/3/resource/KEY-1", "widgets": { "widgets": [], "size": 5 } } ``` ### Pagination The Jira REST API uses pagination to improve performance. Pagination is enforced for operations that could return a large collection of items. When you make a request to a paginated resource, the response wraps the returned array of values in a JSON object with paging metadata. For example: ```json { "startAt" : 0, "maxResults" : 10, "total": 200, "isLast": false, "values": [ { /* result 0 */ }, { /* result 1 */ }, { /* result 2 */ } ] } ``` * `startAt` is the index of the first item returned in the page. * `maxResults` is the maximum number of items that a page can return. Each operation can have a different limit for the number of items returned, and these limits may change without notice. To find the maximum number of items that an operation could return, set `maxResults` to a large number—for example, over 1000—and if the returned value of `maxResults` is less than the requested value, the returned value is the maximum. * `total` is the total number of items contained in all pages. This number **_may change_** as the client requests the subsequent pages, therefore the client should always assume that the requested page can be empty. Note that this property is not returned for all operations. * `isLast` indicates whether the page returned is the last one. Note that this property is not returned for all operations. ### Ordering Some operations support ordering the elements of a response by a field. Check the documentation for the operation to confirm whether ordering of a response is supported and which fields can be used. Responses are listed in ascending order by default. You can change the order using the `orderby` query parameter with a `-` or `+` symbol. For example: * `?orderBy=name` to order by `name` field ascending. * `?orderBy=+name` to order by `name` field ascending. * `?orderBy=-name` to order by `name` field descending. title: Expansion, pagination, and ordering - anchor: special-request-headers body: |- The following request and response headers define important metadata for the Jira Cloud REST API resources. - `X-Atlassian-Token` (request): Operations that accept multipart/form-data must include the `X-Atlassian-Token: no-check` header in requests. Otherwise the request is blocked by cross-site request forgery (CSRF/XSRF) protection. - `X-Force-Accept-Language` (request): controls how the standard HTTP `Accept-Language` header is processed. By default `Accept-Language` is ignored and the response is in the language configured in the user's profile or, when no language is configured for the user, the default Jira instance language. For the response to recognize `Accept-Language` send `X-Force-Accept-Language = true` as well. If `Accept-Language` requests a language that Jira can return the response is in that language, otherwise Jira returns the response in the default language. If `Accept-Language` is not specified the response is in the default language. - `X-AAccountId` (response): This response header contains the Atlassian account ID of the authenticated user. title: Special headers - anchor: anonymous-operations body: |2- Jira provides for all permissions, except the [global permission](https://confluence.atlassian.com/x/x4dKLg) Administer Jira, to be assigned to *Anyone*. Once a permission is assigned to *Anyone*, anyone knowing a project's URL is able to use the features in Jira enabled by the permission. However, the Jira REST API does not enable anonymous access for operations by default. This means that an anonymous user who may be able to perform an action through Jira, may not be able to perform the same action where it's enabled by the REST API. The operations that provide anonymous access are annotated "This operation can be accessed anonymously." title: Anonymous operations - anchor: async-operations body: |- Some Jira REST API operations may trigger long-running or computationally expensive tasks. In these cases, the operation will schedule an asynchronous task and return a `303 (See Other)` response, indicating the location of the queued task in the `Location` header. You can query this task to get progress updates. When the task finishes, the response object will contain the `result` field. The content of the field is specific to the operation that created the task. Refer to the operation’s documentation for more information. Note that asynchronous tasks are not guaranteed to be run in order. In other words, if you need your tasks to execute in a certain order, you should start a task only after the prerequisite task(s) have finished. title: Asynchronous operations - anchor: experimental body: | Features and methods marked as experimental may change without notice. Feedback on experimental functionality is welcome. Report your suggestions and bugs in the [ACJIRA project](https://ecosystem.atlassian.net/projects/ACJIRA) (preferred) or use the **Give docs feedback** link at the top of this page. title: Experimental features - anchor: status-codes body: |- The Jira Cloud platform REST API uses the [standard HTTP status codes](https://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html). Operations that return an error status code may also return a response body containing details of the error or errors. The schema for the response body is shown below: ```json { "id": "https://docs.atlassian.com/jira/REST/schema/error-collection#", "title": "Error Collection", "type": "object", "properties": { "errorMessages": { "type": "array", "items": { "type": "string" } }, "errors": { "type": "object", "patternProperties": { ".+": { "type": "string" } }, "additionalProperties": false }, "status": { "type": "integer" } }, "additionalProperties": false } ``` title: Status codes