All Downloads are FREE. Search and download functionalities are using the official Maven repository.

system-x-jira.0.0.9.source-code.jira-v3.v3.formatted.json Maven / Gradle / Ivy

There is a newer version: 0.0.14
Show newest version
{
  "openapi": "3.0.1",
  "info": {
    "title": "The Jira Cloud platform REST API",
    "description": "Jira Cloud platform REST API documentation",
    "termsOfService": "http://atlassian.com/terms/",
    "contact": {
      "email": "[email protected]"
    },
    "license": {
      "name": "Apache 2.0",
      "url": "http://www.apache.org/licenses/LICENSE-2.0.html"
    },
    "version": "1001.0.0-SNAPSHOT"
  },
  "externalDocs": {
    "description": "Find out more about Atlassian products and services.",
    "url": "http://www.atlassian.com"
  },
  "servers": [
    {
      "url": "https://your-domain.atlassian.net"
    }
  ],
  "tags": [
    {
      "name": "Announcement banner",
      "description": "This resource represents an announcement banner. Use it to retrieve and update banner configuration."
    },
    {
      "name": "Application roles",
      "description": "This resource represents application roles. Use it to get details of an application role or all application roles."
    },
    {
      "name": "Audit records",
      "description": "This resource represents audits that record activities undertaken in Jira. Use it to get a list of audit records."
    },
    {
      "name": "Avatars",
      "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": "Dashboards",
      "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": "Filters",
      "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": "Filter sharing",
      "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": "Group and user picker",
      "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": "Groups",
      "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": "Instance information",
      "description": "This resource represents information about the Jira instance. Use it to get license details."
    },
    {
      "name": "Issues",
      "description": "This resource represents Jira issues. Use it to:\n\n *  create or edit issues, individually or in bulk.\n *  retrieve metadata about the options for creating or editing issues.\n *  delete an issue.\n *  assign a user to an issue.\n *  get issue changelogs.\n *  send notifications about an issue.\n *  get details of the transitions available for an issue.\n *  transition an issue."
    },
    {
      "name": "UI modifications (apps)",
      "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": "Issue attachments",
      "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 comments",
      "description": "This resource represents issue comments. Use it to:\n\n *  get, create, update, and delete a comment from an issue.\n *  get all comments from issue.\n *  get a list of comments by comment ID."
    },
    {
      "name": "Issue comment properties",
      "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 fields",
      "description": "This resource represents issue fields, both system and custom fields. Use it to get fields, field configurations, and create custom fields."
    },
    {
      "name": "Issue field configurations",
      "description": "This resource represents issue field configurations. Use it to get, set, and delete field configurations and field configuration schemes."
    },
    {
      "name": "Issue custom field contexts",
      "description": "This resource represents issue custom field contexts. Use it to:\n\n *  get, create, update, and delete custom field contexts.\n *  get context to issue types and projects mappings.\n *  get custom field contexts for projects and issue types.\n *  assign custom field contexts to projects.\n *  remove custom field contexts from projects.\n *  add issue types to custom field contexts."
    },
    {
      "name": "Issue custom field options",
      "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:\n\n *  Checkboxes.\n *  Radio Buttons.\n *  Select List (single choice).\n *  Select List (multiple choices).\n *  Select List (cascading).\n\nSee [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.\n\nUse it to retrieve, create, update, order, and delete custom field options."
    },
    {
      "name": "Issue custom field options (apps)",
      "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.\n\nA 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 values (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 configuration (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 links",
      "description": "This resource represents links between issues. Use it to get, create, and delete links between issues.\n\nTo use it, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled."
    },
    {
      "name": "Issue link types",
      "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.\n\nTo use it, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled."
    },
    {
      "name": "Issue navigator settings",
      "description": "This resource represents issue navigator settings. Use it to get and set issue navigator default columns."
    },
    {
      "name": "Issue notification schemes",
      "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.\n\n### About notification schemes ###\n\nA 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`:\n\n *  `event` Identifies the type of event. The events can be [Jira system events](https://confluence.atlassian.com/x/8YdKLg#Creatinganotificationscheme-eventsEvents) or [custom events](https://confluence.atlassian.com/x/AIlKLg).\n *  `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:\n    \n     *  `CurrentAssignee`\n     *  `Reporter`\n     *  `CurrentUser`\n     *  `ProjectLead`\n     *  `ComponentLead`\n     *  `User` (the `parameter` is the user key)\n     *  `Group` (the `parameter` is the group name)\n     *  `ProjectRole` (the `parameter` is the project role ID)\n     *  `EmailAddress`\n     *  `AllWatchers`\n     *  `UserCustomField` (the `parameter` is the ID of the custom field)\n     *  `GroupCustomField`(the `parameter` is the ID of the custom field)"
    },
    {
      "name": "Issue priorities",
      "description": "This resource represents issue priorities. Use it to get, create and update issue priorities and details for individual issue priorities."
    },
    {
      "name": "Issue properties",
      "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 remote links",
      "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 resolutions",
      "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 search",
      "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 security level",
      "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 schemes",
      "description": "This resource represents issue security schemes. Use it to get an issue security scheme or list of issues security schemes.\n\nIssue 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 types",
      "description": "This resource represents issues types. Use it to:\n\n *  get, create, update, and delete issue types.\n *  get all issue types for a user.\n *  get alternative issue types.\n *  set an avatar for an issue type."
    },
    {
      "name": "Issue type schemes",
      "description": "This resource represents issue type schemes in classic projects. Use it to:\n\n *  get issue type schemes and a list of the projects that use them.\n *  associate issue type schemes with projects.\n *  add issue types to issue type schemes.\n *  delete issue types from issue type schemes.\n *  create, update, and delete issue type schemes.\n *  change the order of issue types in issue type schemes."
    },
    {
      "name": "Issue type screen schemes",
      "description": "This resource represents issue type screen schemes. Use it to:\n\n *  get issue type screen schemes and a list of the projects that use them.\n *  create issue type screen schemes.\n *  update issue type screen schemes.\n *  delete issue type screen schemes.\n *  associate issue type screen schemes with projects.\n *  append issue type to screen scheme mappings to issue type screen schemes.\n *  remove issue type to screen scheme mappings from issue type screen schemes.\n *  update default screen scheme of issue type screen scheme."
    },
    {
      "name": "Issue type properties",
      "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 votes",
      "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 watchers",
      "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 worklogs",
      "description": "This resource represents issue worklogs. Use it to:\n\n *  get, create, update, and delete worklogs.\n *  obtain lists of updated or deleted worklogs."
    },
    {
      "name": "Issue worklog properties",
      "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": "Jira expressions",
      "description": "This resource is a collection of operations for [Jira expressions](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/)."
    },
    {
      "name": "Jira settings",
      "description": "This resource represents various settings in Jira. Use it to get and update Jira settings and properties."
    },
    {
      "name": "JQL",
      "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:\n\n *  convert one or more JQL queries with user identifiers (username or user key) to equivalent JQL queries with account IDs.\n *  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": "Labels",
      "description": "This resource represents available labels. Use it to get available labels for the global label field."
    },
    {
      "name": "Myself",
      "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": "Permissions",
      "description": "This resource represents permissions. Use it to obtain details of all permissions and determine whether the user has certain permissions."
    },
    {
      "name": "Permission schemes",
      "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": "Projects",
      "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": "Project avatars",
      "description": "This resource represents avatars associated with a project. Use it to get, load, set, and remove project avatars."
    },
    {
      "name": "Project categories",
      "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 components",
      "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 email",
      "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 features",
      "description": "This resource represents project features. Use it to get the list of features for a project and modify the state of a feature."
    },
    {
      "name": "Project key and name validation",
      "description": "This resource provides validation for project keys and names."
    },
    {
      "name": "Project permission schemes",
      "description": "This resource represents permission schemes for a project. Use this resource to:\n\n *  get details of a project's issue security levels available to the calling user.\n *  get the permission scheme associated with the project or assign different permission scheme to the project.\n *  get details of a project's issue security scheme.\n\nSee [Managing project permissions](https://confluence.atlassian.com/x/yodKLg) for more information about permission schemes."
    },
    {
      "name": "Project properties",
      "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 roles",
      "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 role actors",
      "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 types",
      "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 versions",
      "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": "Screens",
      "description": "This resource represents the screens used to record issue details. Use it to:\n\n *  get details of all screens.\n *  get details of all the fields available for use on screens.\n *  create screens.\n *  delete screens.\n *  update screens.\n *  add a field to the default screen."
    },
    {
      "name": "Screen tabs",
      "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 tab fields",
      "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 schemes",
      "description": "This resource represents screen schemes in classic projects. Use it to get, create, update, and delete screen schemes."
    },
    {
      "name": "Server info",
      "description": "This resource provides information about the Jira instance."
    },
    {
      "name": "Status",
      "description": "This resource represents statuses. Use it to search, get, create, delete, and change statuses."
    },
    {
      "name": "Tasks",
      "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": "Time tracking",
      "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": "Users",
      "description": "This resource represent users. Use it to:\n\n *  get, get a list of, create, and delete users.\n *  get, set, and reset a user's default issue table columns.\n *  get a list of the groups the user belongs to.\n *  get a list of user account IDs for a list of usernames or user keys."
    },
    {
      "name": "User properties",
      "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/).\n\nThis resource does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira."
    },
    {
      "name": "User search",
      "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": "Webhooks",
      "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": "Workflows",
      "description": "This resource represents workflows. Use it to:\n\n *  get workflows.\n *  create workflows.\n *  delete inactive workflows."
    },
    {
      "name": "Workflow transition rules",
      "description": "This resource represents workflow transition rules. Workflow transition rules define a Connect 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 schemes",
      "description": "This resource represents workflow schemes. Use it to manage workflow schemes and the workflow scheme's workflows and issue types.\n\nA 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.\n\nActive 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).\n\nSee [Configuring workflow schemes](https://confluence.atlassian.com/x/tohKLg) for more information."
    },
    {
      "name": "Workflow scheme project associations",
      "description": "This resource represents the associations between workflow schemes and projects.\n\nFor more information, see [Managing your workflows](https://confluence.atlassian.com/x/q4hKLg)."
    },
    {
      "name": "Workflow scheme drafts",
      "description": "This resource represents draft workflow schemes. Use it to manage drafts of workflow schemes.\n\nA 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.\n\nActive 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).\n\nSee [Configuring workflow schemes](https://confluence.atlassian.com/x/tohKLg) for more information."
    },
    {
      "name": "Workflow statuses",
      "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 status categories",
      "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 transition properties",
      "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": "App properties",
      "description": "This resource represents app properties. Use it to store arbitrary data for your\n[Connect app](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps)."
    },
    {
      "name": "Dynamic modules",
      "description": "This resource represents [modules registered dynamically](https://developer.atlassian.com/cloud/jira/platform/dynamic-modules/)\nby [Connect apps](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps)."
    },
    {
      "name": "App migration",
      "description": "This resource supports [app migrations](https://developer.atlassian.com/platform/app-migration/). Use it to:\n- [to request migrated workflow rules details](https://developer.atlassian.com/platform/app-migration/tutorials/migration-app-workflow-rules/).\n- [perform bulk updates of entity properties](https://developer.atlassian.com/platform/app-migration/tutorials/entity-properties-bulk-api/).\n- [perform bulk updates of issue custom field values](https://developer.atlassian.com/platform/app-migration/tutorials/migrating-app-custom-fields/)."
    }
  ],
  "paths": {
    "/rest/api/3/announcementBanner": {
      "get": {
        "tags": [
          "Announcement banner"
        ],
        "summary": "Get announcement banner configuration",
        "description": "Returns the current announcement banner configuration.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getBanner",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AnnouncementBannerConfiguration"
                },
                "example": "{\"message\":\"This is a public, enabled, non-dismissible banner, set using the API\",\"isDismissible\":false,\"isEnabled\":true,\"hashId\":\"9HN2FJK9DM8BHRWERVW3RRTGDJ4G4D5C\",\"visibility\":\"public\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "\"Only admins can read banner configuration.\""
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Announcement banner"
        ],
        "summary": "Update announcement banner configuration",
        "description": "Updates the announcement banner configuration.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setBanner",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AnnouncementBannerConfigurationUpdate"
              },
              "example": {
                "visibility": "public",
                "isEnabled": true,
                "isDismissible": false,
                "message": "This is a public, enabled, non-dismissible banner, set using the API"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if an invalid parameter is passed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "\"Banner message cannot be null.\""
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "\"Only admins can update banner configuration.\""
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/app/field/value": {
      "post": {
        "tags": [
          "Issue custom field values (apps)"
        ],
        "summary": "Update custom fields",
        "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.\n\n**[Permissions](#permissions) required:** Only the app that created the custom field can update its values with this operation.",
        "operationId": "updateMultipleCustomFieldValues",
        "parameters": [
          {
            "name": "generateChangelog",
            "in": "query",
            "description": "Whether to generate a changelog for this update.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MultipleCustomFieldValuesUpdateDetails"
              },
              "example": {
                "updates": [
                  {
                    "issueIds": [
                      10010,
                      10011
                    ],
                    "value": "new value",
                    "customField": "customfield_10010"
                  },
                  {
                    "issueIds": [
                      10010
                    ],
                    "value": 1000,
                    "customField": "customfield_10011"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": []
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": []
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": []
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/app/field/{fieldIdOrKey}/context/configuration": {
      "get": {
        "tags": [
          "Issue custom field configuration (apps)"
        ],
        "summary": "Get custom field configurations",
        "description": "Returns a [paginated](#pagination) list of configurations for a custom field created by a [Forge app](https://developer.atlassian.com/platform/forge/).\n\nThe result can be filtered by one of these criteria:\n\n *  `id`.\n *  `fieldContextId`.\n *  `issueId`.\n *  `projectKeyOrId` and `issueTypeId`.\n\nOtherwise, all configurations are returned.\n\n**[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": [
          {
            "name": "fieldIdOrKey",
            "in": "path",
            "description": "The ID or key of the custom field, for example `customfield_10000`.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "query",
            "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`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "fieldContextId",
            "in": "query",
            "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`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "issueId",
            "in": "query",
            "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`.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "projectKeyOrId",
            "in": "query",
            "description": "The ID or key of the project to filter results by. Must be provided with `issueTypeId`. Can't be provided with `issueId`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "issueTypeId",
            "in": "query",
            "description": "The ID of the issue type to filter results by. Must be provided with `projectKeyOrId`. Can't be provided with `issueId`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanContextualConfiguration"
                },
                "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\"]}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:custom-field-contextual-configuration:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Issue custom field configuration (apps)"
        ],
        "summary": "Update custom field configurations",
        "description": "Update the configuration for contexts of a custom field created by a [Forge app](https://developer.atlassian.com/platform/forge/).\n\n**[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": [
          {
            "name": "fieldIdOrKey",
            "in": "path",
            "description": "The ID or key of the custom field, for example `customfield_10000`.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomFieldConfigurations"
              },
              "example": {
                "configurations": [
                  {
                    "id": "10000"
                  },
                  {
                    "schema": {
                      "properties": {
                        "amount": {
                          "type": "number"
                        },
                        "currency": {
                          "type": "string"
                        }
                      },
                      "required": [
                        "amount",
                        "currency"
                      ]
                    },
                    "configuration": {
                      "minValue": 0,
                      "maxValue": 10000
                    },
                    "id": "10001"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:custom-field-contextual-configuration:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/app/field/{fieldIdOrKey}/value": {
      "put": {
        "tags": [
          "Issue custom field values (apps)"
        ],
        "summary": "Update custom field value",
        "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.\n\n**[Permissions](#permissions) required:** Only the app that created the custom field can update its values with this operation.",
        "operationId": "updateCustomFieldValue",
        "parameters": [
          {
            "name": "fieldIdOrKey",
            "in": "path",
            "description": "The ID or key of the custom field. For example, `customfield_10010`.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "generateChangelog",
            "in": "query",
            "description": "Whether to generate a changelog for this update.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomFieldValueUpdateDetails"
              },
              "example": {
                "updates": [
                  {
                    "issueIds": [
                      10010
                    ],
                    "value": "new value"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": []
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": []
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": []
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/application-properties": {
      "get": {
        "tags": [
          "Jira settings"
        ],
        "summary": "Get application property",
        "description": "Returns all application properties or an application property.\n\nIf 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getApplicationProperty",
        "parameters": [
          {
            "name": "key",
            "in": "query",
            "description": "The key of the application property.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "permissionLevel",
            "in": "query",
            "description": "The permission level of all items being returned in the list.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "keyFilter",
            "in": "query",
            "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.*.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApplicationProperty"
                  }
                },
                "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 -\"}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:instance-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/application-properties/advanced-settings": {
      "get": {
        "tags": [
          "Jira settings"
        ],
        "summary": "Get advanced settings",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAdvancedSettings",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApplicationProperty"
                  }
                },
                "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 -\"}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user is not an administrator."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:instance-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/application-properties/{id}": {
      "put": {
        "tags": [
          "Jira settings"
        ],
        "summary": "Set application property",
        "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.\n\n#### Advanced settings ####\n\nThe advanced settings below are also accessible in [Jira](https://confluence.atlassian.com/x/vYXKM).\n\n| Key | Description | Default value |  \n| -- | -- | -- |  \n| `jira.clone.prefix` | The string of text prefixed to the title of a cloned issue. | `CLONE -` |  \n| `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` |  \n| `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` |  \n| `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` |  \n| `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` |  \n| `jira.issue.actions.order` | The default order of actions (such as *Comments* or *Change history*) displayed on the issue view. | `asc` |  \n| `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` |  \n| `jira.view.issue.links.sort.order` | The sort order of the list of issue links on the issue view. | `type, status, priority` |  \n| `jira.comment.collapsing.minimum.hidden` | The minimum number of comments required for comment collapsing to occur. A value of `0` disables comment collapsing. | `4` |  \n| `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` |  \n\n\n#### Look and feel ####\n\nThe settings listed below adjust the [look and feel](https://confluence.atlassian.com/x/VwCLLg).\n\n| Key | Description | Default value |  \n| -- | -- | -- |  \n| `jira.lf.date.time` | The [ time format](https://docs.oracle.com/javase/6/docs/api/index.html?java/text/SimpleDateFormat.html). | `h:mm a` |  \n| `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` |  \n| `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` |  \n| `jira.lf.date.dmy` | The [ date format](https://docs.oracle.com/javase/6/docs/api/index.html?java/text/SimpleDateFormat.html). | `dd/MMM/yy` |  \n| `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` |  \n| `jira.lf.logo.url` | The URL of the logo image file. | `/images/icon-jira-logo.png` |  \n| `jira.lf.logo.show.application.title` | Controls the visibility of the application title on the sidebar. | `false` |  \n| `jira.lf.favicon.url` | The URL of the favicon. | `/favicon.ico` |  \n| `jira.lf.favicon.hires.url` | The URL of the high-resolution favicon. | `/images/64jira.png` |  \n| `jira.lf.navigation.bgcolour` | The background color of the sidebar. | `#0747A6` |  \n| `jira.lf.navigation.highlightcolour` | The color of the text and logo of the sidebar. | `#DEEBFF` |  \n| `jira.lf.hero.button.base.bg.colour` | The background color of the hero button. | `#3b7fc4` |  \n| `jira.title` | The text for the application title. The application title can also be set in *General settings*. | `Jira` |  \n| `jira.option.globalsharing` | Whether filters and dashboards can be shared with anyone signed into Jira. | `true` |  \n| `xflow.product.suggestions.enabled` | Whether to expose product suggestions for other Atlassian products within Jira. | `true` |  \n\n\n#### Other settings ####\n\n| Key | Description | Default value |  \n| -- | -- | -- |  \n| `jira.issuenav.criteria.autoupdate` | Whether instant updates to search criteria is active. | `true` |  \n\n\n*Note: Be careful when changing [application properties and advanced settings](https://confluence.atlassian.com/x/vYXKM).*\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setApplicationProperty",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The key of the application property to update.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SimpleApplicationPropertyBean"
              },
              "example": {
                "id": "jira.home",
                "value": "/var/jira/jira-home"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApplicationProperty"
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:instance-configuration:jira",
              "read:instance-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/applicationrole": {
      "get": {
        "tags": [
          "Application roles"
        ],
        "summary": "Get all application roles",
        "description": "Returns all application roles. In Jira, application roles are managed using the [Application access configuration](https://confluence.atlassian.com/x/3YxjL) page.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllApplicationRoles",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ApplicationRole"
                  }
                },
                "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}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user is not an administrator."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/applicationrole/{key}": {
      "get": {
        "tags": [
          "Application roles"
        ],
        "summary": "Get application role",
        "description": "Returns an application role.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getApplicationRole",
        "parameters": [
          {
            "name": "key",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "string",
              "example": "jira-software"
            },
            "x-showInExample": "true"
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ApplicationRole"
                },
                "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}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/attachment/content/{id}": {
      "get": {
        "tags": [
          "Issue attachments"
        ],
        "summary": "Get attachment content",
        "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.\n\nTo return a thumbnail of the attachment, use [Get attachment thumbnail](#api-rest-api-3-attachment-thumbnail-id-get).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** For the issue containing the attachment:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getAttachmentContent",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the attachment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "redirect",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful when `redirect` is set to `false`.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "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:\n\n *  the attachment is not found.\n *  attachments are disabled in the Jira settings."
          },
          "416": {
            "description": "Returned if the server is unable to satisfy the range of bytes provided."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:attachment:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/attachment/meta": {
      "get": {
        "tags": [
          "Issue attachments"
        ],
        "summary": "Get Jira attachment settings",
        "description": "Returns the attachment settings, that is, whether attachments are enabled and the maximum attachment size allowed.\n\nNote that there are also [project permissions](https://confluence.atlassian.com/x/yodKLg) that restrict whether users can create and delete attachments.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAttachmentMeta",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentSettings"
                },
                "example": "{\"enabled\":true,\"uploadLimit\":1000000}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:instance-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/attachment/thumbnail/{id}": {
      "get": {
        "tags": [
          "Issue attachments"
        ],
        "summary": "Get attachment thumbnail",
        "description": "Returns the thumbnail of an attachment.\n\nTo return the attachment contents, use [Get attachment content](#api-rest-api-3-attachment-content-id-get).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** For the issue containing the attachment:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getAttachmentThumbnail",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the attachment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "redirect",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "fallbackToDefault",
            "in": "query",
            "description": "Whether a default thumbnail is returned when the requested thumbnail is not found.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "width",
            "in": "query",
            "description": "The maximum width to scale the thumbnail to.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "height",
            "in": "query",
            "description": "The maximum height to scale the thumbnail to.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful when `redirect` is set to `false`.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              }
            }
          },
          "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:\n\n *  the attachment is not found.\n *  attachments are disabled in the Jira settings.\n *  `fallbackToDefault` is `false` and the request thumbnail cannot be downloaded."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:attachment:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/attachment/{id}": {
      "get": {
        "tags": [
          "Issue attachments"
        ],
        "summary": "Get attachment metadata",
        "description": "Returns the metadata for an attachment. Note that the attachment itself is not returned.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getAttachment",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the attachment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentMetadata"
                },
                "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\":\"2022-12-08T07:09:19.704+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\"}"
              }
            }
          },
          "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:\n\n *  the attachment is not found.\n *  attachments are disabled in the Jira settings."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:attachment:jira",
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "delete": {
        "tags": [
          "Issue attachments"
        ],
        "summary": "Delete attachment",
        "description": "Deletes an attachment from an issue.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** For the project holding the issue containing the attachment:\n\n *  *Delete own attachments* [project permission](https://confluence.atlassian.com/x/yodKLg) to delete an attachment created by the calling user.\n *  *Delete all attachments* [project permission](https://confluence.atlassian.com/x/yodKLg) to delete an attachment created by any user.",
        "operationId": "removeAttachment",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the attachment.",
            "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:\n\n *  the attachment is not found.\n *  attachments are disabled in the Jira settings."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:attachment:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/attachment/{id}/expand/human": {
      "get": {
        "tags": [
          "Issue attachments"
        ],
        "summary": "Get all metadata for an expanded attachment",
        "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.\n\nUse 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** For the issue containing the attachment:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "expandAttachmentForHumans",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the attachment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "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.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentArchiveMetadataReadable"
                },
                "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\"}"
              }
            }
          },
          "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:\n\n *  the attachment is not found.\n *  attachments are disabled in the Jira settings."
          },
          "409": {
            "description": "Returned if the attachment is an archive, but not a supported archive format."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:attachment:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/attachment/{id}/expand/raw": {
      "get": {
        "tags": [
          "Issue attachments"
        ],
        "summary": "Get contents metadata for an expanded attachment",
        "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.\n\nUse 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** For the issue containing the attachment:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "expandAttachmentForMachines",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the attachment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "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.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AttachmentArchiveImpl"
                },
                "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}"
              }
            }
          },
          "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:\n\n *  the attachment is not found.\n *  attachments are disabled in the Jira settings."
          },
          "409": {
            "description": "Returned if the attachment is an archive, but not a supported archive format."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:attachment:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/auditing/record": {
      "get": {
        "tags": [
          "Audit records"
        ],
        "summary": "Get audit records",
        "description": "Returns a list of audit records. The list can be filtered to include items:\n\n *  where each item in `filter` has at least one match in any of these fields:\n    \n     *  `summary`\n     *  `category`\n     *  `eventSource`\n     *  `objectItem.name` If the object is a user, account ID is available to filter.\n     *  `objectItem.parentName`\n     *  `objectItem.typeName`\n     *  `changedValues.changedFrom`\n     *  `changedValues.changedTo`\n     *  `remoteAddress`\n    \n    For example, if `filter` contains *man ed*, an audit record containing `summary\": \"User added to group\"` and `\"category\": \"group management\"` is returned.\n *  created on or after a date and time.\n *  created or or before a date and time.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAuditRecords",
        "parameters": [
          {
            "name": "offset",
            "in": "query",
            "description": "The number of records to skip before returning the first result.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "limit",
            "in": "query",
            "description": "The maximum number of results to return.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1000
            }
          },
          {
            "name": "filter",
            "in": "query",
            "description": "The strings to match with audit field content, space separated.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "from",
            "in": "query",
            "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.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          },
          {
            "name": "to",
            "in": "query",
            "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.",
            "schema": {
              "type": "string",
              "format": "date-time"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AuditRecords"
                },
                "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\":\"[email protected]\",\"changedTo\":\"[email protected]\"}],\"associatedItems\":[{\"id\":\"jira-software-users\",\"name\":\"jira-software-users\",\"typeName\":\"GROUP\",\"parentId\":\"1\",\"parentName\":\"Jira Internal Directory\"}]}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if:\n\n *  the user does not have the required permissions.\n *  all Jira products are on free plans. Audit logs are available when at least one Jira product is on a paid plan."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:audit-log:jira",
              "read:user:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/avatar/{type}/system": {
      "get": {
        "tags": [
          "Avatars"
        ],
        "summary": "Get system avatars by type",
        "description": "Returns a list of system avatar details by owner type, where the owner types are issue type, project, or user.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAllSystemAvatars",
        "parameters": [
          {
            "name": "type",
            "in": "path",
            "description": "The avatar type.",
            "required": true,
            "schema": {
              "type": "string",
              "example": "project",
              "enum": [
                "issuetype",
                "project",
                "user"
              ]
            },
            "x-showInExample": "true"
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SystemAvatars"
                },
                "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\"}}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "500": {
            "description": "Returned if an error occurs while retrieving the list of avatars."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/comment/list": {
      "post": {
        "tags": [
          "Issue comments"
        ],
        "summary": "Get comments by IDs",
        "description": "Returns a [paginated](#pagination) list of comments specified by a list of comment IDs.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** Comments are returned where the user:\n\n *  has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the comment.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the comment has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "getCommentsByIds",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about comments in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `renderedBody` Returns the comment body rendered in HTML.\n *  `properties` Returns the comment's properties.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The list of comment IDs.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueCommentListRequestBean"
              },
              "example": {
                "ids": [
                  1,
                  2,
                  5,
                  10
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanComment"
                },
                "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\"}}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request contains more than 1000 IDs or is empty."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/comment/{commentId}/properties": {
      "get": {
        "tags": [
          "Issue comment properties"
        ],
        "summary": "Get comment property keys",
        "description": "Returns the keys of all the properties of a comment.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the comment has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "getCommentPropertyKeys",
        "parameters": [
          {
            "name": "commentId",
            "in": "path",
            "description": "The ID of the comment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PropertyKeys"
                },
                "example": "{\"keys\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support\",\"key\":\"issue.support\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/comment/{commentId}/properties/{propertyKey}": {
      "get": {
        "tags": [
          "Issue comment properties"
        ],
        "summary": "Get comment property",
        "description": "Returns the value of a comment property.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the comment has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "getCommentProperty",
        "parameters": [
          {
            "name": "commentId",
            "in": "path",
            "description": "The ID of the comment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityProperty"
                },
                "example": "{\"key\":\"issue.support\",\"value\":{\"system.conversation.id\":\"b1bf38be-5e94-4b40-a3b8-9278735ee1e6\",\"system.support.time\":\"1m\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:comment.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue comment properties"
        ],
        "summary": "Set comment property",
        "description": "Creates or updates the value of a property for a comment. Use this resource to store custom data against a comment.\n\nThe 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.\n\n**[Permissions](#permissions) required:** either of:\n\n *  *Edit All Comments* [project permission](https://confluence.atlassian.com/x/yodKLg) to create or update the value of a property on any comment.\n *  *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.\n\nAlso, 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": [
          {
            "name": "commentId",
            "in": "path",
            "description": "The ID of the comment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property. The maximum length is 255 characters.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the comment property is updated.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "201": {
            "description": "Returned if the comment property is created.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:comment.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue comment properties"
        ],
        "summary": "Delete comment property",
        "description": "Deletes a comment property.\n\n**[Permissions](#permissions) required:** either of:\n\n *  *Edit All Comments* [project permission](https://confluence.atlassian.com/x/yodKLg) to delete a property from any comment.\n *  *Edit Own Comments* [project permission](https://confluence.atlassian.com/x/yodKLg) to delete a property from a comment created by the user.\n\nAlso, 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": [
          {
            "name": "commentId",
            "in": "path",
            "description": "The ID of the comment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:comment.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/component": {
      "post": {
        "tags": [
          "Project components"
        ],
        "summary": "Create component",
        "description": "Creates a component. Use components to provide containers for issues within a project.\n\nThis operation can be accessed anonymously.\n\n**[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": {
              "schema": {
                "$ref": "#/components/schemas/ProjectComponent"
              },
              "example": {
                "isAssigneeTypeValid": false,
                "name": "Component 1",
                "description": "This is a Jira component",
                "project": "HSP",
                "assigneeType": "PROJECT_LEAD",
                "leadAccountId": "5b10a2844c20165700ede21g"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectComponent"
                },
                "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}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the user is not found.\n *  `name` is not provided.\n *  `name` is over 255 characters in length.\n *  `projectId` is not provided.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/component/{id}": {
      "get": {
        "tags": [
          "Project components"
        ],
        "summary": "Get component",
        "description": "Returns a component.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for project containing the component.",
        "operationId": "getComponent",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the component.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectComponent"
                },
                "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}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira",
              "read:project.component:jira",
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Project components"
        ],
        "summary": "Update component",
        "description": "Updates a component. Any fields included in the request are overwritten. If `leadAccountId` is an empty string (\"\") the component lead is removed.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the component.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProjectComponent"
              },
              "example": {
                "isAssigneeTypeValid": false,
                "name": "Component 1",
                "description": "This is a Jira component",
                "assigneeType": "PROJECT_LEAD",
                "leadAccountId": "5b10a2844c20165700ede21g"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectComponent"
                },
                "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}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the user is not found.\n *  `assigneeType` is an invalid value.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      },
      "delete": {
        "tags": [
          "Project components"
        ],
        "summary": "Delete component",
        "description": "Deletes a component.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the component.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "moveIssuesTo",
            "in": "query",
            "description": "The ID of the component to replace the deleted component. If this value is null no replacement is made.",
            "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:\n\n *  the component is not found.\n *  the replacement component is not found.\n *  the user does not have permission to browse the project containing the component."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project.component:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/component/{id}/relatedIssueCounts": {
      "get": {
        "tags": [
          "Project components"
        ],
        "summary": "Get component issues count",
        "description": "Returns the counts of issues assigned to the component.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getComponentRelatedIssues",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the component.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ComponentIssuesCount"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/component/10000\",\"issueCount\":23}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if the component is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": []
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/configuration": {
      "get": {
        "tags": [
          "Jira settings"
        ],
        "summary": "Get global settings",
        "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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getConfiguration",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Configuration"
                },
                "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\"}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:instance-configuration:jira",
              "read:issue.time-tracking:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/configuration/timetracking": {
      "get": {
        "tags": [
          "Time tracking"
        ],
        "summary": "Get selected time tracking provider",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getSelectedTimeTrackingImplementation",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful and time tracking is enabled.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimeTrackingProvider"
                },
                "example": "{\"key\":\"Jira\",\"name\":\"JIRA provided time tracking\",\"url\":\"/example/config/url\"}"
              }
            }
          },
          "204": {
            "description": "Returned if the request is successful but time tracking is disabled.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.time-tracking:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Time tracking"
        ],
        "summary": "Select time tracking provider",
        "description": "Selects a time tracking provider.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "selectTimeTrackingImplementation",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TimeTrackingProvider"
              },
              "example": {
                "key": "Jira"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue.time-tracking:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/configuration/timetracking/list": {
      "get": {
        "tags": [
          "Time tracking"
        ],
        "summary": "Get all time tracking providers",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAvailableTimeTrackingImplementations",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/TimeTrackingProvider"
                  }
                },
                "example": "[{\"key\":\"Jira\",\"name\":\"JIRA provided time tracking\",\"url\":\"/example/config/url\"}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.time-tracking:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/configuration/timetracking/options": {
      "get": {
        "tags": [
          "Time tracking"
        ],
        "summary": "Get time tracking settings",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getSharedTimeTrackingConfiguration",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimeTrackingConfiguration"
                },
                "example": "{\"workingHoursPerDay\":7.6,\"workingDaysPerWeek\":5.5,\"timeFormat\":\"pretty\",\"defaultUnit\":\"hour\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.time-tracking:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Time tracking"
        ],
        "summary": "Set time tracking settings",
        "description": "Sets the time tracking settings.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setSharedTimeTrackingConfiguration",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TimeTrackingConfiguration"
              },
              "example": {
                "defaultUnit": "hour",
                "workingHoursPerDay": 7.6,
                "workingDaysPerWeek": 5.5,
                "timeFormat": "pretty"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TimeTrackingConfiguration"
                },
                "example": "{\"workingHoursPerDay\":7.6,\"workingDaysPerWeek\":5.5,\"timeFormat\":\"pretty\",\"defaultUnit\":\"hour\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue.time-tracking:jira",
              "read:issue.time-tracking:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/customFieldOption/{id}": {
      "get": {
        "tags": [
          "Issue custom field options"
        ],
        "summary": "Get custom field option",
        "description": "Returns a custom field option. For example, an option in a select list.\n\nNote 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** The custom field option is returned as follows:\n\n *  if the user has the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).\n *  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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the custom field option.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldOption"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/customFieldOption/10000\",\"value\":\"To Do\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the custom field option is not found.\n *  the user does not have permission to view the custom field."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:field.option:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/dashboard": {
      "get": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Get all dashboards",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAllDashboards",
        "parameters": [
          {
            "name": "filter",
            "in": "query",
            "description": "The filter applied to the list of dashboards. Valid values are:\n\n *  `favourite` Returns dashboards the user has marked as favorite.\n *  `my` Returns dashboards owned by the user.",
            "schema": {
              "type": "string",
              "enum": [
                "my",
                "favourite"
              ]
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageOfDashboards"
                },
                "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\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Create dashboard",
        "description": "Creates a dashboard.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "createDashboard",
        "parameters": [],
        "requestBody": {
          "description": "Dashboard details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardDetails"
              },
              "example": {
                "editPermissions": [],
                "name": "Auditors dashboard",
                "description": "A dashboard to help auditors identify sample of issues to check.",
                "sharePermissions": [
                  {
                    "type": "global"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Dashboard"
                },
                "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\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/dashboard/gadgets": {
      "get": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Get available gadgets",
        "description": "Gets a list of all available gadgets that can be added to all dashboards.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAllAvailableDashboardGadgets",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AvailableDashboardGadgetsResponse"
                },
                "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\"}]}"
              }
            }
          },
          "400": {
            "description": "400 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:dashboard:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/dashboard/search": {
      "get": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Search for dashboards",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** The following dashboards that match the query parameters are returned:\n\n *  Dashboards owned by the user. Not returned for anonymous users.\n *  Dashboards shared with a group that the user is a member of. Not returned for anonymous users.\n *  Dashboards shared with a private project that the user can browse. Not returned for anonymous users.\n *  Dashboards shared with a public project.\n *  Dashboards shared with the public.",
        "operationId": "getDashboardsPaginated",
        "parameters": [
          {
            "name": "dashboardName",
            "in": "query",
            "description": "String used to perform a case-insensitive partial match with `name`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "User account ID used to return dashboards with the matching `owner.accountId`. This parameter cannot be used with the `owner` parameter.",
            "schema": {
              "maxLength": 128,
              "type": "string"
            }
          },
          {
            "name": "owner",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupname",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupId",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "Project ID used to returns dashboards that are shared with a project that matches `sharePermissions.project.id`.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `description` Sorts by dashboard description. Note that this sort works independently of whether the expand to display the description field is in use.\n *  `favourite_count` Sorts by dashboard popularity.\n *  `id` Sorts by dashboard ID.\n *  `is_favourite` Sorts by whether the dashboard is marked as a favorite.\n *  `name` Sorts by dashboard name.\n *  `owner` Sorts by dashboard owner name.",
            "schema": {
              "type": "string",
              "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"
              ],
              "default": "name"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "The status to filter by. It may be active, archived or deleted.",
            "schema": {
              "type": "string",
              "enum": [
                "active",
                "archived",
                "deleted"
              ],
              "default": "active"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about dashboard in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `description` Returns the description of the dashboard.\n *  `owner` Returns the owner of the dashboard.\n *  `viewUrl` Returns the URL that is used to view the dashboard.\n *  `favourite` Returns `isFavourite`, an indicator of whether the user has set the dashboard as a favorite.\n *  `favouritedCount` Returns `popularity`, a count of how many users have set this dashboard as a favorite.\n *  `sharePermissions` Returns details of the share permissions defined for the dashboard.\n *  `editPermissions` Returns details of the edit permissions defined for the dashboard.\n *  `isWritable` Returns whether the current user has permission to edit the dashboard.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanDashboard"
                },
                "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\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `orderBy` is invalid.\n *  `expand` includes an invalid value.\n *  `accountId` and `owner` are provided.\n *  `groupname` and `groupId` are provided.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "401 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/dashboard/{dashboardId}/gadget": {
      "get": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Get gadgets",
        "description": "Returns a list of dashboard gadgets on a dashboard.\n\nThis operation returns:\n\n *  Gadgets from a list of IDs, when `id` is set.\n *  Gadgets with a module key, when `moduleKey` is set.\n *  Gadgets from a list of URIs, when `uri` is set.\n *  All gadgets, when no other parameters are set.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAllGadgets",
        "parameters": [
          {
            "name": "dashboardId",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "moduleKey",
            "in": "query",
            "description": "The list of gadgets module keys. To include multiple module keys, separate module keys with ampersand: `moduleKey=key:one&moduleKey=key:two`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "uri",
            "in": "query",
            "description": "The list of gadgets URIs. To include multiple URIs, separate URIs with ampersand: `uri=/rest/example/uri/1&uri=/rest/example/uri/2`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "gadgetId",
            "in": "query",
            "description": "The list of gadgets IDs. To include multiple IDs, separate IDs with ampersand: `gadgetId=10000&gadgetId=10001`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardGadgetResponse"
                },
                "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\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "404": {
            "description": "Returned if the dashboard is not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The dashboard you requested either does not exist or you don't have the required permissions to perform this action.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:dashboard:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Add gadget to dashboard",
        "description": "Adds a gadget to a dashboard.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "addGadget",
        "parameters": [
          {
            "name": "dashboardId",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardGadgetSettings"
              },
              "example": {
                "color": "blue",
                "ignoreUriAndModuleKeyValidation": false,
                "position": {
                  "column": 1,
                  "row": 0
                },
                "title": "Issue statistics",
                "moduleKey": "com.atlassian.plugins.atlassian-connect-plugin:com.atlassian.connect.node.sample-addon__sample-dashboard-item"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DashboardGadget"
                },
                "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\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Cannot add another gadget. The maximum number of gadgets the dashboard can hold has been reached.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if the dashboard is not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The dashboard you requested either does not exist or you don't have the required permissions to perform this action.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work",
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work",
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:dashboard:jira",
              "read:dashboard:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/dashboard/{dashboardId}/gadget/{gadgetId}": {
      "put": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Update gadget on dashboard",
        "description": "Changes the title, position, and color of the gadget on a dashboard.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "updateGadget",
        "parameters": [
          {
            "name": "dashboardId",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "gadgetId",
            "in": "path",
            "description": "The ID of the gadget.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardGadgetUpdateRequest"
              },
              "example": {
                "color": "red",
                "position": {
                  "column": 1,
                  "row": 1
                },
                "title": "My new gadget title"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The gadget cannot be placed in the selected row. The selected row does not exist on the dashboard.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "404": {
            "description": "Returned if the gadget or the dashboard is not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The dashboard you requested either does not exist or you don't have the required permissions to perform this action.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:dashboard:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Remove gadget from dashboard",
        "description": "Removes a dashboard gadget from a dashboard.\n\nWhen a gadget is removed from a dashboard, other gadgets in the same column are moved up to fill the emptied position.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "removeGadget",
        "parameters": [
          {
            "name": "dashboardId",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "gadgetId",
            "in": "path",
            "description": "The ID of the gadget.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if the gadget or the dashboard is not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The dashboard gadget was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:dashboard:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/dashboard/{dashboardId}/items/{itemId}/properties": {
      "get": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Get dashboard item property keys",
        "description": "Returns the keys of all properties for a dashboard item.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "dashboardId",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "itemId",
            "in": "path",
            "description": "The ID of the dashboard item.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PropertyKeys"
                },
                "example": "{\"keys\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support\",\"key\":\"issue.support\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/dashboard/{dashboardId}/items/{itemId}/properties/{propertyKey}": {
      "get": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Get dashboard item property",
        "description": "Returns the key and value of a dashboard item property.\n\nA 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).\n\nWhen 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.\n\nThere is no resource to set or get dashboard items.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "dashboardId",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "itemId",
            "in": "path",
            "description": "The ID of the dashboard item.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the dashboard item property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityProperty"
                },
                "example": "{\"key\":\"issue.support\",\"value\":{\"system.conversation.id\":\"b1bf38be-5e94-4b40-a3b8-9278735ee1e6\",\"system.support.time\":\"1m\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:dashboard.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Set dashboard item property",
        "description": "Sets the value of a dashboard item property. Use this resource in apps to store custom data against a dashboard item.\n\nA 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).\n\nWhen 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.\n\nThere is no resource to set or get dashboard items.\n\nThe 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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "dashboardId",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "itemId",
            "in": "path",
            "description": "The ID of the dashboard item.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {},
              "example": {
                "number": 5,
                "string": "string-value"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the dashboard item property is updated.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "201": {
            "description": "Returned if the dashboard item property is created.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  Request is invalid\n *  Or if all of these conditions are met in the request:\n    \n     *  The dashboard item has a spec URI and no complete module key\n     *  The value of propertyKey is equal to \"config\"\n     *  The request body contains a JSON object whose keys and values are not strings.",
            "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\":{}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:dashboard.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Delete dashboard item property",
        "description": "Deletes a dashboard item property.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "dashboardId",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "itemId",
            "in": "path",
            "description": "The ID of the dashboard item.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the dashboard item property.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:dashboard.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/dashboard/{id}": {
      "get": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Get dashboard",
        "description": "Returns a dashboard.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.\n\nHowever, 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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Dashboard"
                },
                "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\"}"
              }
            }
          },
          "400": {
            "description": "400 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "404": {
            "description": "Returned if the dashboard is not found or the dashboard is not owned by or shared with the user."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Update dashboard",
        "description": "Updates a dashboard, replacing all the dashboard details with those provided.\n\n**[Permissions](#permissions) required:** None\n\nThe dashboard to be updated must be owned by the user.",
        "operationId": "updateDashboard",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the dashboard to update.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Replacement dashboard details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardDetails"
              },
              "example": {
                "editPermissions": [],
                "name": "Auditors dashboard",
                "description": "A dashboard to help auditors identify sample of issues to check.",
                "sharePermissions": [
                  {
                    "type": "global"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Dashboard"
                },
                "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\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "404": {
            "description": "Returned if the dashboard is not found or the dashboard is not owned by the user.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Delete dashboard",
        "description": "Deletes a dashboard.\n\n**[Permissions](#permissions) required:** None\n\nThe dashboard to be deleted must be owned by the user.",
        "operationId": "deleteDashboard",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the dashboard.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the dashboard is deleted."
          },
          "400": {
            "description": "400 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:dashboard:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/dashboard/{id}/copy": {
      "post": {
        "tags": [
          "Dashboards"
        ],
        "summary": "Copy dashboard",
        "description": "Copies a dashboard. Any values provided in the `dashboard` parameter replace those in the copied dashboard.\n\n**[Permissions](#permissions) required:** None\n\nThe dashboard to be copied must be owned by or shared with the user.",
        "operationId": "copyDashboard",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Dashboard details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DashboardDetails"
              },
              "example": {
                "editPermissions": [],
                "name": "Auditors dashboard",
                "description": "A dashboard to help auditors identify sample of issues to check.",
                "sharePermissions": [
                  {
                    "type": "global"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Dashboard"
                },
                "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\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "404": {
            "description": "Returned if the dashboard is not found or the dashboard is not owned by or shared with the user.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/events": {
      "get": {
        "tags": [
          "Issues"
        ],
        "summary": "Get events",
        "description": "Returns all issue events.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getEvents",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IssueEvent"
                  }
                },
                "example": "[{\"id\":1,\"name\":\"Issue Created\"},{\"id\":2,\"name\":\"Issue Updated\"}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-event:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/expression/analyse": {
      "post": {
        "tags": [
          "Jira expressions"
        ],
        "summary": "Analyse Jira expression",
        "description": "Analyses and validates Jira expressions.\n\nAs an experimental feature, this operation can also attempt to type-check the expressions.\n\nLearn more about Jira expressions in the [documentation](https://developer.atlassian.com/cloud/jira/platform/jira-expressions/).\n\n**[Permissions](#permissions) required**: None.",
        "operationId": "analyseExpression",
        "parameters": [
          {
            "name": "check",
            "in": "query",
            "description": "The check to perform:\n\n *  `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.\n *  `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.\n *  `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.",
            "schema": {
              "type": "string",
              "enum": [
                "syntax",
                "type",
                "complexity"
              ],
              "default": "syntax"
            }
          }
        ],
        "requestBody": {
          "description": "The Jira expressions to analyse.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/JiraExpressionForAnalysis"
              },
              "example": {
                "contextVariables": {
                  "listOfStrings": "List",
                  "record": "{ a: Number, b: String }",
                  "value": "User"
                },
                "expressions": [
                  "issues.map(issue => issue.properties['property_key'])"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JiraExpressionsAnalysis"
                },
                "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\"}]}"
              }
            }
          },
          "400": {
            "description": "400 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "404 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work",
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work",
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:jira-expressions:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/expression/eval": {
      "post": {
        "tags": [
          "Jira expressions"
        ],
        "summary": "Evaluate Jira expression",
        "description": "Evaluates a Jira expression and returns its value.\n\nThis 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.\n\n#### Context variables ####\n\nThe 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.\n\n *  `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.\n *  `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/)).\n *  `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.\n *  `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.\n *  `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.\n *  `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.\n *  `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.\n *  `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.\n *  `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.\n\nAlso, 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:\n\n *  `user`: A [user](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#user) specified as an Atlassian account ID.\n *  `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.\n *  `json`: A JSON object containing custom content.\n *  `list`: A JSON list of `user`, `issue`, or `json` variable types.\n\nThis operation can be accessed anonymously.\n\n**[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.  \nPermission to access Jira Software is required to access Jira Software context variables (`board` and `sprint`) or fields (for example, `issue.sprint`).",
        "operationId": "evaluateJiraExpression",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The Jira expression and the evaluation context.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/JiraExpressionEvalRequestBean"
              },
              "example": {
                "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}",
                "context": {
                  "issue": {
                    "key": "ACJIRA-1470"
                  },
                  "sprint": 10001,
                  "custom": {
                    "myUser": {
                      "accountId": "100001",
                      "type": "user"
                    },
                    "issuesList": [
                      {
                        "type": "issue",
                        "key": "ACJIRA-1471"
                      },
                      {
                        "id": 100001,
                        "type": "issue"
                      }
                    ],
                    "nullField": {
                      "type": "json"
                    },
                    "config": {
                      "type": "json",
                      "value": {
                        "userId": "10002"
                      }
                    }
                  },
                  "project": {
                    "key": "ACJIRA"
                  },
                  "serviceDesk": 10023,
                  "issues": {
                    "jql": {
                      "maxResults": 100,
                      "query": "project = HSP",
                      "startAt": 0,
                      "validation": "strict"
                    }
                  },
                  "board": 10100,
                  "customerRequest": 1450
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the evaluation results in a value. The result is a JSON primitive value, list, or object.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JiraExpressionResult"
                },
                "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.\"]}}}}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the request is invalid, that is:\n    \n     *  invalid data is provided, such as a request including issue ID and key.\n     *  the expression is invalid and can not be parsed.\n *  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.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "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\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if any object provided in the request context is not found or the user does not have permission to view it.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Issue does not exist or you do not have permission to see it.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work",
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work",
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-expressions:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/field": {
      "get": {
        "tags": [
          "Issue fields"
        ],
        "summary": "Get fields",
        "description": "Returns system and custom issue fields according to the following rules:\n\n *  Fields that cannot be added to the issue navigator are always returned.\n *  Fields that cannot be placed on an issue screen are always returned.\n *  Fields that depend on global Jira settings are only returned if the setting is enabled. That is, timetracking fields, subtasks, votes, and watches.\n *  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.)\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getFields",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/FieldDetails"
                  }
                },
                "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\"}}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:avatar:jira",
              "read:project-category:jira",
              "read:project:jira",
              "read:field-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue fields"
        ],
        "summary": "Create custom field",
        "description": "Creates a custom field.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createCustomField",
        "parameters": [],
        "requestBody": {
          "description": "Definition of the custom field to be created",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomFieldDefinitionJsonBean"
              },
              "example": {
                "searcherKey": "com.atlassian.jira.plugin.system.customfieldtypes:grouppickersearcher",
                "name": "New custom field",
                "description": "Custom field for picking groups",
                "type": "com.atlassian.jira.plugin.system.customfieldtypes:grouppicker"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the custom field is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FieldDetails"
                },
                "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}}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the user does not have permission to create custom fields.\n *  any of the request object properties have invalid or missing values."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field:jira",
              "read:avatar:jira",
              "read:field:jira",
              "read:project-category:jira",
              "read:project:jira",
              "read:field-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/search": {
      "get": {
        "tags": [
          "Issue fields"
        ],
        "summary": "Get fields paginated",
        "description": "Returns a [paginated](#pagination) list of fields for Classic Jira projects. The list can include:\n\n *  all fields\n *  specific fields, by defining `id`\n *  fields that contain a string in the field name or description, by defining `query`\n *  specific fields that contain a string in the field name or description, by defining `id` and `query`\n\nOnly custom fields can be queried, `type` must be set to `custom`.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getFieldsPaginated",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "type",
            "in": "query",
            "description": "The type of fields to search.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "custom",
                  "system"
                ]
              }
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The IDs of the custom fields to return or, where `query` is specified, filter.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "query",
            "in": "query",
            "description": "String used to perform a case-insensitive partial match with field names or descriptions.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `contextsCount` sorts by the number of contexts related to a field\n *  `lastUsed` sorts by the date when the value of the field last changed\n *  `name` sorts by the field name\n *  `screensCount` sorts by the number of screens related to a field",
            "schema": {
              "type": "string",
              "enum": [
                "contextsCount",
                "-contextsCount",
                "+contextsCount",
                "lastUsed",
                "-lastUsed",
                "+lastUsed",
                "name",
                "-name",
                "+name",
                "screensCount",
                "-screensCount",
                "+screensCount",
                "projectsCount",
                "-projectsCount",
                "+projectsCount"
              ]
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `key` returns the key for each field\n *  `lastUsed` returns the date when the value of the field last changed\n *  `screensCount` returns the number of screens related to a field\n *  `contextsCount` returns the number of contexts related to a field\n *  `isLocked` returns information about whether the field is [locked](https://confluence.atlassian.com/x/ZSN7Og)\n *  `searcherKey` returns the searcher key for each custom field",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanField"
                },
                "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.330+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\"}}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only custom fields can be queried.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access fields.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:field-configuration:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/field/search/trashed": {
      "get": {
        "tags": [
          "Issue fields"
        ],
        "summary": "Get fields in trash paginated",
        "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.\n\nOnly custom fields can be queried, `type` must be set to `custom`.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getTrashedFieldsPaginated",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "id",
            "in": "query",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "query",
            "in": "query",
            "description": "String used to perform a case-insensitive partial match with field names or descriptions.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `name` sorts by the field name\n *  `trashDate` sorts by the date the field was moved to the trash\n *  `plannedDeletionDate` sorts by the planned deletion date",
            "schema": {
              "type": "string",
              "enum": [
                "name",
                "-name",
                "+name",
                "trashDate",
                "-trashDate",
                "+trashDate",
                "plannedDeletionDate",
                "-plannedDeletionDate",
                "+plannedDeletionDate"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanField"
                },
                "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.333+0000\",\"trashedBy\":{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"accountId\":\"5b10a2844c20165700ede21g\",\"emailAddress\":\"[email protected]\",\"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.333+0000\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only custom fields can be queried.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access fields.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:field-configuration:jira",
              "read:user:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/field/{fieldId}": {
      "put": {
        "tags": [
          "Issue fields"
        ],
        "summary": "Update custom field",
        "description": "Updates a custom field.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateCustomField",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The custom field update details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateCustomFieldDetails"
              },
              "example": {
                "searcherKey": "com.atlassian.jira.plugin.system.customfieldtypes:cascadingselectsearcher",
                "name": "Managers and employees list",
                "description": "Select the manager and the corresponding employee."
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"searcherKey is invalid for the field type.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can edit custom fields.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context": {
      "get": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Get custom field contexts",
        "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:\n\n *  With no other parameters set, all contexts.\n *  By defining `id` only, all contexts from the list of IDs.\n *  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)\n *  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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getContextsForField",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "isAnyIssueType",
            "in": "query",
            "description": "Whether to return contexts that apply to all issue types.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "isGlobalContext",
            "in": "query",
            "description": "Whether to return contexts that apply to all projects.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "contextId",
            "in": "query",
            "description": "The list of context IDs. To include multiple contexts, separate IDs with ampersand: `contextId=10000&contextId=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanCustomFieldContext"
                },
                "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}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field was not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:custom-field-contextual-configuration:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Create custom field context",
        "description": "Creates a custom field context.\n\nIf `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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createCustomFieldContext",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateCustomFieldContext"
              },
              "example": {
                "issueTypeIds": [
                  "10010"
                ],
                "name": "Bug fields context",
                "description": "A context used to define the custom field options for bugs.",
                "projectIds": []
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the custom field context is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateCustomFieldContext"
                },
                "example": "{\"id\":\"10025\",\"name\":\"Bug fields context\",\"description\":\"A context used to define the custom field options for bugs.\",\"projectIds\":[],\"issueTypeIds\":[\"10010\"]}"
              }
            }
          },
          "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": {
            "description": "Returned if the issue type is a sub-task, but sub-tasks are disabled in Jira settings.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Sub-tasks are disabled in Jira. At least one of the issue types is a sub-task.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "write:field:jira",
              "read:custom-field-contextual-configuration:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/defaultValue": {
      "get": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Get custom field contexts default values",
        "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.  \nThe returned object depends on type of the custom field:\n\n *  `CustomFieldContextDefaultValueDate` (type `datepicker`) for date fields.\n *  `CustomFieldContextDefaultValueDateTime` (type `datetimepicker`) for date-time fields.\n *  `CustomFieldContextDefaultValueSingleOption` (type `option.single`) for single choice select lists and radio buttons.\n *  `CustomFieldContextDefaultValueMultipleOption` (type `option.multiple`) for multiple choice select lists and checkboxes.\n *  `CustomFieldContextDefaultValueCascadingOption` (type `option.cascading`) for cascading select lists.\n *  `CustomFieldContextSingleUserPickerDefaults` (type `single.user.select`) for single users.\n *  `CustomFieldContextDefaultValueMultiUserPicker` (type `multi.user.select`) for user lists.\n *  `CustomFieldContextDefaultValueSingleGroupPicker` (type `grouppicker.single`) for single choice group pickers.\n *  `CustomFieldContextDefaultValueMultipleGroupPicker` (type `grouppicker.multiple`) for multiple choice group pickers.\n *  `CustomFieldContextDefaultValueURL` (type `url`) for URLs.\n *  `CustomFieldContextDefaultValueProject` (type `project`) for project pickers.\n *  `CustomFieldContextDefaultValueFloat` (type `float`) for floats (floating-point numbers).\n *  `CustomFieldContextDefaultValueLabels` (type `labels`) for labels.\n *  `CustomFieldContextDefaultValueTextField` (type `textfield`) for text fields.\n *  `CustomFieldContextDefaultValueTextArea` (type `textarea`) for text area fields.\n *  `CustomFieldContextDefaultValueReadOnly` (type `readonly`) for read only (text) fields.\n *  `CustomFieldContextDefaultValueMultipleVersion` (type `version.multiple`) for single choice version pickers.\n *  `CustomFieldContextDefaultValueSingleVersion` (type `version.single`) for multiple choice version pickers.\n\nForge custom fields [types](https://developer.atlassian.com/platform/forge/manifest-reference/modules/jira-custom-field-type/#data-types) are also supported, returning:\n\n *  `CustomFieldContextDefaultValueForgeStringFieldBean` (type `forge.string`) for Forge string fields.\n *  `CustomFieldContextDefaultValueForgeMultiStringFieldBean` (type `forge.string.list`) for Forge string collection fields.\n *  `CustomFieldContextDefaultValueForgeObjectFieldBean` (type `forge.object`) for Forge object fields.\n *  `CustomFieldContextDefaultValueForgeDateTimeFieldBean` (type `forge.datetime`) for Forge date-time fields.\n *  `CustomFieldContextDefaultValueForgeGroupFieldBean` (type `forge.group`) for Forge group fields.\n *  `CustomFieldContextDefaultValueForgeMultiGroupFieldBean` (type `forge.group.list`) for Forge group collection fields.\n *  `CustomFieldContextDefaultValueForgeNumberFieldBean` (type `forge.number`) for Forge number fields.\n *  `CustomFieldContextDefaultValueForgeUserFieldBean` (type `forge.user`) for Forge user fields.\n *  `CustomFieldContextDefaultValueForgeMultiUserFieldBean` (type `forge.user.list`) for Forge user collection fields.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getDefaultValues",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field, for example `customfield\\_10000`.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "query",
            "description": "The IDs of the contexts.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanCustomFieldContextDefaultValue"
                },
                "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\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field.default-value:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Set custom field contexts default values",
        "description": "Sets default for contexts of a custom field. Default are defined using these objects:\n\n *  `CustomFieldContextDefaultValueDate` (type `datepicker`) for date fields.\n *  `CustomFieldContextDefaultValueDateTime` (type `datetimepicker`) for date-time fields.\n *  `CustomFieldContextDefaultValueSingleOption` (type `option.single`) for single choice select lists and radio buttons.\n *  `CustomFieldContextDefaultValueMultipleOption` (type `option.multiple`) for multiple choice select lists and checkboxes.\n *  `CustomFieldContextDefaultValueCascadingOption` (type `option.cascading`) for cascading select lists.\n *  `CustomFieldContextSingleUserPickerDefaults` (type `single.user.select`) for single users.\n *  `CustomFieldContextDefaultValueMultiUserPicker` (type `multi.user.select`) for user lists.\n *  `CustomFieldContextDefaultValueSingleGroupPicker` (type `grouppicker.single`) for single choice group pickers.\n *  `CustomFieldContextDefaultValueMultipleGroupPicker` (type `grouppicker.multiple`) for multiple choice group pickers.\n *  `CustomFieldContextDefaultValueURL` (type `url`) for URLs.\n *  `CustomFieldContextDefaultValueProject` (type `project`) for project pickers.\n *  `CustomFieldContextDefaultValueFloat` (type `float`) for floats (floating-point numbers).\n *  `CustomFieldContextDefaultValueLabels` (type `labels`) for labels.\n *  `CustomFieldContextDefaultValueTextField` (type `textfield`) for text fields.\n *  `CustomFieldContextDefaultValueTextArea` (type `textarea`) for text area fields.\n *  `CustomFieldContextDefaultValueReadOnly` (type `readonly`) for read only (text) fields.\n *  `CustomFieldContextDefaultValueMultipleVersion` (type `version.multiple`) for single choice version pickers.\n *  `CustomFieldContextDefaultValueSingleVersion` (type `version.single`) for multiple choice version pickers.\n\nForge custom fields [types](https://developer.atlassian.com/platform/forge/manifest-reference/modules/jira-custom-field-type/#data-types) are also supported, returning:\n\n *  `CustomFieldContextDefaultValueForgeStringFieldBean` (type `forge.string`) for Forge string fields.\n *  `CustomFieldContextDefaultValueForgeMultiStringFieldBean` (type `forge.string.list`) for Forge string collection fields.\n *  `CustomFieldContextDefaultValueForgeObjectFieldBean` (type `forge.object`) for Forge object fields.\n *  `CustomFieldContextDefaultValueForgeDateTimeFieldBean` (type `forge.datetime`) for Forge date-time fields.\n *  `CustomFieldContextDefaultValueForgeGroupFieldBean` (type `forge.group`) for Forge group fields.\n *  `CustomFieldContextDefaultValueForgeMultiGroupFieldBean` (type `forge.group.list`) for Forge group collection fields.\n *  `CustomFieldContextDefaultValueForgeNumberFieldBean` (type `forge.number`) for Forge number fields.\n *  `CustomFieldContextDefaultValueForgeUserFieldBean` (type `forge.user`) for Forge user fields.\n *  `CustomFieldContextDefaultValueForgeMultiUserFieldBean` (type `forge.user.list`) for Forge user collection fields.\n\nOnly one type of default object can be included in a request. To remove a default for a context, set the default parameter to `null`.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setDefaultValues",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomFieldContextDefaultValueUpdate"
              },
              "example": {
                "defaultValues": [
                  {
                    "contextId": "10100",
                    "optionId": "10001",
                    "type": "option.single"
                  },
                  {
                    "contextId": "10101",
                    "optionId": "10003",
                    "type": "option.single"
                  },
                  {
                    "contextId": "10103",
                    "optionId": "10005",
                    "type": "option.single"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if operation is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"All default values in the request must have the same type.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field, a context, an option, or a cascading option is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The context was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field.default-value:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/issuetypemapping": {
      "get": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Get issue types for custom field context",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getIssueTypeMappingsForContexts",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "query",
            "description": "The ID of the context. To include multiple contexts, provide an ampersand-separated list. For example, `contextId=10001&contextId=10002`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if operation is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueTypeToContextMapping"
                },
                "example": "{\"maxResults\":100,\"startAt\":0,\"total\":3,\"isLast\":true,\"values\":[{\"contextId\":\"10001\",\"issueTypeId\":\"10010\"},{\"contextId\":\"10001\",\"issueTypeId\":\"10011\"},{\"contextId\":\"10002\",\"isAnyIssueType\":true}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/field/{fieldId}/context/mapping": {
      "post": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Get custom field contexts for projects and issue types",
        "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.\n\nIf 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`.\n\nDuplicate project and issue type mappings cannot be provided in the request.\n\nThe order of the returned values is the same as provided in the request.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getCustomFieldContextsForProjectsAndIssueTypes",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "requestBody": {
          "description": "The list of project and issue type mappings.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProjectIssueTypeMappings"
              },
              "example": {
                "mappings": [
                  {
                    "issueTypeId": "10000",
                    "projectId": "10000"
                  },
                  {
                    "issueTypeId": "10001",
                    "projectId": "10000"
                  },
                  {
                    "issueTypeId": "10002",
                    "projectId": "10001"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanContextForProjectAndIssueType"
                },
                "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\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Duplicate project and issue type mappings cannot be provided.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field, project, or issue type is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"These projects were not found: 10005.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/projectmapping": {
      "get": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Get project mappings for custom field context",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getProjectContextMapping",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field, for example `customfield\\_10000`.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "query",
            "description": "The list of context IDs. To include multiple context, separate IDs with ampersand: `contextId=10000&contextId=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanCustomFieldContextProjectMapping"
                },
                "example": "{\"maxResults\":100,\"startAt\":0,\"total\":2,\"isLast\":true,\"values\":[{\"contextId\":\"10025\",\"projectId\":\"10001\"},{\"contextId\":\"10026\",\"isGlobalContext\":true}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/field/{fieldId}/context/{contextId}": {
      "put": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Update custom field context",
        "description": "Updates a [ custom field context](https://confluence.atlassian.com/adminjiracloud/what-are-custom-field-contexts-991923859.html).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateCustomFieldContext",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CustomFieldContextUpdateDetails"
              },
              "example": {
                "name": "Bug fields context",
                "description": "A context used to define the custom field options for bugs."
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the context is updated.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The contextId has to be provided.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field or the context is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The context was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Delete custom field context",
        "description": "Deletes a [ custom field context](https://confluence.atlassian.com/adminjiracloud/what-are-custom-field-contexts-991923859.html).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteCustomFieldContext",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the context is deleted.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The contextId has to be provided.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field or the context is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The context was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/{contextId}/issuetype": {
      "put": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Add issue types to context",
        "description": "Adds issue types to a custom field context, appending the issue types to the issue types list.\n\nA 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.\n\nIf any of the issue types exists in the custom field context, the operation fails and no issue types are added.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "addIssueTypesToContext",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeIds"
              },
              "example": {
                "issueTypeIds": [
                  "10001",
                  "10005",
                  "10006"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if operation is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"These issue types are already associated with the context: 10001.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field, context, or one or more issue types are not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The context was not found.\"],\"errors\":{}}"
              }
            }
          },
          "409": {
            "description": "Returned if the issue type is a sub-task, but sub-tasks are disabled in Jira settings.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Sub-tasks are disabled in Jira. At least one of the issue types is a sub-task.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/{contextId}/issuetype/remove": {
      "post": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Remove issue types from context",
        "description": "Removes issue types from a custom field context.\n\nA custom field context without any issue types applies to all issue types.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "removeIssueTypesFromContext",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeIds"
              },
              "example": {
                "issueTypeIds": [
                  "10001",
                  "10005",
                  "10006"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if operation is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"These issue types are not associated with the context: 10002.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field, context, or one or more issue types are not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The context was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/{contextId}/option": {
      "get": {
        "tags": [
          "Issue custom field options"
        ],
        "summary": "Get custom field options (context)",
        "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.\n\nThis 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.**\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getOptionsForContext",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "optionId",
            "in": "query",
            "description": "The ID of the option.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "onlyOptions",
            "in": "query",
            "description": "Whether only options are returned.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanCustomFieldContextOption"
                },
                "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\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field doesn't support options.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can manage custom field options.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field is not found or the context doesn't match the custom field.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field.option:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue custom field options"
        ],
        "summary": "Update custom field options (context)",
        "description": "Updates the options of a custom field.\n\nIf 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.\n\nNote 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateCustomFieldOption",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkCustomFieldOptionUpdateRequest"
              },
              "example": {
                "options": [
                  {
                    "disabled": false,
                    "id": "10001",
                    "value": "Scranton"
                  },
                  {
                    "disabled": true,
                    "id": "10002",
                    "value": "Manhattan"
                  },
                  {
                    "disabled": false,
                    "id": "10003",
                    "value": "The Electric City"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldUpdatedContextOptionsList"
                },
                "example": "{\"options\":[{\"id\":\"10001\",\"value\":\"Scranton\",\"disabled\":false},{\"id\":\"10002\",\"value\":\"Manhattan\",\"disabled\":true},{\"id\":\"10003\",\"value\":\"The Electric City\",\"disabled\":false}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field doesn't support options.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can manage custom field options.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the field, context, or one or more options is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field.option:jira",
              "write:field.option:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Issue custom field options"
        ],
        "summary": "Create custom field options (context)",
        "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.\n\nThe maximum number of options that can be created per request is 1000 and each field can have a maximum of 10000 options.\n\nThis 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.**\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createCustomFieldOption",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkCustomFieldOptionCreateRequest"
              },
              "example": {
                "options": [
                  {
                    "disabled": false,
                    "value": "Scranton"
                  },
                  {
                    "optionId": "10000",
                    "disabled": true,
                    "value": "Manhattan"
                  },
                  {
                    "disabled": false,
                    "value": "The Electric City"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CustomFieldCreatedContextOptionsList"
                },
                "example": "{\"options\":[{\"id\":\"10001\",\"value\":\"Scranton\",\"disabled\":false},{\"id\":\"10002\",\"value\":\"Manhattan\",\"optionId\":\"10000\",\"disabled\":true},{\"id\":\"10003\",\"value\":\"The Electric City\",\"disabled\":false}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field doesn't support options.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can manage custom field options.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field is not found or the context doesn't match the custom field.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field.option:jira",
              "write:field.option:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/{contextId}/option/move": {
      "put": {
        "tags": [
          "Issue custom field options"
        ],
        "summary": "Reorder custom field options (context)",
        "description": "Changes the order of custom field options or cascading options in a context.\n\nThis 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.**\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "reorderCustomFieldOptions",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OrderOfCustomFieldOptions"
              },
              "example": {
                "position": "First",
                "customFieldOptionIds": [
                  "10001",
                  "10002"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if options are reordered.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"'after' and 'position' were provided. Only 'after' or 'position' can be specified.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can manage custom field options.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the field, the context, or one or more of the options is not found..",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field.option:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/{contextId}/option/{optionId}": {
      "delete": {
        "tags": [
          "Issue custom field options"
        ],
        "summary": "Delete custom field options (context)",
        "description": "Deletes a custom field option.\n\nOptions with cascading options cannot be deleted without deleting the cascading options first.\n\nThis 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.**\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteCustomFieldOption",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context from which an option should be deleted.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "optionId",
            "in": "path",
            "description": "The ID of the option to delete.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the option is deleted."
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field doesn't support options.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can manage custom field options.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the field, the context, or the option is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The custom field was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:field.option:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/{contextId}/project": {
      "put": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Assign custom field context to projects",
        "description": "Assigns a custom field context to projects.\n\nIf any project in the request is assigned to any context of the custom field, the operation fails.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "assignProjectsToCustomFieldContext",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProjectIds"
              },
              "example": {
                "projectIds": [
                  "10001",
                  "10005",
                  "10006"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if operation is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The projectIds must not contain duplicates.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field, context, or project is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The context was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/context/{contextId}/project/remove": {
      "post": {
        "tags": [
          "Issue custom field contexts"
        ],
        "summary": "Remove custom field context from projects",
        "description": "Removes a custom field context from projects.\n\nA 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.\n\nIf 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "removeCustomFieldContextFromProjects",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "contextId",
            "in": "path",
            "description": "The ID of the context.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProjectIds"
              },
              "example": {
                "projectIds": [
                  "10001",
                  "10005",
                  "10006"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the custom field context is removed from the projects.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The projectIds must not contain duplicates.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access custom field contexts.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the custom field, context, or one or more projects are not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The context was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{fieldId}/contexts": {
      "get": {
        "tags": [
          "Issue fields"
        ],
        "summary": "Get contexts for a field",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getContextsForFieldDeprecated",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the field to return contexts for.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 20
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanContext"
                },
                "example": "{\"maxResults\":1,\"startAt\":0,\"total\":5,\"isLast\":false,\"values\":[{\"id\":10001,\"name\":\"Default Context\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:avatar:jira",
              "read:project-category:jira",
              "read:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/field/{fieldId}/screens": {
      "get": {
        "tags": [
          "Screens"
        ],
        "summary": "Get screens for a field",
        "description": "Returns a [paginated](#pagination) list of the screens a field is used in.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getScreensForField",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the field to return screens for.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanScreenWithTab"
                },
                "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\"}}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:screen:jira",
              "read:avatar:jira",
              "read:project-category:jira",
              "read:project:jira",
              "read:screen-tab:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/field/{fieldKey}/option": {
      "get": {
        "tags": [
          "Issue custom field options (apps)"
        ],
        "summary": "Get all issue field options",
        "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.\n\nNote 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.\n\n**[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": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "fieldKey",
            "in": "path",
            "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:\n\n *  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.\n *  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\"`",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueFieldOption"
                },
                "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\":\"[email protected]\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"},\"config\":{\"scope\":{\"projects\":[],\"projects2\":[{\"id\":1001,\"attributes\":[\"notSelectable\"]},{\"id\":1002,\"attributes\":[\"notSelectable\"]}],\"global\":{}},\"attributes\":[]}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field.option:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      },
      "post": {
        "tags": [
          "Issue custom field options (apps)"
        ],
        "summary": "Create issue field option",
        "description": "Creates an option for a select list issue field.\n\nNote 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.\n\n**[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": [
          {
            "name": "fieldKey",
            "in": "path",
            "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:\n\n *  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.\n *  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\"`",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueFieldOptionCreateBean"
              },
              "example": {
                "value": "Team 1",
                "config": {
                  "scope": {
                    "projects2": [
                      {
                        "attributes": [
                          "notSelectable"
                        ],
                        "id": 1001
                      },
                      {
                        "attributes": [
                          "notSelectable"
                        ],
                        "id": 1002
                      }
                    ],
                    "projects": [],
                    "global": {}
                  },
                  "attributes": []
                },
                "properties": {
                  "leader": {
                    "name": "Leader Name",
                    "email": "[email protected]"
                  },
                  "members": 42,
                  "founded": "2016-06-06",
                  "description": "The team's description"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueFieldOption"
                },
                "example": "{\"id\":1,\"value\":\"Team 1\",\"properties\":{\"leader\":{\"name\":\"Leader Name\",\"email\":\"[email protected]\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"},\"config\":{\"scope\":{\"projects\":[],\"projects2\":[{\"id\":1001,\"attributes\":[\"notSelectable\"]},{\"id\":1002,\"attributes\":[\"notSelectable\"]}],\"global\":{}},\"attributes\":[]}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field.option:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/field/{fieldKey}/option/suggestions/edit": {
      "get": {
        "tags": [
          "Issue custom field options (apps)"
        ],
        "summary": "Get selectable issue field options",
        "description": "Returns a [paginated](#pagination) list of options for a select list issue field that can be viewed and selected by the user.\n\nNote 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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getSelectableIssueFieldOptions",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "Filters the results to options that are only available in the specified project.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "fieldKey",
            "in": "path",
            "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:\n\n *  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.\n *  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\"`",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueFieldOption"
                },
                "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\":\"[email protected]\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field.option:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/field/{fieldKey}/option/suggestions/search": {
      "get": {
        "tags": [
          "Issue custom field options (apps)"
        ],
        "summary": "Get visible issue field options",
        "description": "Returns a [paginated](#pagination) list of options for a select list issue field that can be viewed by the user.\n\nNote 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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getVisibleIssueFieldOptions",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "Filters the results to options that are only available in the specified project.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "fieldKey",
            "in": "path",
            "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:\n\n *  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.\n *  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\"`",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueFieldOption"
                },
                "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\":\"[email protected]\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field.option:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/field/{fieldKey}/option/{optionId}": {
      "get": {
        "tags": [
          "Issue custom field options (apps)"
        ],
        "summary": "Get issue field option",
        "description": "Returns an option from a select list issue field.\n\nNote 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.\n\n**[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": [
          {
            "name": "fieldKey",
            "in": "path",
            "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:\n\n *  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.\n *  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\"`",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "optionId",
            "in": "path",
            "description": "The ID of the option to be returned.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the requested option is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueFieldOption"
                },
                "example": "{\"id\":1,\"value\":\"Team 1\",\"properties\":{\"leader\":{\"name\":\"Leader Name\",\"email\":\"[email protected]\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"},\"config\":{\"scope\":{\"projects\":[],\"projects2\":[{\"id\":1001,\"attributes\":[\"notSelectable\"]},{\"id\":1002,\"attributes\":[\"notSelectable\"]}],\"global\":{}},\"attributes\":[]}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field.option:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      },
      "put": {
        "tags": [
          "Issue custom field options (apps)"
        ],
        "summary": "Update issue field option",
        "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.\n\nNote 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.\n\n**[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": [
          {
            "name": "fieldKey",
            "in": "path",
            "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:\n\n *  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.\n *  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\"`",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "optionId",
            "in": "path",
            "description": "The ID of the option to be updated.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueFieldOption"
              },
              "example": {
                "id": 1,
                "value": "Team 1",
                "config": {
                  "scope": {
                    "projects2": [
                      {
                        "attributes": [
                          "notSelectable"
                        ],
                        "id": 1001
                      },
                      {
                        "attributes": [
                          "notSelectable"
                        ],
                        "id": 1002
                      }
                    ],
                    "projects": [],
                    "global": {}
                  },
                  "attributes": []
                },
                "properties": {
                  "leader": {
                    "name": "Leader Name",
                    "email": "[email protected]"
                  },
                  "members": 42,
                  "founded": "2016-06-06",
                  "description": "The team's description"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the option is updated or created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueFieldOption"
                },
                "example": "{\"id\":1,\"value\":\"Team 1\",\"properties\":{\"leader\":{\"name\":\"Leader Name\",\"email\":\"[email protected]\"},\"members\":42,\"description\":\"The team's description\",\"founded\":\"2016-06-06\"},\"config\":{\"scope\":{\"projects\":[],\"projects2\":[{\"id\":1001,\"attributes\":[\"notSelectable\"]},{\"id\":1002,\"attributes\":[\"notSelectable\"]}],\"global\":{}},\"attributes\":[]}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field.option:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      },
      "delete": {
        "tags": [
          "Issue custom field options (apps)"
        ],
        "summary": "Delete issue field option",
        "description": "Deletes an option from a select list issue field.\n\nNote 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.\n\n**[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": [
          {
            "name": "fieldKey",
            "in": "path",
            "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:\n\n *  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.\n *  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\"`",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "optionId",
            "in": "path",
            "description": "The ID of the option to be deleted.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the field option is deleted.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:field.option:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/field/{fieldKey}/option/{optionId}/issue": {
      "delete": {
        "tags": [
          "Issue custom field options (apps)"
        ],
        "summary": "Replace issue field option",
        "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.\n\nConnect 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`.\n\nThis is an [asynchronous operation](#async). The response object contains a link to the long-running task.\n\nNote 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.\n\n**[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": [
          {
            "name": "replaceWith",
            "in": "query",
            "description": "The ID of the option that will replace the currently selected option.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "jql",
            "in": "query",
            "description": "A JQL query that specifies the issues to be updated. For example, *project=10000*.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "overrideScreenSecurity",
            "in": "query",
            "description": "Whether screen security is overridden to enable hidden fields to be edited. Available to Connect and Forge app users with admin permission.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "overrideEditableFlag",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "fieldKey",
            "in": "path",
            "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:\n\n *  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.\n *  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\"`",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "optionId",
            "in": "path",
            "description": "The ID of the option to be deselected.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "303": {
            "description": "Returned if the long-running task to deselect the option is started.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskProgressBeanRemoveOptionFromIssuesResult"
                },
                "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\":{\"present\":true}}},\"elapsedRuntime\":42}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Connect and Forge app users with Administer Jira global permission can override screen security.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the field is not found or does not support options, or the options to be replaced are not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field.option:jira",
              "delete:field.option:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/field/{id}": {
      "delete": {
        "tags": [
          "Issue fields"
        ],
        "summary": "Delete custom field",
        "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.\n\nThis 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteCustomField",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of a custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "303": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskProgressBeanObject"
                }
              }
            }
          },
          "400": {
            "description": "Returned if any of these are true:\n\n *  The custom field is locked.\n *  The custom field is used in a issue security scheme or a permission scheme.\n *  The custom field ID format is incorrect.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "404": {
            "description": "Returned if the custom field is not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "409": {
            "description": "Returned if a task to delete the custom field is running.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{id}/restore": {
      "post": {
        "tags": [
          "Issue fields"
        ],
        "summary": "Restore custom field from trash",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "restoreCustomField",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of a custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "404": {
            "description": "Returned if the custom field is not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/field/{id}/trash": {
      "post": {
        "tags": [
          "Issue fields"
        ],
        "summary": "Move custom field to trash",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "trashCustomField",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of a custom field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "404": {
            "description": "Returned if the custom field is not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:field:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/fieldconfiguration": {
      "get": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Get all field configurations",
        "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:\n\n *  a list of field configuration item IDs.\n *  whether the field configuration is a default.\n *  whether the field configuration name or description contains a query string.\n\nOnly field configurations used in company-managed (classic) projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllFieldConfigurations",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of field configuration IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "isDefault",
            "in": "query",
            "description": "If *true* returns default field configurations only.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "query",
            "in": "query",
            "description": "The query string used to match against field configuration names and descriptions.",
            "schema": {
              "type": "string",
              "default": ""
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanFieldConfigurationDetails"
                },
                "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\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Create field configuration",
        "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.\n\nThis operation can only create configurations for use in company-managed (classic) projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createFieldConfiguration",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FieldConfigurationDetails"
              },
              "example": {
                "name": "My Field Configuration",
                "description": "My field configuration description"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FieldConfiguration"
                },
                "example": "{\"id\":10001,\"name\":\"My Field Configuration\",\"description\":\"My field configuration description\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field-configuration:jira",
              "write:field-configuration:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/fieldconfiguration/{id}": {
      "put": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Update field configuration",
        "description": "Updates a field configuration. The name and the description provided in the request override the existing values.\n\nThis operation can only update configurations used in company-managed (classic) projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateFieldConfiguration",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field configuration.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FieldConfigurationDetails"
              },
              "example": {
                "name": "My Modified Field Configuration",
                "description": "A brand new description"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field-configuration:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Delete field configuration",
        "description": "Deletes a field configuration.\n\nThis operation can only delete configurations used in company-managed (classic) projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteFieldConfiguration",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field configuration.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:field-configuration:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/fieldconfiguration/{id}/fields": {
      "get": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Get field configuration items",
        "description": "Returns a [paginated](#pagination) list of all fields for a configuration.\n\nOnly the fields from configurations used in company-managed (classic) projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getFieldConfigurationItems",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field configuration.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanFieldConfigurationItem"
                },
                "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}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Update field configuration items",
        "description": "Updates fields in a field configuration. The properties of the field configuration fields provided override the existing values.\n\nThis operation can only update field configurations used in company-managed (classic) projects.\n\nThe 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`).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateFieldConfigurationItems",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field configuration.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FieldConfigurationItemsDetails"
              },
              "example": {
                "fieldConfigurationItems": [
                  {
                    "description": "The new description of this item.",
                    "id": "customfield_10012",
                    "isHidden": false
                  },
                  {
                    "isRequired": true,
                    "id": "customfield_10011"
                  },
                  {
                    "isRequired": false,
                    "renderer": "wiki-renderer",
                    "description": "Another new description.",
                    "id": "customfield_10010",
                    "isHidden": false
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field-configuration:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/fieldconfigurationscheme": {
      "get": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Get all field configuration schemes",
        "description": "Returns a [paginated](#pagination) list of field configuration schemes.\n\nOnly field configuration schemes used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllFieldConfigurationSchemes",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of field configuration scheme IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanFieldConfigurationScheme"
                },
                "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.\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field-configuration-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Create field configuration scheme",
        "description": "Creates a field configuration scheme.\n\nThis operation can only create field configuration schemes used in company-managed (classic) projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createFieldConfigurationScheme",
        "parameters": [],
        "requestBody": {
          "description": "The details of the field configuration scheme.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateFieldConfigurationSchemeDetails"
              },
              "example": {
                "name": "Field Configuration Scheme for software related projects",
                "description": "We can use this one for software projects."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FieldConfigurationScheme"
                },
                "example": "{\"id\":\"10002\",\"name\":\"Field Configuration Scheme for software related projects\",\"description\":\"We can use this one for software projects.\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"A field configuration scheme is using this name.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access field configurations.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field-configuration-scheme:jira",
              "read:field-configuration-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/fieldconfigurationscheme/mapping": {
      "get": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Get field configuration issue type items",
        "description": "Returns a [paginated](#pagination) list of field configuration issue type items.\n\nOnly items used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getFieldConfigurationSchemeMappings",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "fieldConfigurationSchemeId",
            "in": "query",
            "description": "The list of field configuration scheme IDs. To include multiple field configuration schemes separate IDs with ampersand: `fieldConfigurationSchemeId=10000&fieldConfigurationSchemeId=10001`.",
            "schema": {
              "maxItems": 50,
              "minItems": 1,
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64",
                "example": 10020
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanFieldConfigurationIssueTypeItem"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field-configuration-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/fieldconfigurationscheme/project": {
      "get": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Get field configuration schemes for projects",
        "description": "Returns a [paginated](#pagination) list of field configuration schemes and, for each scheme, a list of the projects that use it.\n\nThe list is sorted by field configuration scheme ID. The first item contains the list of project IDs assigned to the default field configuration scheme.\n\nOnly field configuration schemes used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getFieldConfigurationSchemeProjectMapping",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "The list of project IDs. To include multiple projects, separate IDs with ampersand: `projectId=10000&projectId=10001`.",
            "required": true,
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanFieldConfigurationSchemeProjects"
                },
                "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\"]}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field-configuration-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Assign field configuration scheme to project",
        "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.\n\nField configuration schemes can only be assigned to classic projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "assignFieldConfigurationSchemeToProject",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/FieldConfigurationSchemeProjectAssociation"
              },
              "example": {
                "fieldConfigurationSchemeId": "10000",
                "projectId": "10000"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the project is not a classic project.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only classic projects can have field configuration schemes assigned.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access field configurations.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the project is missing.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The project was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field-configuration-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/fieldconfigurationscheme/{id}": {
      "put": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Update field configuration scheme",
        "description": "Updates a field configuration scheme.\n\nThis operation can only update field configuration schemes used in company-managed (classic) projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateFieldConfigurationScheme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field configuration scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "The details of the field configuration scheme.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateFieldConfigurationSchemeDetails"
              },
              "example": {
                "name": "Field Configuration Scheme for software related projects",
                "description": "We can use this one for software projects."
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"A field configuration scheme is using this name.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access field configurations.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the field configuration scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The field configuration scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field-configuration-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Delete field configuration scheme",
        "description": "Deletes a field configuration scheme.\n\nThis operation can only delete field configuration schemes used in company-managed (classic) projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteFieldConfigurationScheme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field configuration scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:field-configuration-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/fieldconfigurationscheme/{id}/mapping": {
      "put": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Assign issue types to field configurations",
        "description": "Assigns issue types to field configurations on field configuration scheme.\n\nThis operation can only modify field configuration schemes used in company-managed (classic) projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setFieldConfigurationSchemeMapping",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field configuration scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AssociateFieldConfigurationsWithIssueTypesRequest"
              },
              "example": {
                "mappings": [
                  {
                    "issueTypeId": "default",
                    "fieldConfigurationId": "10000"
                  },
                  {
                    "issueTypeId": "10001",
                    "fieldConfigurationId": "10002"
                  },
                  {
                    "issueTypeId": "10002",
                    "fieldConfigurationId": "10001"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field-configuration-scheme:jira",
              "read:field-configuration-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/fieldconfigurationscheme/{id}/mapping/delete": {
      "post": {
        "tags": [
          "Issue field configurations"
        ],
        "summary": "Remove issue types from field configuration scheme",
        "description": "Removes issue types from the field configuration scheme.\n\nThis operation can only modify field configuration schemes used in company-managed (classic) projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "removeIssueTypesFromGlobalFieldConfigurationScheme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field configuration scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "The issue type IDs to remove.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeIdsToRemove"
              },
              "example": {
                "issueTypeIds": [
                  "10000",
                  "10001",
                  "10002"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The issueTypeIds must not contain duplicates.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access field configurations.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the field configuration scheme or the issue types are not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The field configuration scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:field-configuration-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/filter": {
      "get": {
        "tags": [
          "Filters"
        ],
        "summary": "Get filters",
        "description": "Returns all filters. Deprecated, use [ Search for filters](#api-rest-api-3-filter-search-get) that supports search and pagination.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None, however, only the following filters are returned:\n\n *  filters owned by the user.\n *  filters shared with a group that the user is a member of.\n *  filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  filters shared with a public project.\n *  filters shared with the public.",
        "operationId": "getFilters",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `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]`.\n *  `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]`.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "200 response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Filter"
                  }
                }
              }
            }
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-changes": [
          {
            "type": "removed",
            "announced": "2018-10-19",
            "effective": "2019-04-19",
            "details": "https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-removal-of-get-filters-and-get-all-projects/"
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Filters"
        ],
        "summary": "Create filter",
        "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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "createFilter",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `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]`.\n *  `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]`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "overrideSharePermissions",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "description": "The filter to create.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Filter"
              },
              "example": {
                "jql": "type = Bug and resolution is empty",
                "name": "All Open Bugs",
                "description": "Lists all open bugs"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Filter"
                },
                "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}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/filter/defaultShareScope": {
      "get": {
        "tags": [
          "Filter sharing"
        ],
        "summary": "Get default share scope",
        "description": "Returns the default sharing settings for new filters and dashboards for a user.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getDefaultShareScope",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultShareScope"
                },
                "example": "{\"scope\":\"GLOBAL\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:filter.default-share-scope:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Filter sharing"
        ],
        "summary": "Set default share scope",
        "description": "Sets the default sharing for new filters and dashboards for a user.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "setDefaultShareScope",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DefaultShareScope"
              },
              "example": {
                "scope": "GLOBAL"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultShareScope"
                },
                "example": "{\"scope\":\"GLOBAL\"}"
              }
            }
          },
          "400": {
            "description": "Returned if an invalid scope is set."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:filter.default-share-scope:jira",
              "read:filter.default-share-scope:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/filter/favourite": {
      "get": {
        "tags": [
          "Filters"
        ],
        "summary": "Get favorite filters",
        "description": "Returns the visible favorite filters of the user.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** A favorite filter is only visible to the user where the filter is:\n\n *  owned by the user.\n *  shared with a group that the user is a member of.\n *  shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  shared with a public project.\n *  shared with the public.\n\nFor example, if the user favorites a public filter that is subsequently made private that filter is not returned by this operation.",
        "operationId": "getFavouriteFilters",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `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]`.\n *  `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]`.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Filter"
                  }
                },
                "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\":\"2022-12-08T07:09:19.702+0000\"}}}],\"editPermissions\":[],\"subscriptions\":{\"size\":0,\"items\":[],\"max-results\":0,\"start-index\":0,\"end-index\":0}}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/filter/my": {
      "get": {
        "tags": [
          "Filters"
        ],
        "summary": "Get my filters",
        "description": "Returns the filters owned by the user. If `includeFavourites` is `true`, the user's visible favorite filters are also returned.\n\n**[Permissions](#permissions) required:** Permission to access Jira, however, a favorite filters is only visible to the user where the filter is:\n\n *  owned by the user.\n *  shared with a group that the user is a member of.\n *  shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  shared with a public project.\n *  shared with the public.\n\nFor example, if the user favorites a public filter that is subsequently made private that filter is not returned by this operation.",
        "operationId": "getMyFilters",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `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]`.\n *  `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]`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "includeFavourites",
            "in": "query",
            "description": "Include the user's favorite filters in the response.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Filter"
                  }
                },
                "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\":\"2022-12-08T07:09:19.702+0000\"}}}],\"editPermissions\":[],\"subscriptions\":{\"size\":0,\"items\":[],\"max-results\":0,\"start-index\":0,\"end-index\":0}}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/filter/search": {
      "get": {
        "tags": [
          "Filters"
        ],
        "summary": "Search for filters",
        "description": "Returns a [paginated](#pagination) list of filters. Use this operation to get:\n\n *  specific filters, by defining `id` only.\n *  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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None, however, only the following filters that match the query parameters are returned:\n\n *  filters owned by the user.\n *  filters shared with a group that the user is a member of.\n *  filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  filters shared with a public project.\n *  filters shared with the public.",
        "operationId": "getFiltersPaginated",
        "parameters": [
          {
            "name": "filterName",
            "in": "query",
            "description": "String used to perform a case-insensitive partial match with `name`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "User account ID used to return filters with the matching `owner.accountId`. This parameter cannot be used with `owner`.",
            "schema": {
              "maxLength": 128,
              "type": "string"
            }
          },
          {
            "name": "owner",
            "in": "query",
            "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`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupname",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupId",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "Project ID used to returns filters that are shared with a project that matches `sharePermissions.project.id`.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "id",
            "in": "query",
            "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.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `description` Sorts by filter description. Note that this sorting works independently of whether the expand to display the description field is in use.\n *  `favourite_count` Sorts by the count of how many users have this filter as a favorite.\n *  `is_favourite` Sorts by whether the filter is marked as a favorite.\n *  `id` Sorts by filter ID.\n *  `name` Sorts by filter name.\n *  `owner` Sorts by the ID of the filter owner.\n *  `is_shared` Sorts by whether the filter is shared.",
            "schema": {
              "type": "string",
              "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"
              ],
              "default": "name"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `description` Returns the description of the filter.\n *  `favourite` Returns an indicator of whether the user has set the filter as a favorite.\n *  `favouritedCount` Returns a count of how many users have set this filter as a favorite.\n *  `jql` Returns the JQL query that the filter uses.\n *  `owner` Returns the owner of the filter.\n *  `searchUrl` Returns a URL to perform the filter's JQL query.\n *  `sharePermissions` Returns the share permissions defined for the filter.\n *  `editPermissions` Returns the edit permissions defined for the filter.\n *  `isWritable` Returns whether the current user has permission to edit the filter.\n *  `subscriptions` Returns the users that are subscribed to the filter.\n *  `viewUrl` Returns a URL to view the filter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "overrideSharePermissions",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanFilterDetails"
                },
                "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\":\"2022-12-08T07:09:19.702+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\":\"2022-12-08T07:09:19.702+0000\"},\"deleted\":true,\"retentionTillDate\":\"2023-02-06T07:09:19.702+0000\",\"deletedDate\":\"2022-12-08T07:09:19.702+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\":\"[email protected]\",\"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\":[]}}}]}]}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `owner` and `accountId` are provided.\n *  `expand` includes an invalid value.\n *  `orderBy` is invalid.\n *  `id` identifies more than 200 filter IDs.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/filter/{id}": {
      "get": {
        "tags": [
          "Filters"
        ],
        "summary": "Get filter",
        "description": "Returns a filter.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None, however, the filter is only returned where it is:\n\n *  owned by the user.\n *  shared with a group that the user is a member of.\n *  shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  shared with a public project.\n *  shared with the public.",
        "operationId": "getFilter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter to return.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `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]`.\n *  `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]`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "overrideSharePermissions",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Filter"
                },
                "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}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Filters"
        ],
        "summary": "Update filter",
        "description": "Updates a filter. Use this operation to update a filter's name, description, JQL, or sharing.\n\n**[Permissions](#permissions) required:** Permission to access Jira, however the user must own the filter.",
        "operationId": "updateFilter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter to update.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `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]`.\n *  `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]`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "overrideSharePermissions",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "description": "The filter to update.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Filter"
              },
              "example": {
                "jql": "type = Bug and resolution is empty",
                "name": "All Open Bugs",
                "description": "Lists all open bugs"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Filter"
                },
                "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}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Filters"
        ],
        "summary": "Delete filter",
        "description": "Delete a filter.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter to delete.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:filter:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/filter/{id}/columns": {
      "get": {
        "tags": [
          "Filters"
        ],
        "summary": "Get columns",
        "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*.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None, however, column details are only returned for:\n\n *  filters owned by the user.\n *  filters shared with a group that the user is a member of.\n *  filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  filters shared with a public project.\n *  filters shared with the public.",
        "operationId": "getColumns",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ColumnItem"
                  }
                },
                "example": "[{\"label\":\"Key\",\"value\":\"issuekey\"},{\"label\":\"Summary\",\"value\":\"summary\"}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:filter.column:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Filters"
        ],
        "summary": "Set columns",
        "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`.\n\nThe parameters for this resource are expressed as HTML form data. For example, in curl:\n\n`curl -X PUT -d columns=summary -d columns=description https://your-domain.atlassian.net/rest/api/3/filter/10000/columns`\n\n**[Permissions](#permissions) required:** Permission to access Jira, however, columns are only set for:\n\n *  filters owned by the user.\n *  filters shared with a group that the user is a member of.\n *  filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  filters shared with a public project.\n *  filters shared with the public.",
        "operationId": "setColumns",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "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`.",
          "content": {
            "*/*": {
              "schema": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  a non-navigable field is set as a column.\n *  the user does not have permission to view the filter."
          },
          "403": {
            "description": "Returned if the requesting user is not an owner of the filter."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:filter.column:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Filters"
        ],
        "summary": "Reset columns",
        "description": "Reset the user's column configuration for the filter to the default.\n\n**[Permissions](#permissions) required:** Permission to access Jira, however, columns are only reset for:\n\n *  filters owned by the user.\n *  filters shared with a group that the user is a member of.\n *  filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  filters shared with a public project.\n *  filters shared with the public.",
        "operationId": "resetColumns",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful."
          },
          "400": {
            "description": "Returned if:\n\n *  the filter is not found.\n *  the user does not have permission to view the filter."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:filter.column:jira"
            ]
          },
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/filter/{id}/favourite": {
      "put": {
        "tags": [
          "Filters"
        ],
        "summary": "Add filter as favorite",
        "description": "Add a filter as a favorite for the user.\n\n**[Permissions](#permissions) required:** Permission to access Jira, however, the user can only favorite:\n\n *  filters owned by the user.\n *  filters shared with a group that the user is a member of.\n *  filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  filters shared with a public project.\n *  filters shared with the public.",
        "operationId": "setFavouriteForFilter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `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]`.\n *  `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]`.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Filter"
                },
                "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}}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the filter is not found.\n *  the user does not have permission to favorite the filter."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Filters"
        ],
        "summary": "Remove filter as favorite",
        "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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "deleteFavouriteForFilter",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about filter in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `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]`.\n *  `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]`.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Filter"
                },
                "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}}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the filter is not found.\n *  the user does not have permission to view the filter."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/filter/{id}/owner": {
      "put": {
        "tags": [
          "Filters"
        ],
        "summary": "Change filter owner",
        "description": "Changes the owner of the filter.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter to update.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "The account ID of the new owner of the filter.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ChangeFilterOwner"
              },
              "example": {
                "accountId": "0000-0000-0000-0000"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned when:\n\n *  The new owner of the filter owns a filter with the same name.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:filter:jira",
              "write:filter:jira"
            ]
          },
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/filter/{id}/permission": {
      "get": {
        "tags": [
          "Filter sharing"
        ],
        "summary": "Get share permissions",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None, however, share permissions are only returned for:\n\n *  filters owned by the user.\n *  filters shared with a group that the user is a member of.\n *  filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  filters shared with a public project.\n *  filters shared with the public.",
        "operationId": "getSharePermissions",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SharePermission"
                  }
                },
                "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\":\"2022-12-08T07:09:19.702+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\":\"2022-12-08T07:09:19.702+0000\"},\"deleted\":true,\"retentionTillDate\":\"2023-02-06T07:09:19.702+0000\",\"deletedDate\":\"2022-12-08T07:09:19.702+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\"}}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the filter is not found.\n *  the user does not have permission to view the filter."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Filter sharing"
        ],
        "summary": "Add share permission",
        "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.\n\nBe aware that this operation uses different objects for updating share permissions compared to [Update filter](#api-rest-api-3-filter-id-put).\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SharePermissionInputBean"
              },
              "example": {
                "rights": 1,
                "type": "group",
                "groupname": "jira-administrators"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/SharePermission"
                  }
                },
                "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\":\"2022-12-08T07:09:19.702+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\":\"2022-12-08T07:09:19.702+0000\"},\"deleted\":true,\"retentionTillDate\":\"2023-02-06T07:09:19.702+0000\",\"deletedDate\":\"2022-12-08T07:09:19.702+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\"}}]"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  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.\n *  the user does not own the filter.\n *  the user does not have the required permissions."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the filter is not found.\n *  the user does not have permission to view the filter."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/filter/{id}/permission/{permissionId}": {
      "get": {
        "tags": [
          "Filter sharing"
        ],
        "summary": "Get share permission",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None, however, a share permission is only returned for:\n\n *  filters owned by the user.\n *  filters shared with a group that the user is a member of.\n *  filters shared with a private project that the user has *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for.\n *  filters shared with a public project.\n *  filters shared with the public.",
        "operationId": "getSharePermission",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "permissionId",
            "in": "path",
            "description": "The ID of the share permission.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SharePermission"
                },
                "example": "{\"id\":10000,\"type\":\"global\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the filter is not found.\n *  the permission is not found.\n *  the user does not have permission to view the filter."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "delete": {
        "tags": [
          "Filter sharing"
        ],
        "summary": "Delete share permission",
        "description": "Deletes a share permission from a filter.\n\n**[Permissions](#permissions) required:** Permission to access Jira and the user must own the filter.",
        "operationId": "deleteSharePermission",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the filter.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "permissionId",
            "in": "path",
            "description": "The ID of the share permission.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the filter is not found.\n *  the user does not own the filter."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:filter:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/group": {
      "get": {
        "tags": [
          "Groups"
        ],
        "summary": "Get group",
        "description": "This operation is deprecated, use [`group/member`](#api-rest-api-3-group-member-get).\n\nReturns all users in a group.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getGroup",
        "parameters": [
          {
            "name": "groupname",
            "in": "query",
            "description": "As a group's name can change, use of `groupId` is recommended to identify a group.  \nThe name of the group. This parameter cannot be used with the `groupId` parameter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupId",
            "in": "query",
            "description": "The ID of the group. This parameter cannot be used with the `groupName` parameter.",
            "schema": {
              "type": "string"
            },
            "x-showInExample": "true"
          },
          {
            "name": "expand",
            "in": "query",
            "description": "List of fields to expand.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Group"
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:group:jira",
              "read:user:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Groups"
        ],
        "summary": "Create group",
        "description": "Creates a group.\n\n**[Permissions](#permissions) required:** Site administration (that is, member of the *site-admin* [group](https://confluence.atlassian.com/x/24xjL)).",
        "operationId": "createGroup",
        "parameters": [],
        "requestBody": {
          "description": "The name of the group.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddGroupBean"
              },
              "example": {
                "name": "power-users"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Group"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:group:jira",
              "read:user:jira",
              "write:group:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      },
      "delete": {
        "tags": [
          "Groups"
        ],
        "summary": "Remove group",
        "description": "Deletes a group.\n\n**[Permissions](#permissions) required:** Site administration (that is, member of the *site-admin* strategic [group](https://confluence.atlassian.com/x/24xjL)).",
        "operationId": "removeGroup",
        "parameters": [
          {
            "name": "groupname",
            "in": "query",
            "description": "As a group's name can change, use of `groupId` is recommended to identify a group.  \nThe name of the group. This parameter cannot be used with the `groupId` parameter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupId",
            "in": "query",
            "description": "The ID of the group. This parameter cannot be used with the `groupName` parameter.",
            "schema": {
              "type": "string"
            },
            "x-showInExample": "true"
          },
          {
            "name": "swapGroup",
            "in": "query",
            "description": "As a group's name can change, use of `swapGroupId` is recommended to identify a group.  \nThe 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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "swapGroupId",
            "in": "query",
            "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.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/group/bulk": {
      "get": {
        "tags": [
          "Groups"
        ],
        "summary": "Bulk get groups",
        "description": "Returns a [paginated](#pagination) list of groups.\n\n**[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "bulkGetGroups",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "groupId",
            "in": "query",
            "description": "The ID of a group. To specify multiple IDs, pass multiple `groupId` parameters. For example, `groupId=5b10a2844c20165700ede21g&groupId=5b10ac8d82e05b22cc7d4ef5`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "example": "3571b9a7-348f-414a-9087-8e1ea03a7df8",
              "items": {
                "type": "string",
                "example": "3571b9a7-348f-414a-9087-8e1ea03a7df8"
              }
            },
            "x-showInExample": "true"
          },
          {
            "name": "groupName",
            "in": "query",
            "description": "The name of a group. To specify multiple names, pass multiple `groupName` parameters. For example, `groupName=administrators&groupName=jira-software-users`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "accessType",
            "in": "query",
            "description": "The access level of a group. Valid values: 'site-admin', 'admin', 'user'.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "applicationKey",
            "in": "query",
            "description": "The application key of the product user groups to search for. Valid values: 'jira-servicedesk', 'jira-software', 'jira-product-discovery', 'jira-core'.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanGroupDetails"
                },
                "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\"}]}"
              }
            }
          },
          "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.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Browse users and groups permission is required to view groups.\"],\"errors\":{}}"
              }
            }
          },
          "500": {
            "description": "Returned if the group with the given access level can't be retrieved.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Couldn't retrieve groups with the site-admin accessType.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:group:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/group/member": {
      "get": {
        "tags": [
          "Groups"
        ],
        "summary": "Get users from group",
        "description": "Returns a [paginated](#pagination) list of all users in a group.\n\nNote that users are ordered by username, however the username is not returned in the results due to privacy reasons.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getUsersFromGroup",
        "parameters": [
          {
            "name": "groupname",
            "in": "query",
            "description": "As a group's name can change, use of `groupId` is recommended to identify a group.  \nThe name of the group. This parameter cannot be used with the `groupId` parameter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupId",
            "in": "query",
            "description": "The ID of the group. This parameter cannot be used with the `groupName` parameter.",
            "schema": {
              "type": "string"
            },
            "x-showInExample": "true"
          },
          {
            "name": "includeInactiveUsers",
            "in": "query",
            "description": "Include inactive users.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanUserDetails"
                },
                "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\":\"[email protected]\",\"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\":\"[email protected]\",\"avatarUrls\":{},\"displayName\":\"Will\",\"active\":false,\"timeZone\":\"Australia/Sydney\",\"accountType\":\"atlassian\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:group:jira",
              "read:user:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/group/user": {
      "post": {
        "tags": [
          "Groups"
        ],
        "summary": "Add user to group",
        "description": "Adds a user to a group.\n\n**[Permissions](#permissions) required:** Site administration (that is, member of the *site-admin* [group](https://confluence.atlassian.com/x/24xjL)).",
        "operationId": "addUserToGroup",
        "parameters": [
          {
            "name": "groupname",
            "in": "query",
            "description": "As a group's name can change, use of `groupId` is recommended to identify a group.  \nThe name of the group. This parameter cannot be used with the `groupId` parameter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupId",
            "in": "query",
            "description": "The ID of the group. This parameter cannot be used with the `groupName` parameter.",
            "schema": {
              "type": "string"
            },
            "x-showInExample": "true"
          }
        ],
        "requestBody": {
          "description": "The user to add to the group.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateUserToGroupBean"
              },
              "example": {
                "accountId": "5b10ac8d82e05b22cc7d4ef5"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Group"
                }
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `groupname` is not provided.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:group:jira",
              "read:avatar:jira",
              "read:group:jira",
              "read:user:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      },
      "delete": {
        "tags": [
          "Groups"
        ],
        "summary": "Remove user from group",
        "description": "Removes a user from a group.\n\n**[Permissions](#permissions) required:** Site administration (that is, member of the *site-admin* [group](https://confluence.atlassian.com/x/24xjL)).",
        "operationId": "removeUserFromGroup",
        "parameters": [
          {
            "name": "groupname",
            "in": "query",
            "description": "As a group's name can change, use of `groupId` is recommended to identify a group.  \nThe name of the group. This parameter cannot be used with the `groupId` parameter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupId",
            "in": "query",
            "description": "The ID of the group. This parameter cannot be used with the `groupName` parameter.",
            "schema": {
              "type": "string"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "required": true,
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful."
          },
          "400": {
            "description": "Returned if:\n\n *  `groupName` is missing.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/groups/picker": {
      "get": {
        "tags": [
          "Groups"
        ],
        "summary": "Find groups",
        "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.\n\nThe 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*.\n\nThe list returns with the groups sorted. If no groups match the list criteria, an empty list is returned.\n\nThis operation can be accessed anonymously.\n\n**[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.\n\n*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": [
          {
            "name": "accountId",
            "in": "query",
            "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).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "query",
            "in": "query",
            "description": "The string to find in group names.",
            "schema": {
              "type": "string",
              "example": "query"
            }
          },
          {
            "name": "exclude",
            "in": "query",
            "description": "As a group's name can change, use of `excludeGroupIds` is recommended to identify a group.  \nA 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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "excludeId",
            "in": "query",
            "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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "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`.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "caseInsensitive",
            "in": "query",
            "description": "Whether the search for groups should be case insensitive.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "userName",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FoundGroups"
                },
                "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\"}]}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/groupuserpicker": {
      "get": {
        "tags": [
          "Group and user picker"
        ],
        "summary": "Find users and groups",
        "description": "Returns a list of users and groups matching a string. The string is used:\n\n *  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.\n *  for groups, to find a case-sensitive match with group name.\n\nFor example, if the string *tin* is used, records with the display name *Tina*, email address *[email protected]*, and the group *accounting* would be returned.\n\nOptionally, the search can be refined to:\n\n *  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:\n    \n     *  projects.\n     *  issue types.\n    \n    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.\n *  not return Connect app users and groups.\n *  return groups that have a case-insensitive match with the query.\n\nThe 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*.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/yodKLg).",
        "operationId": "findUsersAndGroups",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "description": "The search string.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return in each list.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "showAvatar",
            "in": "query",
            "description": "Whether the user avatar should be returned. If an invalid value is provided, the default value is used.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "fieldId",
            "in": "query",
            "description": "The custom field ID of the field this request is for.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "issueTypeId",
            "in": "query",
            "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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "avatarSize",
            "in": "query",
            "description": "The size of the avatar to return. If an invalid value is provided, the default value is used.",
            "schema": {
              "type": "string",
              "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"
              ],
              "default": "xsmall"
            }
          },
          {
            "name": "caseInsensitive",
            "in": "query",
            "description": "Whether the search for groups should be case insensitive.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "excludeConnectAddons",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FoundUsersAndGroups"
                },
                "example": "{\"users\":{\"users\":[{\"accountId\":\"5b10a2844c20165700ede21g\",\"accountType\":\"atlassian\",\"name\":\"mia\",\"key\":\"mia\",\"html\":\"Mia Krystof - mi[email protected] (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\"}]}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:group:jira",
              "read:user:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/instance/license": {
      "get": {
        "tags": [
          "Instance information"
        ],
        "summary": "Get license",
        "description": "Returns licensing information about the Jira instance.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getLicense",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/License"
                },
                "example": "{\"applications\":[{\"id\":\"jira-core\",\"plan\":\"PAID\"},{\"id\":\"jira-servicedesk\",\"plan\":\"FREE\"},{\"id\":\"jira-software\",\"plan\":\"PAID\"},{\"id\":\"jira-product-discovery\",\"plan\":\"FREE\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:license:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issue": {
      "post": {
        "tags": [
          "Issues"
        ],
        "summary": "Create issue",
        "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.\n\nThe 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.\n\nCreating a subtask differs from creating an issue as follows:\n\n *  `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).\n *  `parent` must contain the ID or key of the parent issue.\n\nIn a next-gen project any issue may be made a child providing that the parent and child are members of the same project.\n\n**[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": [
          {
            "name": "updateHistory",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueUpdateDetails"
              },
              "example": {
                "update": {},
                "fields": {
                  "summary": "Main order flow broken",
                  "parent": {
                    "key": "PROJ-123"
                  },
                  "issuetype": {
                    "id": "10000"
                  },
                  "components": [
                    {
                      "id": "10000"
                    }
                  ],
                  "customfield_20000": "06/Jul/19 3:25 PM",
                  "customfield_40000": {
                    "type": "doc",
                    "version": 1,
                    "content": [
                      {
                        "type": "paragraph",
                        "content": [
                          {
                            "text": "Occurs on all orders",
                            "type": "text"
                          }
                        ]
                      }
                    ]
                  },
                  "customfield_70000": [
                    "jira-administrators",
                    "jira-software-users"
                  ],
                  "project": {
                    "id": "10000"
                  },
                  "description": {
                    "type": "doc",
                    "version": 1,
                    "content": [
                      {
                        "type": "paragraph",
                        "content": [
                          {
                            "text": "Order entry fails when selecting supplier.",
                            "type": "text"
                          }
                        ]
                      }
                    ]
                  },
                  "reporter": {
                    "id": "5b10a2844c20165700ede21g"
                  },
                  "fixVersions": [
                    {
                      "id": "10001"
                    }
                  ],
                  "customfield_10000": "09/Jun/19",
                  "priority": {
                    "id": "20000"
                  },
                  "labels": [
                    "bugfix",
                    "blitz_test"
                  ],
                  "timetracking": {
                    "remainingEstimate": "5",
                    "originalEstimate": "10"
                  },
                  "customfield_30000": [
                    "10000",
                    "10002"
                  ],
                  "customfield_80000": {
                    "value": "red"
                  },
                  "security": {
                    "id": "10000"
                  },
                  "environment": {
                    "type": "doc",
                    "version": 1,
                    "content": [
                      {
                        "type": "paragraph",
                        "content": [
                          {
                            "text": "UAT",
                            "type": "text"
                          }
                        ]
                      }
                    ]
                  },
                  "versions": [
                    {
                      "id": "10000"
                    }
                  ],
                  "duedate": "2019-05-11",
                  "customfield_60000": "jira-software-users",
                  "customfield_50000": {
                    "type": "doc",
                    "version": 1,
                    "content": [
                      {
                        "type": "paragraph",
                        "content": [
                          {
                            "text": "Could impact day-to-day work.",
                            "type": "text"
                          }
                        ]
                      }
                    ]
                  },
                  "assignee": {
                    "id": "5b109f2e9729b51b54dc274d"
                  }
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatedIssue"
                },
                "example": "{\"id\":\"10000\",\"key\":\"ED-24\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/10000\",\"transition\":{\"status\":200,\"errorCollection\":{\"errorMessages\":[],\"errors\":{}}}}"
              }
            }
          },
          "400": {
            "description": "Returned if the request:\n\n *  is missing required fields.\n *  contains invalid field values.\n *  contains fields that cannot be set for the issue type.\n *  is by a user who does not have the necessary permission.\n *  is to create a subtype in a project different that of the parent issue.\n *  is for a subtask when the option to create subtasks is disabled.\n *  is invalid for any other reason.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Field 'priority' is required\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue:jira",
              "write:comment:jira",
              "write:comment.property:jira",
              "write:attachment:jira",
              "read:issue:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/bulk": {
      "post": {
        "tags": [
          "Issues"
        ],
        "summary": "Bulk create issue",
        "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.\n\nThe 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.\n\nCreating a subtask differs from creating an issue as follows:\n\n *  `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).\n *  `parent` the must contain the ID or key of the parent issue.\n\n**[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": {
              "schema": {
                "$ref": "#/components/schemas/IssuesUpdateBean"
              },
              "example": {
                "issueUpdates": [
                  {
                    "update": {
                      "worklog": [
                        {
                          "add": {
                            "timeSpent": "60m",
                            "started": "2019-07-05T11:05:00.000+0000"
                          }
                        }
                      ]
                    },
                    "fields": {
                      "summary": "Main order flow broken",
                      "issuetype": {
                        "id": "10000"
                      },
                      "components": [
                        {
                          "id": "10000"
                        }
                      ],
                      "customfield_20000": "06/Jul/19 3:25 PM",
                      "customfield_40000": {
                        "type": "doc",
                        "version": 1,
                        "content": [
                          {
                            "type": "paragraph",
                            "content": [
                              {
                                "text": "Occurs on all orders",
                                "type": "text"
                              }
                            ]
                          }
                        ]
                      },
                      "customfield_70000": [
                        "jira-administrators",
                        "jira-software-users"
                      ],
                      "project": {
                        "id": "10000"
                      },
                      "description": {
                        "type": "doc",
                        "version": 1,
                        "content": [
                          {
                            "type": "paragraph",
                            "content": [
                              {
                                "text": "Order entry fails when selecting supplier.",
                                "type": "text"
                              }
                            ]
                          }
                        ]
                      },
                      "reporter": {
                        "id": "5b10a2844c20165700ede21g"
                      },
                      "fixVersions": [
                        {
                          "id": "10001"
                        }
                      ],
                      "customfield_10000": "09/Jun/19",
                      "priority": {
                        "id": "20000"
                      },
                      "labels": [
                        "bugfix",
                        "blitz_test"
                      ],
                      "timetracking": {
                        "remainingEstimate": "5",
                        "originalEstimate": "10"
                      },
                      "customfield_30000": [
                        "10000",
                        "10002"
                      ],
                      "customfield_80000": {
                        "value": "red"
                      },
                      "security": {
                        "id": "10000"
                      },
                      "environment": {
                        "type": "doc",
                        "version": 1,
                        "content": [
                          {
                            "type": "paragraph",
                            "content": [
                              {
                                "text": "UAT",
                                "type": "text"
                              }
                            ]
                          }
                        ]
                      },
                      "versions": [
                        {
                          "id": "10000"
                        }
                      ],
                      "duedate": "2011-03-11",
                      "customfield_60000": "jira-software-users",
                      "customfield_50000": {
                        "type": "doc",
                        "version": 1,
                        "content": [
                          {
                            "type": "paragraph",
                            "content": [
                              {
                                "text": "Could impact day-to-day work.",
                                "type": "text"
                              }
                            ]
                          }
                        ]
                      },
                      "assignee": {
                        "id": "5b109f2e9729b51b54dc274d"
                      }
                    }
                  },
                  {
                    "update": {},
                    "fields": {
                      "summary": "Order stuck in pending",
                      "issuetype": {
                        "id": "10000"
                      },
                      "components": [
                        {
                          "id": "10000"
                        }
                      ],
                      "customfield_20000": "06/Jul/19 3:25 PM",
                      "customfield_40000": {
                        "type": "doc",
                        "version": 1,
                        "content": [
                          {
                            "type": "paragraph",
                            "content": [
                              {
                                "text": "Occurs on all orders",
                                "type": "text"
                              }
                            ]
                          }
                        ]
                      },
                      "customfield_70000": [
                        "jira-administrators",
                        "jira-software-users"
                      ],
                      "project": {
                        "id": "1000"
                      },
                      "description": {
                        "type": "doc",
                        "version": 1,
                        "content": [
                          {
                            "type": "paragraph",
                            "content": [
                              {
                                "text": "Order remains pending after approved.",
                                "type": "text"
                              }
                            ]
                          }
                        ]
                      },
                      "reporter": {
                        "id": "5b10a2844c20165700ede21g"
                      },
                      "fixVersions": [
                        {
                          "id": "10001"
                        }
                      ],
                      "customfield_10000": "09/Jun/19",
                      "priority": {
                        "id": "20000"
                      },
                      "labels": [
                        "new_release"
                      ],
                      "timetracking": {
                        "remainingEstimate": "5",
                        "originalEstimate": "15"
                      },
                      "customfield_30000": [
                        "10000",
                        "10002"
                      ],
                      "customfield_80000": {
                        "value": "red"
                      },
                      "security": {
                        "id": "10000"
                      },
                      "environment": {
                        "type": "doc",
                        "version": 1,
                        "content": [
                          {
                            "type": "paragraph",
                            "content": [
                              {
                                "text": "UAT",
                                "type": "text"
                              }
                            ]
                          }
                        ]
                      },
                      "versions": [
                        {
                          "id": "10000"
                        }
                      ],
                      "duedate": "2019-04-16",
                      "customfield_60000": "jira-software-users",
                      "customfield_50000": {
                        "type": "doc",
                        "version": 1,
                        "content": [
                          {
                            "type": "paragraph",
                            "content": [
                              {
                                "text": "Could impact day-to-day work.",
                                "type": "text"
                              }
                            ]
                          }
                        ]
                      },
                      "assignee": {
                        "id": "5b109f2e9729b51b54dc274d"
                      }
                    }
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if any of the issue or subtask creation requests were successful. A request may be unsuccessful when it:\n\n *  is missing required fields.\n *  contains invalid field values.\n *  contains fields that cannot be set for the issue type.\n *  is by a user who does not have the necessary permission.\n *  is to create a subtype in a project different that of the parent issue.\n *  is for a subtask when the option to create subtasks is disabled.\n *  is invalid for any other reason.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatedIssues"
                },
                "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\":[]}"
              }
            }
          },
          "400": {
            "description": "Returned if all requests are invalid. Requests may be unsuccessful when they:\n\n *  are missing required fields.\n *  contain invalid field values.\n *  contain fields that cannot be set for the issue type.\n *  are by a user who does not have the necessary permission.\n *  are to create a subtype in a project different that of the parent issue.\n *  is for a subtask when the option to create subtasks is disabled.\n *  are invalid for any other reason.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreatedIssues"
                },
                "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}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue:jira",
              "write:comment:jira",
              "write:comment.property:jira",
              "write:attachment:jira",
              "read:issue:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/createmeta": {
      "get": {
        "tags": [
          "Issues"
        ],
        "summary": "Get create issue metadata",
        "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).\n\nThe 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Create issues* [project permission](https://confluence.atlassian.com/x/yodKLg) in the requested projects.",
        "operationId": "getCreateIssueMeta",
        "parameters": [
          {
            "name": "projectIds",
            "in": "query",
            "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`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "projectKeys",
            "in": "query",
            "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`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "issuetypeIds",
            "in": "query",
            "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`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "issuetypeNames",
            "in": "query",
            "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`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueCreateMetadata"
                },
                "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\"]}}}]}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-meta:jira",
              "read:avatar:jira",
              "read:field-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issue/picker": {
      "get": {
        "tags": [
          "Issue search"
        ],
        "summary": "Get issue picker suggestions",
        "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.\n\nThis operation returns two lists:\n\n *  `History Search` which includes issues from the user's history of created, edited, or viewed issues that contain the string in the `query` parameter.\n *  `Current Search` which includes issues that match the JQL expression in `currentJQL` and contain the string in the `query` parameter.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getIssuePickerResource",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "description": "A string to match against text fields in the issue such as title, description, or comments.",
            "schema": {
              "type": "string",
              "example": "query"
            },
            "x-showInExample": "true"
          },
          {
            "name": "currentJQL",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "currentIssueKey",
            "in": "query",
            "description": "The key of an issue to exclude from search results. For example, the issue the user is viewing when they perform this query.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "currentProjectId",
            "in": "query",
            "description": "The ID of a project that suggested issues must belong to.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "showSubTasks",
            "in": "query",
            "description": "Indicate whether to include subtasks in the suggestions list.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "showSubTaskParent",
            "in": "query",
            "description": "When `currentIssueKey` is a subtask, whether to include the parent issue in the suggestions if it matches the query.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssuePickerSuggestions"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-details:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issue/properties": {
      "post": {
        "tags": [
          "Issue properties"
        ],
        "summary": "Bulk set issues properties by list",
        "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.\n\nThe 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.\n\nThis operation is:\n\n *  transactional, either all properties are updated in all eligible issues or, when errors occur, no properties are updated.\n *  [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.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Edit issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "bulkSetIssuesPropertiesList",
        "parameters": [],
        "requestBody": {
          "description": "Issue properties to be set or updated with values.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueEntityProperties"
              }
            }
          },
          "required": true
        },
        "responses": {
          "303": {
            "description": "Returned if the operation is successful."
          },
          "400": {
            "description": "Return if the request is invalid or the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue.property:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/properties/multi": {
      "post": {
        "tags": [
          "Issue properties"
        ],
        "summary": "Bulk set issue properties by issue",
        "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.\n\nThe value of the request body must be a [valid](http://tools.ietf.org/html/rfc4627), non-empty JSON.\n\nThis operation is:\n\n *  [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.\n *  non-transactional. Updating some entities may fail. Such information will available in the task result.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Edit issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "bulkSetIssuePropertiesByIssue",
        "parameters": [],
        "requestBody": {
          "description": "Details of the issue properties to be set or updated. Note that if an issue is not found, it is ignored.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MultiIssueEntityProperties"
              },
              "example": {
                "issues": [
                  {
                    "issueID": 1000,
                    "properties": {
                      "myProperty": {
                        "owner": "admin",
                        "weight": 100
                      }
                    }
                  },
                  {
                    "issueID": 1001,
                    "properties": {
                      "myOtherProperty": {
                        "cost": 150,
                        "transportation": "car"
                      }
                    }
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "303": {
            "description": "Returned if the operation is successful."
          },
          "400": {
            "description": "Return if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Return if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue.property:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/properties/{propertyKey}": {
      "put": {
        "tags": [
          "Issue properties"
        ],
        "summary": "Bulk set issue property",
        "description": "Sets a property value on multiple issues.\n\nThe 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.\n\nThe issues to be updated can be specified by a filter.\n\nThe filter identifies issues eligible for update using these criteria:\n\n *  `entityIds` Only issues from this list are eligible.\n *  `currentValue` Only issues with the property set to this value are eligible.\n *  `hasProperty`:\n    \n     *  If *true*, only issues with the property are eligible.\n     *  If *false*, only issues without the property are eligible.\n\nIf more than one criteria is specified, they are joined with the logical *AND*: only issues that satisfy all criteria are eligible.\n\nIf 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).\n\nThe 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.\n\nThis operation is:\n\n *  transactional, either all eligible issues are updated or, when errors occur, none are updated.\n *  [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.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for each project containing issues.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  *Edit issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for each issue.",
        "operationId": "bulkSetIssueProperty",
        "parameters": [
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property. The maximum length is 255 characters.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkIssuePropertyUpdateRequest"
              },
              "example": {
                "filter": {
                  "hasProperty": true,
                  "entityIds": [
                    10100,
                    100010
                  ],
                  "currentValue": {
                    "owner": "admin",
                    "weight": 50
                  }
                },
                "value": {
                  "owner": "admin",
                  "weight": 100
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "303": {
            "description": "Returned if the request is successful."
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-expressions:jira",
              "write:issue.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue properties"
        ],
        "summary": "Bulk delete issue property",
        "description": "Deletes a property value from multiple issues. The issues to be updated can be specified by filter criteria.\n\nThe criteria the filter used to identify eligible issues are:\n\n *  `entityIds` Only issues from this list are eligible.\n *  `currentValue` Only issues with the property set to this value are eligible.\n\nIf both criteria is specified, they are joined with the logical *AND*: only issues that satisfy both criteria are considered eligible.\n\nIf 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.\n\nThis operation is:\n\n *  transactional, either the property is deleted from all eligible issues or, when errors occur, no properties are deleted.\n *  [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.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [ project permission](https://confluence.atlassian.com/x/yodKLg) for each project containing issues.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  *Edit issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for each issue.",
        "operationId": "bulkDeleteIssueProperty",
        "parameters": [
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueFilterForBulkPropertyDelete"
              },
              "example": {
                "entityIds": [
                  10100,
                  100010
                ],
                "currentValue": "deprecated value"
              }
            }
          },
          "required": true
        },
        "responses": {
          "303": {
            "description": "Returned if the request is successful."
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issue/watching": {
      "post": {
        "tags": [
          "Issue watchers"
        ],
        "summary": "Get is watching issue bulk",
        "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`.\n\nThis 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.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getIsWatchingIssueBulk",
        "parameters": [],
        "requestBody": {
          "description": "A list of issue IDs.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueList"
              },
              "example": {
                "issueIds": [
                  "10001",
                  "10002",
                  "10005"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkIssueIsWatching"
                },
                "example": "{\"issuesIsWatching\":{\"10001\":true,\"10002\":false,\"10005\":true}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.watcher:jira",
              "read:user:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}": {
      "get": {
        "tags": [
          "Issues"
        ],
        "summary": "Get issue",
        "description": "Returns the details for an issue.\n\nThe 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getIssue",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "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:\n\n *  `*all` Returns all fields.\n *  `*navigable` Returns navigable fields.\n *  Any issue field, prefixed with a minus to exclude.\n\nExamples:\n\n *  `summary,comment` Returns only the summary and comments fields.\n *  `-description` Returns all (default) fields except description.\n *  `*navigable,-comment` Returns all navigable fields except comment.\n\nThis parameter may be specified multiple times. For example, `fields=field1,field2& fields=field3`.\n\nNote: 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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "default": "*all"
              }
            }
          },
          {
            "name": "fieldsByKeys",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about the issues in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `renderedFields` Returns field values rendered in HTML format.\n *  `names` Returns the display name of each field.\n *  `schema` Returns the schema describing a field type.\n *  `transitions` Returns all possible transitions for the issue.\n *  `editmeta` Returns information about how each field can be edited.\n *  `changelog` Returns a list of recent updates to an issue, sorted by date, starting from the most recent.\n *  `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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "properties",
            "in": "query",
            "description": "A list of issue properties to return for the issue. This parameter accepts a comma-separated list. Allowed values:\n\n *  `*all` Returns all issue properties.\n *  Any issue property key, prefixed with a minus to exclude.\n\nExamples:\n\n *  `*all` Returns all properties.\n *  `*all,-prop1` Returns all properties except `prop1`.\n *  `prop1,prop2` Returns `prop1` and `prop2` properties.\n\nThis parameter may be specified multiple times. For example, `properties=prop1,prop2& properties=prop3`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "default": "null"
              }
            }
          },
          {
            "name": "updateHistory",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueBean"
                },
                "example": "{\"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\":\"2022-12-08T07:09:19.704+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\":\"2022-12-08T07:09:19.702+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}}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issues"
        ],
        "summary": "Edit issue",
        "description": "Edits an issue. A transition may be applied and issue properties updated as part of the edit.\n\nThe 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).\n\nThe 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.\n\nConnect 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`.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Edit issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "editIssue",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "notifyUsers",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "overrideScreenSecurity",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "overrideEditableFlag",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueUpdateDetails"
              },
              "example": {
                "historyMetadata": {
                  "actor": {
                    "avatarUrl": "http://mysystem/avatar/tony.jpg",
                    "displayName": "Tony",
                    "id": "tony",
                    "type": "mysystem-user",
                    "url": "http://mysystem/users/tony"
                  },
                  "extraData": {
                    "Iteration": "10a",
                    "Step": "4"
                  },
                  "description": "From the order testing process",
                  "generator": {
                    "id": "mysystem-1",
                    "type": "mysystem-application"
                  },
                  "cause": {
                    "id": "myevent",
                    "type": "mysystem-event"
                  },
                  "activityDescription": "Complete order processing",
                  "type": "myplugin:type"
                },
                "update": {
                  "summary": [
                    {
                      "set": "Bug in business logic"
                    }
                  ],
                  "components": [
                    {
                      "set": ""
                    }
                  ],
                  "timetracking": [
                    {
                      "edit": {
                        "remainingEstimate": "4d",
                        "originalEstimate": "1w 1d"
                      }
                    }
                  ],
                  "labels": [
                    {
                      "add": "triaged"
                    },
                    {
                      "remove": "blocker"
                    }
                  ]
                },
                "fields": {
                  "summary": "Completed orders still displaying in pending",
                  "customfield_10010": 1,
                  "customfield_10000": {
                    "type": "doc",
                    "version": 1,
                    "content": [
                      {
                        "type": "paragraph",
                        "content": [
                          {
                            "text": "Investigation underway",
                            "type": "text"
                          }
                        ]
                      }
                    ]
                  }
                },
                "properties": [
                  {
                    "value": "Order number 10784",
                    "key": "key1"
                  },
                  {
                    "value": "Order number 10923",
                    "key": "key2"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the request body is missing.\n *  the user does not have the necessary permission to edit one or more fields.\n *  the request includes one or more fields that are not found or are not associated with the issue's edit screen.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issues"
        ],
        "summary": "Delete issue",
        "description": "Deletes an issue.\n\nAn 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Delete issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "deleteIssue",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "deleteSubtasks",
            "in": "query",
            "description": "Whether the issue's subtasks are deleted when the issue is deleted.",
            "schema": {
              "type": "string",
              "enum": [
                "true",
                "false"
              ],
              "default": "false"
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/assignee": {
      "put": {
        "tags": [
          "Issues"
        ],
        "summary": "Assign issue",
        "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.\n\nIf `name` or `accountId` is set to:\n\n *  `\"-1\"`, the issue is assigned to the default assignee for the project.\n *  `null`, the issue is set to unassigned.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse Projects* and *Assign Issues* [ project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "assignIssue",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue to be assigned.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The request object with the user that the issue is assigned to.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/User"
              },
              "example": {
                "accountId": "5b10ac8d82e05b22cc7d4ef5"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the user is not found.\n *  `name`, `key`, or `accountId` is missing.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/attachments": {
      "post": {
        "tags": [
          "Issue attachments"
        ],
        "summary": "Add attachment",
        "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)).\n\nNote that:\n\n *  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.\n *  The name of the multipart/form-data parameter that contains the attachments must be `file`.\n\nThe following examples upload a file called *myfile.txt* to the issue *TEST-123*:\n\n#### curl ####\n\n    curl --location --request POST 'https://your-domain.atlassian.net/rest/api/3/issue/TEST-123/attachments'\n     -u '[email protected]:'\n     -H 'X-Atlassian-Token: no-check'\n     --form 'file=@\"myfile.txt\"'\n\n#### Node.js ####\n\n    // This code sample uses the 'node-fetch' and 'form-data' libraries:\n     // https://www.npmjs.com/package/node-fetch\n     // https://www.npmjs.com/package/form-data\n     const fetch = require('node-fetch');\n     const FormData = require('form-data');\n     const fs = require('fs');\n    \n     const filePath = 'myfile.txt';\n     const form = new FormData();\n     const stats = fs.statSync(filePath);\n     const fileSizeInBytes = stats.size;\n     const fileStream = fs.createReadStream(filePath);\n    \n     form.append('file', fileStream, {knownLength: fileSizeInBytes});\n    \n     fetch('https://your-domain.atlassian.net/rest/api/3/issue/TEST-123/attachments', {\n         method: 'POST',\n         body: form,\n         headers: {\n             'Authorization': `Basic ${Buffer.from(\n                 '[email protected]:'\n             ).toString('base64')}`,\n             'Accept': 'application/json',\n             'X-Atlassian-Token': 'no-check'\n         }\n     })\n         .then(response => {\n             console.log(\n                 `Response: ${response.status} ${response.statusText}`\n             );\n             return response.text();\n         })\n         .then(text => console.log(text))\n         .catch(err => console.error(err));\n\n#### Java ####\n\n    // This code sample uses the  'Unirest' library:\n     // http://unirest.io/java.html\n     HttpResponse response = Unirest.post(\"https://your-domain.atlassian.net/rest/api/2/issue/{issueIdOrKey}/attachments\")\n             .basicAuth(\"[email protected]\", \"\")\n             .header(\"Accept\", \"application/json\")\n             .header(\"X-Atlassian-Token\", \"no-check\")\n             .field(\"file\", new File(\"myfile.txt\"))\n             .asJson();\n    \n             System.out.println(response.getBody());\n\n#### Python ####\n\n    # This code sample uses the 'requests' library:\n     # http://docs.python-requests.org\n     import requests\n     from requests.auth import HTTPBasicAuth\n     import json\n    \n     url = \"https://your-domain.atlassian.net/rest/api/2/issue/{issueIdOrKey}/attachments\"\n    \n     auth = HTTPBasicAuth(\"[email protected]\", \"\")\n    \n     headers = {\n        \"Accept\": \"application/json\",\n        \"X-Atlassian-Token\": \"no-check\"\n     }\n    \n     response = requests.request(\n        \"POST\",\n        url,\n        headers = headers,\n        auth = auth,\n        files = {\n             \"file\": (\"myfile.txt\", open(\"myfile.txt\",\"rb\"), \"application-type\")\n        }\n     )\n    \n     print(json.dumps(json.loads(response.text), sort_keys=True, indent=4, separators=(\",\", \": \")))\n\n#### PHP ####\n\n    // This code sample uses the 'Unirest' library:\n     // http://unirest.io/php.html\n     Unirest\\Request::auth('[email protected]', '');\n    \n     $headers = array(\n       'Accept' => 'application/json',\n       'X-Atlassian-Token' => 'no-check'\n     );\n    \n     $parameters = array(\n       'file' => File::add('myfile.txt')\n     );\n    \n     $response = Unirest\\Request::post(\n       'https://your-domain.atlassian.net/rest/api/2/issue/{issueIdOrKey}/attachments',\n       $headers,\n       $parameters\n     );\n    \n     var_dump($response)\n\n#### Forge ####\n\n    // This sample uses Atlassian Forge and the `form-data` library.\n     // https://developer.atlassian.com/platform/forge/\n     // https://www.npmjs.com/package/form-data\n     import api from \"@forge/api\";\n     import FormData from \"form-data\";\n    \n     const form = new FormData();\n     form.append('file', fileStream, {knownLength: fileSizeInBytes});\n    \n     const response = await api.asApp().requestJira('/rest/api/2/issue/{issueIdOrKey}/attachments', {\n         method: 'POST',\n         body: form,\n         headers: {\n             'Accept': 'application/json',\n             'X-Atlassian-Token': 'no-check'\n         }\n     });\n    \n     console.log(`Response: ${response.status} ${response.statusText}`);\n     console.log(await response.json());\n\nTip: 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** \n\n *  *Browse Projects* and *Create attachments* [ project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "addAttachment",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue that attachments are added to.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "multipart/form-data": {
              "schema": {
                "type": "string",
                "format": "binary"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Attachment"
                  }
                },
                "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\":\"[email protected]\",\"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\":\"2022-12-08T07:09:31.608+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\":\"[email protected]\",\"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\":\"2022-12-08T07:09:31.608+0000\",\"size\":2460,\"mimeType\":\"text/plain\",\"content\":\"https://your-domain.atlassian.net/rest/api/3/attachment/content/10001\"}]"
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          },
          "404": {
            "description": "Returned if any of the following is true:\n\n *  the issue is not found.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira",
              "write:attachment:jira",
              "read:attachment:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/changelog": {
      "get": {
        "tags": [
          "Issues"
        ],
        "summary": "Get changelogs",
        "description": "Returns a [paginated](#pagination) list of all changelogs for an issue sorted by date, starting from the oldest.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getChangeLogs",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanChangelog"
                },
                "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\":\"[email protected]\",\"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\":\"[email protected]\",\"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\"}]}]}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue is not found or the user does not have permission to view it."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-meta:jira",
              "read:avatar:jira",
              "read:issue.changelog:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/changelog/list": {
      "post": {
        "tags": [
          "Issues"
        ],
        "summary": "Get changelogs by IDs",
        "description": "Returns changelogs for an issue specified by a list of changelog IDs.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getChangeLogsByIds",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueChangelogIds"
              },
              "example": {
                "changelogIds": [
                  10001,
                  10002
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageOfChangelogs"
                },
                "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\":\"[email protected]\",\"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\":\"[email protected]\",\"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\"}]}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-meta:jira",
              "read:avatar:jira",
              "read:issue.changelog:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/comment": {
      "get": {
        "tags": [
          "Issue comments"
        ],
        "summary": "Get comments",
        "description": "Returns all comments for an issue.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** Comments are included in the response where the user has:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the comment.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the comment has visibility restrictions, belongs to the group or has the role visibility is role visibility is restricted to.",
        "operationId": "getComments",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 5000
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field. Accepts *created* to sort comments by their created date.",
            "schema": {
              "type": "string",
              "enum": [
                "created",
                "-created",
                "+created"
              ]
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageOfComments"
                },
                "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\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue comments"
        ],
        "summary": "Add comment",
        "description": "Adds a comment to an issue.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Add comments* [ project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue containing the comment is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "addComment",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Comment"
              },
              "example": {
                "visibility": {
                  "identifier": "Administrators",
                  "type": "role",
                  "value": "Administrators"
                },
                "body": {
                  "type": "doc",
                  "version": 1,
                  "content": [
                    {
                      "type": "paragraph",
                      "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"
                        }
                      ]
                    }
                  ]
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Comment"
                },
                "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\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/comment/{id}": {
      "get": {
        "tags": [
          "Issue comments"
        ],
        "summary": "Get comment",
        "description": "Returns a comment.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the comment.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the comment has visibility restrictions, the user belongs to the group or has the role visibility is restricted to.",
        "operationId": "getComment",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the comment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Comment"
                },
                "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\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue comments"
        ],
        "summary": "Update comment",
        "description": "Updates a comment.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue containing the comment is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  *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.\n *  If the comment has visibility restrictions, the user belongs to the group or has the role visibility is restricted to.",
        "operationId": "updateComment",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the comment.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "notifyUsers",
            "in": "query",
            "description": "Whether users are notified when a comment is updated.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "overrideEditableFlag",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Comment"
              },
              "example": {
                "visibility": {
                  "identifier": "Administrators",
                  "type": "role",
                  "value": "Administrators"
                },
                "body": {
                  "type": "doc",
                  "version": 1,
                  "content": [
                    {
                      "type": "paragraph",
                      "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"
                        }
                      ]
                    }
                  ]
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Comment"
                },
                "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\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue comments"
        ],
        "summary": "Delete comment",
        "description": "Deletes a comment.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue containing the comment is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  *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,\n *  If the comment has visibility restrictions, the user belongs to the group or has the role visibility is restricted to.",
        "operationId": "deleteComment",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the comment.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:comment:jira",
              "delete:comment.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/editmeta": {
      "get": {
        "tags": [
          "Issues"
        ],
        "summary": "Get edit issue metadata",
        "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).\n\nThis endpoint will check for these conditions:\n\n1.  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.\n2.  Field is visible in the [field configuration](https://support.atlassian.com/jira-cloud-administration/docs/change-a-field-configuration/). `overrideScreenSecurity=true` skips this condition.\n3.  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.\n4.  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.\n5.  Issue has a project, issue type, and status defined.\n6.  Issue is assigned to a valid workflow, and the current status has assigned a workflow step. `overrideEditableFlag=true` skips this condition.\n7.  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.\n8.  User has [Edit issues permission](https://support.atlassian.com/jira-cloud-administration/docs/permissions-for-company-managed-projects/).\n9.  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.\n\nFields hidden using [Issue layout settings page](https://support.atlassian.com/jira-software-cloud/docs/configure-field-layout-in-the-issue-view/) remain editable.\n\nConnect 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:\n\n *  `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).\n *  `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).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n\nNote: 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": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "overrideScreenSecurity",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "overrideEditableFlag",
            "in": "query",
            "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).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueUpdateMetadata"
                },
                "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\"}}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-meta:jira",
              "read:field-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/notify": {
      "post": {
        "tags": [
          "Issues"
        ],
        "summary": "Send notification for issue",
        "description": "Creates an email notification for an issue and adds it to the mail queue.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "notify",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "ID or key of the issue that the notification is sent for.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The request object for the notification and recipients.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Notification"
              },
              "example": {
                "htmlBody": "The latest test results for this ticket are now available.",
                "subject": "Latest test results",
                "textBody": "The latest test results for this ticket are now available.",
                "to": {
                  "voters": true,
                  "groupIds": [],
                  "watchers": true,
                  "groups": [
                    {
                      "name": "notification-group"
                    }
                  ],
                  "reporter": false,
                  "assignee": false,
                  "users": [
                    {
                      "accountId": "5b10a2844c20165700ede21g",
                      "active": false
                    }
                  ]
                },
                "restrict": {
                  "permissions": [
                    {
                      "key": "BROWSE"
                    }
                  ],
                  "groupIds": [],
                  "groups": [
                    {
                      "name": "notification-group"
                    }
                  ]
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the email is queued for sending.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the recipient is the same as the calling user.\n *  the recipient is invalid. For example, the recipient is set to the assignee, but the issue is unassigned.\n *  the request is invalid. For example, required fields are missing or have invalid values."
          },
          "403": {
            "description": "Returned if:\n\n *  outgoing emails are disabled.\n *  no SMTP server is configured."
          },
          "404": {
            "description": "Returned if the issue is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "send:notification:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/properties": {
      "get": {
        "tags": [
          "Issue properties"
        ],
        "summary": "Get issue property keys",
        "description": "Returns the URLs and keys of an issue's properties.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** Property details are only returned where the user has:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getIssuePropertyKeys",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The key or ID of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PropertyKeys"
                },
                "example": "{\"keys\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support\",\"key\":\"issue.support\"}]}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue is not found or the user does not have permissions to view the issue."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/properties/{propertyKey}": {
      "get": {
        "tags": [
          "Issue properties"
        ],
        "summary": "Get issue property",
        "description": "Returns the key and value of an issue's property.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getIssueProperty",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The key or ID of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityProperty"
                },
                "example": "{\"key\":\"issue.support\",\"value\":{\"system.conversation.id\":\"b1bf38be-5e94-4b40-a3b8-9278735ee1e6\",\"system.support.time\":\"1m\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue properties"
        ],
        "summary": "Set issue property",
        "description": "Sets the value of an issue's property. Use this resource to store custom data against an issue.\n\nThe 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Edit issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "setIssueProperty",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the issue property. The maximum length is 255 characters.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the issue property is updated.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "201": {
            "description": "Returned if the issue property is created.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue properties"
        ],
        "summary": "Delete issue property",
        "description": "Deletes an issue's property.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Edit issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "deleteIssueProperty",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The key or ID of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/remotelink": {
      "get": {
        "tags": [
          "Issue remote links"
        ],
        "summary": "Get remote issue links",
        "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`.\n\nThis operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getRemoteIssueLinks",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string",
              "example": "10000"
            },
            "x-showInExample": "true"
          },
          {
            "name": "globalId",
            "in": "query",
            "description": "The global ID of the remote issue link.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemoteIssueLink"
                },
                "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\"}}}}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.remote-link:jira",
              "read:status:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue remote links"
        ],
        "summary": "Create or update remote issue link",
        "description": "Creates or updates a remote issue link for an issue.\n\nIf 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.\n\nThis operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "createOrUpdateRemoteIssueLink",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RemoteIssueLinkRequest"
              },
              "example": {
                "application": {
                  "name": "My Acme Tracker",
                  "type": "com.acme.tracker"
                },
                "globalId": "system=http://www.mycompany.com/support&id=1",
                "relationship": "causes",
                "object": {
                  "summary": "Customer support issue",
                  "icon": {
                    "url16x16": "http://www.mycompany.com/support/ticket.png",
                    "title": "Support Ticket"
                  },
                  "title": "TSTSUP-111",
                  "url": "http://www.mycompany.com/support?id=1",
                  "status": {
                    "icon": {
                      "url16x16": "http://www.mycompany.com/support/resolved.png",
                      "link": "http://www.mycompany.com/support?id=1&details=closed",
                      "title": "Case Closed"
                    },
                    "resolved": true
                  }
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the remote issue link is updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemoteIssueLinkIdentifies"
                },
                "example": "{\"id\":10000,\"self\":\"https://your-domain.atlassian.net/rest/api/issue/MKY-1/remotelink/10000\"}"
              }
            }
          },
          "201": {
            "description": "Returned if the remote issue link is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemoteIssueLinkIdentifies"
                },
                "example": "{\"id\":10000,\"self\":\"https://your-domain.atlassian.net/rest/api/issue/MKY-1/remotelink/10000\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[],\"errors\":{\"title\":\"'title' is required.\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue:jira",
              "write:issue.remote-link:jira",
              "read:issue.remote-link:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue remote links"
        ],
        "summary": "Delete remote issue link by global ID",
        "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`.\n\nThis operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is implemented, issue-level security permission to view the issue.",
        "operationId": "deleteRemoteIssueLinkByGlobalId",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string",
              "example": "10000"
            },
            "x-showInExample": "true"
          },
          {
            "name": "globalId",
            "in": "query",
            "description": "The global ID of a remote issue link.",
            "required": true,
            "schema": {
              "type": "string",
              "example": "system=http://www.mycompany.com/support&id=1"
            },
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue.remote-link:jira",
              "write:issue:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/remotelink/{linkId}": {
      "get": {
        "tags": [
          "Issue remote links"
        ],
        "summary": "Get remote issue link by ID",
        "description": "Returns a remote issue link for an issue.\n\nThis operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "getRemoteIssueLinkById",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "linkId",
            "in": "path",
            "description": "The ID of the remote issue link.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/RemoteIssueLink"
                },
                "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\"}}}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.remote-link:jira",
              "read:status:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue remote links"
        ],
        "summary": "Update remote issue link by ID",
        "description": "Updates a remote issue link for an issue.\n\nNote: Fields without values in the request are set to null.\n\nThis operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "updateRemoteIssueLink",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string",
              "example": "10000"
            },
            "x-showInExample": "true"
          },
          {
            "name": "linkId",
            "in": "path",
            "description": "The ID of the remote issue link.",
            "required": true,
            "schema": {
              "type": "string",
              "example": "10000"
            },
            "x-showInExample": "true"
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/RemoteIssueLinkRequest"
              },
              "example": {
                "application": {
                  "name": "My Acme Tracker",
                  "type": "com.acme.tracker"
                },
                "globalId": "system=http://www.mycompany.com/support&id=1",
                "relationship": "causes",
                "object": {
                  "summary": "Customer support issue",
                  "icon": {
                    "url16x16": "http://www.mycompany.com/support/ticket.png",
                    "title": "Support Ticket"
                  },
                  "title": "TSTSUP-111",
                  "url": "http://www.mycompany.com/support?id=1",
                  "status": {
                    "icon": {
                      "url16x16": "http://www.mycompany.com/support/resolved.png",
                      "link": "http://www.mycompany.com/support?id=1&details=closed",
                      "title": "Case Closed"
                    },
                    "resolved": true
                  }
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the link ID is invalid.\n *  the remote issue link does not belong to the issue.\n *  the request body is invalid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[],\"errors\":{\"title\":\"'title' is required.\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue:jira",
              "write:issue.remote-link:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue remote links"
        ],
        "summary": "Delete remote issue link by ID",
        "description": "Deletes a remote issue link from an issue.\n\nThis operation requires [issue linking to be active](https://confluence.atlassian.com/x/yoXKM).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects*, *Edit issues*, and *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "deleteRemoteIssueLinkById",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string",
              "example": "10000"
            },
            "x-showInExample": "true"
          },
          {
            "name": "linkId",
            "in": "path",
            "description": "The ID of a remote issue link.",
            "required": true,
            "schema": {
              "type": "string",
              "example": "10000"
            },
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue.remote-link:jira",
              "write:issue:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/transitions": {
      "get": {
        "tags": [
          "Issues"
        ],
        "summary": "Get transitions",
        "description": "Returns either all transitions or a transition that can be performed by the user on an issue, based on the issue's status.\n\nNote, 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required: A list or transition is returned only when the user has:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n\nHowever, 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": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "transitionId",
            "in": "query",
            "description": "The ID of the transition.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "skipRemoteOnlyCondition",
            "in": "query",
            "description": "Whether transitions with the condition *Hide From User Condition* are included in the response.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "includeUnavailableTransitions",
            "in": "query",
            "description": "Whether details of transitions that fail a condition are included in the response",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "sortByOpsBarAndStatus",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Transitions"
                },
                "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\"}}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.transition:jira",
              "read:status:jira",
              "read:field-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issues"
        ],
        "summary": "Transition issue",
        "description": "Performs an issue transition and, if the transition has a screen, updates the fields from the transition screen.\n\nsortByCategory 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Transition issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "doTransition",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueUpdateDetails"
              },
              "example": {
                "historyMetadata": {
                  "actor": {
                    "avatarUrl": "http://mysystem/avatar/tony.jpg",
                    "displayName": "Tony",
                    "id": "tony",
                    "type": "mysystem-user",
                    "url": "http://mysystem/users/tony"
                  },
                  "extraData": {
                    "Iteration": "10a",
                    "Step": "4"
                  },
                  "description": "From the order testing process",
                  "generator": {
                    "id": "mysystem-1",
                    "type": "mysystem-application"
                  },
                  "cause": {
                    "id": "myevent",
                    "type": "mysystem-event"
                  },
                  "activityDescription": "Complete order processing",
                  "type": "myplugin:type"
                },
                "update": {
                  "comment": [
                    {
                      "add": {
                        "body": {
                          "type": "doc",
                          "version": 1,
                          "content": [
                            {
                              "type": "paragraph",
                              "content": [
                                {
                                  "text": "Bug has been fixed",
                                  "type": "text"
                                }
                              ]
                            }
                          ]
                        }
                      }
                    }
                  ]
                },
                "fields": {
                  "assignee": {
                    "name": "bob"
                  },
                  "resolution": {
                    "name": "Fixed"
                  }
                },
                "transition": {
                  "id": "5"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  no transition is specified.\n *  the user does not have permission to transition the issue.\n *  a field that isn't included on the transition screen is defined in `fields` or `update`.\n *  a field is specified in both `fields` and `update`.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue:jira",
              "write:issue.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/votes": {
      "get": {
        "tags": [
          "Issue votes"
        ],
        "summary": "Get votes",
        "description": "Returns details about the votes on an issue.\n\nThis 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is ini\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n\nNote 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": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Votes"
                },
                "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}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  voting is disabled.\n *  the user does not have permission to view the issue.\n *  the issue is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.vote:jira",
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue votes"
        ],
        "summary": "Add vote",
        "description": "Adds the user's vote to an issue. This is the equivalent of the user clicking *Vote* on an issue in Jira.\n\nThis 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.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "addVote",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  voting is disabled.\n *  the issue is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue.vote:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue votes"
        ],
        "summary": "Delete vote",
        "description": "Deletes a user's vote from an issue. This is the equivalent of the user clicking *Unvote* on an issue in Jira.\n\nThis 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.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "removeVote",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "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:\n\n *  voting is disabled.\n *  the user has not voted on the issue.\n *  the issue is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue.vote:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/watchers": {
      "get": {
        "tags": [
          "Issue watchers"
        ],
        "summary": "Get issue watchers",
        "description": "Returns the watchers for an issue.\n\nThis 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is ini\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  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": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Watchers"
                },
                "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}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue.watcher:jira",
              "read:user:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue watchers"
        ],
        "summary": "Add watcher",
        "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.\n\nThis 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.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  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": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The account ID of the user. Note that username cannot be used due to privacy changes.",
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue.watcher:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue watchers"
        ],
        "summary": "Delete watcher",
        "description": "Deletes a user as a watcher of an issue.\n\nThis 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.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  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": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Required.",
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue.watcher:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/worklog": {
      "get": {
        "tags": [
          "Issue worklogs"
        ],
        "summary": "Get issue worklogs",
        "description": "Returns worklogs for an issue, starting from the oldest worklog or from the worklog started on or after a date and time.\n\nTime 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).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** Workloads are only returned where the user has:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "getIssueWorklog",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 5000
            }
          },
          {
            "name": "startedAfter",
            "in": "query",
            "description": "The worklog start date and time, as a UNIX timestamp in milliseconds, after which worklogs are returned.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "startedBefore",
            "in": "query",
            "description": "The worklog start date and time, as a UNIX timestamp in milliseconds, before which worklogs are returned.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about worklogs in the response. This parameter accepts`properties`, which returns worklog properties.",
            "schema": {
              "type": "string",
              "default": ""
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageOfWorklogs"
                },
                "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\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the issue is not found or the user does not have permission to view the issue.\n *  `startAt` or `maxResults` has non-numeric values.\n *  time tracking is disabled."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue worklogs"
        ],
        "summary": "Add worklog",
        "description": "Adds a worklog to an issue.\n\nTime 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).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* and *Work on issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "addWorklog",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "notifyUsers",
            "in": "query",
            "description": "Whether users watching the issue are notified by email.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "adjustEstimate",
            "in": "query",
            "description": "Defines how to update the issue's time estimate, the options are:\n\n *  `new` Sets the estimate to a specific value, defined in `newEstimate`.\n *  `leave` Leaves the estimate unchanged.\n *  `manual` Reduces the estimate by amount specified in `reduceBy`.\n *  `auto` Reduces the estimate by the value of `timeSpent` in the worklog.",
            "schema": {
              "type": "string",
              "enum": [
                "new",
                "leave",
                "manual",
                "auto"
              ],
              "default": "auto"
            }
          },
          {
            "name": "newEstimate",
            "in": "query",
            "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`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "reduceBy",
            "in": "query",
            "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`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about work logs in the response. This parameter accepts `properties`, which returns worklog properties.",
            "schema": {
              "type": "string",
              "default": ""
            }
          },
          {
            "name": "overrideEditableFlag",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Worklog"
              },
              "example": {
                "timeSpentSeconds": 12000,
                "visibility": {
                  "identifier": "276f955c-63d7-42c8-9520-92d01dca0625",
                  "type": "group"
                },
                "comment": {
                  "type": "doc",
                  "version": 1,
                  "content": [
                    {
                      "type": "paragraph",
                      "content": [
                        {
                          "text": "I did some work here.",
                          "type": "text"
                        }
                      ]
                    }
                  ]
                },
                "started": "2021-01-17T12:34:00.000+0000"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Worklog"
                }
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `adjustEstimate` is set to `new` but `newEstimate` is not provided or is invalid.\n *  `adjustEstimate` is set to `manual` but `reduceBy` is not provided or is invalid.\n *  the user does not have permission to add the worklog.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/worklog/{id}": {
      "get": {
        "tags": [
          "Issue worklogs"
        ],
        "summary": "Get worklog",
        "description": "Returns a worklog.\n\nTime 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).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "getWorklog",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the worklog.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about work logs in the response. This parameter accepts\n\n`properties`, which returns worklog properties.",
            "schema": {
              "type": "string",
              "default": ""
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Worklog"
                },
                "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\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "404": {
            "description": "Returned if:\n\n *  the issue is not found or the user does not have permission to view it.\n *  the worklog is not found or the user does not have permission to view it.\n *  time tracking is disabled.\n\n."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue worklogs"
        ],
        "summary": "Update worklog",
        "description": "Updates a worklog.\n\nTime 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).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  *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.\n *  If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "updateWorklog",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the worklog.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "notifyUsers",
            "in": "query",
            "description": "Whether users watching the issue are notified by email.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "adjustEstimate",
            "in": "query",
            "description": "Defines how to update the issue's time estimate, the options are:\n\n *  `new` Sets the estimate to a specific value, defined in `newEstimate`.\n *  `leave` Leaves the estimate unchanged.\n *  `auto` Updates the estimate by the difference between the original and updated value of `timeSpent` or `timeSpentSeconds`.",
            "schema": {
              "type": "string",
              "enum": [
                "new",
                "leave",
                "manual",
                "auto"
              ],
              "default": "auto"
            }
          },
          {
            "name": "newEstimate",
            "in": "query",
            "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`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about worklogs in the response. This parameter accepts `properties`, which returns worklog properties.",
            "schema": {
              "type": "string",
              "default": ""
            }
          },
          {
            "name": "overrideEditableFlag",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Worklog"
              },
              "example": {
                "timeSpentSeconds": 12000,
                "visibility": {
                  "identifier": "276f955c-63d7-42c8-9520-92d01dca0625",
                  "type": "group"
                },
                "comment": {
                  "type": "doc",
                  "version": 1,
                  "content": [
                    {
                      "type": "paragraph",
                      "content": [
                        {
                          "text": "I did some work here.",
                          "type": "text"
                        }
                      ]
                    }
                  ]
                },
                "started": "2021-01-17T12:34:00.000+0000"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Worklog"
                },
                "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\"}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `adjustEstimate` is set to `new` but `newEstimate` is not provided or is invalid.\n *  the user does not have permission to update the worklog.\n *  the request JSON is malformed."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "404": {
            "description": "Returned if:\n\n *  the issue is not found or user does not have permission to view the issue.\n *  the worklog is not found or the user does not have permission to view it.\n *  time tracking is disabled."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue worklogs"
        ],
        "summary": "Delete worklog",
        "description": "Deletes a worklog from an issue.\n\nTime 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).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  *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,\n *  If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "deleteWorklog",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the worklog.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "notifyUsers",
            "in": "query",
            "description": "Whether users watching the issue are notified by email.",
            "schema": {
              "type": "boolean",
              "default": true
            }
          },
          {
            "name": "adjustEstimate",
            "in": "query",
            "description": "Defines how to update the issue's time estimate, the options are:\n\n *  `new` Sets the estimate to a specific value, defined in `newEstimate`.\n *  `leave` Leaves the estimate unchanged.\n *  `manual` Increases the estimate by amount specified in `increaseBy`.\n *  `auto` Reduces the estimate by the value of `timeSpent` in the worklog.",
            "schema": {
              "type": "string",
              "enum": [
                "new",
                "leave",
                "manual",
                "auto"
              ],
              "default": "auto"
            }
          },
          {
            "name": "newEstimate",
            "in": "query",
            "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`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "increaseBy",
            "in": "query",
            "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`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "overrideEditableFlag",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful."
          },
          "400": {
            "description": "Returned if:\n\n *  `adjustEstimate` is set to `new` but `newEstimate` is not provided or is invalid.\n *  `adjustEstimate` is set to `manual` but `reduceBy` is not provided or is invalid.\n *  the user does not have permission to delete the worklog."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "404": {
            "description": "Returned if:\n\n *  the issue is not found or user does not have permission to view the issue.\n *  the worklog is not found or the user does not have permission to view it.\n *  time tracking is disabled."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue-worklog:jira",
              "delete:issue-worklog.property:jira",
              "write:issue.time-tracking:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/worklog/{worklogId}/properties": {
      "get": {
        "tags": [
          "Issue worklog properties"
        ],
        "summary": "Get worklog property keys",
        "description": "Returns the keys of all properties for a worklog.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "getWorklogPropertyKeys",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "worklogId",
            "in": "path",
            "description": "The ID of the worklog.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PropertyKeys"
                },
                "example": "{\"keys\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support\",\"key\":\"issue.support\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the worklog ID is invalid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the issue or worklog is not found.\n *  the user does not have permission to view the issue or worklog."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issue/{issueIdOrKey}/worklog/{worklogId}/properties/{propertyKey}": {
      "get": {
        "tags": [
          "Issue worklog properties"
        ],
        "summary": "Get worklog property",
        "description": "Returns the value of a worklog property.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "getWorklogProperty",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "worklogId",
            "in": "path",
            "description": "The ID of the worklog.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityProperty"
                },
                "example": "{\"key\":\"issue.support\",\"value\":{\"system.conversation.id\":\"b1bf38be-5e94-4b40-a3b8-9278735ee1e6\",\"system.support.time\":\"1m\"}}"
              }
            }
          },
          "400": {
            "description": "Returned if the worklog ID is invalid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the issue, worklog, or property is not found.\n *  the user does not have permission to view the issue or worklog."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-worklog.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue worklog properties"
        ],
        "summary": "Set worklog property",
        "description": "Sets the value of a worklog property. Use this operation to store custom data against the worklog.\n\nThe 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  *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.\n *  If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "setWorklogProperty",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "worklogId",
            "in": "path",
            "description": "The ID of the worklog.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the issue property. The maximum length is 255 characters.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the worklog property is updated.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "201": {
            "description": "Returned if the worklog property is created.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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:\n\n *  the issue or worklog is not found.\n *  the user does not have permission to view the issue or worklog."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-worklog.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Issue worklog properties"
        ],
        "summary": "Delete worklog property",
        "description": "Deletes a worklog property.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the worklog has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "deleteWorklogProperty",
        "parameters": [
          {
            "name": "issueIdOrKey",
            "in": "path",
            "description": "The ID or key of the issue.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "worklogId",
            "in": "path",
            "description": "The ID of the worklog.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "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:\n\n *  the issue, worklog, or property is not found.\n *  the user does not have permission to view the issue or worklog."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue-worklog.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issueLink": {
      "post": {
        "tags": [
          "Issue links"
        ],
        "summary": "Create issue link",
        "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.\n\nThis 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`.\n\nIf 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse project* [project permission](https://confluence.atlassian.com/x/yodKLg) for all the projects containing the issues to be linked,\n *  *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) on the project containing the from (outward) issue,\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.\n *  If the comment has visibility restrictions, belongs to the group or has the role visibility is restricted to.",
        "operationId": "linkIssues",
        "parameters": [],
        "requestBody": {
          "description": "The issue link request.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/LinkIssueRequestJsonBean"
              },
              "example": {
                "outwardIssue": {
                  "key": "MKY-1"
                },
                "comment": {
                  "visibility": {
                    "identifier": "276f955c-63d7-42c8-9520-92d01dca0625",
                    "type": "group",
                    "value": "jira-software-users"
                  },
                  "body": {
                    "type": "doc",
                    "version": 1,
                    "content": [
                      {
                        "type": "paragraph",
                        "content": [
                          {
                            "text": "Linked related issue!",
                            "type": "text"
                          }
                        ]
                      }
                    ]
                  }
                },
                "inwardIssue": {
                  "key": "HSP-1"
                },
                "type": {
                  "name": "Duplicate"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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:\n\n *  issue linking is disabled.\n *  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.\n *  the user does not have *link issues* project permission.\n *  either of the link issues are not found.\n *  the issue link type is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:comment:jira",
              "write:issue:jira",
              "write:issue-link:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      }
    },
    "/rest/api/3/issueLink/{linkId}": {
      "get": {
        "tags": [
          "Issue links"
        ],
        "summary": "Get issue link",
        "description": "Returns an issue link.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Browse project* [project permission](https://confluence.atlassian.com/x/yodKLg) for all the projects containing the linked issues.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, permission to view both of the issues.",
        "operationId": "getIssueLink",
        "parameters": [
          {
            "name": "linkId",
            "in": "path",
            "description": "The ID of the issue link.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueLink"
                },
                "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}}}}"
              }
            }
          },
          "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:\n\n *  issue linking is disabled.\n *  the issue link is not found.\n *  the user doesn't have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "delete": {
        "tags": [
          "Issue links"
        ],
        "summary": "Delete issue link",
        "description": "Deletes an issue link.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  Browse project [project permission](https://confluence.atlassian.com/x/yodKLg) for all the projects containing the issues in the link.\n *  *Link issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for at least one of the projects containing issues in the link.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, permission to view both of the issues.",
        "operationId": "deleteIssueLink",
        "parameters": [
          {
            "name": "linkId",
            "in": "path",
            "description": "The ID of the issue link.",
            "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:\n\n *  issue linking is disabled.\n *  the issue link is not found.\n *  the user doesn't have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue-link:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/issueLinkType": {
      "get": {
        "tags": [
          "Issue link types"
        ],
        "summary": "Get issue link types",
        "description": "Returns a list of all issue link types.\n\nTo use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for a project in the site.",
        "operationId": "getIssueLinkTypes",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueLinkTypes"
                },
                "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\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if issue linking is disabled."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-link-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue link types"
        ],
        "summary": "Create issue link type",
        "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.\n\nTo use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createIssueLinkType",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueLinkType"
              },
              "example": {
                "inward": "Duplicated by",
                "name": "Duplicate",
                "outward": "Duplicates"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueLinkType"
                },
                "example": "{\"id\":\"1000\",\"name\":\"Duplicate\",\"inward\":\"Duplicated by\",\"outward\":\"Duplicates\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issueLinkType/1000\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  issue linking is disabled.\n *  the issue link type name is in use.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-link-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issueLinkType/{issueLinkTypeId}": {
      "get": {
        "tags": [
          "Issue link types"
        ],
        "summary": "Get issue link type",
        "description": "Returns an issue link type.\n\nTo use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for a project in the site.",
        "operationId": "getIssueLinkType",
        "parameters": [
          {
            "name": "issueLinkTypeId",
            "in": "path",
            "description": "The ID of the issue link type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueLinkType"
                },
                "example": "{\"id\":\"1000\",\"name\":\"Duplicate\",\"inward\":\"Duplicated by\",\"outward\":\"Duplicates\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issueLinkType/1000\"}"
              }
            }
          },
          "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:\n\n *  issue linking is disabled.\n *  the issue link type is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-link-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue link types"
        ],
        "summary": "Update issue link type",
        "description": "Updates an issue link type.\n\nTo use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateIssueLinkType",
        "parameters": [
          {
            "name": "issueLinkTypeId",
            "in": "path",
            "description": "The ID of the issue link type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueLinkType"
              },
              "example": {
                "inward": "Duplicated by",
                "name": "Duplicate",
                "outward": "Duplicates"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueLinkType"
                },
                "example": "{\"id\":\"1000\",\"name\":\"Duplicate\",\"inward\":\"Duplicated by\",\"outward\":\"Duplicates\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/issueLinkType/1000\"}"
              }
            }
          },
          "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:\n\n *  issue linking is disabled.\n *  the issue link type is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-link-type:jira",
              "write:issue-link-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue link types"
        ],
        "summary": "Delete issue link type",
        "description": "Deletes an issue link type.\n\nTo use this operation, the site must have [issue linking](https://confluence.atlassian.com/x/yoXKM) enabled.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteIssueLinkType",
        "parameters": [
          {
            "name": "issueLinkTypeId",
            "in": "path",
            "description": "The ID of the issue link type.",
            "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:\n\n *  issue linking is disabled.\n *  the issue link type is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue-link-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuesecurityschemes": {
      "get": {
        "tags": [
          "Issue security schemes"
        ],
        "summary": "Get issue security schemes",
        "description": "Returns all [issue security schemes](https://confluence.atlassian.com/x/J4lKLg).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getIssueSecuritySchemes",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecuritySchemes"
                },
                "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}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "403": {
            "description": "Returned if the user does not have permission to administer issue security schemes."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-security-level:jira",
              "read:issue-security-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/issuesecurityschemes/{id}": {
      "get": {
        "tags": [
          "Issue security schemes"
        ],
        "summary": "Get issue security scheme",
        "description": "Returns an issue security scheme along with its security levels.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).\n *  *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for a project that uses the requested issue security scheme.",
        "operationId": "getIssueSecurityScheme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityScheme"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-security-level:jira",
              "read:issue-security-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/issuesecurityschemes/{issueSecuritySchemeId}/members": {
      "get": {
        "tags": [
          "Issue security level"
        ],
        "summary": "Get issue security level members",
        "description": "Returns issue security level members.\n\nOnly issue security level members in context of classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getIssueSecurityLevelMembers",
        "parameters": [
          {
            "name": "issueSecuritySchemeId",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "issueSecurityLevelId",
            "in": "query",
            "description": "The list of issue security level IDs. To include multiple issue security levels separate IDs with ampersand: `issueSecurityLevelId=10000&issueSecurityLevelId=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use expand to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `all` Returns all expandable information.\n *  `field` Returns information about the custom field granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `user` Returns information about the user who is granted the permission.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueSecurityLevelMember"
                },
                "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\":\"[email protected]\",\"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\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:issue-security-level:jira",
              "read:project-role:jira",
              "read:user:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/issuetype": {
      "get": {
        "tags": [
          "Issue types"
        ],
        "summary": "Get all issue types for user",
        "description": "Returns all issue types.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** Issue types are only returned as follows:\n\n *  if the user has the *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), all issue types are returned.\n *  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": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IssueTypeDetails"
                  }
                },
                "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\"}}}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type:jira",
              "read:avatar:jira",
              "read:project-category:jira",
              "read:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue types"
        ],
        "summary": "Create issue type",
        "description": "Creates an issue type and adds it to the default issue type scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createIssueType",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeCreateBean"
              },
              "example": {
                "name": "name",
                "description": "description",
                "type": "standard"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueTypeDetails"
                }
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid because:\n\n *  no content is sent.\n *  the issue type name exceeds 60 characters.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type:jira",
              "read:avatar:jira",
              "read:issue-type:jira",
              "read:project-category:jira",
              "read:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetype/project": {
      "get": {
        "tags": [
          "Issue types"
        ],
        "summary": "Get issue types for project",
        "description": "Returns issue types for a project.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "projectId",
            "in": "query",
            "description": "The ID of the project.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "level",
            "in": "query",
            "description": "The level of the issue type to filter by. Use:\n\n *  `-1` for Subtask.\n *  `0` for Base.\n *  `1` for Epic.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IssueTypeDetails"
                  }
                },
                "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\"}}}]"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the project is not found.\n *  the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type:jira",
              "read:avatar:jira",
              "read:project-category:jira",
              "read:project:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issuetype/{id}": {
      "get": {
        "tags": [
          "Issue types"
        ],
        "summary": "Get issue type",
        "description": "Returns an issue type.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueTypeDetails"
                },
                "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}"
              }
            }
          },
          "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:\n\n *  the issue type is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type:jira",
              "read:avatar:jira",
              "read:project-category:jira",
              "read:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue types"
        ],
        "summary": "Update issue type",
        "description": "Updates the issue type.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateIssueType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeUpdateBean"
              },
              "example": {
                "avatarId": 1,
                "name": "name",
                "description": "description"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueTypeDetails"
                }
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid because:\n\n *  no content is sent.\n *  the issue type name exceeds 60 characters.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type:jira",
              "read:avatar:jira",
              "read:issue-type:jira",
              "read:project-category:jira",
              "read:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue types"
        ],
        "summary": "Delete issue type",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteIssueType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "alternativeIssueTypeId",
            "in": "query",
            "description": "The ID of the replacement issue type.",
            "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:\n\n *  the issue type is in use and an alternative issue type is not specified.\n *  the issue type or alternative issue type is not found."
          },
          "409": {
            "description": "Returned if the issue type is in use and:\n\n *  also specified as the alternative issue type.\n *  is a *standard* issue type and the alternative issue type is a *subtask*."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetype/{id}/alternatives": {
      "get": {
        "tags": [
          "Issue types"
        ],
        "summary": "Get alternative issue types",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAlternativeIssueTypes",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IssueTypeDetails"
                  }
                },
                "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\"}}}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the issue type is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type:jira",
              "read:project-category:jira",
              "read:project:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issuetype/{id}/avatar2": {
      "post": {
        "tags": [
          "Issue types"
        ],
        "summary": "Load issue type avatar",
        "description": "Loads an avatar for the issue type.\n\nSpecify the avatar's local file location in the body of the request. Also, include the following headers:\n\n *  `X-Atlassian-Token: no-check` To prevent XSRF protection blocking the request, for more information see [Special Headers](#special-request-headers).\n *  `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG.\n\nFor example:  \n`curl --request POST \\ --user [email protected]: \\ --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`\n\nThe 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.\n\nThe cropped image is then used to create avatars of 16x16, 24x24, 32x32, and 48x48 in size.\n\nAfter creating the avatar, use [ Update issue type](#api-rest-api-3-issuetype-id-put) to set it as the issue type's displayed avatar.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createIssueTypeAvatar",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x",
            "in": "query",
            "description": "The X coordinate of the top-left corner of the crop region.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "y",
            "in": "query",
            "description": "The Y coordinate of the top-left corner of the crop region.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "size",
            "in": "query",
            "description": "The length of each side of the crop region.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Avatar"
                },
                "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\"}}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  an image isn't included in the request.\n *  the image type is unsupported.\n *  the crop parameters extend the crop area beyond the edge of the image.\n *  `cropSize` is missing.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:avatar:jira",
              "write:issue-type:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetype/{issueTypeId}/properties": {
      "get": {
        "tags": [
          "Issue type properties"
        ],
        "summary": "Get issue type property keys",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) to get the property keys of any issue type.\n *  *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": [
          {
            "name": "issueTypeId",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PropertyKeys"
                },
                "example": "{\"keys\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support\",\"key\":\"issue.support\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the issue type ID is invalid."
          },
          "404": {
            "description": "Returned if:\n\n *  the issue type is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/issuetype/{issueTypeId}/properties/{propertyKey}": {
      "get": {
        "tags": [
          "Issue type properties"
        ],
        "summary": "Get issue type property",
        "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).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) to get the details of any issue type.\n *  *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": [
          {
            "name": "issueTypeId",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityProperty"
                },
                "example": "{\"key\":\"issue.support\",\"value\":{\"system.conversation.id\":\"b1bf38be-5e94-4b40-a3b8-9278735ee1e6\",\"system.support.time\":\"1m\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue type properties"
        ],
        "summary": "Set issue type property",
        "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.\n\nThe 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setIssueTypeProperty",
        "parameters": [
          {
            "name": "issueTypeId",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the issue type property. The maximum length is 255 characters.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {},
              "example": {
                "number": 5,
                "string": "string-value"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the issue type property is updated.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "201": {
            "description": "Returned if the issue type property is created.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the issue type ID is invalid.\n *  a property value is not provided.\n *  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:\n\n *  the issue type is not found.\n *  the user does not have the permission view the issue type."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue type properties"
        ],
        "summary": "Delete issue type property",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteIssueTypeProperty",
        "parameters": [
          {
            "name": "issueTypeId",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "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.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue-type.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescheme": {
      "get": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Get all issue type schemes",
        "description": "Returns a [paginated](#pagination) list of issue type schemes.\n\nOnly issue type schemes used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllIssueTypeSchemes",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of issue type schemes IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `name` Sorts by issue type scheme name.\n *  `id` Sorts by issue type scheme ID.",
            "schema": {
              "type": "string",
              "enum": [
                "name",
                "-name",
                "+name",
                "id",
                "-id",
                "+id"
              ],
              "default": "id"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `projects` For each issue type schemes, returns information about the projects the issue type scheme is assigned to.\n *  `issueTypes` For each issue type schemes, returns information about the issueTypes the issue type scheme have.",
            "schema": {
              "type": "string",
              "default": ""
            }
          },
          {
            "name": "queryString",
            "in": "query",
            "description": "String used to perform a case-insensitive partial match with issue type scheme name.",
            "schema": {
              "type": "string",
              "default": ""
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueTypeScheme"
                },
                "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}]}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Create issue type scheme",
        "description": "Creates an issue type scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createIssueTypeScheme",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeSchemeDetails"
              },
              "example": {
                "defaultIssueTypeId": "10002",
                "issueTypeIds": [
                  "10001",
                  "10002",
                  "10003"
                ],
                "name": "Kanban Issue Type Scheme",
                "description": "A collection of issue types suited to use in a kanban style project."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueTypeSchemeID"
                },
                "example": "{\"issueTypeSchemeId\":\"10010\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The default issue type ID has to be present in issue type IDs list.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type schemes.\"],\"errors\":{}}"
              }
            }
          },
          "409": {
            "description": "Returned if the scheme name is used by another scheme.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The name is used by another scheme.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescheme/mapping": {
      "get": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Get issue type scheme items",
        "description": "Returns a [paginated](#pagination) list of issue type scheme items.\n\nOnly issue type scheme items used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getIssueTypeSchemesMapping",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "issueTypeSchemeId",
            "in": "query",
            "description": "The list of issue type scheme IDs. To include multiple IDs, provide an ampersand-separated list. For example, `issueTypeSchemeId=10000&issueTypeSchemeId=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueTypeSchemeMapping"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescheme/project": {
      "get": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Get issue type schemes for projects",
        "description": "Returns a [paginated](#pagination) list of issue type schemes and, for each issue type scheme, a list of the projects that use it.\n\nOnly issue type schemes used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getIssueTypeSchemeForProjects",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "The list of project IDs. To include multiple project IDs, provide an ampersand-separated list. For example, `projectId=10000&projectId=10001`.",
            "required": true,
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueTypeSchemeProjects"
                },
                "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\"]}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Assign issue type scheme to project",
        "description": "Assigns an issue type scheme to a project.\n\nIf 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.\n\nIssue type schemes can only be assigned to classic projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "assignIssueTypeSchemeToProject",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeSchemeProjectAssociation"
              },
              "example": {
                "issueTypeSchemeId": "10000",
                "projectId": "10000"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "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\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type scheme or the project is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-scheme:jira",
              "write:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescheme/{issueTypeSchemeId}": {
      "put": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Update issue type scheme",
        "description": "Updates an issue type scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateIssueTypeScheme",
        "parameters": [
          {
            "name": "issueTypeSchemeId",
            "in": "path",
            "description": "The ID of the issue type scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeSchemeUpdateDetails"
              },
              "example": {
                "defaultIssueTypeId": "10002",
                "name": "Kanban Issue Type Scheme",
                "description": "A collection of issue types suited to use in a kanban style project."
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The default issue type has to be one of the issue types of the scheme.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Delete issue type scheme",
        "description": "Deletes an issue type scheme.\n\nOnly issue type schemes used in classic projects can be deleted.\n\nAny projects assigned to the scheme are reassigned to the default issue type scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteIssueTypeScheme",
        "parameters": [
          {
            "name": "issueTypeSchemeId",
            "in": "path",
            "description": "The ID of the issue type scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the issue type scheme is deleted.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is to delete the default issue type scheme.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The default issue type scheme can't be removed.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue-type-scheme:jira",
              "write:project:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescheme/{issueTypeSchemeId}/issuetype": {
      "put": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Add issue types to issue type scheme",
        "description": "Adds issue types to an issue type scheme.\n\nThe added issue types are appended to the issue types list.\n\nIf any of the issue types exist in the issue type scheme, the operation fails and no issue types are added.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "addIssueTypesToIssueTypeScheme",
        "parameters": [
          {
            "name": "issueTypeSchemeId",
            "in": "path",
            "description": "The ID of the issue type scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeIds"
              },
              "example": {
                "issueTypeIds": [
                  "10000",
                  "10002",
                  "10003"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"These issue types were not added because they are already present in the issue type scheme: 10002, 10003\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type or the issue type scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"These issue types were not found: 10000, 10002\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescheme/{issueTypeSchemeId}/issuetype/move": {
      "put": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Change order of issue types",
        "description": "Changes the order of issue types in an issue type scheme.\n\nThe request body parameters must meet the following requirements:\n\n *  all of the issue types must belong to the issue type scheme.\n *  either `after` or `position` must be provided.\n *  the issue type in `after` must not be in the issue type list.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "reorderIssueTypesInIssueTypeScheme",
        "parameters": [
          {
            "name": "issueTypeSchemeId",
            "in": "path",
            "description": "The ID of the issue type scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/OrderOfIssueTypes"
              },
              "example": {
                "issueTypeIds": [
                  "10001",
                  "10004",
                  "10002"
                ],
                "after": "10008"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "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\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescheme/{issueTypeSchemeId}/issuetype/{issueTypeId}": {
      "delete": {
        "tags": [
          "Issue type schemes"
        ],
        "summary": "Remove issue type from issue type scheme",
        "description": "Removes an issue type from an issue type scheme.\n\nThis operation cannot remove:\n\n *  any issue type used by issues.\n *  any issue types from the default issue type scheme.\n *  the last standard issue type from an issue type scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "removeIssueTypeFromIssueTypeScheme",
        "parameters": [
          {
            "name": "issueTypeSchemeId",
            "in": "path",
            "description": "The ID of the issue type scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "issueTypeId",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Can't remove the last standard issue type from the issue type scheme.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type scheme is missing or the issue type is not found in the issue type scheme.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type was not found in the issue type scheme.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescreenscheme": {
      "get": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Get issue type screen schemes",
        "description": "Returns a [paginated](#pagination) list of issue type screen schemes.\n\nOnly issue type screen schemes used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getIssueTypeScreenSchemes",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of issue type screen scheme IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "queryString",
            "in": "query",
            "description": "String used to perform a case-insensitive partial match with issue type screen scheme name.",
            "schema": {
              "type": "string",
              "default": ""
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `name` Sorts by issue type screen scheme name.\n *  `id` Sorts by issue type screen scheme ID.",
            "schema": {
              "type": "string",
              "enum": [
                "name",
                "-name",
                "+name",
                "id",
                "-id",
                "+id"
              ],
              "default": "id"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string",
              "default": ""
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueTypeScreenScheme"
                },
                "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\"}}]}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Create issue type screen scheme",
        "description": "Creates an issue type screen scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createIssueTypeScreenScheme",
        "parameters": [],
        "requestBody": {
          "description": "An issue type screen scheme bean.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeScreenSchemeDetails"
              },
              "example": {
                "name": "Scrum issue type screen scheme",
                "issueTypeMappings": [
                  {
                    "issueTypeId": "default",
                    "screenSchemeId": "10001"
                  },
                  {
                    "issueTypeId": "10001",
                    "screenSchemeId": "10002"
                  },
                  {
                    "issueTypeId": "10002",
                    "screenSchemeId": "10002"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueTypeScreenSchemeId"
                },
                "example": "{\"id\":\"10001\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"One or more issue type IDs are repeated, an issue type ID can only be specified once.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type screen schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type or screen scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"One or more issue type IDs were not found.\"],\"errors\":{}}"
              }
            }
          },
          "409": {
            "description": "Returned if the issue type is a sub-task, but sub-tasks are disabled in Jira settings.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Sub-tasks are disabled in Jira. At least one of the issue types is a sub-task.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescreenscheme/mapping": {
      "get": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Get issue type screen scheme items",
        "description": "Returns a [paginated](#pagination) list of issue type screen scheme items.\n\nOnly issue type screen schemes used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getIssueTypeScreenSchemeMappings",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "issueTypeScreenSchemeId",
            "in": "query",
            "description": "The list of issue type screen scheme IDs. To include multiple issue type screen schemes, separate IDs with ampersand: `issueTypeScreenSchemeId=10000&issueTypeScreenSchemeId=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueTypeScreenSchemeItem"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescreenscheme/project": {
      "get": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Get issue type screen schemes for projects",
        "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.\n\nOnly issue type screen schemes used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getIssueTypeScreenSchemeProjectAssociations",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "The list of project IDs. To include multiple projects, separate IDs with ampersand: `projectId=10000&projectId=10001`.",
            "required": true,
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanIssueTypeScreenSchemesProjects"
                },
                "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\"]}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Assign issue type screen scheme to project",
        "description": "Assigns an issue type screen scheme to a project.\n\nIssue type screen schemes can only be assigned to classic projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "assignIssueTypeScreenSchemeToProject",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeScreenSchemeProjectAssociation"
              },
              "example": {
                "issueTypeScreenSchemeId": "10001",
                "projectId": "10002"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  project is not found.\n *  issue type screen scheme is not found.\n *  the project is not a classic project.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only classic projects can have issue type screen schemes assigned.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type screen schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type screen scheme or the project are missing.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type screen scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-screen-scheme:jira",
              "write:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}": {
      "put": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Update issue type screen scheme",
        "description": "Updates an issue type screen scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateIssueTypeScreenScheme",
        "parameters": [
          {
            "name": "issueTypeScreenSchemeId",
            "in": "path",
            "description": "The ID of the issue type screen scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The issue type screen scheme update details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeScreenSchemeUpdateDetails"
              },
              "example": {
                "name": "Scrum scheme",
                "description": "Screens for scrum issue types."
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type screen scheme name is in use.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type screen schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type screen scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type screen scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Delete issue type screen scheme",
        "description": "Deletes an issue type screen scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteIssueTypeScreenScheme",
        "parameters": [
          {
            "name": "issueTypeScreenSchemeId",
            "in": "path",
            "description": "The ID of the issue type screen scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the issue type screen scheme is deleted.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type screen scheme cannot be deleted because it is assigned to one or more projects.\"],\"errors\":{}}"
              }
            }
          },
          "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 issue type screen scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type screen scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}/mapping": {
      "put": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Append mappings to issue type screen scheme",
        "description": "Appends issue type to screen scheme mappings to an issue type screen scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "appendMappingsForIssueTypeScreenScheme",
        "parameters": [
          {
            "name": "issueTypeScreenSchemeId",
            "in": "path",
            "description": "The ID of the issue type screen scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeScreenSchemeMappingDetails"
              },
              "example": {
                "issueTypeMappings": [
                  {
                    "issueTypeId": "10000",
                    "screenSchemeId": "10001"
                  },
                  {
                    "issueTypeId": "10001",
                    "screenSchemeId": "10002"
                  },
                  {
                    "issueTypeId": "10002",
                    "screenSchemeId": "10002"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"A default mapping cannot be added.\"],\"errors\":{}}"
              }
            }
          },
          "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 issue type screen scheme, issue type, or screen scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type screen scheme was not found.\"],\"errors\":{}}"
              }
            }
          },
          "409": {
            "description": "Returned if the issue type is a sub-task, but sub-tasks are disabled in Jira settings.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Sub-tasks are disabled in Jira. At least one of the issue types is a sub-task.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}/mapping/default": {
      "put": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Update issue type screen scheme default screen scheme",
        "description": "Updates the default screen scheme of an issue type screen scheme. The default screen scheme is used for all unmapped issue types.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateDefaultScreenScheme",
        "parameters": [
          {
            "name": "issueTypeScreenSchemeId",
            "in": "path",
            "description": "The ID of the issue type screen scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateDefaultScreenScheme"
              },
              "example": {
                "screenSchemeId": "10010"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The screenSchemeId has to be provided.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type screen schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "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.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type screen scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}/mapping/remove": {
      "post": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Remove mappings from issue type screen scheme",
        "description": "Removes issue type to screen scheme mappings from an issue type screen scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "removeMappingsFromIssueTypeScreenScheme",
        "parameters": [
          {
            "name": "issueTypeScreenSchemeId",
            "in": "path",
            "description": "The ID of the issue type screen scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeIds"
              },
              "example": {
                "issueTypeIds": [
                  "10000",
                  "10001",
                  "10004"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the screen scheme mappings are removed from the issue type screen scheme.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issueTypeIds must not contain duplicates.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type screen schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue type screen scheme or one or more issue type mappings are not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The issue type screen scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/issuetypescreenscheme/{issueTypeScreenSchemeId}/project": {
      "get": {
        "tags": [
          "Issue type screen schemes"
        ],
        "summary": "Get issue type screen scheme projects",
        "description": "Returns a [paginated](#pagination) list of projects associated with an issue type screen scheme.\n\nOnly company-managed projects associated with an issue type screen scheme are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getProjectsForIssueTypeScreenScheme",
        "parameters": [
          {
            "name": "issueTypeScreenSchemeId",
            "in": "path",
            "description": "The ID of the issue type screen scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "query",
            "in": "query",
            "schema": {
              "type": "string",
              "default": ""
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanProjectDetails"
                },
                "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\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira",
              "read:avatar:jira",
              "read:project-category:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/jql/autocompletedata": {
      "get": {
        "tags": [
          "JQL"
        ],
        "summary": "Get field reference data (GET)",
        "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.\n\nTo 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAutoComplete",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JQLReferenceData"
                },
                "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\"]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "JQL"
        ],
        "summary": "Get field reference data (POST)",
        "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.\n\nThis operation can filter the custom fields returned by project. Invalid project IDs in `projectIds` are ignored. System fields are always returned.\n\nIt 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.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAutoCompletePost",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchAutoCompleteFilter"
              },
              "example": {
                "projectIds": [
                  10000,
                  10001,
                  10002
                ],
                "includeCollapsedFields": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/JQLReferenceData"
                },
                "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\"]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/jql/autocompletedata/suggestions": {
      "get": {
        "tags": [
          "JQL"
        ],
        "summary": "Get field auto complete suggestions",
        "description": "Returns the JQL search auto complete suggestions for a field.\n\nSuggestions can be obtained by providing:\n\n *  `fieldName` to get a list of all values for the field.\n *  `fieldName` and `fieldValue` to get a list of values containing the text in `fieldValue`.\n *  `fieldName` and `predicateName` to get a list of all predicate values for the field.\n *  `fieldName`, `predicateName`, and `predicateValue` to get a list of predicate values containing the text in `predicateValue`.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getFieldAutoCompleteForQueryString",
        "parameters": [
          {
            "name": "fieldName",
            "in": "query",
            "description": "The name of the field.",
            "schema": {
              "type": "string",
              "example": "reporter"
            },
            "x-showInExample": "true"
          },
          {
            "name": "fieldValue",
            "in": "query",
            "description": "The partial field item name entered by the user.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "predicateName",
            "in": "query",
            "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*.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "predicateValue",
            "in": "query",
            "description": "The partial predicate item name entered by the user.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/AutoCompleteSuggestions"
                },
                "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)\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if an invalid combination of parameters is passed."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-details:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/jql/match": {
      "post": {
        "tags": [
          "Issue search"
        ],
        "summary": "Check issues against JQL",
        "description": "Checks whether one or more issues would be returned by one or more JQL queries.\n\n**[Permissions](#permissions) required:** None, however, issues are only matched against JQL queries where the user has:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.\n *  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": {
              "schema": {
                "$ref": "#/components/schemas/IssuesAndJQLQueries"
              },
              "example": {
                "issueIds": [
                  10001,
                  1000,
                  10042
                ],
                "jqls": [
                  "project = FOO",
                  "issuetype = Bug",
                  "summary ~ \"some text\" AND project in (FOO, BAR)"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueMatches"
                },
                "example": "{\"matches\":[{\"matchedIssues\":[10000,10004],\"errors\":[]},{\"matchedIssues\":[100134,10025,10236],\"errors\":[]},{\"matchedIssues\":[],\"errors\":[]},{\"matchedIssues\":[],\"errors\":[\"Invalid JQL: broken = value\"]}]}"
              }
            }
          },
          "400": {
            "description": "Returned if `jqls` exceeds the maximum number of JQL queries or `issueIds` exceeds the maximum number of issue IDs."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-details:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/jql/parse": {
      "post": {
        "tags": [
          "JQL"
        ],
        "summary": "Parse JQL query",
        "description": "Parses and validates JQL queries.\n\nValidation is performed in context of the current user.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "parseJqlQueries",
        "parameters": [
          {
            "name": "validation",
            "in": "query",
            "description": "How to validate the JQL query and treat the validation results. Validation options include:\n\n *  `strict` Returns all errors. If validation fails, the query structure is not returned.\n *  `warn` Returns all errors. If validation fails but the JQL query is correctly formed, the query structure is returned.\n *  `none` No validation is performed. If JQL query is correctly formed, the query structure is returned.",
            "schema": {
              "type": "string",
              "enum": [
                "strict",
                "warn",
                "none"
              ],
              "default": "strict"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/JqlQueriesToParse"
              },
              "example": {
                "queries": [
                  "summary ~ test AND (labels in (urgent, blocker) OR lastCommentedBy = currentUser()) AND status CHANGED AFTER startOfMonth(-1M) ORDER BY updated DESC",
                  "invalid query",
                  "summary = test",
                  "summary in test",
                  "project = INVALID",
                  "universe = 42"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ParsedJqlQueries"
                },
                "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\"},\"operator\":\"~\",\"operand\":{\"value\":\"test\"}},{\"clauses\":[{\"field\":{\"name\":\"labels\"},\"operator\":\"in\",\"operand\":{\"values\":[{\"value\":\"urgent\"},{\"value\":\"blocker\"}]}},{\"field\":{\"name\":\"lastCommentedBy\",\"property\":[{\"entity\":\"issue\",\"key\":\"propertyKey\",\"path\":\"path.in.property\",\"type\":\"user\"}]},\"operator\":\"=\",\"operand\":{\"function\":\"currentUser\",\"arguments\":[]}}],\"operator\":\"or\"},{\"field\":{\"name\":\"status\"},\"operator\":\"changed\",\"predicates\":[{\"operator\":\"after\",\"operand\":{\"function\":\"startOfMonth\",\"arguments\":[\"-1M\"]}}]}],\"operator\":\"and\"},\"orderBy\":{\"fields\":[{\"field\":{\"name\":\"updated\"},\"direction\":\"desc\"}]}}},{\"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.\"]}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "validate:jql:jira",
              "read:jql:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/jql/pdcleaner": {
      "post": {
        "tags": [
          "JQL"
        ],
        "summary": "Convert user identifiers to account IDs in JQL queries",
        "description": "Converts one or more JQL queries with user identifiers (username or user key) to equivalent JQL queries with account IDs.\n\nYou 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/).\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "migrateQueries",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/JQLPersonalDataMigrationRequest"
              },
              "example": {
                "queryStrings": [
                  "assignee = mia",
                  "issuetype = Bug AND assignee in (mia) AND reporter in (alana) order by lastViewed DESC"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful. Note that the JQL queries are returned in the same order that they were passed.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConvertedJQLQueries"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira",
              "read:jql:jira",
              "validate:jql:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/jql/sanitize": {
      "post": {
        "tags": [
          "JQL"
        ],
        "summary": "Sanitize JQL queries",
        "description": "Sanitizes one or more JQL queries by converting readable details into IDs where a user doesn't have permission to view the entity.\n\nFor 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.\n\nNote 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).\n\nBefore sanitization each JQL query is parsed. The queries are returned in the same order that they were passed.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "sanitiseJqlQueries",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/JqlQueriesToSanitize"
              },
              "example": {
                "queries": [
                  {
                    "query": "project = 'Sample project'"
                  },
                  {
                    "accountId": "5b10ac8d82e05b22cc7d4ef5",
                    "query": "project = 'Sample project'"
                  },
                  {
                    "accountId": "cda2aa1395ac195d951b3387",
                    "query": "project = 'Sample project'"
                  },
                  {
                    "accountId": "5b10ac8d82e05b22cc7d4ef5",
                    "query": "invalid query"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SanitizedJqlQueries"
                },
                "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\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The queries has to be provided.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"You are not authorized to perform this action. Administrator privileges are required.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:jql:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/label": {
      "get": {
        "tags": [
          "Labels"
        ],
        "summary": "Get all labels",
        "description": "Returns a [paginated](#pagination) list of labels.",
        "operationId": "getAllLabels",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 1000
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanString"
                },
                "example": "{\"maxResults\":2,\"startAt\":0,\"total\":100,\"isLast\":false,\"values\":[\"performance\",\"security\"]}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:label:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/mypermissions": {
      "get": {
        "tags": [
          "Permissions"
        ],
        "summary": "Get my permissions",
        "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.\n\nThe user is reported as having a project permission:\n\n *  in the global context, if the user has the project permission in any project.\n *  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.\n *  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.\n *  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.\n\nThis 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.\n\nGlobal permissions are unaffected by context.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getMyPermissions",
        "parameters": [
          {
            "name": "projectKey",
            "in": "query",
            "description": "The key of project. Ignored if `projectId` is provided.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "The ID of project.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "issueKey",
            "in": "query",
            "description": "The key of the issue. Ignored if `issueId` is provided.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "issueId",
            "in": "query",
            "description": "The ID of the issue.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "permissions",
            "in": "query",
            "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).",
            "schema": {
              "type": "string",
              "example": "BROWSE_PROJECTS,EDIT_ISSUES"
            },
            "x-showInExample": "true",
            "x-changes": [
              {
                "type": "required",
                "announced": "2018-08-01",
                "effective": "2019-02-01",
                "details": "https://developer.atlassian.com/cloud/jira/platform/change-notice-get-my-permissions-requires-permissions-query-parameter/"
              }
            ]
          },
          {
            "name": "projectUuid",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "projectConfigurationUuid",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "commentId",
            "in": "query",
            "description": "The ID of the comment.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Permissions"
                },
                "example": "{\"permissions\":{\"EDIT_ISSUES\":{\"id\":\"12\",\"key\":\"EDIT_ISSUES\",\"name\":\"Edit Issues\",\"type\":\"PROJECT\",\"description\":\"Ability to edit issues.\",\"havePermission\":true}}}"
              }
            }
          },
          "400": {
            "description": "Returned if `permissions` is empty, contains an invalid key, or does not equal BROWSE\\_PROJECTS when commentId is provided.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "404": {
            "description": "Returned if the project or issue is not found or the user does not have permission to view the project or issue.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": []
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": []
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:permission:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/mypreferences": {
      "get": {
        "tags": [
          "Myself"
        ],
        "summary": "Get preference",
        "description": "Returns the value of a preference of the current user.\n\nNote that these keys are deprecated:\n\n *  *jira.user.locale* The locale of the user. By default this is not set and the user takes the locale of the instance.\n *  *jira.user.timezone* The time zone of the user. By default this is not set and the user takes the timezone of the instance.\n\nUse [ 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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getPreference",
        "parameters": [
          {
            "name": "key",
            "in": "query",
            "description": "The key of the preference.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if the key is not provided or not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ACT_AS_USER"
      },
      "put": {
        "tags": [
          "Myself"
        ],
        "summary": "Set preference",
        "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:\n\n *  *user.notifications.mimetype* The mime type used in notifications sent to the user. Defaults to `html`.\n *  *user.notify.own.changes* Whether the user gets notified of their own changes. Defaults to `false`.\n *  *user.default.share.private* Whether new [ filters](https://confluence.atlassian.com/x/eQiiLQ) are set to private. Defaults to `true`.\n *  *user.keyboard.shortcuts.disabled* Whether keyboard shortcuts are disabled. Defaults to `false`.\n *  *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.\n\nNote that these keys are deprecated:\n\n *  *jira.user.locale* The locale of the user. By default, not set. The user takes the instance locale.\n *  *jira.user.timezone* The time zone of the user. By default, not set. The user takes the instance timezone.\n\nUse [ 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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "setPreference",
        "parameters": [
          {
            "name": "key",
            "in": "query",
            "description": "The key of the preference. The maximum length is 255 characters.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The value of the preference as a plain text string. The maximum length is 255 characters.",
          "content": {
            "application/json": {
              "schema": {
                "type": "string"
              }
            },
            "text/plain": {
              "schema": {
                "type": "string"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if the key or value is not provided or invalid."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:user-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ACT_AS_USER"
      },
      "delete": {
        "tags": [
          "Myself"
        ],
        "summary": "Delete preference",
        "description": "Deletes a preference of the user, which restores the default value of system defined settings.\n\nNote that these keys are deprecated:\n\n *  *jira.user.locale* The locale of the user. By default, not set. The user takes the instance locale.\n *  *jira.user.timezone* The time zone of the user. By default, not set. The user takes the instance timezone.\n\nUse [ 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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "removePreference",
        "parameters": [
          {
            "name": "key",
            "in": "query",
            "description": "The key of the preference.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:user-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ACT_AS_USER"
      }
    },
    "/rest/api/3/mypreferences/locale": {
      "get": {
        "tags": [
          "Myself"
        ],
        "summary": "Get locale",
        "description": "Returns the locale for the user.\n\nIf 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getLocale",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Locale"
                },
                "example": "{\"locale\":\"en_US\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user-configuration:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ACT_AS_USER"
      },
      "put": {
        "tags": [
          "Myself"
        ],
        "summary": "Set locale",
        "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.\n\nSets the locale of the user. The locale must be one supported by the instance of Jira.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "setLocale",
        "parameters": [],
        "requestBody": {
          "description": "The locale defined in a LocaleBean.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Locale"
              },
              "example": {
                "locale": "en_US"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if request is invalid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      },
      "delete": {
        "tags": [
          "Myself"
        ],
        "summary": "Delete locale",
        "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.\n\nDeletes the locale of the user, which restores the default setting.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "deleteLocale",
        "parameters": [],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/myself": {
      "get": {
        "tags": [
          "Myself"
        ],
        "summary": "Get current user",
        "description": "Returns details for the current user.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getCurrentUser",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about user in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `groups` Returns all groups, including nested groups, the user belongs to.\n *  `applicationRoles` Returns the application roles the user is assigned to.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"key\":\"\",\"accountId\":\"5b10a2844c20165700ede21g\",\"accountType\":\"atlassian\",\"name\":\"\",\"emailAddress\":\"[email protected]\",\"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\":[]}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:application-role:jira",
              "read:group:jira",
              "read:user:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/notificationscheme": {
      "get": {
        "tags": [
          "Issue notification schemes"
        ],
        "summary": "Get notification schemes paginated",
        "description": "Returns a [paginated](#pagination) list of [notification schemes](https://confluence.atlassian.com/x/8YdKLg) ordered by the display name.\n\n*Note that you should allow for events without recipients to appear in responses.*\n\n**[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": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of notification schemes IDs to be filtered by",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "The list of projects IDs to be filtered by",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "onlyDefault",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `all` Returns all expandable information\n *  `field` Returns information about any custom fields assigned to receive an event\n *  `group` Returns information about any groups assigned to receive an event\n *  `notificationSchemeEvents` Returns a list of event associations. This list is returned for all expandable information\n *  `projectRole` Returns information about any project roles assigned to receive an event\n *  `user` Returns information about any users assigned to receive an event",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "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.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanNotificationScheme"
                },
                "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\":\"[email protected]\",\"recipient\":\"[email protected]\",\"emailAddress\":\"[email protected]\"},{\"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\":\"[email protected]\",\"recipient\":\"[email protected]\",\"emailAddress\":\"[email protected]\"},{\"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]}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"%20. is not a valid value. id must be zero or a positive integer.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Issue notification schemes"
        ],
        "summary": "Create notification scheme",
        "description": "Creates a notification scheme with notifications. You can create up to 1000 notifications per request.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createNotificationScheme",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateNotificationSchemeDetails"
              },
              "example": {
                "name": "My new notification scheme",
                "description": "My new scheme description",
                "notificationSchemeEvents": [
                  {
                    "event": {
                      "id": "1"
                    },
                    "notifications": [
                      {
                        "parameter": "jira-administrators",
                        "notificationType": "Group"
                      }
                    ]
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotificationSchemeId"
                },
                "example": "{\"id\":\"10001\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The length of the description must not exceed 4000 characters.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"You are not authorized to perform this action. Administrator privileges are required.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/notificationscheme/project": {
      "get": {
        "tags": [
          "Issue notification schemes"
        ],
        "summary": "Get projects using notification schemes paginated",
        "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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getNotificationSchemeToProjectMappings",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "string",
              "default": "0"
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "string",
              "default": "50"
            }
          },
          {
            "name": "notificationSchemeId",
            "in": "query",
            "description": "The list of notifications scheme IDs to be filtered out",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "The list of project IDs to be filtered out",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if search criteria are invalid, strings vs numbers for projectId, notificationSchemeId, startAt and maxResult",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:notification-scheme:jira",
              "read:project:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/notificationscheme/{id}": {
      "get": {
        "tags": [
          "Issue notification schemes"
        ],
        "summary": "Get notification scheme",
        "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. Deprecated, use [Get notification schemes paginated](#api-rest-api-3-notificationscheme-get) supporting search and pagination.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `all` Returns all expandable information\n *  `field` Returns information about any custom fields assigned to receive an event\n *  `group` Returns information about any groups assigned to receive an event\n *  `notificationSchemeEvents` Returns a list of event associations. This list is returned for all expandable information\n *  `projectRole` Returns information about any project roles assigned to receive an event\n *  `user` Returns information about any users assigned to receive an event",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotificationScheme"
                },
                "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\":\"[email protected]\",\"recipient\":\"[email protected]\",\"emailAddress\":\"[email protected]\"},{\"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\":\"[email protected]\",\"recipient\":\"[email protected]\",\"emailAddress\":\"[email protected]\"},{\"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]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Issue notification schemes"
        ],
        "summary": "Update notification scheme",
        "description": "Updates a notification scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateNotificationScheme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the notification scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateNotificationSchemeDetails"
              },
              "example": {
                "name": "My updated notification scheme",
                "description": "My updated notification scheme description"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The length of the description must not exceed 4000 characters.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"You are not authorized to perform this action. Administrator privileges are required.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the notification scheme isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Notification scheme with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/notificationscheme/{id}/notification": {
      "put": {
        "tags": [
          "Issue notification schemes"
        ],
        "summary": "Add notifications",
        "description": "Adds notifications to a notifications scheme. You can add up to 1000 notifications per request.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "addNotifications",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the notification scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddNotificationsDetails"
              },
              "example": {
                "notificationSchemeEvents": [
                  {
                    "event": {
                      "id": "1"
                    },
                    "notifications": [
                      {
                        "parameter": "jira-administrators",
                        "notificationType": "Group"
                      }
                    ]
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Event type with ID 2 not found.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"You are not authorized to perform this action. Administrator privileges are required.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the notification scheme isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Notification scheme with ID 10001 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/notificationscheme/{notificationSchemeId}": {
      "delete": {
        "tags": [
          "Issue notification schemes"
        ],
        "summary": "Delete notification scheme",
        "description": "Deletes a notification scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteNotificationScheme",
        "parameters": [
          {
            "name": "notificationSchemeId",
            "in": "path",
            "description": "The ID of the notification scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"You can’t delete the default notification scheme.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"You are not authorized to perform this action. Administrator privileges are required.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the notification scheme isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Notification scheme with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/notificationscheme/{notificationSchemeId}/notification/{notificationId}": {
      "delete": {
        "tags": [
          "Issue notification schemes"
        ],
        "summary": "Remove notification from notification scheme",
        "description": "Removes a notification from a notification scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "removeNotificationFromNotificationScheme",
        "parameters": [
          {
            "name": "notificationSchemeId",
            "in": "path",
            "description": "The ID of the notification scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "notificationId",
            "in": "path",
            "description": "The ID of the notification.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"You are not authorized to perform this action. Administrator privileges are required.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if either the notification scheme or notification isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Notification scheme with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/permissions": {
      "get": {
        "tags": [
          "Permissions"
        ],
        "summary": "Get all permissions",
        "description": "Returns all permissions, including:\n\n *  global permissions.\n *  project permissions.\n *  global permissions added by plugins.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllPermissions",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Permissions"
                },
                "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.\"}}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:permission:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/permissions/check": {
      "post": {
        "tags": [
          "Permissions"
        ],
        "summary": "Get bulk permissions",
        "description": "Returns:\n\n *  for a list of global permissions, the global permissions granted to a user.\n *  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.\n\nIf no account ID is provided, the operation returns details for the logged in user.\n\nNote that:\n\n *  Invalid project and issue IDs are ignored.\n *  A maximum of 1000 projects and 1000 issues can be checked.\n *  Null values in `globalPermissions`, `projectPermissions`, `projectPermissions.projects`, and `projectPermissions.issues` are ignored.\n *  Empty strings in `projectPermissions.permissions` are ignored.\n\nThis operation can be accessed anonymously.\n\n**[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": {
          "description": "Details of the permissions to check.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/BulkPermissionsRequestBean"
              },
              "example": {
                "globalPermissions": [
                  "ADMINISTER"
                ],
                "accountId": "5b10a2844c20165700ede21g",
                "projectPermissions": [
                  {
                    "projects": [
                      10001
                    ],
                    "permissions": [
                      "EDIT_ISSUES"
                    ],
                    "issues": [
                      10010,
                      10011,
                      10012,
                      10013,
                      10014
                    ]
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/BulkPermissionGrants"
                },
                "example": "{\"projectPermissions\":[{\"permission\":\"EDIT_ISSUES\",\"issues\":[10010,10013,10014],\"projects\":[10001]}],\"globalPermissions\":[\"ADMINISTER\"]}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `projectPermissions` is provided without at least one project permission being provided.\n *  an invalid global permission is provided in the global permissions list.\n *  an invalid project permission is provided in the project permissions list.\n *  more than 1000 valid project IDs or more than 1000 valid issue IDs are provided.\n *  an invalid account ID is provided.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[],\"errors\":{\"PERMISSION_123\":\"Unrecognized permission\"}}"
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can perform this operation.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": []
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": []
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:permission:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/permissions/project": {
      "post": {
        "tags": [
          "Permissions"
        ],
        "summary": "Get permitted projects",
        "description": "Returns all the projects where the user is granted a list of project permissions.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getPermittedProjects",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PermissionsKeysBean"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermittedProjects"
                }
              }
            }
          },
          "400": {
            "description": "Returned if a project permission is not found.",
            "content": {
              "application/json": {}
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": []
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": []
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:permission:jira",
              "read:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/permissionscheme": {
      "get": {
        "tags": [
          "Permission schemes"
        ],
        "summary": "Get all permission schemes",
        "description": "Returns all permission schemes.\n\n### About permission schemes and grants ###\n\nA permission scheme is a collection of permission grants. A permission grant consists of a `holder` and a `permission`.\n\n#### Holder object ####\n\nThe `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:\n\n *  `type` Identifies the user or group (see the list of types below).\n *  `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.\n *  `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`\n\nThe following `types` are available. The expected values for `parameter` and `value` are given in parentheses (some types may not have a `parameter` or `value`):\n\n *  `anyone` Grant for anonymous users.\n *  `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.\n *  `assignee` Grant for the user currently assigned to an issue.\n *  `group` Grant for the specified group (`parameter` : group name, `value` : group ID).\n *  `groupCustomField` Grant for a user in the group selected in the specified custom field (`parameter` : custom field ID, `value` : custom field ID).\n *  `projectLead` Grant for a project lead.\n *  `projectRole` Grant for the specified project role (`parameter` :project role ID, `value` : project role ID).\n *  `reporter` Grant for the user who reported the issue.\n *  `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.\n *  `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).\n *  `userCustomField` Grant for a user selected in the specified custom field (`parameter` : custom field ID, `value` : custom field ID).\n\n#### Built-in permissions ####\n\nThe [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.\n\n**Project permissions**\n\n *  `ADMINISTER_PROJECTS`\n *  `BROWSE_PROJECTS`\n *  `MANAGE_SPRINTS_PERMISSION` (Jira Software only)\n *  `SERVICEDESK_AGENT` (Jira Service Desk only)\n *  `VIEW_DEV_TOOLS` (Jira Software only)\n *  `VIEW_READONLY_WORKFLOW`\n\n**Issue permissions**\n\n *  `ASSIGNABLE_USER`\n *  `ASSIGN_ISSUES`\n *  `CLOSE_ISSUES`\n *  `CREATE_ISSUES`\n *  `DELETE_ISSUES`\n *  `EDIT_ISSUES`\n *  `LINK_ISSUES`\n *  `MODIFY_REPORTER`\n *  `MOVE_ISSUES`\n *  `RESOLVE_ISSUES`\n *  `SCHEDULE_ISSUES`\n *  `SET_ISSUE_SECURITY`\n *  `TRANSITION_ISSUES`\n\n**Voters and watchers permissions**\n\n *  `MANAGE_WATCHERS`\n *  `VIEW_VOTERS_AND_WATCHERS`\n\n**Comments permissions**\n\n *  `ADD_COMMENTS`\n *  `DELETE_ALL_COMMENTS`\n *  `DELETE_OWN_COMMENTS`\n *  `EDIT_ALL_COMMENTS`\n *  `EDIT_OWN_COMMENTS`\n\n**Attachments permissions**\n\n *  `CREATE_ATTACHMENTS`\n *  `DELETE_ALL_ATTACHMENTS`\n *  `DELETE_OWN_ATTACHMENTS`\n\n**Time tracking permissions**\n\n *  `DELETE_ALL_WORKLOGS`\n *  `DELETE_OWN_WORKLOGS`\n *  `EDIT_ALL_WORKLOGS`\n *  `EDIT_OWN_WORKLOGS`\n *  `WORK_ON_ISSUES`\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getAllPermissionSchemes",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `all` Returns all expandable information.\n *  `field` Returns information about the custom field granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `permissions` Returns all permission grants for each permission scheme.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `user` Returns information about the user who is granted the permission.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionSchemes"
                },
                "example": "{\"permissionSchemes\":[{\"id\":10000,\"self\":\"https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000\",\"name\":\"Example permission scheme\",\"description\":\"description\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Permission schemes"
        ],
        "summary": "Create permission scheme",
        "description": "Creates a new permission scheme. You can create a permission scheme with or without defining a set of permission grants.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createPermissionScheme",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `all` Returns all expandable information.\n *  `field` Returns information about the custom field granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `permissions` Returns all permission grants for each permission scheme.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `user` Returns information about the user who is granted the permission.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The permission scheme to create.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PermissionScheme"
              },
              "example": {
                "permissions": [
                  {
                    "holder": {
                      "parameter": "jira-core-users",
                      "type": "group",
                      "value": "ca85fac0-d974-40ca-a615-7af99c48d24f"
                    },
                    "permission": "ADMINISTER_PROJECTS"
                  }
                ],
                "name": "Example permission scheme",
                "description": "description"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the permission scheme is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionScheme"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/permissionscheme/{schemeId}": {
      "get": {
        "tags": [
          "Permission schemes"
        ],
        "summary": "Get permission scheme",
        "description": "Returns a permission scheme.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getPermissionScheme",
        "parameters": [
          {
            "name": "schemeId",
            "in": "path",
            "description": "The ID of the permission scheme to return.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `all` Returns all expandable information.\n *  `field` Returns information about the custom field granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `permissions` Returns all permission grants for each permission scheme.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `user` Returns information about the user who is granted the permission.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionScheme"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Permission schemes"
        ],
        "summary": "Update permission scheme",
        "description": "Updates a permission scheme. Below are some important things to note when using this resource:\n\n *  If a permissions list is present in the request, then it is set in the permission scheme, overwriting *all existing* grants.\n *  If you want to update only the name and description, then do not send a permissions list in the request.\n *  Sending an empty list will remove all permission grants from the permission scheme.\n\nIf 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).\n\nSee [About permission schemes and grants](../api-group-permission-schemes/#about-permission-schemes-and-grants) for more details.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updatePermissionScheme",
        "parameters": [
          {
            "name": "schemeId",
            "in": "path",
            "description": "The ID of the permission scheme to update.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `all` Returns all expandable information.\n *  `field` Returns information about the custom field granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `permissions` Returns all permission grants for each permission scheme.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `user` Returns information about the user who is granted the permission.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PermissionScheme"
              },
              "example": {
                "permissions": [
                  {
                    "holder": {
                      "parameter": "jira-core-users",
                      "type": "group",
                      "value": "ca85fac0-d974-40ca-a615-7af99c48d24f"
                    },
                    "permission": "ADMINISTER_PROJECTS"
                  }
                ],
                "name": "Example permission scheme",
                "description": "description"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the scheme is updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionScheme"
                },
                "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\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if:\n\n *  the user does not have the necessary permission to update permission schemes.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Permission schemes"
        ],
        "summary": "Delete permission scheme",
        "description": "Deletes a permission scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deletePermissionScheme",
        "parameters": [
          {
            "name": "schemeId",
            "in": "path",
            "description": "The ID of the permission scheme being deleted.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:permission-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/permissionscheme/{schemeId}/permission": {
      "get": {
        "tags": [
          "Permission schemes"
        ],
        "summary": "Get permission scheme grants",
        "description": "Returns all permission grants for a permission scheme.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getPermissionSchemeGrants",
        "parameters": [
          {
            "name": "schemeId",
            "in": "path",
            "description": "The ID of the permission scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `permissions` Returns all permission grants for each permission scheme.\n *  `user` Returns information about the user who is granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `field` Returns information about the custom field granted the permission.\n *  `all` Returns all expandable information.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionGrants"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:application-role:jira",
              "read:field:jira",
              "read:group:jira",
              "read:permission:jira",
              "read:project-role:jira",
              "read:user:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Permission schemes"
        ],
        "summary": "Create permission grant",
        "description": "Creates a permission grant in a permission scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createPermissionGrant",
        "parameters": [
          {
            "name": "schemeId",
            "in": "path",
            "description": "The ID of the permission scheme in which to create a new permission grant.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `permissions` Returns all permission grants for each permission scheme.\n *  `user` Returns information about the user who is granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `field` Returns information about the custom field granted the permission.\n *  `all` Returns all expandable information.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The permission grant to create.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PermissionGrant"
              },
              "example": {
                "holder": {
                  "parameter": "jira-core-users",
                  "type": "group",
                  "value": "ca85fac0-d974-40ca-a615-7af99c48d24f"
                },
                "permission": "ADMINISTER_PROJECTS"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the scheme permission is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionGrant"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/permissionscheme/{schemeId}/permission/{permissionId}": {
      "get": {
        "tags": [
          "Permission schemes"
        ],
        "summary": "Get permission scheme grant",
        "description": "Returns a permission grant.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getPermissionSchemeGrant",
        "parameters": [
          {
            "name": "schemeId",
            "in": "path",
            "description": "The ID of the permission scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "permissionId",
            "in": "path",
            "description": "The ID of the permission grant.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `all` Returns all expandable information.\n *  `field` Returns information about the custom field granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `permissions` Returns all permission grants for each permission scheme.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `user` Returns information about the user who is granted the permission.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionGrant"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:application-role:jira",
              "read:field:jira",
              "read:group:jira",
              "read:permission:jira",
              "read:project-role:jira",
              "read:user:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "delete": {
        "tags": [
          "Permission schemes"
        ],
        "summary": "Delete permission scheme grant",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deletePermissionSchemeEntity",
        "parameters": [
          {
            "name": "schemeId",
            "in": "path",
            "description": "The ID of the permission scheme to delete the permission grant from.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "permissionId",
            "in": "path",
            "description": "The ID of the permission grant to delete.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:permission:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/priority": {
      "get": {
        "tags": [
          "Issue priorities"
        ],
        "summary": "Get priorities",
        "description": "Returns the list of all issue priorities.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getPriorities",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Priority"
                  }
                },
                "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\"}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:priority:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue priorities"
        ],
        "summary": "Create priority",
        "description": "Creates an issue priority.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createPriority",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreatePriorityDetails"
              },
              "example": {
                "statusColor": "#ABCDEF",
                "name": "My new priority",
                "description": "My priority description",
                "iconUrl": "images/icons/priorities/major.png"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PriorityId"
                },
                "example": "{\"id\":\"10001\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The length of the description must not exceed 255 characters.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue type screen schemes.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/priority/default": {
      "put": {
        "tags": [
          "Issue priorities"
        ],
        "summary": "Set default priority",
        "description": "Sets default issue priority.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setDefaultPriority",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetDefaultPriorityRequest"
              },
              "example": {
                "id": "3"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The id has to be provided.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue priorities.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue priority isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Priority with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/priority/move": {
      "put": {
        "tags": [
          "Issue priorities"
        ],
        "summary": "Move priorities",
        "description": "Changes the order of issue priorities.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "movePriorities",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderIssuePriorities"
              },
              "example": {
                "ids": [
                  "10004",
                  "10005"
                ],
                "after": "10003"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The ids must contain no more than 1,000 items.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue priorities.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue priority isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Priority with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/priority/search": {
      "get": {
        "tags": [
          "Issue priorities"
        ],
        "summary": "Search priorities",
        "description": "Returns a [paginated](#pagination) list of priorities. The list can contain all priorities or a subset determined by any combination of these criteria:\n\n *  a list of priority IDs. Any invalid priority IDs are ignored.\n *  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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "searchPriorities",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of priority IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=2&id=3`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "onlyDefault",
            "in": "query",
            "description": "Whether only the default priority is returned.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanPriority"
                },
                "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}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/priority/{id}": {
      "get": {
        "tags": [
          "Issue priorities"
        ],
        "summary": "Get priority",
        "description": "Returns an issue priority.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getPriority",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue priority.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Priority"
                },
                "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\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "404": {
            "description": "Returned if the issue priority isn't found."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:priority:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue priorities"
        ],
        "summary": "Update priority",
        "description": "Updates an issue priority.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updatePriority",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue priority.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdatePriorityDetails"
              },
              "example": {
                "statusColor": "#123456",
                "name": "My updated priority",
                "description": "My updated priority description",
                "iconUrl": "images/icons/priorities/minor.png"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The length of the description must not exceed 255 characters.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue priorities.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue priority isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Priority with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue priorities"
        ],
        "summary": "Delete priority",
        "description": "Deletes an issue priority.\n\nThis 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deletePriority",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue priority.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "replaceWith",
            "in": "query",
            "description": "The ID of the issue priority that will replace the currently selected resolution.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "303": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskProgressBeanObject"
                }
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The newPriority has to be provided.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue priorities.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue priority isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Priority with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          },
          "409": {
            "description": "Returned if a task to delete the issue priority is already running.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/project": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get all projects",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expanded options include:\n\n *  `description` Returns the project description.\n *  `issueTypes` Returns all issue types associated with the project.\n *  `lead` Returns information about the project lead.\n *  `projectKeys` Returns all project keys associated with the project.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "recent",
            "in": "query",
            "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.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "properties",
            "in": "query",
            "description": "A list of project properties to return for the project. This parameter accepts a comma-separated list.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Project"
                  }
                },
                "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\":\"2022-12-08T07:09:19.702+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\":\"2022-12-08T07:09:19.702+0000\"}}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-changes": [
          {
            "type": "removed",
            "announced": "2018-10-19",
            "effective": "2019-04-19",
            "details": "https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-removal-of-get-filters-and-get-all-projects/"
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Projects"
        ],
        "summary": "Create project",
        "description": "Creates a project based on a project type template, as shown in the following table:\n\n| Project Type Key | Project Template Key |  \n|--|--|  \n| `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` |  \n| `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-finance-service-desk` |  \n| `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` |  \nThe project types are available according to the installed Jira features as follows:\n\n *  Jira Core, the default, enables `business` projects.\n *  Jira Service Management enables `service_desk` projects.\n *  Jira Software enables `software` projects.\n\nTo 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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createProject",
        "parameters": [],
        "requestBody": {
          "description": "The JSON representation of the project being created.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateProjectDetails"
              },
              "example": {
                "notificationScheme": 10021,
                "description": "Cloud migration initiative",
                "leadAccountId": "5b10a0effa615349cb016cd8",
                "url": "http://atlassian.com",
                "avatarId": 10200,
                "issueSecurityScheme": 10001,
                "projectTemplateKey": "com.atlassian.jira-core-project-templates:jira-core-simplified-process-control",
                "name": "Example",
                "permissionScheme": 10011,
                "assigneeType": "PROJECT_LEAD",
                "projectTypeKey": "business",
                "key": "EX",
                "categoryId": 10120
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the project is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectIdentifiers"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/jira/rest/api/3/project/10042\",\"id\":10010,\"key\":\"EX\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project:jira",
              "read:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/recent": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get recent projects",
        "description": "Returns a list of up to 20 projects recently viewed by the user that are still visible to the user.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** Projects are returned only where the user has one of:\n\n *  *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n *  *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getRecent",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expanded options include:\n\n *  `description` Returns the project description.\n *  `projectKeys` Returns all project keys associated with a project.\n *  `lead` Returns information about the project lead.\n *  `issueTypes` Returns all issue types associated with the project.\n *  `url` Returns the URL associated with the project.\n *  `permissions` Returns the permissions associated with the project.\n *  `insight` EXPERIMENTAL. Returns the insight details of total issue count and last issue update time for the project.\n *  `*` Returns the project with all available expand options.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "properties",
            "in": "query",
            "description": "EXPERIMENTAL. A list of project properties to return for the project. This parameter accepts a comma-separated list. Invalid property names are ignored.",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/StringList"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Project"
                  }
                },
                "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\":\"2022-12-08T07:09:19.702+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\":\"2022-12-08T07:09:19.702+0000\"}}]"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/search": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get projects paginated",
        "description": "Returns a [paginated](#pagination) list of projects visible to the user.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** Projects are returned only where the user has one of:\n\n *  *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n *  *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "searchProjects",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field.\n\n *  `category` Sorts by project category. A complete list of category IDs is found using [Get all project categories](#api-rest-api-3-projectCategory-get).\n *  `issueCount` Sorts by the total number of issues in each project.\n *  `key` Sorts by project key.\n *  `lastIssueUpdatedTime` Sorts by the last issue update time.\n *  `name` Sorts by project name.\n *  `owner` Sorts by project lead.\n *  `archivedDate` EXPERIMENTAL. Sorts by project archived date.\n *  `deletedDate` EXPERIMENTAL. Sorts by project deleted date.",
            "schema": {
              "type": "string",
              "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"
              ],
              "default": "key"
            }
          },
          {
            "name": "id",
            "in": "query",
            "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.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "keys",
            "in": "query",
            "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.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "query",
            "in": "query",
            "description": "Filter the results using a literal string. Projects with a matching `key` or `name` are returned (case insensitive).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "typeKey",
            "in": "query",
            "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`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "categoryId",
            "in": "query",
            "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.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "action",
            "in": "query",
            "description": "Filter results by projects for which the user can:\n\n *  `view` the project, meaning that they have one of the following permissions:\n    \n     *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n     *  *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n     *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).\n *  `browse` the project, meaning that they have the *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n *  `edit` the project, meaning that they have one of the following permissions:\n    \n     *  *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.\n     *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
            "schema": {
              "type": "string",
              "enum": [
                "view",
                "browse",
                "edit"
              ],
              "default": "view"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expanded options include:\n\n *  `description` Returns the project description.\n *  `projectKeys` Returns all project keys associated with a project.\n *  `lead` Returns information about the project lead.\n *  `issueTypes` Returns all issue types associated with the project.\n *  `url` Returns the URL associated with the project.\n *  `insight` EXPERIMENTAL. Returns the insight details of total issue count and last issue update time for the project.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "description": "EXPERIMENTAL. Filter results by project status:\n\n *  `live` Search live projects.\n *  `archived` Search archived projects.\n *  `deleted` Search deleted projects, those in the recycle bin.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "live",
                  "archived",
                  "deleted"
                ],
                "default": "live"
              }
            }
          },
          {
            "name": "properties",
            "in": "query",
            "description": "EXPERIMENTAL. A list of project properties to return for the project. This parameter accepts a comma-separated list.",
            "schema": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/StringList"
              }
            }
          },
          {
            "name": "propertyQuery",
            "in": "query",
            "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`.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanProject"
                },
                "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\":\"2022-12-08T07:09:19.702+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\":\"2022-12-08T07:09:19.702+0000\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/type": {
      "get": {
        "tags": [
          "Project types"
        ],
        "summary": "Get all project types",
        "description": "Returns all [project types](https://confluence.atlassian.com/x/Var1Nw), whether or not the instance has a valid license for each type.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAllProjectTypes",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProjectType"
                  }
                },
                "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\"}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/type/accessible": {
      "get": {
        "tags": [
          "Project types"
        ],
        "summary": "Get licensed project types",
        "description": "Returns all [project types](https://confluence.atlassian.com/x/Var1Nw) with a valid license.",
        "operationId": "getAllAccessibleProjectTypes",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProjectType"
                  }
                },
                "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\"}]"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/type/{projectTypeKey}": {
      "get": {
        "tags": [
          "Project types"
        ],
        "summary": "Get project type by key",
        "description": "Returns a [project type](https://confluence.atlassian.com/x/Var1Nw).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getProjectTypeByKey",
        "parameters": [
          {
            "name": "projectTypeKey",
            "in": "path",
            "description": "The key of the project type.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "software",
                "service_desk",
                "business",
                "product_discovery"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectType"
                },
                "example": "{\"key\":\"business\",\"formattedKey\":\"Business\",\"descriptionI18nKey\":\"jira.project.type.business.description\",\"icon\":\"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOC4xLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAzMiAzMiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzIgMzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbD0iIzY2NjY2NiIgZD0iTTE2LDBDNy4yLDAsMCw3LjIsMCwxNmMwLDguOCw3LjIsMTYsMTYsMTZjOC44LDAsMTYtNy4yLDE2LTE2QzMyLDcuMiwyNC44LDAsMTYsMHogTTI1LjcsMjMNCgkJYzAsMS44LTEuNCwzLjItMy4yLDMuMkg5LjJDNy41LDI2LjIsNiwyNC44LDYsMjNWOS44QzYsOCw3LjUsNi42LDkuMiw2LjZoMTMuMmMwLjIsMCwwLjQsMCwwLjcsMC4xbC0yLjgsMi44SDkuMg0KCQlDOSw5LjQsOC44LDkuNiw4LjgsOS44VjIzYzAsMC4yLDAuMiwwLjQsMC40LDAuNGgxMy4yYzAuMiwwLDAuNC0wLjIsMC40LTAuNHYtNS4zbDIuOC0yLjhWMjN6IE0xNS45LDIxLjNMMTEsMTYuNGwyLTJsMi45LDIuOQ0KCQlMMjYuNCw2LjhjMC42LDAuNywxLjIsMS41LDEuNywyLjNMMTUuOSwyMS4zeiIvPg0KPC9nPg0KPC9zdmc+\",\"color\":\"#FFFFFF\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "404": {
            "description": "Returned if the project type is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/type/{projectTypeKey}/accessible": {
      "get": {
        "tags": [
          "Project types"
        ],
        "summary": "Get accessible project type by key",
        "description": "Returns a [project type](https://confluence.atlassian.com/x/Var1Nw) if it is accessible to the user.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getAccessibleProjectTypeByKey",
        "parameters": [
          {
            "name": "projectTypeKey",
            "in": "path",
            "description": "The key of the project type.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "software",
                "service_desk",
                "business",
                "product_discovery"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectType"
                },
                "example": "{\"key\":\"business\",\"formattedKey\":\"Business\",\"descriptionI18nKey\":\"jira.project.type.business.description\",\"icon\":\"PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxOC4xLjEsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgeD0iMHB4IiB5PSIwcHgiDQoJIHZpZXdCb3g9IjAgMCAzMiAzMiIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMzIgMzIiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPGc+DQoJPHBhdGggZmlsbD0iIzY2NjY2NiIgZD0iTTE2LDBDNy4yLDAsMCw3LjIsMCwxNmMwLDguOCw3LjIsMTYsMTYsMTZjOC44LDAsMTYtNy4yLDE2LTE2QzMyLDcuMiwyNC44LDAsMTYsMHogTTI1LjcsMjMNCgkJYzAsMS44LTEuNCwzLjItMy4yLDMuMkg5LjJDNy41LDI2LjIsNiwyNC44LDYsMjNWOS44QzYsOCw3LjUsNi42LDkuMiw2LjZoMTMuMmMwLjIsMCwwLjQsMCwwLjcsMC4xbC0yLjgsMi44SDkuMg0KCQlDOSw5LjQsOC44LDkuNiw4LjgsOS44VjIzYzAsMC4yLDAuMiwwLjQsMC40LDAuNGgxMy4yYzAuMiwwLDAuNC0wLjIsMC40LTAuNHYtNS4zbDIuOC0yLjhWMjN6IE0xNS45LDIxLjNMMTEsMTYuNGwyLTJsMi45LDIuOQ0KCQlMMjYuNCw2LjhjMC42LDAuNywxLjIsMS41LDEuNywyLjNMMTUuOSwyMS4zeiIvPg0KPC9nPg0KPC9zdmc+\",\"color\":\"#FFFFFF\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if the project type is not accessible to the user."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get project",
        "description": "Returns the [project details](https://confluence.atlassian.com/x/ahLpNw) for a project.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getProject",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `description` The project description.\n *  `issueTypes` The issue types associated with the project.\n *  `lead` The project lead.\n *  `projectKeys` All project keys associated with the project.\n *  `issueTypeHierarchy` The project issue type hierarchy.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "properties",
            "in": "query",
            "description": "A list of project properties to return for the project. This parameter accepts a comma-separated list.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Project"
                },
                "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\":\"[email protected]\",\"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\":\"2022-12-08T07:09:19.702+0000\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Projects"
        ],
        "summary": "Update project",
        "description": "Updates the [project details](https://confluence.atlassian.com/x/ahLpNw) of a project.\n\nAll parameters are optional in the body of the request.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateProject",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `description` The project description.\n *  `issueTypes` The issue types associated with the project.\n *  `lead` The project lead.\n *  `projectKeys` All project keys associated with the project.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The project details to be updated.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateProjectDetails"
              },
              "example": {
                "avatarId": 10200,
                "issueSecurityScheme": 10001,
                "notificationScheme": 10021,
                "name": "Example",
                "description": "Cloud migration initiative",
                "permissionScheme": 10011,
                "assigneeType": "PROJECT_LEAD",
                "leadAccountId": "5b10a0effa615349cb016cd8",
                "key": "EX",
                "url": "http://atlassian.com",
                "categoryId": 10120
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the project is updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Project"
                },
                "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\":\"[email protected]\",\"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\":\"2022-12-08T07:09:19.702+0000\"}}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if:\n\n *  the user does not have the necessary permission to update project details.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      },
      "delete": {
        "tags": [
          "Projects"
        ],
        "summary": "Delete project",
        "description": "Deletes a project.\n\nYou 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteProject",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "enableUndo",
            "in": "query",
            "description": "Whether this project is placed in the Jira recycle bin where it will be available for restoration.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/archive": {
      "post": {
        "tags": [
          "Projects"
        ],
        "summary": "Archive project",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "archiveProject",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/avatar": {
      "put": {
        "tags": [
          "Project avatars"
        ],
        "summary": "Set project avatar",
        "description": "Sets the avatar displayed for a project.\n\nUse [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.\n\n**[Permissions](#permissions) required:** *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg).",
        "operationId": "updateProjectAvatar",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The ID or (case-sensitive) key of the project.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Avatar"
              },
              "example": {
                "id": "10010"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project.avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/avatar/{id}": {
      "delete": {
        "tags": [
          "Project avatars"
        ],
        "summary": "Delete project avatar",
        "description": "Deletes a custom avatar from a project. Note that system avatars cannot be deleted.\n\n**[Permissions](#permissions) required:** *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg).",
        "operationId": "deleteProjectAvatar",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or (case-sensitive) key.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the avatar.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project.avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/avatar2": {
      "post": {
        "tags": [
          "Project avatars"
        ],
        "summary": "Load project avatar",
        "description": "Loads an avatar for a project.\n\nSpecify the avatar's local file location in the body of the request. Also, include the following headers:\n\n *  `X-Atlassian-Token: no-check` To prevent XSRF protection blocking the request, for more information see [Special Headers](#special-request-headers).\n *  `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG.\n\nFor example:  \n`curl --request POST `\n\n`--user [email protected]: `\n\n`--header 'X-Atlassian-Token: no-check' `\n\n`--header 'Content-Type: image/< image_type>' `\n\n`--data-binary \"<@/path/to/file/with/your/avatar>\" `\n\n`--url 'https://your-domain.atlassian.net/rest/api/3/project/{projectIdOrKey}/avatar2'`\n\nThe 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.\n\nThe cropped image is then used to create avatars of 16x16, 24x24, 32x32, and 48x48 in size.\n\nAfter creating the avatar use [Set project avatar](#api-rest-api-3-project-projectIdOrKey-avatar-put) to set it as the project's displayed avatar.\n\n**[Permissions](#permissions) required:** *Administer projects* [project permission](https://confluence.atlassian.com/x/yodKLg).",
        "operationId": "createProjectAvatar",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The ID or (case-sensitive) key of the project.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x",
            "in": "query",
            "description": "The X coordinate of the top-left corner of the crop region.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "y",
            "in": "query",
            "description": "The Y coordinate of the top-left corner of the crop region.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "size",
            "in": "query",
            "description": "The length of each side of the crop region.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Avatar"
                },
                "example": "{\"id\":\"1010\",\"isSystemAvatar\":false,\"isSelected\":false,\"isDeletable\":true}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  an image isn't included in the request.\n *  the image type is unsupported.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project.avatar:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/avatars": {
      "get": {
        "tags": [
          "Project avatars"
        ],
        "summary": "Get all project avatars",
        "description": "Returns all project avatars, grouped by system and custom avatars.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getAllProjectAvatars",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The ID or (case-sensitive) key of the project.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectAvatars"
                },
                "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\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project.avatar:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/component": {
      "get": {
        "tags": [
          "Project components"
        ],
        "summary": "Get project components paginated",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getProjectComponentsPaginated",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `description` Sorts by the component description.\n *  `issueCount` Sorts by the count of issues associated with the component.\n *  `lead` Sorts by the user key of the component's project lead.\n *  `name` Sorts by component name.",
            "schema": {
              "type": "string",
              "enum": [
                "description",
                "-description",
                "+description",
                "issueCount",
                "-issueCount",
                "+issueCount",
                "lead",
                "-lead",
                "+lead",
                "name",
                "-name",
                "+name"
              ]
            }
          },
          {
            "name": "query",
            "in": "query",
            "description": "Filter the results using a literal string. Components with a matching `name` or `description` are returned (case insensitive).",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanComponentWithIssueCount"
                },
                "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,\"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},\"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\",\"description\":\"This is a Jira component\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/component/10000\",\"project\":\"HSP\",\"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\",\"name\":\"Component 1\",\"id\":\"10000\"},{\"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,\"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},\"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\",\"description\":\"This is a another Jira component\",\"self\":\"https://your-domain.atlassian.net/rest/api/3/component/10000\",\"project\":\"PROJECTKEY\",\"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\",\"name\":\"PXA\",\"id\":\"10050\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira",
              "read:project.component:jira",
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/components": {
      "get": {
        "tags": [
          "Project components"
        ],
        "summary": "Get project components",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getProjectComponents",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProjectComponent"
                  }
                },
                "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}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira",
              "read:project.component:jira",
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/delete": {
      "post": {
        "tags": [
          "Projects"
        ],
        "summary": "Delete project asynchronously",
        "description": "Deletes a project asynchronously.\n\nThis operation is:\n\n *  transactional, that is, if part of the delete fails the project is not deleted.\n *  [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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteProjectAsynchronously",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "303": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskProgressBeanObject"
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project:jira",
              "write:project.property:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/features": {
      "get": {
        "tags": [
          "Project features"
        ],
        "summary": "Get project features",
        "description": "Returns the list of features for a project.",
        "operationId": "getFeaturesForProject",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The ID or (case-sensitive) key of the project.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContainerForProjectFeatures"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project.feature:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/features/{featureKey}": {
      "put": {
        "tags": [
          "Project features"
        ],
        "summary": "Set project feature state",
        "description": "Sets the state of a project feature.",
        "operationId": "toggleFeatureForProject",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The ID or (case-sensitive) key of the project.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "featureKey",
            "in": "path",
            "description": "The key of the feature.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Details of the feature state change.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProjectFeatureState"
              },
              "example": {
                "state": "ENABLED"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContainerForProjectFeatures"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project.feature:jira",
              "read:project.feature:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/properties": {
      "get": {
        "tags": [
          "Project properties"
        ],
        "summary": "Get project property keys",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getProjectPropertyKeys",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PropertyKeys"
                },
                "example": "{\"keys\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support\",\"key\":\"issue.support\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/properties/{propertyKey}": {
      "get": {
        "tags": [
          "Project properties"
        ],
        "summary": "Get project property",
        "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).\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the property.",
        "operationId": "getProjectProperty",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityProperty"
                },
                "example": "{\"key\":\"issue.support\",\"value\":{\"system.conversation.id\":\"b1bf38be-5e94-4b40-a3b8-9278735ee1e6\",\"system.support.time\":\"1m\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Project properties"
        ],
        "summary": "Set project property",
        "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.\n\nThe 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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the project property. The maximum length is 255 characters.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {},
              "example": {
                "number": 5,
                "string": "string-value"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the project property is updated.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "201": {
            "description": "Returned if the project property is created.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "Project properties"
        ],
        "summary": "Delete project property",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "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.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/restore": {
      "post": {
        "tags": [
          "Projects"
        ],
        "summary": "Restore deleted or archived project",
        "description": "Restores a project that has been archived or placed in the Jira recycle bin.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "restore",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Project"
                },
                "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\":\"[email protected]\",\"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\":\"2022-12-08T07:09:19.702+0000\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/role": {
      "get": {
        "tags": [
          "Project roles"
        ],
        "summary": "Get project roles for project",
        "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.\n\nNote 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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "string",
                    "format": "uri"
                  }
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-role:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/role/{id}": {
      "get": {
        "tags": [
          "Project roles"
        ],
        "summary": "Get project role for project",
        "description": "Returns a project role's details and actors associated with the project. The list of actors is sorted by display name.\n\nTo 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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "excludeInactiveUsers",
            "in": "query",
            "description": "Exclude inactive users.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}}}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the project or project role is not found.\n *  the user does not have administrative permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira",
              "read:group:jira",
              "read:project-role:jira",
              "read:project:jira",
              "read:avatar:jira",
              "read:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Project role actors"
        ],
        "summary": "Set actors for project role",
        "description": "Sets the actors for a project role for a project, replacing all existing actors.\n\nTo 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).\n\n**[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": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "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.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProjectRoleActorsUpdateBean"
              },
              "example": {
                "categorisedActors": {
                  "atlassian-group-role-actor-id": [
                    "952d12c3-5b5b-4d04-bb32-44d383afc4b2"
                  ],
                  "atlassian-user-role-actor": [
                    "12345678-9abc-def1-2345-6789abcdef12"
                  ]
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful. The complete list of actors for the project is returned.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}}}"
              }
            }
          },
          "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:\n\n *  the project is not found.\n *  a user or group is not found.\n *  a group or user is not active."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      },
      "post": {
        "tags": [
          "Project role actors"
        ],
        "summary": "Add actors to project role",
        "description": "Adds actors to a project role for the project.\n\nTo replace all actors for the project, use [Set actors for project role](#api-rest-api-3-project-projectIdOrKey-role-id-put).\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "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.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ActorsMap"
              },
              "example": {
                "groupId": [
                  "952d12c3-5b5b-4d04-bb32-44d383afc4b2"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful. The complete list of actors for the project is returned.\n\nFor 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.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}}}"
              }
            }
          },
          "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:\n\n *  the project is not found.\n *  the user or group is not found.\n *  the group or user is not active."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      },
      "delete": {
        "tags": [
          "Project role actors"
        ],
        "summary": "Delete actors from project role",
        "description": "Deletes actors from a project role for the project.\n\nTo remove default actors from the project role, use [Delete default actors from project role](#api-rest-api-3-role-id-actors-delete).\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "user",
            "in": "query",
            "description": "The user account ID of the user to remove from the project role.",
            "schema": {
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "group",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "groupId",
            "in": "query",
            "description": "The ID of the group to remove from the project role. This parameter cannot be used with the `group` parameter.",
            "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:\n\n *  the project or project role is not found.\n *  the calling user does not have administrative permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project-role:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/roledetails": {
      "get": {
        "tags": [
          "Project roles"
        ],
        "summary": "Get project role details",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "currentMember",
            "in": "query",
            "description": "Whether the roles should be filtered to include only those the user is assigned to.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "excludeConnectAddons",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProjectRoleDetails"
                  }
                },
                "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\"}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-category:jira",
              "read:project-role:jira",
              "read:project:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/statuses": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get all statuses for project",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getAllStatuses",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/IssueTypeWithStatus"
                  }
                },
                "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\"}]}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-status:jira",
              "read:issue-type:jira",
              "read:status:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/type/{newProjectTypeKey}": {
      "put": {
        "tags": [
          "Projects"
        ],
        "summary": "Update project type",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateProjectType",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "newProjectTypeKey",
            "in": "path",
            "description": "The key of the new project type.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "software",
                "service_desk",
                "business"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the project type is updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Project"
                },
                "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\":\"[email protected]\",\"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\":\"2022-12-08T07:09:19.702+0000\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-changes": [
          {
            "type": "removed",
            "announced": "2019-06-03",
            "effective": "2019-12-03",
            "details": "https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-change-project-type-via-api//"
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/version": {
      "get": {
        "tags": [
          "Project versions"
        ],
        "summary": "Get project versions paginated",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getProjectVersionsPaginated",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `description` Sorts by version description.\n *  `name` Sorts by version name.\n *  `releaseDate` Sorts by release date, starting with the oldest date. Versions with no release date are listed last.\n *  `sequence` Sorts by the order of appearance in the user interface.\n *  `startDate` Sorts by start date, starting with the oldest date. Versions with no start date are listed last.",
            "schema": {
              "type": "string",
              "enum": [
                "description",
                "-description",
                "+description",
                "name",
                "-name",
                "+name",
                "releaseDate",
                "-releaseDate",
                "+releaseDate",
                "sequence",
                "-sequence",
                "+sequence",
                "startDate",
                "-startDate",
                "+startDate"
              ]
            }
          },
          {
            "name": "query",
            "in": "query",
            "description": "Filter the results using a literal string. Versions with matching `name` or `description` are returned (case insensitive).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "status",
            "in": "query",
            "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`.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `issuesstatus` Returns the number of issues in each status category for each version.\n *  `operations` Returns actions that can be performed on the specified version.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanVersion"
                },
                "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}}]}"
              }
            }
          },
          "404": {
            "description": "Returned if the project is not found or the user does not have permission to view it."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectIdOrKey}/versions": {
      "get": {
        "tags": [
          "Project versions"
        ],
        "summary": "Get project versions",
        "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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getProjectVersions",
        "parameters": [
          {
            "name": "projectIdOrKey",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Version"
                  }
                },
                "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}}]"
              }
            }
          },
          "404": {
            "description": "Returned if the project is not found or the user does not have permission to view it."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectId}/email": {
      "get": {
        "tags": [
          "Project email"
        ],
        "summary": "Get project's sender email",
        "description": "Returns the [project's sender email address](https://confluence.atlassian.com/x/dolKLg).\n\n**[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getProjectEmail",
        "parameters": [
          {
            "name": "projectId",
            "in": "path",
            "description": "The project ID.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectEmailAddress"
                },
                "example": "{\"emailAddress\":\"[email protected]\",\"emailAddressStatus\":[\"Email address or domain not verified.\"]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project.email:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Project email"
        ],
        "summary": "Set project's sender email",
        "description": "Sets the [project's sender email address](https://confluence.atlassian.com/x/dolKLg).\n\nIf `emailAddress` is an empty string, the default email address is restored.\n\n**[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "updateProjectEmail",
        "parameters": [
          {
            "name": "projectId",
            "in": "path",
            "description": "The project ID.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "The project's sender email address to be set.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProjectEmailAddress"
              },
              "example": {
                "emailAddress": "[email protected]"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the project's sender email address is successfully set.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project.email:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectId}/hierarchy": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get project issue type hierarchy",
        "description": "Get the issue type hierarchy for a next-gen project.\n\nThe issue type hierarchy for a project consists of:\n\n *  *Epic* at level 1 (optional).\n *  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.\n *  *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.\n\n**[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project.",
        "operationId": "getHierarchy",
        "parameters": [
          {
            "name": "projectId",
            "in": "path",
            "description": "The ID of the project.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectIssueTypeHierarchy"
                },
                "example": "{\"projectId\":10030,\"hierarchy\":[{\"entityId\":\"5d41b8c8-3d46-42e2-a903-6a1a02677400\",\"level\":0,\"name\":\"Base\",\"issueTypes\":[{\"id\":10008,\"entityId\":\"717d9eb1-5440-42b7-923e-6347e4861b05\",\"name\":\"Story\",\"avatarId\":10324},{\"id\":10001,\"entityId\":\"c8c8e610-92fe-4b14-91d7-65e4e9caef98\",\"name\":\"Bug\",\"avatarId\":10324}]},{\"entityId\":\"54abf903-4fe7-4711-9053-cdaf98ffb4e4\",\"level\":1,\"name\":\"Epic\",\"issueTypes\":[{\"id\":10007,\"entityId\":\"09988c09-eca6-4239-a344-03adb2c7971c\",\"name\":\"Epic\",\"avatarId\":10179}]},{\"entityId\":\"b82da7db-f77f-4735-a136-694acfc2de1b\",\"level\":-1,\"name\":\"Subtask\",\"issueTypes\":[{\"id\":10009,\"entityId\":\"7d2603b8-0950-4ec6-9223-bd7eb9689637\",\"name\":\"Subtask\",\"avatarId\":10573}]}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-type:jira",
              "read:issue-type-hierarchy:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectKeyOrId}/issuesecuritylevelscheme": {
      "get": {
        "tags": [
          "Project permission schemes"
        ],
        "summary": "Get project issue security scheme",
        "description": "Returns the [issue security scheme](https://confluence.atlassian.com/x/J4lKLg) associated with the project.\n\n**[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": [
          {
            "name": "projectKeyOrId",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityScheme"
                },
                "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\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-security-level:jira",
              "read:issue-security-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectKeyOrId}/notificationscheme": {
      "get": {
        "tags": [
          "Projects"
        ],
        "summary": "Get project notification scheme",
        "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.\n\n**[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": [
          {
            "name": "projectKeyOrId",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `all` Returns all expandable information\n *  `field` Returns information about any custom fields assigned to receive an event\n *  `group` Returns information about any groups assigned to receive an event\n *  `notificationSchemeEvents` Returns a list of event associations. This list is returned for all expandable information\n *  `projectRole` Returns information about any project roles assigned to receive an event\n *  `user` Returns information about any users assigned to receive an event",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotificationScheme"
                },
                "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\":\"[email protected]\",\"recipient\":\"[email protected]\",\"emailAddress\":\"[email protected]\"},{\"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\":\"[email protected]\",\"recipient\":\"[email protected]\",\"emailAddress\":\"[email protected]\"},{\"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]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/project/{projectKeyOrId}/permissionscheme": {
      "get": {
        "tags": [
          "Project permission schemes"
        ],
        "summary": "Get assigned permission scheme",
        "description": "Gets the [permission scheme](https://confluence.atlassian.com/x/yodKLg) associated with the project.\n\n**[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": [
          {
            "name": "projectKeyOrId",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `all` Returns all expandable information.\n *  `field` Returns information about the custom field granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `permissions` Returns all permission grants for each permission scheme.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `user` Returns information about the user who is granted the permission.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionScheme"
                },
                "example": "{\"id\":10000,\"self\":\"https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000\",\"name\":\"Example permission scheme\",\"description\":\"description\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Project permission schemes"
        ],
        "summary": "Assign permission scheme",
        "description": "Assigns a permission scheme with a project. See [Managing project permissions](https://confluence.atlassian.com/x/yodKLg) for more information about permission schemes.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg)",
        "operationId": "assignPermissionScheme",
        "parameters": [
          {
            "name": "projectKeyOrId",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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:\n\n *  `all` Returns all expandable information.\n *  `field` Returns information about the custom field granted the permission.\n *  `group` Returns information about the group that is granted the permission.\n *  `permissions` Returns all permission grants for each permission scheme.\n *  `projectRole` Returns information about the project role granted the permission.\n *  `user` Returns information about the user who is granted the permission.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IdBean"
              },
              "example": {
                "id": 10000
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PermissionScheme"
                },
                "example": "{\"id\":10000,\"self\":\"https://your-domain.atlassian.net/rest/api/3/permissionscheme/10000\",\"name\":\"Example permission scheme\",\"description\":\"description\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if:\n\n *  the user does not have the necessary permission to edit the project's configuration.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/project/{projectKeyOrId}/securitylevel": {
      "get": {
        "tags": [
          "Project permission schemes"
        ],
        "summary": "Get project issue security levels",
        "description": "Returns all [issue security](https://confluence.atlassian.com/x/J4lKLg) levels for the project that the user has access to.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "projectKeyOrId",
            "in": "path",
            "description": "The project ID or project key (case sensitive).",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectIssueSecurityLevels"
                },
                "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\"}]}"
              }
            }
          },
          "404": {
            "description": "Returned if the project is not found or the user does not have permission to view it."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-security-level:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/projectCategory": {
      "get": {
        "tags": [
          "Project categories"
        ],
        "summary": "Get all project categories",
        "description": "Returns all project categories.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getAllProjectCategories",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProjectCategory"
                  }
                },
                "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\"}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Project categories"
        ],
        "summary": "Create project category",
        "description": "Creates a project category.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createProjectCategory",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProjectCategory"
              },
              "example": {
                "name": "CREATED",
                "description": "Created Project Category"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectCategory"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/projectCategory/10100\",\"id\":\"10100\",\"name\":\"CREATED\",\"description\":\"Created Project Category\"}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `name` is not provided or exceeds 255 characters.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project-category:jira",
              "read:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/projectCategory/{id}": {
      "get": {
        "tags": [
          "Project categories"
        ],
        "summary": "Get project category by ID",
        "description": "Returns a project category.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getProjectCategoryById",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the project category.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectCategory"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000\",\"id\":\"10000\",\"name\":\"FIRST\",\"description\":\"First Project Category\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if the project category is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Project categories"
        ],
        "summary": "Update project category",
        "description": "Updates a project category.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateProjectCategory",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ProjectCategory"
              },
              "example": {
                "name": "UPDATED",
                "description": "Updated Project Category"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UpdatedProjectCategory"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/projectCategory/10100\",\"id\":\"10100\",\"name\":\"UPDATED\",\"description\":\"Updated Project Category\"}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `name` has been modified and exceeds 255 characters.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-category:jira",
              "write:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Project categories"
        ],
        "summary": "Delete project category",
        "description": "Deletes a project category.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "removeProjectCategory",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "ID of the project category to delete.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/projectvalidate/key": {
      "get": {
        "tags": [
          "Project key and name validation"
        ],
        "summary": "Validate project key",
        "description": "Validates a project key by confirming the key is a valid string and not in use.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "validateProjectKey",
        "parameters": [
          {
            "name": "key",
            "in": "query",
            "description": "The project key.",
            "schema": {
              "type": "string",
              "example": "HSP"
            },
            "x-showInExample": "true"
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[],\"errors\":{\"projectKey\":\"A project with that project key already exists.\"}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/projectvalidate/validProjectKey": {
      "get": {
        "tags": [
          "Project key and name validation"
        ],
        "summary": "Get valid project key",
        "description": "Validates a project key and, if the key is invalid or in use, generates a valid random string for the project key.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getValidProjectKey",
        "parameters": [
          {
            "name": "key",
            "in": "query",
            "description": "The project key.",
            "schema": {
              "type": "string",
              "example": "HSP"
            },
            "x-showInExample": "true"
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                },
                "example": "\"VPNE\""
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/projectvalidate/validProjectName": {
      "get": {
        "tags": [
          "Project key and name validation"
        ],
        "summary": "Get valid project name",
        "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.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getValidProjectName",
        "parameters": [
          {
            "name": "name",
            "in": "query",
            "description": "The project name.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "string"
                },
                "example": "\"Valid Project Name Example\""
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/resolution": {
      "get": {
        "tags": [
          "Issue resolutions"
        ],
        "summary": "Get resolutions",
        "description": "Returns a list of all issue resolution values.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getResolutions",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Resolution"
                  }
                },
                "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\"}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:resolution:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue resolutions"
        ],
        "summary": "Create resolution",
        "description": "Creates an issue resolution.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createResolution",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateResolutionDetails"
              },
              "example": {
                "name": "My new resolution",
                "description": "My resolution description"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ResolutionId"
                },
                "example": "{\"id\":\"10001\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The length of the description must not exceed 255 characters.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue resolutions.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/resolution/default": {
      "put": {
        "tags": [
          "Issue resolutions"
        ],
        "summary": "Set default resolution",
        "description": "Sets default issue resolution.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setDefaultResolution",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SetDefaultResolutionRequest"
              },
              "example": {
                "id": "3"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The id has to be provided.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue priorities.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue resolution isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Priority with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/resolution/move": {
      "put": {
        "tags": [
          "Issue resolutions"
        ],
        "summary": "Move resolutions",
        "description": "Changes the order of issue resolutions.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "moveResolutions",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ReorderIssueResolutionsRequest"
              },
              "example": {
                "ids": [
                  "10000",
                  "10001"
                ],
                "after": "10002"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The IDs must contain no more than 1,000 items.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue resolutions.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue resolution isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Resolution with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/resolution/search": {
      "get": {
        "tags": [
          "Issue resolutions"
        ],
        "summary": "Search resolutions",
        "description": "Returns a [paginated](#pagination) list of resolutions. The list can contain all resolutions or a subset determined by any combination of these criteria:\n\n *  a list of resolutions IDs.\n *  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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "searchResolutions",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of resolutions IDs to be filtered out",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "onlyDefault",
            "in": "query",
            "description": "When set to true, return default only, when IDs provided, if none of them is default, return empty page. Default value is false",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanResolutionJsonBean"
                },
                "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}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:resolution:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/resolution/{id}": {
      "get": {
        "tags": [
          "Issue resolutions"
        ],
        "summary": "Get resolution",
        "description": "Returns an issue resolution value.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getResolution",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue resolution value.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Resolution"
                },
                "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\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if the issue resolution value is not found."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:resolution:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Issue resolutions"
        ],
        "summary": "Update resolution",
        "description": "Updates an issue resolution.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateResolution",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue resolution.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateResolutionDetails"
              },
              "example": {
                "name": "My updated resolution",
                "description": "My updated resolution description"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The length of the description must not exceed 255 characters.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue resolutions.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue resolution isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Resolution with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Issue resolutions"
        ],
        "summary": "Delete resolution",
        "description": "Deletes an issue resolution.\n\nThis 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteResolution",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue resolution.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "replaceWith",
            "in": "query",
            "description": "The ID of the issue resolution that will replace the currently selected resolution.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "303": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskProgressBeanObject"
                }
              }
            }
          },
          "400": {
            "description": "Returned if the request isn't valid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"The id has to be provided.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user doesn't have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access issue priorities.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the issue resolution isn't found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Priority with ID 10000 not found.\"],\"errors\":{}}"
              }
            }
          },
          "409": {
            "description": "Returned if a task to delete the issue resolution is already running.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/role": {
      "get": {
        "tags": [
          "Project roles"
        ],
        "summary": "Get all project roles",
        "description": "Gets a list of all project roles, complete with project role details and default actors.\n\n### About project roles ###\n\n[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).\n\nProject 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.\n\n#### Members and actors ####\n\nIn 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.\n\nActors 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:\n\n *  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.\n *  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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllProjectRoles",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ProjectRole"
                  }
                },
                "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\"}}}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have administrative permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira",
              "read:group:jira",
              "read:project-role:jira",
              "read:project:jira",
              "read:avatar:jira",
              "read:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Project roles"
        ],
        "summary": "Create project role",
        "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.\n\n*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.*<\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createProjectRole",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateRoleRequestBean"
              },
              "example": {
                "name": "Developers",
                "description": "A project role that represents developers in a project"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/role/{id}": {
      "get": {
        "tags": [
          "Project roles"
        ],
        "summary": "Get project role by ID",
        "description": "Gets the project role details and the default actors associated with the role. The list of default actors is sorted by display name.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getProjectRoleById",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira",
              "read:group:jira",
              "read:project-role:jira",
              "read:project:jira",
              "read:avatar:jira",
              "read:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Project roles"
        ],
        "summary": "Fully update project role",
        "description": "Updates the project role's name and description. You must include both a name and a description in the request.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "fullyUpdateProjectRole",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateRoleRequestBean"
              },
              "example": {
                "name": "Developers",
                "description": "A project role that represents developers in a project"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Project roles"
        ],
        "summary": "Partial update project role",
        "description": "Updates either the project role's name or its description.\n\nYou 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "partialUpdateProjectRole",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUpdateRoleRequestBean"
              },
              "example": {
                "name": "Developers",
                "description": "A project role that represents developers in a project"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Project roles"
        ],
        "summary": "Delete project role",
        "description": "Deletes a project role. You must specify a replacement project role if you wish to delete a project role that is in use.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteProjectRole",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "swap",
            "in": "query",
            "description": "The ID of the project role that will replace the one being deleted.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project-role:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/role/{id}/actors": {
      "get": {
        "tags": [
          "Project role actors"
        ],
        "summary": "Get default actors for project role",
        "description": "Returns the [default actors](#api-rest-api-3-resolution-get) for the project role.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getProjectRoleActorsForRole",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira",
              "read:group:jira",
              "read:project-role:jira",
              "read:project:jira",
              "read:avatar:jira",
              "read:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Project role actors"
        ],
        "summary": "Add default actors to project role",
        "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.\n\nChanging a project role's default actors does not affect project role members for projects already created.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "addProjectRoleActorsToRole",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ActorInputBean"
              },
              "example": {
                "user": [
                  "admin"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Project role actors"
        ],
        "summary": "Delete default actors from project role",
        "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.\n\nChanging a project role's default actors does not affect project role members for projects already created.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteProjectRoleActorsFromRole",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "user",
            "in": "query",
            "description": "The user account ID of the user to remove as a default actor.",
            "schema": {
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "groupId",
            "in": "query",
            "description": "The group ID of the group to be removed as a default actor. This parameter cannot be used with the `group` parameter.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "group",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ProjectRole"
                },
                "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\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens": {
      "get": {
        "tags": [
          "Screens"
        ],
        "summary": "Get screens",
        "description": "Returns a [paginated](#pagination) list of all screens or those specified by one or more screen IDs.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getScreens",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of screen IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "queryString",
            "in": "query",
            "description": "String used to perform a case-insensitive partial match with screen name.",
            "schema": {
              "type": "string",
              "default": ""
            }
          },
          {
            "name": "scope",
            "in": "query",
            "description": "The scope filter string. To filter by multiple scope, provide an ampersand-separated list. For example, `scope=GLOBAL&scope=PROJECT`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "GLOBAL",
                  "TEMPLATE",
                  "PROJECT"
                ]
              }
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `id` Sorts by screen ID.\n *  `name` Sorts by screen name.",
            "schema": {
              "type": "string",
              "enum": [
                "name",
                "-name",
                "+name",
                "id",
                "-id",
                "+id"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanScreen"
                },
                "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.\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira",
              "read:screen:jira",
              "read:avatar:jira",
              "read:project-category:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Screens"
        ],
        "summary": "Create screen",
        "description": "Creates a screen with a default field tab.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createScreen",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ScreenDetails"
              },
              "example": {
                "name": "Resolve Security Issue Screen",
                "description": "Enables changes to resolution and linked issues."
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Screen"
                },
                "example": "{\"id\":10005,\"name\":\"Resolve Security Issue Screen\",\"description\":\"Enables changes to resolution and linked issues.\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The name is used by another screen.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can manage screens.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira",
              "read:screen:jira",
              "write:screen:jira",
              "read:avatar:jira",
              "read:project-category:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens/addToDefault/{fieldId}": {
      "post": {
        "tags": [
          "Screens"
        ],
        "summary": "Add field to default screen",
        "description": "Adds a field to the default tab of the default screen.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "addFieldToDefaultScreen",
        "parameters": [
          {
            "name": "fieldId",
            "in": "path",
            "description": "The ID of the field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira",
              "read:screen:jira",
              "write:screen:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens/{screenId}": {
      "put": {
        "tags": [
          "Screens"
        ],
        "summary": "Update screen",
        "description": "Updates a screen. Only screens used in classic projects can be updated.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateScreen",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateScreenDetails"
              },
              "example": {
                "name": "Resolve Accessibility Issue Screen",
                "description": "Enables changes to resolution and linked issues for accessibility related issues."
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Screen"
                },
                "example": "{\"id\":10005,\"name\":\"Resolve Security Issue Screen\",\"description\":\"Enables changes to resolution and linked issues.\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The name is used by another screen.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can manage screens.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the screen is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The screen was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira",
              "read:screen:jira",
              "write:screen:jira",
              "read:avatar:jira",
              "read:project-category:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Screens"
        ],
        "summary": "Delete screen",
        "description": "Deletes a screen. A screen cannot be deleted if it is used in a screen scheme, workflow, or workflow draft.\n\nOnly screens used in classic projects can be deleted.",
        "operationId": "deleteScreen",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful."
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The screen is used in a screen scheme.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can manage screens.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the screen is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The screen was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:screen:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens/{screenId}/availableFields": {
      "get": {
        "tags": [
          "Screens"
        ],
        "summary": "Get available screen fields",
        "description": "Returns the fields that can be added to a tab on a screen.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAvailableScreenFields",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ScreenableField"
                  }
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:screen-field:jira",
              "read:screenable-field:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens/{screenId}/tabs": {
      "get": {
        "tags": [
          "Screen tabs"
        ],
        "summary": "Get all screen tabs",
        "description": "Returns the list of tabs for a screen.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).\n *  *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": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "projectKey",
            "in": "query",
            "description": "The key of the project.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ScreenableTab"
                  }
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:screen-tab:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Screen tabs"
        ],
        "summary": "Create screen tab",
        "description": "Creates a tab for a screen.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "addScreenTab",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ScreenableTab"
              },
              "example": {
                "name": "Fields Tab"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScreenableTab"
                },
                "example": "{\"id\":10000,\"name\":\"Fields Tab\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:screen-tab:jira",
              "write:screen-tab:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens/{screenId}/tabs/{tabId}": {
      "put": {
        "tags": [
          "Screen tabs"
        ],
        "summary": "Update screen tab",
        "description": "Updates the name of a screen tab.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "renameScreenTab",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "tabId",
            "in": "path",
            "description": "The ID of the screen tab.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ScreenableTab"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScreenableTab"
                },
                "example": "{\"id\":10000,\"name\":\"Fields Tab\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:screen-tab:jira",
              "write:screen-tab:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Screen tabs"
        ],
        "summary": "Delete screen tab",
        "description": "Deletes a screen tab.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteScreenTab",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "tabId",
            "in": "path",
            "description": "The ID of the screen tab.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:screen-tab:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens/{screenId}/tabs/{tabId}/fields": {
      "get": {
        "tags": [
          "Screen tab fields"
        ],
        "summary": "Get all screen tab fields",
        "description": "Returns all fields for a screen tab.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).\n *  *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": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "tabId",
            "in": "path",
            "description": "The ID of the screen tab.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "projectKey",
            "in": "query",
            "description": "The key of the project.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ScreenableField"
                  }
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:screenable-field:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Screen tab fields"
        ],
        "summary": "Add screen tab field",
        "description": "Adds a field to a screen tab.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "addScreenTabField",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "tabId",
            "in": "path",
            "description": "The ID of the screen tab.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AddFieldBean"
              },
              "example": {
                "fieldId": "summary"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScreenableField"
                },
                "example": "{\"id\":\"summary\",\"name\":\"Summary\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:screenable-field:jira",
              "write:screenable-field:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens/{screenId}/tabs/{tabId}/fields/{id}": {
      "delete": {
        "tags": [
          "Screen tab fields"
        ],
        "summary": "Remove screen tab field",
        "description": "Removes a field from a screen tab.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "removeScreenTabField",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "tabId",
            "in": "path",
            "description": "The ID of the screen tab.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:screenable-field:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens/{screenId}/tabs/{tabId}/fields/{id}/move": {
      "post": {
        "tags": [
          "Screen tab fields"
        ],
        "summary": "Move screen tab field",
        "description": "Moves a screen tab field.\n\nIf `after` and `position` are provided in the request, `position` is ignored.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "moveScreenTabField",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "tabId",
            "in": "path",
            "description": "The ID of the screen tab.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the field.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MoveFieldBean"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:screenable-field:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screens/{screenId}/tabs/{tabId}/move/{pos}": {
      "post": {
        "tags": [
          "Screen tabs"
        ],
        "summary": "Move screen tab",
        "description": "Moves a screen tab.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "moveScreenTab",
        "parameters": [
          {
            "name": "screenId",
            "in": "path",
            "description": "The ID of the screen.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "tabId",
            "in": "path",
            "description": "The ID of the screen tab.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "pos",
            "in": "path",
            "description": "The position of tab. The base index is 0.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:screen:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screenscheme": {
      "get": {
        "tags": [
          "Screen schemes"
        ],
        "summary": "Get screen schemes",
        "description": "Returns a [paginated](#pagination) list of screen schemes.\n\nOnly screen schemes used in classic projects are returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getScreenSchemes",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 25
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of screen scheme IDs. To include multiple IDs, provide an ampersand-separated list. For example, `id=10000&id=10001`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64"
              }
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string",
              "default": ""
            }
          },
          {
            "name": "queryString",
            "in": "query",
            "description": "String used to perform a case-insensitive partial match with screen scheme name.",
            "schema": {
              "type": "string",
              "default": ""
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `id` Sorts by screen scheme ID.\n *  `name` Sorts by screen scheme name.",
            "schema": {
              "type": "string",
              "enum": [
                "name",
                "-name",
                "+name",
                "id",
                "-id",
                "+id"
              ]
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanScreenScheme"
                },
                "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}}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:screen-scheme:jira",
              "read:issue-type-screen-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Screen schemes"
        ],
        "summary": "Create screen scheme",
        "description": "Creates a screen scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createScreenScheme",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ScreenSchemeDetails"
              },
              "example": {
                "screens": {
                  "default": 10017,
                  "view": 10020,
                  "edit": 10019
                },
                "name": "Employee screen scheme",
                "description": "Manage employee data"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ScreenSchemeId"
                },
                "example": "{\"id\":10001}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The name is used by another scheme.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access screen schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if a screen used as one of the screen types in the screen scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"One or more screens assigned to screen types was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:screen-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/screenscheme/{screenSchemeId}": {
      "put": {
        "tags": [
          "Screen schemes"
        ],
        "summary": "Update screen scheme",
        "description": "Updates a screen scheme. Only screen schemes used in classic projects can be updated.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateScreenScheme",
        "parameters": [
          {
            "name": "screenSchemeId",
            "in": "path",
            "description": "The ID of the screen scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The screen scheme update details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateScreenSchemeDetails"
              },
              "example": {
                "screens": {
                  "default": "10018",
                  "create": "10019"
                },
                "name": "Employee screen scheme v2"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The name is used by another scheme.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access screen schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the screen scheme or a screen used as one of the screen types is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The screen scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:screen-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Screen schemes"
        ],
        "summary": "Delete screen scheme",
        "description": "Deletes a screen scheme. A screen scheme cannot be deleted if it is used in an issue type screen scheme.\n\nOnly screens schemes used in classic projects can be deleted.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteScreenScheme",
        "parameters": [
          {
            "name": "screenSchemeId",
            "in": "path",
            "description": "The ID of the screen scheme.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the screen scheme is deleted."
          },
          "400": {
            "description": "Returned if the screen scheme is used in an issue type screen scheme.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The screen scheme cannot be deleted as it is in use in an issue type screen scheme.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access screen schemes.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the screen scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The screen scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:screen-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/search": {
      "get": {
        "tags": [
          "Issue search"
        ],
        "summary": "Search for issues using JQL (GET)",
        "description": "Searches for issues using [JQL](https://confluence.atlassian.com/x/egORLQ).\n\nIf 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** Issues are included in the response where the user has:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "searchForIssuesUsingJql",
        "parameters": [
          {
            "name": "jql",
            "in": "query",
            "description": "The [JQL](https://confluence.atlassian.com/x/egORLQ) that defines the search. Note:\n\n *  If no JQL expression is provided, all issues are returned.\n *  `username` and `userkey` cannot be used as search terms due to privacy reasons. Use `accountId` instead.\n *  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.",
            "schema": {
              "type": "string",
              "example": "project = HSP"
            },
            "x-showInExample": "true"
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "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.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "validateQuery",
            "in": "query",
            "description": "Determines how to validate the JQL query and treat the validation results. Supported values are:\n\n *  `strict` Returns a 400 response code if any errors are found, along with a list of all errors (and warnings).\n *  `warn` Returns all errors as warnings.\n *  `none` No validation is performed.\n *  `true` *Deprecated* A legacy synonym for `strict`.\n *  `false` *Deprecated* A legacy synonym for `warn`.\n\nNote: If the JQL is not correctly formed a 400 response code is returned, regardless of the `validateQuery` value.",
            "schema": {
              "type": "string",
              "enum": [
                "strict",
                "warn",
                "none",
                "true",
                "false"
              ],
              "default": "strict"
            }
          },
          {
            "name": "fields",
            "in": "query",
            "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:\n\n *  `*all` Returns all fields.\n *  `*navigable` Returns navigable fields.\n *  Any issue field, prefixed with a minus to exclude.\n\nExamples:\n\n *  `summary,comment` Returns only the summary and comments fields.\n *  `-description` Returns all navigable (default) fields except description.\n *  `*all,-comment` Returns all fields except comments.\n\nThis parameter may be specified multiple times. For example, `fields=field1,field2&fields=field3`.\n\nNote: 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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string",
                "default": "*navigable"
              }
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about issues in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `renderedFields` Returns field values rendered in HTML format.\n *  `names` Returns the display name of each field.\n *  `schema` Returns the schema describing a field type.\n *  `transitions` Returns all possible transitions for the issue.\n *  `operations` Returns all possible operations for the issue.\n *  `editmeta` Returns information about how each field can be edited.\n *  `changelog` Returns a list of recent updates to an issue, sorted by date, starting from the most recent.\n *  `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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "properties",
            "in": "query",
            "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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "fieldsByKeys",
            "in": "query",
            "description": "Reference fields by their key (rather than ID).",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchResults"
                },
                "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\":\"2022-12-08T07:09:19.704+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\":\"2022-12-08T07:09:19.702+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'.\"]}"
              }
            }
          },
          "400": {
            "description": "Returned if the JQL query is invalid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-details:jira",
              "read:audit-log:jira",
              "read:avatar:jira",
              "read:field-configuration:jira",
              "read:issue-meta:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Issue search"
        ],
        "summary": "Search for issues using JQL (POST)",
        "description": "Searches for issues using [JQL](https://confluence.atlassian.com/x/egORLQ).\n\nThere is a [GET](#api-rest-api-3-search-get) version of this resource that can be used for smaller JQL query expressions.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** Issues are included in the response where the user has:\n\n *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.\n *  If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.",
        "operationId": "searchForIssuesUsingJqlPost",
        "parameters": [],
        "requestBody": {
          "description": "A JSON object containing the search request.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/SearchRequestBean"
              },
              "example": {
                "expand": [
                  "names",
                  "schema",
                  "operations"
                ],
                "jql": "project = HSP",
                "maxResults": 15,
                "fieldsByKeys": false,
                "fields": [
                  "summary",
                  "status",
                  "assignee"
                ],
                "startAt": 0
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SearchResults"
                },
                "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\":\"2022-12-08T07:09:19.704+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\":\"2022-12-08T07:09:19.702+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'.\"]}"
              }
            }
          },
          "400": {
            "description": "Returned if the JQL query is invalid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-details:jira",
              "read:field.default-value:jira",
              "read:field.option:jira",
              "read:field:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/securitylevel/{id}": {
      "get": {
        "tags": [
          "Issue security level"
        ],
        "summary": "Get issue security level",
        "description": "Returns details of an issue security level.\n\nUse [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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getIssueSecurityLevel",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the issue security level.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/SecurityLevel"
                },
                "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\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "404": {
            "description": "Returned if the issue security level is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:issue-security-level:jira",
              "read:project-role:jira",
              "read:user:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/serverInfo": {
      "get": {
        "tags": [
          "Server info"
        ],
        "summary": "Get Jira instance info",
        "description": "Returns information about the Jira instance.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getServerInfo",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ServerInformation"
                },
                "example": "{\"baseUrl\":\"https://your-domain.atlassian.net/jira\",\"version\":\"1001.0.0-SNAPSHOT\",\"versionNumbers\":[5,0,0],\"buildNumber\":582,\"buildDate\":\"2022-12-08T07:09:14.731+0000\",\"serverTime\":\"2022-12-08T07:09:14.731+0000\",\"scmInfo\":\"1f51473f5c7b75c1a69a0090f4832cdc5053702a\",\"serverTitle\":\"My Jira instance\",\"defaultLocale\":{\"locale\":\"en_AU\"}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": []
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": []
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": []
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/settings/columns": {
      "get": {
        "tags": [
          "Issue navigator settings"
        ],
        "summary": "Get issue navigator default columns",
        "description": "Returns the default issue navigator columns.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getIssueNavigatorDefaultColumns",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ColumnItem"
                  }
                },
                "example": "[{\"label\":\"Key\",\"value\":\"issuekey\"},{\"label\":\"Summary\",\"value\":\"summary\"}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      },
      "put": {
        "tags": [
          "Issue navigator settings"
        ],
        "summary": "Set issue navigator default columns",
        "description": "Sets the default issue navigator columns.\n\nThe `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:\n\n`curl -X PUT -d columns=summary -d columns=description https://your-domain.atlassian.net/rest/api/3/settings/columns`\n\nIf no column details are sent, then all default columns are removed.\n\nA 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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setIssueNavigatorDefaultColumns",
        "parameters": [],
        "requestBody": {
          "description": "A navigable field value.",
          "content": {
            "*/*": {
              "schema": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/status": {
      "get": {
        "tags": [
          "Workflow statuses"
        ],
        "summary": "Get all statuses",
        "description": "Returns a list of all statuses associated with active workflows.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getStatuses",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StatusDetails"
                  }
                },
                "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\"}}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:status:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/status/{idOrName}": {
      "get": {
        "tags": [
          "Workflow statuses"
        ],
        "summary": "Get status",
        "description": "Returns a status. The status must be associated with an active workflow to be returned.\n\nIf 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.\n\nThis operation can be accessed anonymously.\n\n[Permissions](#permissions) required: None.",
        "operationId": "getStatus",
        "parameters": [
          {
            "name": "idOrName",
            "in": "path",
            "description": "The ID or name of the status.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StatusDetails"
                },
                "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\"}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the status is not found.\n *  the status is not associated with a workflow.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:status:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/statuscategory": {
      "get": {
        "tags": [
          "Workflow status categories"
        ],
        "summary": "Get all status categories",
        "description": "Returns a list of all status categories.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getStatusCategories",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/StatusCategory"
                  }
                },
                "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\"}]"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:status:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/statuscategory/{idOrKey}": {
      "get": {
        "tags": [
          "Workflow status categories"
        ],
        "summary": "Get status category",
        "description": "Returns a status category. Status categories provided a mechanism for categorizing [statuses](#api-rest-api-3-status-idOrName-get).\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getStatusCategory",
        "parameters": [
          {
            "name": "idOrKey",
            "in": "path",
            "description": "The ID or key of the status category.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/StatusCategory"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/statuscategory/1\",\"id\":1,\"key\":\"in-flight\",\"colorName\":\"yellow\",\"name\":\"In Progress\"}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if the status category is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:status:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/statuses": {
      "get": {
        "tags": [
          "Status"
        ],
        "summary": "Bulk get statuses",
        "description": "Returns a list of the statuses specified by one or more status IDs.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg)\n *  *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg)",
        "operationId": "getStatusesById",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `usages` Returns the project and issue types that use the status in their workflow.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "query",
            "description": "The list of status IDs. To include multiple IDs, provide an ampersand-separated list. For example, id=10000&id=10001.\n\nMin items `1`, Max items `50`",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/JiraStatus"
                  }
                },
                "example": "[{\"id\":\"1000\",\"name\":\"Finished\",\"statusCategory\":\"DONE\",\"scope\":{\"type\":\"PROJECT\",\"project\":{\"id\":\"1\"}},\"description\":\"The issue is resolved\",\"usages\":[{\"project\":{\"id\":\"1\"},\"issueTypes\":[\"10002\"]}]}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Status"
        ],
        "summary": "Bulk update statuses",
        "description": "Updates statuses by ID.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg)\n *  *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg)",
        "operationId": "updateStatuses",
        "parameters": [],
        "requestBody": {
          "description": "The list of statuses that will be updated.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StatusUpdateRequest"
              },
              "example": {
                "statuses": [
                  {
                    "name": "Finished",
                    "description": "The issue is resolved",
                    "id": "1000",
                    "statusCategory": "DONE"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The name is too long, maxSize=255\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing, or the caller doesn't have permissions to perform the operation."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:workflow:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Status"
        ],
        "summary": "Bulk create statuses",
        "description": "Creates statuses for a global or project scope.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg)\n *  *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg)",
        "operationId": "createStatuses",
        "parameters": [],
        "requestBody": {
          "description": "Details of the statuses being created and their scope.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/StatusCreateRequest"
              },
              "example": {
                "scope": {
                  "project": {
                    "id": "1"
                  },
                  "type": "PROJECT"
                },
                "statuses": [
                  {
                    "name": "Finished",
                    "description": "The issue is resolved",
                    "statusCategory": "DONE"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/JiraStatus"
                  }
                },
                "example": "[{\"id\":\"1000\",\"name\":\"Finished\",\"statusCategory\":\"DONE\",\"scope\":{\"type\":\"PROJECT\",\"project\":{\"id\":\"1\"}},\"description\":\"The issue is resolved\",\"usages\":[]}]"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The name is too long, maxSize=255\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing, or the caller doesn't have permissions to perform the operation."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:workflow:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Status"
        ],
        "summary": "Bulk delete Statuses",
        "description": "Deletes statuses by ID.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg)\n *  *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg)",
        "operationId": "deleteStatusesById",
        "parameters": [
          {
            "name": "id",
            "in": "query",
            "description": "The list of status IDs. To include multiple IDs, provide an ampersand-separated list. For example, id=10000&id=10001.\n\nMin items `1`, Max items `50`",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The name is too long, maxSize=255\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing, or the caller doesn't have permissions to perform the operation."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:workflow:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/statuses/search": {
      "get": {
        "tags": [
          "Status"
        ],
        "summary": "Search statuses paginated",
        "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.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer projects* [project permission.](https://confluence.atlassian.com/x/yodKLg)\n *  *Administer Jira* [project permission.](https://confluence.atlassian.com/x/yodKLg)",
        "operationId": "search",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `usages` Returns the project and issue types that use the status in their workflow.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "projectId",
            "in": "query",
            "description": "The project the status is part of or null for global statuses.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 200
            }
          },
          {
            "name": "searchString",
            "in": "query",
            "description": "Term to match status names against or null to search for all statuses in the search scope.",
            "schema": {
              "maxLength": 255,
              "type": "string"
            }
          },
          {
            "name": "statusCategory",
            "in": "query",
            "description": "Category of the status to filter by. The supported values are: `TODO`, `IN_PROGRESS`, and `DONE`.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageOfStatuses"
                },
                "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\"]}]}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/task/{taskId}": {
      "get": {
        "tags": [
          "Tasks"
        ],
        "summary": "Get task",
        "description": "Returns the status of a [long-running asynchronous task](#async).\n\nWhen 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.\n\n**[Permissions](#permissions) required:** either of:\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).\n *  Creator of the task.",
        "operationId": "getTask",
        "parameters": [
          {
            "name": "taskId",
            "in": "path",
            "description": "The ID of the task.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskProgressBeanObject"
                },
                "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\":1670483362081,\"started\":1670483362182,\"finished\":1670483362282,\"lastUpdate\":1670483362282}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": []
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": []
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": []
          }
        ],
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/task/{taskId}/cancel": {
      "post": {
        "tags": [
          "Tasks"
        ],
        "summary": "Cancel task",
        "description": "Cancels a task.\n\n**[Permissions](#permissions) required:** either of:\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).\n *  Creator of the task.",
        "operationId": "cancelTask",
        "parameters": [
          {
            "name": "taskId",
            "in": "path",
            "description": "The ID of the task.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "202": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if cancellation of the task is not possible.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "404": {
            "description": "Returned if the task is not found.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:async-task:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/uiModifications": {
      "get": {
        "tags": [
          "UI modifications (apps)"
        ],
        "summary": "Get UI modifications",
        "description": "Gets UI modifications. UI modifications can only be retrieved by Forge apps.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getUiModifications",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use expand to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `data` Returns UI modification data.\n *  `contexts` Returns UI modification contexts.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanUiModificationDetails"
                },
                "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\":[]}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "NONE"
      },
      "post": {
        "tags": [
          "UI modifications (apps)"
        ],
        "summary": "Create UI modification",
        "description": "Creates a UI modification. UI modification can only be created by Forge apps.\n\nEach app can define up to 100 UI modifications. Each UI modification can define up to 1000 contexts.\n\n**[Permissions](#permissions) required:**\n\n *  *None* if the UI modification is created without contexts.\n *  *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": {
          "description": "Details of the UI modification.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateUiModificationDetails"
              },
              "example": {
                "data": "{field: 'Story Points', config: {hidden: false}}",
                "name": "Reveal Story Points",
                "description": "Reveals Story Points field when any Sprint is selected.",
                "contexts": [
                  {
                    "issueTypeId": "10000",
                    "viewType": "GIC",
                    "projectId": "10000"
                  },
                  {
                    "issueTypeId": "10001",
                    "viewType": "GIC",
                    "projectId": "10000"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the UI modification is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UiModificationIdentifiers"
                },
                "example": "{\"id\":\"d7dbda8a-6239-4b63-8e13-a5ef975c8e61\",\"self\":\"https://api.atlassian.com/ex/jira/{cloudid}/rest/api/2/uiModifications/d7dbda8a-6239-4b63-8e13-a5ef975c8e61\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/uiModifications/{uiModificationId}": {
      "put": {
        "tags": [
          "UI modifications (apps)"
        ],
        "summary": "Update UI modification",
        "description": "Updates a UI modification. UI modification can only be updated by Forge apps.\n\nEach UI modification can define up to 1000 contexts.\n\n**[Permissions](#permissions) required:**\n\n *  *None* if the UI modification is created without contexts.\n *  *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": [
          {
            "name": "uiModificationId",
            "in": "path",
            "description": "The ID of the UI modification.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "Details of the UI modification.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/UpdateUiModificationDetails"
              },
              "example": {
                "data": "{field: 'Story Points', config: {hidden: true}}",
                "name": "Updated Reveal Story Points",
                "contexts": [
                  {
                    "issueTypeId": "10000",
                    "viewType": "GIC",
                    "projectId": "10000"
                  },
                  {
                    "issueTypeId": "10001",
                    "viewType": "GIC",
                    "projectId": "10000"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the UI modification is updated.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "NONE"
      },
      "delete": {
        "tags": [
          "UI modifications (apps)"
        ],
        "summary": "Delete UI modification",
        "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.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "deleteUiModification",
        "parameters": [
          {
            "name": "uiModificationId",
            "in": "path",
            "description": "The ID of the UI modification.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the UI modification is deleted.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": []
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/api/3/universal_avatar/type/{type}/owner/{entityId}": {
      "get": {
        "tags": [
          "Avatars"
        ],
        "summary": "Get avatars",
        "description": "Returns the system and custom avatars for a project or issue type.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  for custom project avatars, *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project the avatar belongs to.\n *  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.\n *  for system avatars, none.",
        "operationId": "getAvatars",
        "parameters": [
          {
            "name": "type",
            "in": "path",
            "description": "The avatar type.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "project",
                "issuetype"
              ]
            }
          },
          {
            "name": "entityId",
            "in": "path",
            "description": "The ID of the item the avatar is associated with.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Avatars"
                },
                "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\"}}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Avatars"
        ],
        "summary": "Load avatar",
        "description": "Loads a custom avatar for a project or issue type.\n\nSpecify the avatar's local file location in the body of the request. Also, include the following headers:\n\n *  `X-Atlassian-Token: no-check` To prevent XSRF protection blocking the request, for more information see [Special Headers](#special-request-headers).\n *  `Content-Type: image/image type` Valid image types are JPEG, GIF, or PNG.\n\nFor example:  \n`curl --request POST `\n\n`--user [email protected]: `\n\n`--header 'X-Atlassian-Token: no-check' `\n\n`--header 'Content-Type: image/< image_type>' `\n\n`--data-binary \"<@/path/to/file/with/your/avatar>\" `\n\n`--url 'https://your-domain.atlassian.net/rest/api/3/universal_avatar/type/{type}/owner/{entityId}'`\n\nThe 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.\n\nThe cropped image is then used to create avatars of 16x16, 24x24, 32x32, and 48x48 in size.\n\nAfter creating the avatar use:\n\n *  [Update issue type](#api-rest-api-3-issuetype-id-put) to set it as the issue type's displayed avatar.\n *  [Set project avatar](#api-rest-api-3-project-projectIdOrKey-avatar-put) to set it as the project's displayed avatar.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "storeAvatar",
        "parameters": [
          {
            "name": "type",
            "in": "path",
            "description": "The avatar type.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "project",
                "issuetype"
              ]
            }
          },
          {
            "name": "entityId",
            "in": "path",
            "description": "The ID of the item the avatar is associated with.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "x",
            "in": "query",
            "description": "The X coordinate of the top-left corner of the crop region.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "y",
            "in": "query",
            "description": "The Y coordinate of the top-left corner of the crop region.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "size",
            "in": "query",
            "description": "The length of each side of the crop region.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          }
        ],
        "requestBody": {
          "content": {
            "*/*": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Avatar"
                },
                "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\"}}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  an image isn't included in the request.\n *  the image type is unsupported.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:avatar:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/universal_avatar/type/{type}/owner/{owningObjectId}/avatar/{id}": {
      "delete": {
        "tags": [
          "Avatars"
        ],
        "summary": "Delete avatar",
        "description": "Deletes an avatar from a project or issue type.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteAvatar",
        "parameters": [
          {
            "name": "type",
            "in": "path",
            "description": "The avatar type.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "project",
                "issuetype"
              ]
            }
          },
          {
            "name": "owningObjectId",
            "in": "path",
            "description": "The ID of the item the avatar is associated with.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the avatar.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/universal_avatar/view/type/{type}": {
      "get": {
        "tags": [
          "Avatars"
        ],
        "summary": "Get avatar image by type",
        "description": "Returns the default project or issue type avatar image.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "getAvatarImageByType",
        "parameters": [
          {
            "name": "type",
            "in": "path",
            "description": "The icon type of the avatar.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "issuetype",
                "project"
              ]
            },
            "x-showInExample": "true"
          },
          {
            "name": "size",
            "in": "query",
            "description": "The size of the avatar image. If not provided the default size is returned.",
            "schema": {
              "type": "string",
              "enum": [
                "xsmall",
                "small",
                "medium",
                "large",
                "xlarge"
              ]
            },
            "x-showInExample": "true"
          },
          {
            "name": "format",
            "in": "query",
            "description": "The format to return the avatar image in. If not provided the original content format is returned.",
            "schema": {
              "type": "string",
              "enum": [
                "png",
                "svg"
              ]
            },
            "x-showInExample": "true"
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              },
              "image/png": {},
              "image/svg+xml": {},
              "*/*": {}
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if an avatar is not found or an avatar matching the requested size is not found.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:avatar:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/universal_avatar/view/type/{type}/avatar/{id}": {
      "get": {
        "tags": [
          "Avatars"
        ],
        "summary": "Get avatar image by ID",
        "description": "Returns a project or issue type avatar image by ID.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  For system avatars, none.\n *  For custom project avatars, *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project the avatar belongs to.\n *  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": [
          {
            "name": "type",
            "in": "path",
            "description": "The icon type of the avatar.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "issuetype",
                "project"
              ]
            },
            "x-showInExample": "true"
          },
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the avatar.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            },
            "x-showInExample": "true"
          },
          {
            "name": "size",
            "in": "query",
            "description": "The size of the avatar image. If not provided the default size is returned.",
            "schema": {
              "type": "string",
              "enum": [
                "xsmall",
                "small",
                "medium",
                "large",
                "xlarge"
              ]
            },
            "x-showInExample": "true"
          },
          {
            "name": "format",
            "in": "query",
            "description": "The format to return the avatar image in. If not provided the original content format is returned.",
            "schema": {
              "type": "string",
              "enum": [
                "png",
                "svg"
              ]
            },
            "x-showInExample": "true"
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              },
              "image/png": {},
              "image/svg+xml": {},
              "*/*": {}
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if an avatar is not found or an avatar matching the requested size is not found.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:avatar:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/universal_avatar/view/type/{type}/owner/{entityId}": {
      "get": {
        "tags": [
          "Avatars"
        ],
        "summary": "Get avatar image by owner",
        "description": "Returns the avatar image for a project or issue type.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  For system avatars, none.\n *  For custom project avatars, *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project the avatar belongs to.\n *  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": [
          {
            "name": "type",
            "in": "path",
            "description": "The icon type of the avatar.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "issuetype",
                "project"
              ]
            },
            "x-showInExample": "true"
          },
          {
            "name": "entityId",
            "in": "path",
            "description": "The ID of the project or issue type the avatar belongs to.",
            "required": true,
            "schema": {
              "type": "string"
            },
            "x-showInExample": "true"
          },
          {
            "name": "size",
            "in": "query",
            "description": "The size of the avatar image. If not provided the default size is returned.",
            "schema": {
              "type": "string",
              "enum": [
                "xsmall",
                "small",
                "medium",
                "large",
                "xlarge"
              ]
            },
            "x-showInExample": "true"
          },
          {
            "name": "format",
            "in": "query",
            "description": "The format to return the avatar image in. If not provided the original content format is returned.",
            "schema": {
              "type": "string",
              "enum": [
                "png",
                "svg"
              ]
            },
            "x-showInExample": "true"
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object"
                }
              },
              "image/png": {},
              "image/svg+xml": {},
              "*/*": {}
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if an avatar is not found or an avatar matching the requested size is not found.",
            "content": {
              "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\":{}}"
              },
              "*/*": {
                "example": "{\"errorMessages\":[\"Human readable error message\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:avatar:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get user",
        "description": "Returns a user.\n\nPrivacy 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.\n\n**[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getUser",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Required.",
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "key",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about users in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `groups` includes all groups and nested groups to which the user belongs.\n *  `applicationRoles` includes details of all the applications to which the user has access.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"key\":\"\",\"accountId\":\"5b10a2844c20165700ede21g\",\"accountType\":\"atlassian\",\"name\":\"\",\"emailAddress\":\"[email protected]\",\"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\":[]}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:application-role:jira",
              "read:group:jira",
              "read:user:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Users"
        ],
        "summary": "Create user",
        "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.\n\nIf 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createUser",
        "parameters": [],
        "requestBody": {
          "description": "Details about the user to be created.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NewUserDetails"
              },
              "example": {
                "emailAddress": "[email protected]"
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/User"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"key\":\"\",\"accountId\":\"5b10a2844c20165700ede21g\",\"accountType\":\"atlassian\",\"name\":\"\",\"emailAddress\":\"[email protected]\",\"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\":[]}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {}
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "INACCESSIBLE"
      },
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Delete user",
        "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.\n\n**[Permissions](#permissions) required:** Site administration (that is, membership of the *site-admin* [group](https://confluence.atlassian.com/x/24xjL)).",
        "operationId": "removeUser",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "required": true,
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "key",
            "in": "query",
            "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.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {}
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/user/assignable/multiProjectSearch": {
      "get": {
        "tags": [
          "User search"
        ],
        "summary": "Find users assignable to projects",
        "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.\n\nThis 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.\n\nPrivacy 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** None.",
        "operationId": "findBulkAssignableUsers",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "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 *[email protected]*. Required, unless `accountId` is specified.",
            "schema": {
              "type": "string",
              "example": "query"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "A query string that is matched exactly against user `accountId`. Required, unless `query` is specified.",
            "schema": {
              "maxLength": 128,
              "type": "string"
            }
          },
          {
            "name": "projectKeys",
            "in": "query",
            "description": "A list of project keys (case sensitive). This parameter accepts a comma-separated list.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/User"
                  }
                },
                "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}]"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `projectKeys` is missing.\n *  `query` or `accountId` is missing.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project:jira",
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/assignable/search": {
      "get": {
        "tags": [
          "User search"
        ],
        "summary": "Find users assignable to issues",
        "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:\n\n *  a new issue, by providing the `projectKeyOrId`.\n *  an updated issue, by providing the `issueKey`.\n *  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).\n\nIn 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.\n\nThis 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.\n\nPrivacy 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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "findAssignableUsers",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "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 *[email protected]*. Required, unless `username` or `accountId` is specified.",
            "schema": {
              "type": "string",
              "example": "query"
            },
            "x-showInExample": "true"
          },
          {
            "name": "sessionId",
            "in": "query",
            "description": "The sessionId of this request. SessionId is the same until the assignee is set.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "A query string that is matched exactly against user `accountId`. Required, unless `query` is specified.",
            "schema": {
              "maxLength": 128,
              "type": "string"
            }
          },
          {
            "name": "project",
            "in": "query",
            "description": "The project ID or project key (case sensitive). Required, unless `issueKey` is specified.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "issueKey",
            "in": "query",
            "description": "The key of the issue. Required, unless `project` is specified.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "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.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "actionDescriptorId",
            "in": "query",
            "description": "The ID of the transition.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "recommend",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/User"
                  }
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g\",\"key\":\"\",\"accountId\":\"5b10a2844c20165700ede21g\",\"accountType\":\"atlassian\",\"name\":\"\",\"emailAddress\":\"[email protected]\",\"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\":[]}}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `issueKey` or `project` is missing.\n *  `query` or `accountId` is missing.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue:jira",
              "read:project:jira",
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/bulk": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Bulk get users",
        "description": "Returns a [paginated](#pagination) list of the users specified by one or more account IDs.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "bulkGetUsers",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 10
            }
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "key",
            "in": "query",
            "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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of a user. To specify multiple users, pass multiple `accountId` parameters. For example, `accountId=5b10a2844c20165700ede21g&accountId=5b10ac8d82e05b22cc7d4ef5`.",
            "required": true,
            "schema": {
              "maxLength": 128,
              "type": "array",
              "example": "5b10ac8d82e05b22cc7d4ef5",
              "items": {
                "maxLength": 128,
                "type": "string",
                "example": "5b10ac8d82e05b22cc7d4ef5"
              }
            },
            "x-showInExample": "true"
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanUser"
                },
                "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\":\"[email protected]\",\"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\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if `accountID` is missing."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:application-role:jira",
              "read:group:jira",
              "read:user:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/bulk/migration": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get account IDs for users",
        "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.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "bulkGetUsersMigration",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 10
            }
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "key",
            "in": "query",
            "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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/UserMigrationBean"
                  }
                },
                "example": "[{\"username\":\"mia\",\"accountId\":\"5b10a2844c20165700ede21g\"},{\"username\":\"emma\",\"accountId\":\"5b10ac8d82e05b22cc7d4ef5\"}]"
              }
            }
          },
          "400": {
            "description": "Returned if `key` or `username`"
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/columns": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get user default columns",
        "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.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLgl), to get the column details for any user.\n *  Permission to access Jira, to get the calling user's column details.",
        "operationId": "getUserDefaultColumns",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/ColumnItem"
                  }
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user.columns:jira",
              "read:filter.column:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Users"
        ],
        "summary": "Set user default columns",
        "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.\n\nThe parameters for this resource are expressed as HTML form data. For example, in curl:\n\n`curl -X PUT -d columns=summary -d columns=description https://your-domain.atlassian.net/rest/api/3/user/columns?accountId=5b10ac8d82e05b22cc7d4ef5'`\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to set the columns on any user.\n *  Permission to access Jira, to set the calling user's columns.",
        "operationId": "setUserColumns",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          }
        ],
        "requestBody": {
          "description": "The ID of a column to set. To set multiple columns, send multiple `columns` parameters.",
          "content": {
            "*/*": {
              "schema": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "multipart/form-data": {
              "schema": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {}
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      },
      "delete": {
        "tags": [
          "Users"
        ],
        "summary": "Reset user default columns",
        "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.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to set the columns on any user.\n *  Permission to access Jira, to set the calling user's columns.",
        "operationId": "resetUserColumns",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {}
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/user/email": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get user email",
        "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": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, `5b10ac8d82e05b22cc7d4ef5`.",
            "required": true,
            "schema": {
              "maxLength": 128,
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnrestrictedUserEmail"
                },
                "example": "[email protected]"
              }
            }
          },
          "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"
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ACCESS_EMAIL_ADDRESSES"
      }
    },
    "/rest/api/3/user/email/bulk": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get user email bulk",
        "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": [
          {
            "name": "accountId",
            "in": "query",
            "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).",
            "required": true,
            "schema": {
              "maxLength": 128,
              "type": "array",
              "items": {
                "maxLength": 128,
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnrestrictedUserEmail"
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ACCESS_EMAIL_ADDRESSES"
      }
    },
    "/rest/api/3/user/groups": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get user groups",
        "description": "Returns the groups to which a user belongs.\n\n**[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getUserGroups",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "required": true,
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "key",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/GroupName"
                  }
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/permission/search": {
      "get": {
        "tags": [
          "User search"
        ],
        "summary": "Find users with permissions",
        "description": "Returns a list of users who fulfill these criteria:\n\n *  their user attributes match a search string.\n *  they have a set of permissions for a project or issue.\n\nIf no search string is provided, a list of all users with the permissions is returned.\n\nThis 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.\n\nPrivacy 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.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to get users for any project.\n *  *Administer Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for a project, to get users for that project.",
        "operationId": "findUsersWithAllPermissions",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "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 *[email protected]*. Required, unless `accountId` is specified.",
            "schema": {
              "type": "string",
              "example": "query"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "A query string that is matched exactly against user `accountId`. Required, unless `query` is specified.",
            "schema": {
              "maxLength": 128,
              "type": "string"
            }
          },
          {
            "name": "permissions",
            "in": "query",
            "description": "A comma separated list of permissions. Permissions can be specified as any:\n\n *  permission returned by [Get all permissions](#api-rest-api-3-permissions-get).\n *  custom project permission added by Connect apps.\n *  (deprecated) one of the following:\n    \n     *  ASSIGNABLE\\_USER\n     *  ASSIGN\\_ISSUE\n     *  ATTACHMENT\\_DELETE\\_ALL\n     *  ATTACHMENT\\_DELETE\\_OWN\n     *  BROWSE\n     *  CLOSE\\_ISSUE\n     *  COMMENT\\_DELETE\\_ALL\n     *  COMMENT\\_DELETE\\_OWN\n     *  COMMENT\\_EDIT\\_ALL\n     *  COMMENT\\_EDIT\\_OWN\n     *  COMMENT\\_ISSUE\n     *  CREATE\\_ATTACHMENT\n     *  CREATE\\_ISSUE\n     *  DELETE\\_ISSUE\n     *  EDIT\\_ISSUE\n     *  LINK\\_ISSUE\n     *  MANAGE\\_WATCHER\\_LIST\n     *  MODIFY\\_REPORTER\n     *  MOVE\\_ISSUE\n     *  PROJECT\\_ADMIN\n     *  RESOLVE\\_ISSUE\n     *  SCHEDULE\\_ISSUE\n     *  SET\\_ISSUE\\_SECURITY\n     *  TRANSITION\\_ISSUE\n     *  VIEW\\_VERSION\\_CONTROL\n     *  VIEW\\_VOTERS\\_AND\\_WATCHERS\n     *  VIEW\\_WORKFLOW\\_READONLY\n     *  WORKLOG\\_DELETE\\_ALL\n     *  WORKLOG\\_DELETE\\_OWN\n     *  WORKLOG\\_EDIT\\_ALL\n     *  WORKLOG\\_EDIT\\_OWN\n     *  WORK\\_ISSUE",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "issueKey",
            "in": "query",
            "description": "The issue key for the issue.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "projectKey",
            "in": "query",
            "description": "The project key for the project (case sensitive).",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/User"
                  }
                },
                "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}]"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `issueKey` or `projectKey` is missing.\n *  `query` or `accountId` is missing.\n *  `query` and `accountId` are provided.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue:jira",
              "read:project:jira",
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/picker": {
      "get": {
        "tags": [
          "User search"
        ],
        "summary": "Find users for picker",
        "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.\n\nThis 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.\n\nPrivacy 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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "query",
            "in": "query",
            "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 *[email protected]*.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return. The total number of matched users is returned in `total`.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "showAvatar",
            "in": "query",
            "description": "Include the URI to the user's avatar.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "exclude",
            "in": "query",
            "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.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "excludeAccountIds",
            "in": "query",
            "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`.",
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "avatarSize",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "excludeConnectUsers",
            "in": "query",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FoundUsers"
                },
                "example": "{\"users\":[{\"accountId\":\"5b10a2844c20165700ede21g\",\"accountType\":\"atlassian\",\"name\":\"mia\",\"key\":\"mia\",\"html\":\"Mia Krystof - mi[email protected] (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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/properties": {
      "get": {
        "tags": [
          "User properties"
        ],
        "summary": "Get user property keys",
        "description": "Returns the keys of all properties for a user.\n\nNote: This operation does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to access the property keys on any user.\n *  Access to Jira, to access the calling user's property keys.",
        "operationId": "getUserPropertyKeys",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "userKey",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PropertyKeys"
                },
                "example": "{\"keys\":[{\"self\":\"https://your-domain.atlassian.net/rest/api/3/issue/EX-2/properties/issue.support\",\"key\":\"issue.support\"}]}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/properties/{propertyKey}": {
      "get": {
        "tags": [
          "User properties"
        ],
        "summary": "Get user property",
        "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.\n\nNote: This operation does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to get a property from any user.\n *  Access to Jira, to get a property from the calling user's record.",
        "operationId": "getUserProperty",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "userKey",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the user's property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityProperty"
                },
                "example": "{\"key\":\"issue.support\",\"value\":{\"system.conversation.id\":\"b1bf38be-5e94-4b40-a3b8-9278735ee1e6\",\"system.support.time\":\"1m\"}}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "User properties"
        ],
        "summary": "Set user property",
        "description": "Sets the value of a user's property. Use this resource to store custom data against a user.\n\nNote: This operation does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to set a property on any user.\n *  Access to Jira, to set a property on the calling user's record.",
        "operationId": "setUserProperty",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "userKey",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the user's property. The maximum length is 255 characters.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the user property is updated.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "201": {
            "description": "Returned if the user property is created.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:user.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "WRITE"
      },
      "delete": {
        "tags": [
          "User properties"
        ],
        "summary": "Delete user property",
        "description": "Deletes a property from a user.\n\nNote: This operation does not access the [user properties](https://confluence.atlassian.com/x/8YxjL) created and maintained in Jira.\n\n**[Permissions](#permissions) required:**\n\n *  *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), to delete a property from any user.\n *  Access to Jira, to delete a property from the calling user's record.",
        "operationId": "deleteUserProperty",
        "parameters": [
          {
            "name": "accountId",
            "in": "query",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "schema": {
              "maxLength": 128,
              "type": "string",
              "example": "5b10ac8d82e05b22cc7d4ef5"
            },
            "x-showInExample": "true"
          },
          {
            "name": "userKey",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the user's property.",
            "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "write:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "write:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:user.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "DELETE"
      }
    },
    "/rest/api/3/user/search": {
      "get": {
        "tags": [
          "User search"
        ],
        "summary": "Find users",
        "description": "Returns a list of users that match the search string and property.\n\nThis 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.\n\nThis operation can be accessed anonymously.\n\nPrivacy 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.\n\n**[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": [
          {
            "name": "query",
            "in": "query",
            "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 *[email protected]*. Required, unless `accountId` or `property` is specified.",
            "schema": {
              "type": "string",
              "example": "query"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "A query string that is matched exactly against a user `accountId`. Required, unless `query` or `property` is specified.",
            "schema": {
              "maxLength": 128,
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of filtered results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "property",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/User"
                  }
                },
                "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}]"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `accountId`, `query` or `property` is missing.\n *  `query` and `accountId` are provided.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira",
              "read:user.property:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/search/query": {
      "get": {
        "tags": [
          "User search"
        ],
        "summary": "Find users by query",
        "description": "Finds users with a structured query and returns a [paginated](#pagination) list of user details.\n\nThis 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.\n\n**[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg).\n\nThe query statements are:\n\n *  `is assignee of PROJ` Returns the users that are assignees of at least one issue in project *PROJ*.\n *  `is assignee of (PROJ-1, PROJ-2)` Returns users that are assignees on the issues *PROJ-1* or *PROJ-2*.\n *  `is reporter of (PROJ-1, PROJ-2)` Returns users that are reporters on the issues *PROJ-1* or *PROJ-2*.\n *  `is watcher of (PROJ-1, PROJ-2)` Returns users that are watchers on the issues *PROJ-1* or *PROJ-2*.\n *  `is voter of (PROJ-1, PROJ-2)` Returns users that are voters on the issues *PROJ-1* or *PROJ-2*.\n *  `is commenter of (PROJ-1, PROJ-2)` Returns users that have posted a comment on the issues *PROJ-1* or *PROJ-2*.\n *  `is transitioner of (PROJ-1, PROJ-2)` Returns users that have performed a transition on issues *PROJ-1* or *PROJ-2*.\n *  `[propertyKey].entity.property.path is \"property value\"` Returns users with the entity property value.\n\nThe 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:\n\n`is assignee of PROJ AND [propertyKey].entity.property.path is \"property value\"`",
        "operationId": "findUsersByQuery",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "description": "The search query.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanUser"
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/search/query/key": {
      "get": {
        "tags": [
          "User search"
        ],
        "summary": "Find user keys by query",
        "description": "Finds users with a structured query and returns a [paginated](#pagination) list of user keys.\n\nThis 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.\n\n**[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg).\n\nThe query statements are:\n\n *  `is assignee of PROJ` Returns the users that are assignees of at least one issue in project *PROJ*.\n *  `is assignee of (PROJ-1, PROJ-2)` Returns users that are assignees on the issues *PROJ-1* or *PROJ-2*.\n *  `is reporter of (PROJ-1, PROJ-2)` Returns users that are reporters on the issues *PROJ-1* or *PROJ-2*.\n *  `is watcher of (PROJ-1, PROJ-2)` Returns users that are watchers on the issues *PROJ-1* or *PROJ-2*.\n *  `is voter of (PROJ-1, PROJ-2)` Returns users that are voters on the issues *PROJ-1* or *PROJ-2*.\n *  `is commenter of (PROJ-1, PROJ-2)` Returns users that have posted a comment on the issues *PROJ-1* or *PROJ-2*.\n *  `is transitioner of (PROJ-1, PROJ-2)` Returns users that have performed a transition on issues *PROJ-1* or *PROJ-2*.\n *  `[propertyKey].entity.property.path is \"property value\"` Returns users with the entity property value.\n\nThe 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:\n\n`is assignee of PROJ AND [propertyKey].entity.property.path is \"property value\"`",
        "operationId": "findUserKeysByQuery",
        "parameters": [
          {
            "name": "query",
            "in": "query",
            "description": "The search query.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanUserKey"
                }
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/user/viewissue/search": {
      "get": {
        "tags": [
          "User search"
        ],
        "summary": "Find users with browse permission",
        "description": "Returns a list of users who fulfill these criteria:\n\n *  their user attributes match a search string.\n *  they have permission to browse issues.\n\nUse this resource to find users who can browse:\n\n *  an issue, by providing the `issueKey`.\n *  any issue in a project, by providing the `projectKey`.\n\nThis 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.\n\nPrivacy 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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "query",
            "in": "query",
            "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 *[email protected]*. Required, unless `accountId` is specified.",
            "schema": {
              "type": "string",
              "example": "query"
            },
            "x-showInExample": "true"
          },
          {
            "name": "username",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "accountId",
            "in": "query",
            "description": "A query string that is matched exactly against user `accountId`. Required, unless `query` is specified.",
            "schema": {
              "maxLength": 128,
              "type": "string"
            }
          },
          {
            "name": "issueKey",
            "in": "query",
            "description": "The issue key for the issue. Required, unless `projectKey` is specified.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "projectKey",
            "in": "query",
            "description": "The project key for the project (case sensitive). Required, unless `issueKey` is specified.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/User"
                  }
                },
                "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}]"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  `issueKey` or `projectKey` is missing.\n *  `query` or `accountId` is missing.\n *  `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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue:jira",
              "read:project:jira",
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/users": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get all users default",
        "description": "Returns a list of all users, including active users, inactive users and previously deleted users that have an Atlassian account.\n\nPrivacy 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.\n\n**[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllUsersDefault",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/User"
                  }
                },
                "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}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/users/search": {
      "get": {
        "tags": [
          "Users"
        ],
        "summary": "Get all users",
        "description": "Returns a list of all users, including active users, inactive users and previously deleted users that have an Atlassian account.\n\nPrivacy 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.\n\n**[Permissions](#permissions) required:** *Browse users and groups* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllUsers",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/User"
                  }
                },
                "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}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-user"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-user"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:user:jira",
              "read:application-role:jira",
              "read:avatar:jira",
              "read:group:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "INACCESSIBLE"
      }
    },
    "/rest/api/3/version": {
      "post": {
        "tags": [
          "Project versions"
        ],
        "summary": "Create version",
        "description": "Creates a project version.\n\nThis operation can be accessed anonymously.\n\n**[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": {
              "schema": {
                "$ref": "#/components/schemas/Version"
              },
              "example": {
                "archived": false,
                "releaseDate": "2010-07-06",
                "name": "New Version 1",
                "description": "An excellent version",
                "projectId": 10000,
                "released": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Version"
                },
                "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}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the project is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project-version:jira",
              "read:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/version/{id}": {
      "get": {
        "tags": [
          "Project versions"
        ],
        "summary": "Get version",
        "description": "Returns a project version.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the version.",
        "operationId": "getVersion",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the version.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about version in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `operations` Returns the list of operations available for this version.\n *  `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*.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Version"
                },
                "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}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Project versions"
        ],
        "summary": "Update version",
        "description": "Updates a project version.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the version.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Version"
              },
              "example": {
                "archived": false,
                "overdue": true,
                "releaseDate": "2010-07-06",
                "name": "New Version 1",
                "self": "https://your-domain.atlassian.net/rest/api/~ver~/version/10000",
                "description": "An excellent version",
                "userReleaseDate": "6/Jul/2010",
                "id": "10000",
                "projectId": 10000,
                "released": true
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Version"
                },
                "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}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  the request is invalid.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project-version:jira",
              "read:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      },
      "delete": {
        "tags": [
          "Project versions"
        ],
        "summary": "Delete version",
        "description": "Deletes a project version.\n\nDeprecated, 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.\n\nAlternative 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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the version.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "moveFixIssuesTo",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "moveAffectedIssuesTo",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the version is deleted."
          },
          "400": {
            "description": "Returned if the request is invalid."
          },
          "401": {
            "description": "Returned if:\n\n *  the authentication credentials are incorrect.\n *  the user does not have the required permissions."
          },
          "404": {
            "description": "Returned if the version is not found."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/version/{id}/mergeto/{moveIssuesTo}": {
      "put": {
        "tags": [
          "Project versions"
        ],
        "summary": "Merge versions",
        "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`.\n\nConsider 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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the version to delete.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "moveIssuesTo",
            "in": "path",
            "description": "The ID of the version to merge into.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the version is deleted.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid."
          },
          "401": {
            "description": "Returned if:\n\n *  the authentication credentials are incorrect or missing.\n *  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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project-version:jira",
              "write:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/version/{id}/move": {
      "post": {
        "tags": [
          "Project versions"
        ],
        "summary": "Move version",
        "description": "Modifies the version's sequence within the project, which affects the display order of the versions in Jira.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse projects* project permission for the project that contains the version.",
        "operationId": "moveVersion",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the version to be moved.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/VersionMoveBean"
              },
              "example": {
                "after": "https://your-domain.atlassian.net/rest/api/~ver~/version/10000"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/Version"
                },
                "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}"
              }
            }
          },
          "400": {
            "description": "Returned if:\n\n *  no body parameters are provided.\n *  `after` and `position` are provided.\n *  `position` is invalid."
          },
          "401": {
            "description": "Returned if:\n\n *  the authentication credentials are incorrect or missing\n *  the user does not have the required commissions."
          },
          "404": {
            "description": "Returned if the version or move after version are not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:project-version:jira",
              "read:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/version/{id}/relatedIssueCounts": {
      "get": {
        "tags": [
          "Project versions"
        ],
        "summary": "Get version's related issues count",
        "description": "Returns the following counts for a version:\n\n *  Number of issues where the `fixVersion` is set to the version.\n *  Number of issues where the `affectedVersion` is set to the version.\n *  Number of issues where a version custom field is set to the version.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse projects* project permission for the project that contains the version.",
        "operationId": "getVersionRelatedIssues",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the version.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VersionIssueCounts"
                },
                "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}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect."
          },
          "404": {
            "description": "Returned if:\n\n *  the version is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/version/{id}/removeAndSwap": {
      "post": {
        "tags": [
          "Project versions"
        ],
        "summary": "Delete and replace version",
        "description": "Deletes a project version.\n\nAlternative 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.\n\nThis operation can be accessed anonymously.\n\n**[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": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the version.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DeleteAndReplaceVersionBean"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the version is deleted.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid."
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the version to delete is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:project-version:jira",
              "write:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "PROJECT_ADMIN"
      }
    },
    "/rest/api/3/version/{id}/unresolvedIssueCount": {
      "get": {
        "tags": [
          "Project versions"
        ],
        "summary": "Get version's unresolved issues count",
        "description": "Returns counts of the issues and unresolved issues for the project version.\n\nThis operation can be accessed anonymously.\n\n**[Permissions](#permissions) required:** *Browse projects* project permission for the project that contains the version.",
        "operationId": "getVersionUnresolvedIssues",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the version.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/VersionUnresolvedIssuesCount"
                },
                "example": "{\"self\":\"https://your-domain.atlassian.net/rest/api/3/version/10000\",\"issuesUnresolvedCount\":23,\"issuesCount\":30}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "404": {
            "description": "Returned if:\n\n *  the version is not found.\n *  the user does not have the required permissions."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          },
          {}
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:project-version:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/webhook": {
      "get": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Get dynamic webhooks for app",
        "description": "Returns a [paginated](#pagination) list of the webhooks registered by the calling app.\n\n**[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": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 100
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanWebhook"
                },
                "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\"}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the caller isn't an app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:webhook:jira",
              "read:jql:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "post": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Register dynamic webhooks",
        "description": "Registers webhooks.\n\n**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.\n\n**[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": {
              "schema": {
                "$ref": "#/components/schemas/WebhookRegistrationDetails"
              },
              "example": {
                "webhooks": [
                  {
                    "jqlFilter": "project = PROJ",
                    "fieldIdsFilter": [
                      "summary",
                      "customfield_10029"
                    ],
                    "events": [
                      "jira:issue_created",
                      "jira:issue_updated"
                    ]
                  },
                  {
                    "jqlFilter": "project IN (PROJ, EXP) AND status = done",
                    "events": [
                      "jira:issue_deleted"
                    ]
                  },
                  {
                    "jqlFilter": "project = PROJ",
                    "issuePropertyKeysFilter": [
                      "my-issue-property-key"
                    ],
                    "events": [
                      "issue_property_set"
                    ]
                  }
                ],
                "url": "https://your-app.example.com/webhook-received"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContainerForRegisteredWebhooks"
                },
                "example": "{\"webhookRegistrationResult\":[{\"createdWebhookId\":1000},{\"errors\":[\"The clause watchCount is unsupported\"]},{\"createdWebhookId\":1001}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the caller isn't an app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:field:jira",
              "read:project:jira",
              "write:webhook:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "delete": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Delete webhooks by ID",
        "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.\n\n**[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": {
              "schema": {
                "$ref": "#/components/schemas/ContainerForWebhookIDs"
              },
              "example": {
                "webhookIds": [
                  10000,
                  10001,
                  10042
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "202": {
            "description": "Returned if the request is successful."
          },
          "400": {
            "description": "Returned if the list of webhook IDs is missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the caller isn't an app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:webhook:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/webhook/failed": {
      "get": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Get failed webhooks",
        "description": "Returns webhooks that have recently failed to be delivered to the requesting app after the maximum number of retries.\n\nAfter 72 hours the failure may no longer be returned by this operation.\n\nThe oldest failure is returned first.\n\nThis 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`.\n\n**[Permissions](#permissions) required:** Only [Connect apps](https://developer.atlassian.com/cloud/jira/platform/index/#connect-apps) can use this operation.",
        "operationId": "getFailedWebhooks",
        "parameters": [
          {
            "name": "maxResults",
            "in": "query",
            "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.",
            "schema": {
              "type": "integer",
              "format": "int32"
            }
          },
          {
            "name": "after",
            "in": "query",
            "description": "The time after which any webhook failure must have occurred for the record to be returned, expressed as milliseconds since the UNIX epoch.",
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/FailedWebhooks"
                },
                "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\"}"
              }
            }
          },
          "400": {
            "description": "400 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the caller is not a Connect app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/webhook/refresh": {
      "put": {
        "tags": [
          "Webhooks"
        ],
        "summary": "Extend webhook life",
        "description": "Extends the life of webhook. Webhooks registered through the REST API expire after 30 days. Call this operation to keep them alive.\n\nUnrecognized webhook IDs (those that are not found or belong to other apps) are ignored.\n\n**[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": {
              "schema": {
                "$ref": "#/components/schemas/ContainerForWebhookIDs"
              },
              "example": {
                "webhookIds": [
                  10000,
                  10001,
                  10042
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WebhooksExpirationDate"
                },
                "example": "{\"expirationDate\":\"2019-06-01T12:42:30.000+0000\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the caller isn't an app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work",
              "manage:jira-webhook"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:webhook:jira",
              "read:webhook:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/workflow": {
      "get": {
        "tags": [
          "Workflows"
        ],
        "summary": "Get all workflows",
        "description": "Returns all workflows in Jira or a workflow. Deprecated, use [Get workflows paginated](#api-rest-api-3-workflow-search-get).\n\nIf the `workflowName` parameter is specified, the workflow is returned as an object (not in an array). Otherwise, an array of workflow objects is returned.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllWorkflows",
        "parameters": [
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of the workflow to be returned. Only one workflow can be specified.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/DeprecatedWorkflow"
                  }
                },
                "example": "[{\"name\":\"classic workflow\",\"description\":\"A classic Jira workflow\",\"lastModifiedDate\":\"01-01-2011\",\"lastModifiedUser\":\"admin\",\"lastModifiedUserAccountId\":\"5b10a2844c20165700ede21g\",\"steps\":5,\"default\":true}]"
              }
            }
          },
          "401": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": true,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow:jira",
              "read:project:jira",
              "read:project-category:jira",
              "read:avatar:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Workflows"
        ],
        "summary": "Create workflow",
        "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.\n\n#### Conditions ####\n\nConditions enable workflow rules that govern whether a transition can execute.\n\n##### Always false condition #####\n\nA condition that always fails.\n\n    {\n       \"type\": \"AlwaysFalseCondition\"\n     }\n\n##### Block transition until approval #####\n\nA condition that blocks issue transition if there is a pending approval.\n\n    {\n       \"type\": \"BlockInProgressApprovalCondition\"\n     }\n\n##### Compare number custom field condition #####\n\nA condition that allows transition if a comparison between a number custom field and a value is true.\n\n    {\n       \"type\": \"CompareNumberCFCondition\",\n       \"configuration\": {\n         \"comparator\": \"=\",\n         \"fieldId\": \"customfield_10029\",\n         \"fieldValue\": 2\n       }\n     }\n\n *  `comparator` One of the supported comparator: `=`, `>`, and `<`.\n *  `fieldId` The custom numeric field ID. Allowed field types:\n    \n     *  `com.atlassian.jira.plugin.system.customfieldtypes:float`\n     *  `com.pyxis.greenhopper.jira:jsw-story-points`\n *  `fieldValue` The value for comparison.\n\n##### Hide from user condition #####\n\nA condition that hides a transition from users. The transition can only be triggered from a workflow function or REST API operation.\n\n    {\n       \"type\": \"RemoteOnlyCondition\"\n     }\n\n##### Only assignee condition #####\n\nA condition that allows only the assignee to execute a transition.\n\n    {\n       \"type\": \"AllowOnlyAssignee\"\n     }\n\n##### Only Bamboo notifications workflow condition #####\n\nA condition that makes the transition available only to Bamboo build notifications.\n\n    {\n       \"type\": \"OnlyBambooNotificationsCondition\"\n     }\n\n##### Only reporter condition #####\n\nA condition that allows only the reporter to execute a transition.\n\n    {\n       \"type\": \"AllowOnlyReporter\"\n     }\n\n##### Permission condition #####\n\nA condition that allows only users with a permission to execute a transition.\n\n    {\n       \"type\": \"PermissionCondition\",\n       \"configuration\": {\n           \"permissionKey\": \"BROWSE_PROJECTS\"\n       }\n     }\n\n *  `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.\n\n##### Previous status condition #####\n\nA condition that allows a transition based on whether an issue has or has not transitioned through a status.\n\n    {\n       \"type\": \"PreviousStatusCondition\",\n       \"configuration\": {\n         \"ignoreLoopTransitions\": true,\n         \"includeCurrentStatus\": true,\n         \"mostRecentStatusOnly\": true,\n         \"reverseCondition\": true,\n         \"previousStatus\": {\n           \"id\": \"5\"\n         }\n       }\n     }\n\nBy default this condition allows the transition if the status, as defined by its ID in the `previousStatus` object, matches any previous issue status, unless:\n\n *  `ignoreLoopTransitions` is `true`, then loop transitions (from and to the same status) are ignored.\n *  `includeCurrentStatus` is `true`, then the current issue status is also checked.\n *  `mostRecentStatusOnly` is `true`, then only the issue's preceding status (the one immediately before the current status) is checked.\n *  `reverseCondition` is `true`, then the status must not be present.\n\n##### Separation of duties condition #####\n\nA condition that prevents a user to perform the transition, if the user has already performed a transition on the issue.\n\n    {\n       \"type\": \"SeparationOfDutiesCondition\",\n       \"configuration\": {\n         \"fromStatus\": {\n           \"id\": \"5\"\n         },\n         \"toStatus\": {\n           \"id\": \"6\"\n         }\n       }\n     }\n\n *  `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.\n *  `toStatus` An object containing the ID of the target status of the transition that is blocked.\n\n##### Subtask blocking condition #####\n\nA condition that blocks transition on a parent issue if any of its subtasks are in any of one or more statuses.\n\n    {\n       \"type\": \"SubTaskBlockingCondition\",\n       \"configuration\": {\n         \"statuses\": [\n           {\n             \"id\": \"1\"\n           },\n           {\n             \"id\": \"3\"\n           }\n         ]\n       }\n     }\n\n *  `statuses` A list of objects containing status IDs.\n\n##### User is in any group condition #####\n\nA condition that allows users belonging to any group from a list of groups to execute a transition.\n\n    {\n       \"type\": \"UserInAnyGroupCondition\",\n       \"configuration\": {\n         \"groups\": [\n           \"administrators\",\n           \"atlassian-addons-admin\"\n         ]\n       }\n     }\n\n *  `groups` A list of group names.\n\n##### User is in any project role condition #####\n\nA condition that allows only users with at least one project roles from a list of project roles to execute a transition.\n\n    {\n       \"type\": \"InAnyProjectRoleCondition\",\n       \"configuration\": {\n         \"projectRoles\": [\n           {\n             \"id\": \"10002\"\n           },\n           {\n             \"id\": \"10003\"\n           },\n           {\n             \"id\": \"10012\"\n           },\n           {\n             \"id\": \"10013\"\n           }\n         ]\n       }\n     }\n\n *  `projectRoles` A list of objects containing project role IDs.\n\n##### User is in custom field condition #####\n\nA condition that allows only users listed in a given custom field to execute the transition.\n\n    {\n       \"type\": \"UserIsInCustomFieldCondition\",\n       \"configuration\": {\n         \"allowUserInField\": false,\n         \"fieldId\": \"customfield_10010\"\n       }\n     }\n\n *  `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.\n *  `fieldId` The ID of the field containing the list of users.\n\n##### User is in group condition #####\n\nA condition that allows users belonging to a group to execute a transition.\n\n    {\n       \"type\": \"UserInGroupCondition\",\n       \"configuration\": {\n         \"group\": \"administrators\"\n       }\n     }\n\n *  `group` The name of the group.\n\n##### User is in group custom field condition #####\n\nA condition that allows users belonging to a group specified in a custom field to execute a transition.\n\n    {\n       \"type\": \"InGroupCFCondition\",\n       \"configuration\": {\n         \"fieldId\": \"customfield_10012\"\n       }\n     }\n\n *  `fieldId` The ID of the field. Allowed field types:\n    \n     *  `com.atlassian.jira.plugin.system.customfieldtypes:multigrouppicker`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:grouppicker`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:select`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:multiselect`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes`\n     *  `com.pyxis.greenhopper.jira:gh-epic-status`\n\n##### User is in project role condition #####\n\nA condition that allows users with a project role to execute a transition.\n\n    {\n       \"type\": \"InProjectRoleCondition\",\n       \"configuration\": {\n         \"projectRole\": {\n           \"id\": \"10002\"\n         }\n       }\n     }\n\n *  `projectRole` An object containing the ID of a project role.\n\n##### Value field condition #####\n\nA conditions that allows a transition to execute if the value of a field is equal to a constant value or simply set.\n\n    {\n       \"type\": \"ValueFieldCondition\",\n       \"configuration\": {\n         \"fieldId\": \"assignee\",\n         \"fieldValue\": \"qm:6e1ecee6-8e64-4db6-8c85-916bb3275f51:54b56885-2bd2-4381-8239-78263442520f\",\n         \"comparisonType\": \"NUMBER\",\n         \"comparator\": \"=\"\n       }\n     }\n\n *  `fieldId` The ID of a field used in the comparison.\n *  `fieldValue` The expected value of the field.\n *  `comparisonType` The type of the comparison. Allowed values: `STRING`, `NUMBER`, `DATE`, `DATE_WITHOUT_TIME`, or `OPTIONID`.\n *  `comparator` One of the supported comparator: `>`, `>=`, `=`, `<=`, `<`, `!=`.\n\n**Notes:**\n\n *  If you choose the comparison type `STRING`, only `=` and `!=` are valid options.\n *  You may leave `fieldValue` empty when comparison type is `!=` to indicate that a value is required in the field.\n *  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`.\n\n#### Validators ####\n\nValidators check that any input made to the transition is valid before the transition is performed.\n\n##### Date field validator #####\n\nA validator that compares two dates.\n\n    {\n       \"type\": \"DateFieldValidator\",\n       \"configuration\": {\n           \"comparator\": \">\",\n           \"date1\": \"updated\",\n           \"date2\": \"created\",\n           \"expression\": \"1d\",\n           \"includeTime\": true\n         }\n     }\n\n *  `comparator` One of the supported comparator: `>`, `>=`, `=`, `<=`, `<`, or `!=`.\n *  `date1` The date field to validate. Allowed field types:\n    \n     *  `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:datetime`\n     *  `com.atlassian.jpo:jpo-custom-field-baseline-end`\n     *  `com.atlassian.jpo:jpo-custom-field-baseline-start`\n     *  `duedate`\n     *  `created`\n     *  `updated`\n     *  `resolutiondate`\n *  `date2` The second date field. Required, if `expression` is not passed. Allowed field types:\n    \n     *  `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:datetime`\n     *  `com.atlassian.jpo:jpo-custom-field-baseline-end`\n     *  `com.atlassian.jpo:jpo-custom-field-baseline-start`\n     *  `duedate`\n     *  `created`\n     *  `updated`\n     *  `resolutiondate`\n *  `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.\n *  `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.\n\n##### Windows date validator #####\n\nA 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.\n\n    {\n       \"type\": \"WindowsDateValidator\",\n       \"configuration\": {\n           \"date1\": \"customfield_10009\",\n           \"date2\": \"created\",\n           \"windowsDays\": 5\n         }\n     }\n\n *  `date1` The date field to validate. Allowed field types:\n    \n     *  `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:datetime`\n     *  `com.atlassian.jpo:jpo-custom-field-baseline-end`\n     *  `com.atlassian.jpo:jpo-custom-field-baseline-start`\n     *  `duedate`\n     *  `created`\n     *  `updated`\n     *  `resolutiondate`\n *  `date2` The reference date. Allowed field types:\n    \n     *  `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:datetime`\n     *  `com.atlassian.jpo:jpo-custom-field-baseline-end`\n     *  `com.atlassian.jpo:jpo-custom-field-baseline-start`\n     *  `duedate`\n     *  `created`\n     *  `updated`\n     *  `resolutiondate`\n *  `windowsDays` A positive integer indicating a number of days.\n\n##### Field required validator #####\n\nA 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.\n\n    {\n         \"type\": \"FieldRequiredValidator\",\n         \"configuration\": {\n             \"ignoreContext\": true,\n             \"errorMessage\": \"Hey\",\n             \"fieldIds\": [\n                 \"versions\",\n                 \"customfield_10037\",\n                 \"customfield_10003\"\n             ]\n         }\n     }\n\n *  `ignoreContext` If `true`, then the context is ignored and all the fields are validated.\n *  `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.\n *  `fieldIds` The list of fields to validate.\n\n##### Field changed validator #####\n\nA validator that checks that a field value is changed. However, this validation can be ignored for users from a list of groups.\n\n    {\n         \"type\": \"FieldChangedValidator\",\n         \"configuration\": {\n             \"fieldId\": \"comment\",\n             \"errorMessage\": \"Hey\",\n             \"exemptedGroups\": [\n                 \"administrators\",\n                 \"atlassian-addons-admin\"\n             ]\n         }\n     }\n\n *  `fieldId` The ID of a field.\n *  `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.\n *  `exemptedGroups` OPTIONAL. The list of groups.\n\n##### Field has single value validator #####\n\nA validator that checks that a multi-select field has only one value. Optionally, the validation can ignore values copied from subtasks.\n\n    {\n         \"type\": \"FieldHasSingleValueValidator\",\n         \"configuration\": {\n             \"fieldId\": \"attachment,\n             \"excludeSubtasks\": true\n         }\n     }\n\n *  `fieldId` The ID of a field.\n *  `excludeSubtasks` If `true`, then values copied from subtasks are ignored.\n\n##### Parent status validator #####\n\nA validator that checks the status of the parent issue of a subtask. Ìf the issue is not a subtask, no validation is performed.\n\n    {\n         \"type\": \"ParentStatusValidator\",\n         \"configuration\": {\n             \"parentStatuses\": [\n                 {\n                   \"id\":\"1\"\n                 },\n                 {\n                   \"id\":\"2\"\n                 }\n             ]\n         }\n     }\n\n *  `parentStatus` The list of required parent issue statuses.\n\n##### Permission validator #####\n\nA validator that checks the user has a permission.\n\n    {\n       \"type\": \"PermissionValidator\",\n       \"configuration\": {\n           \"permissionKey\": \"ADMINISTER_PROJECTS\"\n       }\n     }\n\n *  `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.\n\n##### Previous status validator #####\n\nA validator that checks if the issue has held a status.\n\n    {\n       \"type\": \"PreviousStatusValidator\",\n       \"configuration\": {\n           \"mostRecentStatusOnly\": false,\n           \"previousStatus\": {\n               \"id\": \"15\"\n           }\n       }\n     }\n\n *  `mostRecentStatusOnly` If `true`, then only the issue's preceding status (the one immediately before the current status) is checked.\n *  `previousStatus` An object containing the ID of an issue status.\n\n##### Regular expression validator #####\n\nA validator that checks the content of a field against a regular expression.\n\n    {\n       \"type\": \"RegexpFieldValidator\",\n       \"configuration\": {\n           \"regExp\": \"[0-9]\",\n           \"fieldId\": \"customfield_10029\"\n       }\n     }\n\n *  `regExp`A regular expression.\n *  `fieldId` The ID of a field. Allowed field types:\n    \n     *  `com.atlassian.jira.plugin.system.customfieldtypes:select`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:multiselect`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:textarea`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:textfield`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:url`\n     *  `com.atlassian.jira.plugin.system.customfieldtypes:float`\n     *  `com.pyxis.greenhopper.jira:jsw-story-points`\n     *  `com.pyxis.greenhopper.jira:gh-epic-status`\n     *  `description`\n     *  `summary`\n\n##### User permission validator #####\n\nA 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.\n\n    {\n         \"type\": \"UserPermissionValidator\",\n         \"configuration\": {\n             \"permissionKey\": \"BROWSE_PROJECTS\",\n             \"nullAllowed\": false,\n             \"username\": \"TestUser\"\n         }\n     }\n\n *  `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.\n *  `nullAllowed` If `true`, allows the transition when `username` is empty.\n *  `username` The username to validate against the `permissionKey`.\n\n#### Post functions ####\n\nPost functions carry out any additional processing required after a Jira workflow transition is executed.\n\n##### Fire issue event function #####\n\nA post function that fires an event that is processed by the listeners.\n\n    {\n       \"type\": \"FireIssueEventFunction\",\n       \"configuration\": {\n         \"event\": {\n           \"id\":\"1\"\n         }\n       }\n     }\n\n**Note:** If provided, this post function overrides the default `FireIssueEventFunction`. Can be included once in a transition.\n\n *  `event` An object containing the ID of the issue event.\n\n##### Update issue status #####\n\nA post function that sets issue status to the linked status of the destination workflow status.\n\n    {\n       \"type\": \"UpdateIssueStatusFunction\"\n     }\n\n**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.\n\n##### Create comment #####\n\nA post function that adds a comment entered during the transition to an issue.\n\n    {\n       \"type\": \"CreateCommentFunction\"\n     }\n\n**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.\n\n##### Store issue #####\n\nA post function that stores updates to an issue.\n\n    {\n       \"type\": \"IssueStoreFunction\"\n     }\n\n**Note:** This post function can only be added to the initial transition and can only be added once.\n\n##### Assign to current user function #####\n\nA post function that assigns the issue to the current user if the current user has the `ASSIGNABLE_USER` permission.\n\n    {\n         \"type\": \"AssignToCurrentUserFunction\"\n     }\n\n**Note:** This post function can be included once in a transition.\n\n##### Assign to lead function #####\n\nA post function that assigns the issue to the project or component lead developer.\n\n    {\n         \"type\": \"AssignToLeadFunction\"\n     }\n\n**Note:** This post function can be included once in a transition.\n\n##### Assign to reporter function #####\n\nA post function that assigns the issue to the reporter.\n\n    {\n         \"type\": \"AssignToReporterFunction\"\n     }\n\n**Note:** This post function can be included once in a transition.\n\n##### Clear field value function #####\n\nA post function that clears the value from a field.\n\n    {\n       \"type\": \"ClearFieldValuePostFunction\",\n       \"configuration\": {\n         \"fieldId\": \"assignee\"\n       }\n     }\n\n *  `fieldId` The ID of the field.\n\n##### Copy value from other field function #####\n\nA post function that copies the value of one field to another, either within an issue or from parent to subtask.\n\n    {\n       \"type\": \"CopyValueFromOtherFieldPostFunction\",\n       \"configuration\": {\n         \"sourceFieldId\": \"assignee\",\n         \"destinationFieldId\": \"creator\",\n         \"copyType\": \"same\"\n       }\n     }\n\n *  `sourceFieldId` The ID of the source field.\n *  `destinationFieldId` The ID of the destination field.\n *  `copyType` Use `same` to copy the value from a field inside the issue, or `parent` to copy the value from the parent issue.\n\n##### Create Crucible review workflow function #####\n\nA post function that creates a Crucible review for all unreviewed code for the issue.\n\n    {\n         \"type\": \"CreateCrucibleReviewWorkflowFunction\"\n     }\n\n**Note:** This post function can be included once in a transition.\n\n##### Set issue security level based on user's project role function #####\n\nA post function that sets the issue's security level if the current user has a project role.\n\n    {\n       \"type\": \"SetIssueSecurityFromRoleFunction\",\n       \"configuration\": {\n         \"projectRole\": {\n             \"id\":\"10002\"\n         },\n         \"issueSecurityLevel\": {\n             \"id\":\"10000\"\n         }\n       }\n     }\n\n *  `projectRole` An object containing the ID of the project role.\n *  `issueSecurityLevel` OPTIONAL. The object containing the ID of the security level. If not passed, then the security level is set to `none`.\n\n##### Trigger a webhook function #####\n\nA post function that triggers a webhook.\n\n    {\n       \"type\": \"TriggerWebhookFunction\",\n       \"configuration\": {\n         \"webhook\": {\n           \"id\": \"1\"\n         }\n       }\n     }\n\n *  `webhook` An object containing the ID of the webhook listener to trigger.\n\n##### Update issue custom field function #####\n\nA post function that updates the content of an issue custom field.\n\n    {\n       \"type\": \"UpdateIssueCustomFieldPostFunction\",\n       \"configuration\": {\n         \"mode\": \"append\",\n         \"fieldId\": \"customfield_10003\",\n         \"fieldValue\": \"yikes\"\n       }\n     }\n\n *  `mode` Use `replace` to override the field content with `fieldValue` or `append` to add `fieldValue` to the end of the field content.\n *  `fieldId` The ID of the field.\n *  `fieldValue` The update content.\n\n##### Update issue field function #####\n\nA post function that updates a simple issue field.\n\n    {\n       \"type\": \"UpdateIssueFieldFunction\",\n       \"configuration\": {\n         \"fieldId\": \"assignee\",\n         \"fieldValue\": \"5f0c277e70b8a90025a00776\"\n       }\n     }\n\n *  `fieldId` The ID of the field. Allowed field types:\n    \n     *  `assignee`\n     *  `description`\n     *  `environment`\n     *  `priority`\n     *  `resolution`\n     *  `summary`\n     *  `timeoriginalestimate`\n     *  `timeestimate`\n     *  `timespent`\n *  `fieldValue` The update value.\n *  If the `fieldId` is `assignee`, the `fieldValue` should be one of these values:\n    \n     *  an account ID.\n     *  `automatic`.\n     *  a blank string, which sets the value to `unassigned`.\n\n#### Connect rules ####\n\nConnect 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.\n\n    {\n       \"type\": \"appKey__moduleKey\",\n       \"configuration\": {\n         \"value\":\"{\\\"isValid\\\":\\\"true\\\"}\"\n       }\n     }\n\n *  `type` A Connect rule key in a form of `appKey__moduleKey`.\n *  `value` The stringified JSON configuration of a Connect rule.\n\n#### Forge rules ####\n\nForge transition rules are not yet supported.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createWorkflow",
        "parameters": [],
        "requestBody": {
          "description": "The workflow details.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateWorkflowDetails"
              },
              "example": {
                "name": "Workflow 1",
                "description": "This is a workflow used for Stories and Tasks",
                "statuses": [
                  {
                    "id": "1",
                    "properties": {
                      "jira.issue.editable": "false"
                    }
                  },
                  {
                    "id": "2"
                  },
                  {
                    "id": "3"
                  }
                ],
                "transitions": [
                  {
                    "name": "Created",
                    "from": [],
                    "to": "1",
                    "type": "initial"
                  },
                  {
                    "name": "In progress",
                    "screen": {
                      "id": "10001"
                    },
                    "from": [
                      "1"
                    ],
                    "rules": {
                      "postFunctions": [
                        {
                          "type": "AssignToCurrentUserFunction"
                        }
                      ],
                      "conditions": {
                        "conditions": [
                          {
                            "type": "RemoteOnlyCondition"
                          },
                          {
                            "configuration": {
                              "groups": [
                                "developers",
                                "qa-testers"
                              ]
                            },
                            "type": "UserInAnyGroupCondition"
                          }
                        ],
                        "operator": "AND"
                      }
                    },
                    "to": "2",
                    "type": "directed",
                    "properties": {
                      "custom-property": "custom-value"
                    }
                  },
                  {
                    "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"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the workflow is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowIDs"
                },
                "example": "{\"name\":\"Workflow 1\",\"entityId\":\"0afbcbc9-e3e5-4381-9ec4-5a94e532e906\"}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The request body parameters are missing.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access the workflow configuration.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if one or more statuses is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Status with ID 10000 was not found\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:workflow:jira",
              "read:workflow:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflow/rule/config": {
      "get": {
        "tags": [
          "Workflow transition rules"
        ],
        "summary": "Get workflow transition rule configurations",
        "description": "Returns a [paginated](#pagination) list of workflows with transition rules. The workflows can be filtered to return only those containing workflow transition rules:\n\n *  of one or more transition rule types, such as [workflow post functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/).\n *  matching one or more transition rule keys.\n\nOnly workflows containing transition rules created by the calling Connect app are returned. However, if a workflow is returned all transition rules that match the filters are returned for that workflow.\n\nDue to server-side optimizations, workflows with an empty list of rules may be returned; these workflows can be ignored.\n\n**[Permissions](#permissions) required:** Only Connect apps can use this operation.",
        "operationId": "getWorkflowTransitionRuleConfigurations",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "maximum": 50,
              "type": "integer",
              "format": "int32",
              "default": 10
            }
          },
          {
            "name": "types",
            "in": "query",
            "description": "The types of the transition rules to return.",
            "required": true,
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string",
                "enum": [
                  "postfunction",
                  "condition",
                  "validator"
                ]
              }
            }
          },
          {
            "name": "keys",
            "in": "query",
            "description": "The transition rule class keys, as defined in the Connect app descriptor, of the transition rules to return.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "workflowNames",
            "in": "query",
            "description": "EXPERIMENTAL: The list of workflow names to filter by.",
            "schema": {
              "maxLength": 50,
              "uniqueItems": true,
              "type": "array",
              "items": {
                "maxLength": 50,
                "type": "string"
              }
            }
          },
          {
            "name": "withTags",
            "in": "query",
            "description": "EXPERIMENTAL: The list of `tags` to filter by.",
            "schema": {
              "maxLength": 20,
              "uniqueItems": true,
              "type": "array",
              "items": {
                "maxLength": 20,
                "type": "string"
              }
            }
          },
          {
            "name": "draft",
            "in": "query",
            "description": "EXPERIMENTAL: Whether draft or published workflows are returned. If not provided, both workflow types are returned.",
            "schema": {
              "type": "boolean"
            }
          },
          {
            "name": "expand",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanWorkflowTransitionRules"
                },
                "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\"}}]}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the caller is not a Connect app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "404": {
            "description": "Returned if the any transition rule type is not supported."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "READ"
      },
      "put": {
        "tags": [
          "Workflow transition rules"
        ],
        "summary": "Update workflow transition rule configurations",
        "description": "Updates configuration of workflow transition rules. The following rule types are supported:\n\n *  [post functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/)\n *  [conditions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-condition/)\n *  [validators](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-validator/)\n\nOnly rules created by the calling Connect app can be updated.\n\nTo assist with app migration, this operation can be used to:\n\n *  Disable a rule.\n *  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).\n\nRules are enabled if the `disabled` parameter is not provided.\n\n**[Permissions](#permissions) required:** Only Connect apps can use this operation.",
        "operationId": "updateWorkflowTransitionRuleConfigurations",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkflowTransitionRulesUpdate"
              },
              "example": {
                "workflows": [
                  {
                    "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"
                      }
                    ],
                    "conditions": [
                      {
                        "configuration": {
                          "disabled": false,
                          "value": "{ \"size\": \"medium\" }"
                        },
                        "id": "d663bd873d93-59f5-11e9-8647-b4d6cbdc"
                      }
                    ],
                    "workflowId": {
                      "draft": false,
                      "name": "My Workflow name"
                    }
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowTransitionRulesUpdateErrors"
                },
                "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}\"]}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          },
          "403": {
            "description": "Returned if the caller is not a Connect app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflow/rule/config/delete": {
      "put": {
        "tags": [
          "Workflow transition rules"
        ],
        "summary": "Delete workflow transition rule configurations",
        "description": "Deletes workflow transition rules from one or more workflows. These rule types are supported:\n\n *  [post functions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-post-function/)\n *  [conditions](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-condition/)\n *  [validators](https://developer.atlassian.com/cloud/jira/platform/modules/workflow-validator/)\n\nOnly rules created by the calling Connect app can be deleted.\n\n**[Permissions](#permissions) required:** Only Connect apps can use this operation.",
        "operationId": "deleteWorkflowTransitionRuleConfigurations",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkflowsWithTransitionRulesDetails"
              },
              "example": {
                "workflows": [
                  {
                    "workflowRuleIds": [
                      "b4d6cbdc-59f5-11e9-8647-d663bd873d93",
                      "d663bd873d93-59f5-11e9-8647-b4d6cbdc",
                      "11e9-59f5-b4d6cbdc-8647-d663bd873d93"
                    ],
                    "workflowId": {
                      "draft": false,
                      "name": "Internal support workflow"
                    }
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowTransitionRulesUpdateErrors"
                },
                "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}\"]}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errors\":{},\"errorMessages\":[\"Jira Administration permission is required to access workflow configuration.\"],\"httpStatusCode\":{\"present\":true}}"
              }
            }
          },
          "403": {
            "description": "Returned if the caller is not a Connect app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                }
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflow/search": {
      "get": {
        "tags": [
          "Workflows"
        ],
        "summary": "Get workflows paginated",
        "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.\n\nThis operation does not return next-gen workflows.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getWorkflowsPaginated",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of a workflow to return. To include multiple workflows, provide an ampersand-separated list. For example, `workflowName=name1&workflowName=name2`.",
            "schema": {
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `transitions` For each workflow, returns information about the transitions inside the workflow.\n *  `transitions.rules` For each workflow transition, returns information about its rules. Transitions are included automatically if this expand is requested.\n *  `transitions.properties` For each workflow transition, returns information about its properties. Transitions are included automatically if this expand is requested.\n *  `statuses` For each workflow, returns information about the statuses inside the workflow.\n *  `statuses.properties` For each workflow status, returns information about its properties. Statuses are included automatically if this expand is requested.\n *  `default` For each workflow, returns information about whether this is the default workflow.\n *  `schemes` For each workflow, returns information about the workflow schemes the workflow is assigned to.\n *  `projects` For each workflow, returns information about the projects the workflow is assigned to, through workflow schemes.\n *  `hasDraftWorkflow` For each workflow, returns information about whether the workflow has a draft version.\n *  `operations` For each workflow, returns information about the actions that can be undertaken on the workflow.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "queryString",
            "in": "query",
            "description": "String used to perform a case-insensitive partial match with workflow name.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "orderBy",
            "in": "query",
            "description": "[Order](#ordering) the results by a field:\n\n *  `name` Sorts by workflow name.\n *  `created` Sorts by create time.\n *  `updated` Sorts by update time.",
            "schema": {
              "type": "string",
              "enum": [
                "name",
                "-name",
                "+name",
                "created",
                "-created",
                "+created",
                "updated",
                "+updated",
                "-updated"
              ]
            }
          },
          {
            "name": "isActive",
            "in": "query",
            "description": "Filters active and inactive workflows.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanWorkflow"
                },
                "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\":\"2022-12-08T07:09:17.057+0000\",\"updated\":\"2022-12-08T07:09:17.057+0000\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorCollection"
                },
                "example": "{\"errorMessages\":[\"Only Jira administrators can access workflows.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-project"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-project"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflow/transitions/{transitionId}/properties": {
      "get": {
        "tags": [
          "Workflow transition properties"
        ],
        "summary": "Get workflow transition properties",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getWorkflowTransitionProperties",
        "parameters": [
          {
            "name": "transitionId",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "includeReservedKeys",
            "in": "query",
            "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*.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          },
          {
            "name": "key",
            "in": "query",
            "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.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of the workflow that the transition belongs to.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workflowMode",
            "in": "query",
            "description": "The workflow status. Set to *live* for active and inactive workflows, or *draft* for draft workflows.",
            "schema": {
              "type": "string",
              "enum": [
                "live",
                "draft"
              ],
              "default": "live"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "200 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowTransitionProperty"
                },
                "example": "[{\"key\":\"jira.i18n.title\",\"value\":\"some.title\",\"id\":\"jira.i18n.title\"},{\"key\":\"jira.permission\",\"value\":\"createissue\",\"id\":\"jira.permission\"}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow transition properties"
        ],
        "summary": "Update workflow transition property",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateWorkflowTransitionProperty",
        "parameters": [
          {
            "name": "transitionId",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "key",
            "in": "query",
            "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.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of the workflow that the transition belongs to.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workflowMode",
            "in": "query",
            "description": "The workflow status. Set to `live` for inactive workflows or `draft` for draft workflows. Active workflows cannot be edited.",
            "schema": {
              "type": "string",
              "enum": [
                "live",
                "draft"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkflowTransitionProperty"
              },
              "example": {
                "value": "createissue"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "200 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowTransitionProperty"
                },
                "example": "{\"key\":\"jira.i18n.title\",\"value\":\"some.title\",\"id\":\"jira.i18n.title\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:workflow.property:jira",
              "read:workflow.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Workflow transition properties"
        ],
        "summary": "Create workflow transition property",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createWorkflowTransitionProperty",
        "parameters": [
          {
            "name": "transitionId",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "key",
            "in": "query",
            "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.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of the workflow that the transition belongs to.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workflowMode",
            "in": "query",
            "description": "The workflow status. Set to *live* for inactive workflows or *draft* for draft workflows. Active workflows cannot be edited.",
            "schema": {
              "type": "string",
              "enum": [
                "live",
                "draft"
              ],
              "default": "live"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkflowTransitionProperty"
              },
              "example": {
                "value": "createissue"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "200 response",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowTransitionProperty"
                },
                "example": "{\"key\":\"jira.i18n.title\",\"value\":\"some.title\",\"id\":\"jira.i18n.title\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:workflow.property:jira",
              "read:workflow.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Workflow transition properties"
        ],
        "summary": "Delete workflow transition property",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteWorkflowTransitionProperty",
        "parameters": [
          {
            "name": "transitionId",
            "in": "path",
            "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.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "key",
            "in": "query",
            "description": "The name of the transition property to delete, also known as the name of the property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of the workflow that the transition belongs to.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "workflowMode",
            "in": "query",
            "description": "The workflow status. Set to `live` for inactive workflows or `draft` for draft workflows. Active workflows cannot be edited.",
            "schema": {
              "type": "string",
              "enum": [
                "live",
                "draft"
              ]
            }
          }
        ],
        "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:workflow.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflow/{entityId}": {
      "delete": {
        "tags": [
          "Workflows"
        ],
        "summary": "Delete inactive workflow",
        "description": "Deletes a workflow.\n\nThe workflow cannot be deleted if it is:\n\n *  an active workflow.\n *  a system workflow.\n *  associated with any workflow scheme.\n *  associated with any draft workflow scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteInactiveWorkflow",
        "parameters": [
          {
            "name": "entityId",
            "in": "path",
            "description": "The entity ID of the workflow.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the workflow is deleted."
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Cannot delete an active workflow.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access the workflow configuration.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the workflow is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The workflow was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:workflow:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme": {
      "get": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Get all workflow schemes",
        "description": "Returns a [paginated](#pagination) list of all workflow schemes, not including draft workflow schemes.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getAllWorkflowSchemes",
        "parameters": [
          {
            "name": "startAt",
            "in": "query",
            "description": "The index of the first item to return in a page of results (page offset).",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "maxResults",
            "in": "query",
            "description": "The maximum number of items to return per page.",
            "schema": {
              "type": "integer",
              "format": "int32",
              "default": 50
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PageBeanWorkflowScheme"
                },
                "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\"}]}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "post": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Create workflow scheme",
        "description": "Creates a workflow scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createWorkflowScheme",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkflowScheme"
              },
              "example": {
                "defaultWorkflow": "jira",
                "name": "Example workflow scheme",
                "description": "The description of the example workflow scheme.",
                "issueTypeMappings": {
                  "10000": "scrum workflow",
                  "10001": "builds workflow"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/project": {
      "get": {
        "tags": [
          "Workflow scheme project associations"
        ],
        "summary": "Get workflow scheme project associations",
        "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.\n\nIf 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getWorkflowSchemeProjectAssociations",
        "parameters": [
          {
            "name": "projectId",
            "in": "query",
            "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`.",
            "required": true,
            "schema": {
              "maxItems": 100,
              "minItems": 1,
              "uniqueItems": true,
              "type": "array",
              "items": {
                "type": "integer",
                "format": "int64",
                "example": 10010
              }
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ContainerOfWorkflowSchemeAssociations"
                },
                "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\"}}]}"
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[],\"errors\":{\"projectId\":\"The ID of a project has to be provided.\"}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the necessary permission.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access workflow scheme associations.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow scheme project associations"
        ],
        "summary": "Assign workflow scheme to project",
        "description": "Assigns a workflow scheme to a project. This operation is performed only when there are no issues in the project.\n\nWorkflow schemes can only be assigned to classic projects.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "assignSchemeToProject",
        "parameters": [],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkflowSchemeProjectAssociation"
              },
              "example": {
                "workflowSchemeId": "10032",
                "projectId": "10001"
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only classic projects can have workflow schemes assigned.\"],\"errors\":{}}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          },
          "403": {
            "description": "Returned if the user does not have the required permissions.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Only Jira administrators can access workflow scheme associations.\"],\"errors\":{}}"
              }
            }
          },
          "404": {
            "description": "Returned if the workflow scheme or the project are not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"The workflow scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:workflow-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}": {
      "get": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Get workflow scheme",
        "description": "Returns a workflow scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getWorkflowScheme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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*.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "returnDraftIfExists",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Update workflow scheme",
        "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`.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateWorkflowScheme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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*.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkflowScheme"
              },
              "example": {
                "defaultWorkflow": "jira",
                "updateDraftIfNeeded": false,
                "name": "Example workflow scheme",
                "description": "The description of the example workflow scheme.",
                "issueTypeMappings": {
                  "10000": "scrum workflow"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Delete workflow scheme",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteWorkflowScheme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "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*.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:workflow-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}/createdraft": {
      "post": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Create draft workflow scheme",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "createWorkflowSchemeDraftFromParent",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the active workflow scheme that the draft is created from.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "201": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\":\"[email protected]\",\"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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}/default": {
      "get": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Get default workflow",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getDefaultWorkflow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "returnDraftIfExists",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultWorkflow"
                },
                "example": "{\"workflow\":\"jira\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow-scheme:jira",
              "read:workflow:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Update default workflow",
        "description": "Sets the default workflow for a workflow scheme.\n\nNote 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateDefaultWorkflow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "The new default workflow.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DefaultWorkflow"
              },
              "example": {
                "workflow": "jira",
                "updateDraftIfNeeded": false
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Delete default workflow",
        "description": "Resets the default workflow for a workflow scheme. That is, the default workflow is set to Jira's system workflow (the *jira* workflow).\n\nNote 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteDefaultWorkflow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "updateDraftIfNeeded",
            "in": "query",
            "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`.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}/draft": {
      "get": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Get draft workflow scheme",
        "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.  \nNote that:\n\n *  Only active workflow schemes can have draft workflow schemes.\n *  An active workflow scheme can only have one draft workflow scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getWorkflowSchemeDraft",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the active workflow scheme that the draft was created from.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\":\"[email protected]\",\"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\"}"
              }
            }
          },
          "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:\n\n *  the original active workflow scheme is not found.\n *  the original active workflow scheme does not have a draft."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Update draft workflow scheme",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateWorkflowSchemeDraft",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the active workflow scheme that the draft was created from.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkflowScheme"
              },
              "example": {
                "defaultWorkflow": "jira",
                "updateDraftIfNeeded": false,
                "name": "Example workflow scheme",
                "description": "The description of the example workflow scheme.",
                "issueTypeMappings": {
                  "10000": "scrum workflow"
                }
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\":\"[email protected]\",\"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\"}"
              }
            }
          },
          "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:\n\n *  the original active workflow scheme is not found.\n *  the original active workflow scheme does not have a draft."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Delete draft workflow scheme",
        "description": "Deletes a draft workflow scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteWorkflowSchemeDraft",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the active workflow scheme that the draft was created from.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "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:\n\n *  the original active workflow scheme is not found.\n *  the original active workflow scheme does not have a draft."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:workflow-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}/draft/default": {
      "get": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Get draft default workflow",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getDraftDefaultWorkflow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/DefaultWorkflow"
                },
                "example": "{\"workflow\":\"jira\"}"
              }
            }
          },
          "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:\n\n *  The workflow scheme is not found.\n *  The workflow scheme does not have a draft."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow-scheme:jira",
              "read:workflow:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Update draft default workflow",
        "description": "Sets the default workflow for a workflow scheme's draft.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateDraftDefaultWorkflow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "requestBody": {
          "description": "The object for the new default workflow.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/DefaultWorkflow"
              },
              "example": {
                "workflow": "jira",
                "updateDraftIfNeeded": false
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\":\"[email protected]\",\"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\"}"
              }
            }
          },
          "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:\n\n *  The workflow scheme is not found.\n *  The workflow scheme does not have a draft."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Delete draft default workflow",
        "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).\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteDraftDefaultWorkflow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\":\"[email protected]\",\"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\"}"
              }
            }
          },
          "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:\n\n *  The workflow scheme is not found.\n *  The workflow scheme does not have a draft."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}/draft/issuetype/{issueType}": {
      "get": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Get workflow for issue type in draft workflow scheme",
        "description": "Returns the issue type-workflow mapping for an issue type in a workflow scheme's draft.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getWorkflowSchemeDraftIssueType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "issueType",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueTypeWorkflowMapping"
                },
                "example": "{\"issueType\":\"10000\",\"workflow\":\"jira\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow-scheme:jira",
              "read:workflow:jira",
              "read:issue-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Set workflow for issue type in draft workflow scheme",
        "description": "Sets the workflow for an issue type in a workflow scheme's draft.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setWorkflowSchemeDraftIssueType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "issueType",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The issue type-project mapping.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeWorkflowMapping"
              },
              "example": {
                "issueType": "10000",
                "workflow": "jira",
                "updateDraftIfNeeded": false
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\":\"[email protected]\",\"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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Delete workflow for issue type in draft workflow scheme",
        "description": "Deletes the issue type-workflow mapping for an issue type in a workflow scheme's draft.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteWorkflowSchemeDraftIssueType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "issueType",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\":\"[email protected]\",\"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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}/draft/publish": {
      "post": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Publish draft workflow scheme",
        "description": "Publishes a draft workflow scheme.\n\nWhere 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.\n\nThis 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "publishDraftWorkflowScheme",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "validateOnly",
            "in": "query",
            "description": "Whether the request only performs a validation.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "requestBody": {
          "description": "Details of the status mappings.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/PublishDraftWorkflowScheme"
              },
              "example": {
                "statusMappings": [
                  {
                    "issueTypeId": "10001",
                    "statusId": "3",
                    "newStatusId": "1"
                  },
                  {
                    "issueTypeId": "10001",
                    "statusId": "2",
                    "newStatusId": "2"
                  },
                  {
                    "issueTypeId": "10002",
                    "statusId": "10005",
                    "newStatusId": "10003"
                  },
                  {
                    "issueTypeId": "10003",
                    "statusId": "4",
                    "newStatusId": "1"
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "204": {
            "description": "Returned if the request is only for validation and is successful."
          },
          "303": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/TaskProgressBeanObject"
                }
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Issue type with ID '2','4' is missing the mappings required for statuses with IDs 10004.\"],\"errors\":{}}"
              }
            }
          },
          "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 these are true:\n\n *  The workflow scheme is not found.\n *  The workflow scheme does not have a draft.\n *  A new status in the draft workflow scheme is not found.",
            "content": {
              "application/json": {
                "example": "{\"errorMessages\":[\"Draft workflow scheme was not found.\"],\"errors\":{}}"
              }
            }
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "write:workflow-scheme:jira"
            ]
          }
        ],
        "x-experimental": true,
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}/draft/workflow": {
      "get": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Get issue types for workflows in draft workflow scheme",
        "description": "Returns the workflow-issue type mappings for a workflow scheme's draft.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getDraftWorkflow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of a workflow in the scheme. Limits the results to the workflow-issue type mapping for the specified workflow.",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueTypesWorkflowMapping"
                },
                "example": "{\"workflow\":\"jira\",\"issueTypes\":[\"10000\",\"10001\"],\"defaultMapping\":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 either the workflow scheme or workflow (if specified) is not found. session."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow-scheme:jira",
              "read:workflow:jira",
              "read:issue-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Set issue types for workflow in workflow scheme",
        "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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateDraftWorkflowMapping",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of the workflow.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypesWorkflowMapping"
              },
              "example": {
                "workflow": "jira",
                "updateDraftIfNeeded": true,
                "issueTypes": [
                  "10000"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\"}"
              }
            }
          },
          "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:\n\n *  The workflow scheme is not found.\n *  The workflow scheme does not have a draft.\n *  The workflow is not found.\n *  The workflow is not specified."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Workflow scheme drafts"
        ],
        "summary": "Delete issue types for workflow in draft workflow scheme",
        "description": "Deletes the workflow-issue type mapping for a workflow in a workflow scheme's draft.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteDraftWorkflowMapping",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme that the draft belongs to.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of the workflow.",
            "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:\n\n *  The workflow scheme is not found.\n *  The workflow scheme does not have a draft.\n *  The workflow is not found.\n *  The workflow is not specified."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:workflow-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}/issuetype/{issueType}": {
      "get": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Get workflow for issue type in workflow scheme",
        "description": "Returns the issue type-workflow mapping for an issue type in a workflow scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getWorkflowSchemeIssueType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "issueType",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "returnDraftIfExists",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueTypeWorkflowMapping"
                },
                "example": "{\"issueType\":\"10000\",\"workflow\":\"jira\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow-scheme:jira",
              "read:workflow:jira",
              "read:issue-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Set workflow for issue type in workflow scheme",
        "description": "Sets the workflow for an issue type in a workflow scheme.\n\nNote 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "setWorkflowSchemeIssueType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "issueType",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "description": "The issue type-project mapping.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypeWorkflowMapping"
              },
              "example": {
                "issueType": "10000",
                "workflow": "jira",
                "updateDraftIfNeeded": false
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Delete workflow for issue type in workflow scheme",
        "description": "Deletes the issue type-workflow mapping for an issue type in a workflow scheme.\n\nNote 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteWorkflowSchemeIssueType",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "issueType",
            "in": "path",
            "description": "The ID of the issue type.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "updateDraftIfNeeded",
            "in": "query",
            "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`.",
            "schema": {
              "type": "boolean"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\"}"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/workflowscheme/{id}/workflow": {
      "get": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Get issue types for workflows in workflow scheme",
        "description": "Returns the workflow-issue type mappings for a workflow scheme.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "getWorkflow",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of a workflow in the scheme. Limits the results to the workflow-issue type mapping for the specified workflow.",
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "returnDraftIfExists",
            "in": "query",
            "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.",
            "schema": {
              "type": "boolean",
              "default": false
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/IssueTypesWorkflowMapping"
                },
                "example": "{\"workflow\":\"jira\",\"issueTypes\":[\"10000\",\"10001\"],\"defaultMapping\":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 either the workflow scheme or workflow is not found."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:workflow-scheme:jira",
              "read:workflow:jira",
              "read:issue-type:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "put": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Set issue types for workflow in workflow scheme",
        "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.\n\nNote 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "updateWorkflowMapping",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of the workflow.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/IssueTypesWorkflowMapping"
              },
              "example": {
                "workflow": "jira",
                "updateDraftIfNeeded": true,
                "issueTypes": [
                  "10000"
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowScheme"
                },
                "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\"}"
              }
            }
          },
          "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:\n\n *  The workflow scheme is not found.\n *  The workflow is not found.\n *  The workflow is not specified."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      },
      "delete": {
        "tags": [
          "Workflow schemes"
        ],
        "summary": "Delete issue types for workflow in workflow scheme",
        "description": "Deletes the workflow-issue type mapping for a workflow in a workflow scheme.\n\nNote 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.\n\n**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).",
        "operationId": "deleteWorkflowMapping",
        "parameters": [
          {
            "name": "id",
            "in": "path",
            "description": "The ID of the workflow scheme.",
            "required": true,
            "schema": {
              "type": "integer",
              "format": "int64"
            }
          },
          {
            "name": "workflowName",
            "in": "query",
            "description": "The name of the workflow.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "updateDraftIfNeeded",
            "in": "query",
            "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`.",
            "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:\n\n *  The workflow scheme is not found.\n *  The workflow is not found.\n *  The workflow is not specified."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "manage:jira-configuration"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "manage:jira-configuration"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "delete:workflow-scheme:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "ADMIN"
      }
    },
    "/rest/api/3/worklog/deleted": {
      "get": {
        "tags": [
          "Issue worklogs"
        ],
        "summary": "Get IDs of deleted worklogs",
        "description": "Returns a list of IDs and delete timestamps for worklogs deleted after a date and time.\n\nThis 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.\n\nThis resource does not return worklogs deleted during the minute preceding the request.\n\n**[Permissions](#permissions) required:** Permission to access Jira.",
        "operationId": "getIdsOfWorklogsDeletedSince",
        "parameters": [
          {
            "name": "since",
            "in": "query",
            "description": "The date and time, as a UNIX timestamp in milliseconds, after which deleted worklogs are returned.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ChangedWorklogs"
                },
                "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}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-worklog:jira",
              "read:issue-worklog.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/worklog/list": {
      "post": {
        "tags": [
          "Issue worklogs"
        ],
        "summary": "Get worklogs",
        "description": "Returns worklog details for a list of worklog IDs.\n\nThe returned list of worklogs is limited to 1000 items.\n\n**[Permissions](#permissions) required:** Permission to access Jira, however, worklogs are only returned where either of the following is true:\n\n *  the worklog is set as *Viewable by All Users*.\n *  the user is a member of a project role or group with permission to view the worklog.",
        "operationId": "getWorklogsForIds",
        "parameters": [
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about worklogs in the response. This parameter accepts `properties` that returns the properties of each worklog.",
            "schema": {
              "type": "string",
              "default": ""
            }
          }
        ],
        "requestBody": {
          "description": "A JSON object containing a list of worklog IDs.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorklogIdsRequestBean"
              },
              "example": {
                "ids": [
                  1,
                  2,
                  5,
                  10
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "array",
                  "items": {
                    "$ref": "#/components/schemas/Worklog"
                  }
                },
                "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\"}]"
              }
            }
          },
          "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."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "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"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/api/3/worklog/updated": {
      "get": {
        "tags": [
          "Issue worklogs"
        ],
        "summary": "Get IDs of updated worklogs",
        "description": "Returns a list of IDs and update timestamps for worklogs updated after a date and time.\n\nThis 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.\n\nThis resource does not return worklogs updated during the minute preceding the request.\n\n**[Permissions](#permissions) required:** Permission to access Jira, however, worklogs are only returned where either of the following is true:\n\n *  the worklog is set as *Viewable by All Users*.\n *  the user is a member of a project role or group with permission to view the worklog.",
        "operationId": "getIdsOfWorklogsModifiedSince",
        "parameters": [
          {
            "name": "since",
            "in": "query",
            "description": "The date and time, as a UNIX timestamp in milliseconds, after which updated worklogs are returned.",
            "schema": {
              "type": "integer",
              "format": "int64",
              "default": 0
            }
          },
          {
            "name": "expand",
            "in": "query",
            "description": "Use [expand](#expansion) to include additional information about worklogs in the response. This parameter accepts `properties` that returns the properties of each worklog.",
            "schema": {
              "type": "string",
              "default": ""
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ChangedWorklogs"
                },
                "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}"
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "security": [
          {
            "basicAuth": []
          },
          {
            "OAuth2": [
              "read:jira-work"
            ]
          }
        ],
        "x-atlassian-oauth2-scopes": [
          {
            "state": "Current",
            "scheme": "OAuth2",
            "scopes": [
              "read:jira-work"
            ]
          },
          {
            "state": "Beta",
            "scheme": "OAuth2",
            "scopes": [
              "read:issue-worklog:jira",
              "read:issue-worklog.property:jira"
            ]
          }
        ],
        "x-atlassian-connect-scope": "READ"
      }
    },
    "/rest/atlassian-connect/1/addons/{addonKey}/properties": {
      "get": {
        "tags": [
          "App properties"
        ],
        "summary": "Get app properties",
        "description": "Gets all the properties of an app.\n\n**[Permissions](#permissions) required:** Only a Connect app whose key matches `addonKey` can make this request.",
        "operationId": "AddonPropertiesResource.getAddonProperties_get",
        "parameters": [
          {
            "name": "addonKey",
            "in": "path",
            "description": "The key of the app, as defined in its descriptor.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/PropertyKeys"
                },
                "example": {
                  "keys": [
                    {
                      "self": "https://your-domain.atlassian.net/jira/rest/atlassian-connect/1/addon/example.app.key/properties/propertyKey",
                      "key": "propertyKey"
                    }
                  ]
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "Access to this resource must be authenticated as an app.",
                  "statusCode": 401
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/atlassian-connect/1/addons/{addonKey}/properties/{propertyKey}": {
      "get": {
        "tags": [
          "App properties"
        ],
        "summary": "Get app property",
        "description": "Returns the key and value of an app's property.\n\n**[Permissions](#permissions) required:** Only a Connect app whose key matches `addonKey` can make this request.",
        "operationId": "AddonPropertiesResource.getAddonProperty_get",
        "parameters": [
          {
            "name": "addonKey",
            "in": "path",
            "description": "The key of the app, as defined in its descriptor.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EntityProperty"
                },
                "example": {
                  "self": "https://your-domain.atlassian.net/jira/rest/atlassian-connect/1/addon/example.app.key/properties/propertyKey",
                  "key": "propertyKey",
                  "value": "propertyValue"
                }
              }
            }
          },
          "400": {
            "description": "Returned if the property key is longer than 127 characters.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "The property key cannot be longer than 127 characters.",
                  "statusCode": 400
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "Access to this resource must be authenticated as an app.",
                  "statusCode": 401
                }
              }
            }
          },
          "404": {
            "description": "Returned if the property is not found or doesn't belong to the app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "Property with key not found.",
                  "statusCode": 404
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-atlassian-connect-scope": "NONE"
      },
      "put": {
        "tags": [
          "App properties"
        ],
        "summary": "Set app property",
        "description": "Sets the value of an app's property. Use this resource to store custom data for your app.\n\nThe 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.\n\n**[Permissions](#permissions) required:** Only a Connect app whose key matches `addonKey` can make this request.",
        "operationId": "AddonPropertiesResource.putAddonProperty_put",
        "parameters": [
          {
            "name": "addonKey",
            "in": "path",
            "description": "The key of the app, as defined in its descriptor.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {}
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the property is updated.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "Property updated.",
                  "statusCode": 200
                }
              }
            }
          },
          "201": {
            "description": "Returned is the property is created.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "Property created.",
                  "statusCode": 201
                }
              }
            }
          },
          "400": {
            "description": "Returned if:\n  * the property key is longer than 127 characters.\n  * the value is not valid JSON.\n  * the value is longer than 32768 characters.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "The property key cannot be longer than 127 characters.",
                  "statusCode": 400
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "Access to this resource must be authenticated as an app.",
                  "statusCode": 401
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-atlassian-connect-scope": "NONE"
      },
      "delete": {
        "tags": [
          "App properties"
        ],
        "summary": "Delete app property",
        "description": "Deletes an app's property.\n\n**[Permissions](#permissions) required:** Only a Connect app whose key matches `addonKey` can make this request.",
        "operationId": "AddonPropertiesResource.deleteAddonProperty_delete",
        "parameters": [
          {
            "name": "addonKey",
            "in": "path",
            "description": "The key of the app, as defined in its descriptor.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "propertyKey",
            "in": "path",
            "description": "The key of the property.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful."
          },
          "400": {
            "description": "Returned if the property key is longer than 127 characters.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "The property key cannot be longer than 127 characters.",
                  "statusCode": 400
                }
              }
            }
          },
          "401": {
            "description": "Returned if the authentication credentials are incorrect or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "Access to this resource must be authenticated as an app.",
                  "statusCode": 401
                }
              }
            }
          },
          "404": {
            "description": "Returned if the property is not found or doesn't belong to the app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/OperationMessage"
                },
                "example": {
                  "message": "Property with key not found.",
                  "statusCode": 404
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/atlassian-connect/1/app/module/dynamic": {
      "get": {
        "tags": [
          "Dynamic modules"
        ],
        "summary": "Get modules",
        "description": "Returns all modules registered dynamically by the calling app.\n\n**[Permissions](#permissions) required:** Only Connect apps can make this request.",
        "operationId": "DynamicModulesResource.getModules_get",
        "parameters": [],
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ConnectModules"
                }
              }
            }
          },
          "401": {
            "description": "Returned if the call is not from a Connect app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                },
                "example": {
                  "message": "The request is not from a Connect app."
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-experimental": true,
        "x-atlassian-connect-scope": "NONE"
      },
      "post": {
        "tags": [
          "Dynamic modules"
        ],
        "summary": "Register modules",
        "description": "Registers a list of modules.\n\n**[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": {
            "description": "Returned if:\n* any of the provided modules is invalid. For example, required properties are missing.\n* any of the modules conflict with registered dynamic modules or modules defined in the app descriptor. For example, there are duplicate keys.\n\nDetails of the issues encountered are included in the error message.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                },
                "example": {
                  "message": "Installation failed. The app com.example.app.key has duplicate module keys: [module-key]. Please contact the app vendor."
                }
              }
            }
          },
          "401": {
            "description": "Returned if the call is not from a Connect app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                },
                "example": {
                  "message": "The request is not from a Connect app."
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-experimental": true,
        "x-atlassian-connect-scope": "NONE"
      },
      "delete": {
        "tags": [
          "Dynamic modules"
        ],
        "summary": "Remove modules",
        "description": "Remove all or a list of modules registered by the calling app.\n\n**[Permissions](#permissions) required:** Only Connect apps can make this request.",
        "operationId": "DynamicModulesResource.removeModules_delete",
        "parameters": [
          {
            "name": "moduleKey",
            "in": "query",
            "description": "The key of the module to remove. To include multiple module keys, provide multiple copies of this parameter.\nFor example, `moduleKey=dynamic-attachment-entity-property&moduleKey=dynamic-select-field`.\nNonexistent keys are ignored.",
            "required": false,
            "schema": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Returned if the request is successful."
          },
          "401": {
            "description": "Returned if the call is not from a Connect app.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ErrorMessage"
                },
                "example": {
                  "message": "The request is not from a Connect app."
                }
              }
            }
          }
        },
        "deprecated": false,
        "x-experimental": true,
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/atlassian-connect/1/migration/field": {
      "put": {
        "tags": [
          "App migration"
        ],
        "summary": "Bulk update custom field value",
        "description": "Updates the value of a custom field added by Connect apps on one or more issues.\nThe values of up to 200 custom fields can be updated.\n\n**[Permissions](#permissions) required:** Only Connect apps can make this request.",
        "operationId": "AppIssueFieldValueUpdateResource.updateIssueFields_put",
        "parameters": [
          {
            "name": "Atlassian-Transfer-Id",
            "in": "header",
            "description": "The ID of the transfer.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/ConnectCustomFieldValues"
              },
              "example": {
                "updateValueList": [
                  {
                    "_type": "StringIssueField",
                    "issueID": 10001,
                    "fieldID": 10076,
                    "string": "new string value"
                  },
                  {
                    "_type": "TextIssueField",
                    "issueID": 10002,
                    "fieldID": 10077,
                    "text": "new text value"
                  },
                  {
                    "_type": "SingleSelectIssueField",
                    "issueID": 10003,
                    "fieldID": 10078,
                    "optionID": "1"
                  },
                  {
                    "_type": "MultiSelectIssueField",
                    "issueID": 10004,
                    "fieldID": 10079,
                    "optionID": "2"
                  },
                  {
                    "_type": "RichTextIssueField",
                    "issueID": 10005,
                    "fieldID": 10080,
                    "richText": "new rich text value"
                  },
                  {
                    "_type": "NumberIssueField",
                    "issueID": 10006,
                    "fieldID": 10082,
                    "number": 54
                  }
                ]
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "400": {
            "description": "Returned if the request is invalid."
          },
          "403": {
            "description": "Returned if:\n* the transfer ID is not found.\n* the authorisation credentials are incorrect or missing."
          }
        },
        "deprecated": false,
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/atlassian-connect/1/migration/properties/{entityType}": {
      "put": {
        "tags": [
          "App migration"
        ],
        "summary": "Bulk update entity properties",
        "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": [
          {
            "name": "Atlassian-Transfer-Id",
            "in": "header",
            "description": "The app migration transfer ID.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "entityType",
            "in": "path",
            "description": "The type indicating the object that contains the entity properties.",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "IssueProperty",
                "CommentProperty",
                "DashboardItemProperty",
                "IssueTypeProperty",
                "ProjectProperty",
                "UserProperty",
                "WorklogProperty",
                "BoardProperty",
                "SprintProperty"
              ]
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "maxItems": 50,
                "minItems": 1,
                "type": "array",
                "items": {
                  "$ref": "#/components/schemas/EntityPropertyDetails"
                }
              }
            }
          },
          "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."
          }
        },
        "x-atlassian-connect-scope": "NONE"
      }
    },
    "/rest/atlassian-connect/1/migration/workflow/rule/search": {
      "post": {
        "tags": [
          "App migration"
        ],
        "summary": "Get workflow transition rule configurations",
        "description": "Returns configurations for workflow transition rules migrated from server to cloud and owned by the calling Connect app.",
        "operationId": "MigrationResource.workflowRuleSearch_post",
        "parameters": [
          {
            "name": "Atlassian-Transfer-Id",
            "in": "header",
            "description": "The app migration transfer ID.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/WorkflowRulesSearch"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Returned if the request is successful.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/WorkflowRulesSearchDetails"
                },
                "example": {
                  "workflowEntityId": "a498d711-685d-428d-8c3e-bc03bb450ea7",
                  "invalidRules": [
                    "55d44f1d-c859-42e5-9c27-2c5ec3f340b1"
                  ],
                  "validRules": [
                    {
                      "workflowId": {
                        "name": "Workflow name",
                        "draft": true
                      },
                      "postFunctions": [
                        {
                          "id": "123",
                          "key": "WorkflowKey",
                          "configuration": {
                            "value": "WorkflowValidator"
                          },
                          "transition": {
                            "name": "transition",
                            "id": 123
                          }
                        }
                      ],
                      "conditions": [
                        {
                          "id": "123",
                          "key": "WorkflowKey",
                          "configuration": {
                            "value": "WorkflowValidator"
                          },
                          "transition": {
                            "name": "transition",
                            "id": 123
                          }
                        }
                      ],
                      "validators": [
                        {
                          "id": "123",
                          "key": "WorkflowKey",
                          "configuration": {
                            "value": "WorkflowValidator"
                          },
                          "transition": {
                            "name": "transition",
                            "id": 123
                          }
                        }
                      ]
                    }
                  ]
                }
              }
            }
          },
          "400": {
            "description": "Returned if the request is not valid."
          },
          "403": {
            "description": "Returned if the authorisation credentials are incorrect or missing."
          }
        },
        "x-atlassian-connect-scope": "NONE"
      }
    }
  },
  "components": {
    "schemas": {
      "HealthCheckResult": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the Jira health check item."
          },
          "description": {
            "type": "string",
            "description": "The description of the Jira health check item."
          },
          "passed": {
            "type": "boolean",
            "description": "Whether the Jira health check item passed or failed."
          }
        },
        "additionalProperties": false,
        "description": "Jira instance health check results. Deprecated and no longer returned."
      },
      "ServerInformation": {
        "type": "object",
        "properties": {
          "baseUrl": {
            "type": "string",
            "description": "The base URL of the Jira instance."
          },
          "version": {
            "type": "string",
            "description": "The version of Jira."
          },
          "versionNumbers": {
            "type": "array",
            "description": "The major, minor, and revision version numbers of the Jira version.",
            "items": {
              "type": "integer",
              "format": "int32"
            }
          },
          "deploymentType": {
            "type": "string",
            "description": "The type of server deployment. This is always returned as *Cloud*."
          },
          "buildNumber": {
            "type": "integer",
            "description": "The build number of the Jira version.",
            "format": "int32"
          },
          "buildDate": {
            "type": "string",
            "description": "The timestamp when the Jira version was built.",
            "format": "date-time"
          },
          "serverTime": {
            "type": "string",
            "description": "The time in Jira when this request was responded to.",
            "format": "date-time"
          },
          "scmInfo": {
            "type": "string",
            "description": "The unique identifier of the Jira version."
          },
          "serverTitle": {
            "type": "string",
            "description": "The name of the Jira instance."
          },
          "healthChecks": {
            "type": "array",
            "description": "Jira instance health check results. Deprecated and no longer returned.",
            "items": {
              "$ref": "#/components/schemas/HealthCheckResult"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about the Jira instance."
      },
      "AnnouncementBannerConfiguration": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "The text on the announcement banner.",
            "readOnly": true
          },
          "isDismissible": {
            "type": "boolean",
            "description": "Flag indicating if the announcement banner can be dismissed by the user.",
            "readOnly": true
          },
          "isEnabled": {
            "type": "boolean",
            "description": "Flag indicating if the announcement banner is enabled or not.",
            "readOnly": true
          },
          "hashId": {
            "type": "string",
            "description": "Hash of the banner data. The client detects updates by comparing hash IDs.",
            "readOnly": true
          },
          "visibility": {
            "type": "string",
            "description": "Visibility of the announcement banner.",
            "readOnly": true,
            "enum": [
              "PUBLIC",
              "PRIVATE"
            ]
          }
        },
        "additionalProperties": false,
        "description": "Announcement banner configuration."
      },
      "ErrorCollection": {
        "type": "object",
        "properties": {
          "errorMessages": {
            "type": "array",
            "description": "The list of error messages produced by this operation. For example, \"input parameter 'key' must be provided\"",
            "items": {
              "type": "string"
            }
          },
          "errors": {
            "type": "object",
            "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.\""
          },
          "status": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Error messages from an operation."
      },
      "AnnouncementBannerConfigurationUpdate": {
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "The text on the announcement banner."
          },
          "isDismissible": {
            "type": "boolean",
            "description": "Flag indicating if the announcement banner can be dismissed by the user."
          },
          "isEnabled": {
            "type": "boolean",
            "description": "Flag indicating if the announcement banner is enabled or not."
          },
          "visibility": {
            "type": "string",
            "description": "Visibility of the announcement banner. Can be public or private."
          }
        },
        "additionalProperties": false,
        "description": "Configuration of the announcement banner.",
        "writeOnly": true
      },
      "ColumnItem": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "description": "The issue navigator column label."
          },
          "value": {
            "type": "string",
            "description": "The issue navigator column value."
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue navigator column item."
      },
      "License": {
        "required": [
          "applications"
        ],
        "type": "object",
        "properties": {
          "applications": {
            "type": "array",
            "description": "The applications under this license.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/LicensedApplication"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about a license for the Jira instance."
      },
      "LicensedApplication": {
        "required": [
          "id",
          "plan"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the application.",
            "readOnly": true
          },
          "plan": {
            "type": "string",
            "description": "The licensing plan.",
            "readOnly": true,
            "enum": [
              "UNLICENSED",
              "FREE",
              "PAID"
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a licensed Jira application."
      },
      "IssueEvent": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the event.",
            "format": "int64",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the event.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details about an issue event."
      },
      "Configuration": {
        "type": "object",
        "properties": {
          "votingEnabled": {
            "type": "boolean",
            "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
          },
          "watchingEnabled": {
            "type": "boolean",
            "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
          },
          "unassignedIssuesAllowed": {
            "type": "boolean",
            "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
          },
          "subTasksEnabled": {
            "type": "boolean",
            "description": "Whether the ability to create subtasks for issues is enabled.",
            "readOnly": true
          },
          "issueLinkingEnabled": {
            "type": "boolean",
            "description": "Whether the ability to link issues is enabled.",
            "readOnly": true
          },
          "timeTrackingEnabled": {
            "type": "boolean",
            "description": "Whether the ability to track time is enabled. This property is deprecated.",
            "readOnly": true
          },
          "attachmentsEnabled": {
            "type": "boolean",
            "description": "Whether the ability to add attachments to issues is enabled.",
            "readOnly": true
          },
          "timeTrackingConfiguration": {
            "description": "The configuration of time tracking.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/TimeTrackingConfiguration"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about the configuration of Jira."
      },
      "TimeTrackingConfiguration": {
        "required": [
          "defaultUnit",
          "timeFormat",
          "workingDaysPerWeek",
          "workingHoursPerDay"
        ],
        "type": "object",
        "properties": {
          "workingHoursPerDay": {
            "type": "number",
            "description": "The number of hours in a working day.",
            "format": "double"
          },
          "workingDaysPerWeek": {
            "type": "number",
            "description": "The number of days in a working week.",
            "format": "double"
          },
          "timeFormat": {
            "type": "string",
            "description": "The format that will appear on an issue's *Time Spent* field.",
            "enum": [
              "pretty",
              "days",
              "hours"
            ]
          },
          "defaultUnit": {
            "type": "string",
            "description": "The default unit of time applied to logged time.",
            "enum": [
              "minute",
              "hour",
              "day",
              "week"
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of the time tracking configuration."
      },
      "ApplicationProperty": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the application property. The ID and key are the same."
          },
          "key": {
            "type": "string",
            "description": "The key of the application property. The ID and key are the same."
          },
          "value": {
            "type": "string",
            "description": "The new value."
          },
          "name": {
            "type": "string",
            "description": "The name of the application property."
          },
          "desc": {
            "type": "string",
            "description": "The description of the application property."
          },
          "type": {
            "type": "string",
            "description": "The data type of the application property."
          },
          "defaultValue": {
            "type": "string",
            "description": "The default value of the application property."
          },
          "example": {
            "type": "string"
          },
          "allowedValues": {
            "type": "array",
            "description": "The allowed values, if applicable.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of an application property."
      },
      "SimpleApplicationPropertyBean": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the application property."
          },
          "value": {
            "type": "string",
            "description": "The new value."
          }
        },
        "additionalProperties": false,
        "xml": {
          "name": "applicationProperty"
        }
      },
      "AssociatedItemBean": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the associated record.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the associated record.",
            "readOnly": true
          },
          "typeName": {
            "type": "string",
            "description": "The type of the associated record.",
            "readOnly": true
          },
          "parentId": {
            "type": "string",
            "description": "The ID of the associated parent record.",
            "readOnly": true
          },
          "parentName": {
            "type": "string",
            "description": "The name of the associated parent record.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of an item associated with the changed record."
      },
      "AuditRecordBean": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the audit record.",
            "format": "int64",
            "readOnly": true
          },
          "summary": {
            "type": "string",
            "description": "The summary of the audit record.",
            "readOnly": true
          },
          "remoteAddress": {
            "type": "string",
            "description": "The URL of the computer where the creation of the audit record was initiated.",
            "readOnly": true
          },
          "authorKey": {
            "type": "string",
            "description": "Deprecated, use `authorAccountId` instead. The key of the user who created the audit record.",
            "readOnly": true
          },
          "created": {
            "type": "string",
            "description": "The date and time on which the audit record was created.",
            "format": "date-time",
            "readOnly": true
          },
          "category": {
            "type": "string",
            "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
          },
          "eventSource": {
            "type": "string",
            "description": "The event the audit record originated from.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the audit record.",
            "readOnly": true
          },
          "objectItem": {
            "$ref": "#/components/schemas/AssociatedItemBean"
          },
          "changedValues": {
            "type": "array",
            "description": "The list of values changed in the record event.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ChangedValueBean"
            }
          },
          "associatedItems": {
            "type": "array",
            "description": "The list of items associated with the changed record.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/AssociatedItemBean"
            }
          }
        },
        "additionalProperties": false,
        "description": "An audit record."
      },
      "AuditRecords": {
        "type": "object",
        "properties": {
          "offset": {
            "type": "integer",
            "description": "The number of audit items skipped before the first item in this list.",
            "format": "int32",
            "readOnly": true
          },
          "limit": {
            "type": "integer",
            "description": "The requested or default limit on the number of audit items to be returned.",
            "format": "int32",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The total number of audit items returned.",
            "format": "int64",
            "readOnly": true
          },
          "records": {
            "type": "array",
            "description": "The list of audit items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/AuditRecordBean"
            }
          }
        },
        "additionalProperties": false,
        "description": "Container for a list of audit records."
      },
      "ChangedValueBean": {
        "type": "object",
        "properties": {
          "fieldName": {
            "type": "string",
            "description": "The name of the field changed.",
            "readOnly": true
          },
          "changedFrom": {
            "type": "string",
            "description": "The value of the field before the change.",
            "readOnly": true
          },
          "changedTo": {
            "type": "string",
            "description": "The value of the field after the change.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of names changed in the record event."
      },
      "ApplicationRole": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "The key of the application role."
          },
          "groups": {
            "uniqueItems": true,
            "type": "array",
            "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"
            }
          },
          "groupDetails": {
            "type": "array",
            "description": "The groups associated with the application role.",
            "items": {
              "$ref": "#/components/schemas/GroupName"
            }
          },
          "name": {
            "type": "string",
            "description": "The display name of the application role."
          },
          "defaultGroups": {
            "uniqueItems": true,
            "type": "array",
            "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"
            }
          },
          "defaultGroupsDetails": {
            "type": "array",
            "description": "The groups that are granted default access for this application role.",
            "items": {
              "$ref": "#/components/schemas/GroupName"
            }
          },
          "selectedByDefault": {
            "type": "boolean",
            "description": "Determines whether this application role should be selected by default on user creation."
          },
          "defined": {
            "type": "boolean",
            "description": "Deprecated."
          },
          "numberOfSeats": {
            "type": "integer",
            "description": "The maximum count of users on your license.",
            "format": "int32"
          },
          "remainingSeats": {
            "type": "integer",
            "description": "The count of users remaining on your license.",
            "format": "int32"
          },
          "userCount": {
            "type": "integer",
            "description": "The number of users counting against your license.",
            "format": "int32"
          },
          "userCountDescription": {
            "type": "string",
            "description": "The [type of users](https://confluence.atlassian.com/x/lRW3Ng) being counted against your license."
          },
          "hasUnlimitedSeats": {
            "type": "boolean"
          },
          "platform": {
            "type": "boolean",
            "description": "Indicates if the application role belongs to Jira platform (`jira-core`)."
          }
        },
        "additionalProperties": false,
        "description": "Details of an application role."
      },
      "GroupName": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of group."
          },
          "groupId": {
            "type": "string",
            "description": "The ID of the group, which uniquely identifies the group across all Atlassian products. For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*.",
            "nullable": true
          },
          "self": {
            "type": "string",
            "description": "The URL for these group details.",
            "format": "uri",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details about a group."
      },
      "AvatarUrlsBean": {
        "type": "object",
        "properties": {
          "16x16": {
            "type": "string",
            "description": "The URL of the item's 16x16 pixel avatar.",
            "format": "uri"
          },
          "24x24": {
            "type": "string",
            "description": "The URL of the item's 24x24 pixel avatar.",
            "format": "uri"
          },
          "32x32": {
            "type": "string",
            "description": "The URL of the item's 32x32 pixel avatar.",
            "format": "uri"
          },
          "48x48": {
            "type": "string",
            "description": "The URL of the item's 48x48 pixel avatar.",
            "format": "uri"
          }
        },
        "additionalProperties": false
      },
      "PermissionGrant": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the permission granted details.",
            "format": "int64",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of the permission granted details.",
            "format": "uri",
            "readOnly": true
          },
          "holder": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/PermissionHolder"
              }
            ]
          },
          "permission": {
            "type": "string",
            "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."
          }
        },
        "additionalProperties": false,
        "description": "Details about a permission granted to a user or group."
      },
      "PermissionHolder": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of permission holder."
          },
          "parameter": {
            "type": "string",
            "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."
          },
          "value": {
            "type": "string",
            "description": "The identifier associated with the `type` value that defines the holder of the permission."
          },
          "expand": {
            "type": "string",
            "description": "Expand options that include additional permission holder details in the response.",
            "readOnly": true
          }
        },
        "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."
      },
      "PermissionScheme": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "The expand options available for the permission scheme.",
            "readOnly": true
          },
          "id": {
            "type": "integer",
            "description": "The ID of the permission scheme.",
            "format": "int64",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of the permission scheme.",
            "format": "uri",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the permission scheme. Must be unique."
          },
          "description": {
            "type": "string",
            "description": "A description for the permission scheme."
          },
          "scope": {
            "description": "The scope of the permission scheme.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          },
          "permissions": {
            "type": "array",
            "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"
            }
          }
        },
        "additionalProperties": true,
        "description": "Details of a permission scheme."
      },
      "PermissionSchemes": {
        "type": "object",
        "properties": {
          "permissionSchemes": {
            "type": "array",
            "description": "Permission schemes list.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/PermissionScheme"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of all permission schemes."
      },
      "ProjectDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the project details.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the project."
          },
          "key": {
            "type": "string",
            "description": "The key of the project.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the project.",
            "readOnly": true
          },
          "projectTypeKey": {
            "type": "string",
            "description": "The [project type](https://confluence.atlassian.com/x/GwiiLQ#Jiraapplicationsoverview-Productfeaturesandprojecttypes) of the project.",
            "readOnly": true,
            "enum": [
              "software",
              "service_desk",
              "business"
            ]
          },
          "simplified": {
            "type": "boolean",
            "description": "Whether or not the project is simplified.",
            "readOnly": true
          },
          "avatarUrls": {
            "description": "The URLs of the project's avatars.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/AvatarUrlsBean"
              }
            ]
          },
          "projectCategory": {
            "description": "The category the project belongs to.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UpdatedProjectCategory"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a project."
      },
      "Scope": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of scope.",
            "readOnly": true,
            "enum": [
              "PROJECT",
              "TEMPLATE"
            ]
          },
          "project": {
            "description": "The project the item has scope in.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ProjectDetails"
              }
            ]
          }
        },
        "additionalProperties": true,
        "description": "The projects the item is associated with. Indicated for items associated with [next-gen projects](https://confluence.atlassian.com/x/loMyO)."
      },
      "UpdatedProjectCategory": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the project category.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the project category.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The name of the project category.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The description of the project category.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "A project category."
      },
      "PermissionGrants": {
        "type": "object",
        "properties": {
          "permissions": {
            "type": "array",
            "description": "Permission grants list.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/PermissionGrant"
            }
          },
          "expand": {
            "type": "string",
            "description": "Expand options that include additional permission grant details in the response.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "List of permission grants."
      },
      "DeprecatedWorkflow": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the workflow.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the workflow.",
            "readOnly": true
          },
          "lastModifiedDate": {
            "type": "string",
            "description": "The datetime the workflow was last modified.",
            "readOnly": true
          },
          "lastModifiedUser": {
            "type": "string",
            "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
          },
          "lastModifiedUserAccountId": {
            "type": "string",
            "description": "The account ID of the user that last modified the workflow.",
            "readOnly": true
          },
          "steps": {
            "type": "integer",
            "description": "The number of steps included in the workflow.",
            "format": "int32",
            "readOnly": true
          },
          "scope": {
            "description": "The scope where this workflow applies",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          },
          "default": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "description": "Details about a workflow."
      },
      "CreateWorkflowCondition": {
        "type": "object",
        "properties": {
          "operator": {
            "type": "string",
            "description": "The compound condition operator.",
            "enum": [
              "AND",
              "OR"
            ]
          },
          "conditions": {
            "type": "array",
            "description": "The list of workflow conditions.",
            "items": {
              "$ref": "#/components/schemas/CreateWorkflowCondition"
            }
          },
          "type": {
            "type": "string",
            "description": "The type of the transition rule."
          },
          "configuration": {
            "type": "object",
            "additionalProperties": {
              "description": "EXPERIMENTAL. The configuration of the transition rule."
            },
            "description": "EXPERIMENTAL. The configuration of the transition rule."
          }
        },
        "additionalProperties": false,
        "description": "A workflow transition condition."
      },
      "CreateWorkflowDetails": {
        "required": [
          "name",
          "statuses",
          "transitions"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "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."
          },
          "description": {
            "type": "string",
            "description": "The description of the workflow. The maximum length is 1000 characters."
          },
          "transitions": {
            "type": "array",
            "description": "The transitions of the workflow. For the request to be valid, these transitions must:\n\n *  include one *initial* transition.\n *  not use the same name for a *global* and *directed* transition.\n *  have a unique name for each *global* transition.\n *  have a unique 'to' status for each *global* transition.\n *  have unique names for each transition from a status.\n *  not have a 'from' status on *initial* and *global* transitions.\n *  have a 'from' status on *directed* transitions.\n\nAll the transition statuses must be included in `statuses`.",
            "items": {
              "$ref": "#/components/schemas/CreateWorkflowTransitionDetails"
            }
          },
          "statuses": {
            "uniqueItems": true,
            "type": "array",
            "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"
            }
          }
        },
        "additionalProperties": false,
        "description": "The details of a workflow.",
        "writeOnly": true
      },
      "CreateWorkflowStatusDetails": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the status."
          },
          "properties": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The properties of the status."
          }
        },
        "additionalProperties": false,
        "description": "The details of a transition status.",
        "writeOnly": true
      },
      "CreateWorkflowTransitionDetails": {
        "required": [
          "name",
          "to",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the transition. The maximum length is 60 characters."
          },
          "description": {
            "type": "string",
            "description": "The description of the transition. The maximum length is 1000 characters."
          },
          "from": {
            "type": "array",
            "description": "The statuses the transition can start from.",
            "items": {
              "type": "string"
            }
          },
          "to": {
            "type": "string",
            "description": "The status the transition goes to."
          },
          "type": {
            "type": "string",
            "description": "The type of the transition.",
            "enum": [
              "global",
              "initial",
              "directed"
            ]
          },
          "rules": {
            "description": "The rules of the transition.",
            "allOf": [
              {
                "$ref": "#/components/schemas/CreateWorkflowTransitionRulesDetails"
              }
            ]
          },
          "screen": {
            "description": "The screen of the transition.",
            "allOf": [
              {
                "$ref": "#/components/schemas/CreateWorkflowTransitionScreenDetails"
              }
            ]
          },
          "properties": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "The properties of the transition."
          }
        },
        "additionalProperties": false,
        "description": "The details of a workflow transition.",
        "writeOnly": true
      },
      "CreateWorkflowTransitionRule": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of the transition rule."
          },
          "configuration": {
            "type": "object",
            "additionalProperties": {
              "description": "EXPERIMENTAL. The configuration of the transition rule."
            },
            "description": "EXPERIMENTAL. The configuration of the transition rule."
          }
        },
        "additionalProperties": false,
        "description": "A workflow transition rule."
      },
      "CreateWorkflowTransitionRulesDetails": {
        "type": "object",
        "properties": {
          "conditions": {
            "description": "The workflow conditions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/CreateWorkflowCondition"
              }
            ]
          },
          "validators": {
            "type": "array",
            "description": "The workflow validators.\n\n**Note:** The default permission validator is always added to the *initial* transition, as in:\n\n    \"validators\": [\n        {\n            \"type\": \"PermissionValidator\",\n            \"configuration\": {\n                \"permissionKey\": \"CREATE_ISSUES\"\n            }\n        }\n    ]",
            "items": {
              "$ref": "#/components/schemas/CreateWorkflowTransitionRule"
            }
          },
          "postFunctions": {
            "type": "array",
            "description": "The workflow post functions.\n\n**Note:** The default post functions are always added to the *initial* transition, as in:\n\n    \"postFunctions\": [\n        {\n            \"type\": \"IssueCreateFunction\"\n        },\n        {\n            \"type\": \"IssueReindexFunction\"\n        },\n        {\n            \"type\": \"FireIssueEventFunction\",\n            \"configuration\": {\n                \"event\": {\n                    \"id\": \"1\",\n                    \"name\": \"issue_created\"\n                }\n            }\n        }\n    ]\n\n**Note:** The default post functions are always added to the *global* and *directed* transitions, as in:\n\n    \"postFunctions\": [\n        {\n            \"type\": \"UpdateIssueStatusFunction\"\n        },\n        {\n            \"type\": \"CreateCommentFunction\"\n        },\n        {\n            \"type\": \"GenerateChangeHistoryFunction\"\n        },\n        {\n            \"type\": \"IssueReindexFunction\"\n        },\n        {\n            \"type\": \"FireIssueEventFunction\",\n            \"configuration\": {\n                \"event\": {\n                    \"id\": \"13\",\n                    \"name\": \"issue_generic\"\n                }\n            }\n        }\n    ]",
            "items": {
              "$ref": "#/components/schemas/CreateWorkflowTransitionRule"
            }
          }
        },
        "additionalProperties": false,
        "description": "The details of a workflow transition rules.",
        "writeOnly": true
      },
      "CreateWorkflowTransitionScreenDetails": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the screen."
          }
        },
        "additionalProperties": false,
        "description": "The details of a transition screen.",
        "writeOnly": true
      },
      "WorkflowIDs": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the workflow."
          },
          "entityId": {
            "type": "string",
            "description": "The entity ID of the workflow."
          }
        },
        "additionalProperties": false,
        "description": "The classic workflow identifiers."
      },
      "WorkflowTransitionProperty": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "The key of the transition property. Also known as the name of the transition property.",
            "readOnly": true
          },
          "value": {
            "type": "string",
            "description": "The value of the transition property."
          },
          "id": {
            "type": "string",
            "description": "The ID of the transition property.",
            "readOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Details about the server Jira is running on."
      },
      "PageBeanWorkflow": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Workflow"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "PublishedWorkflowId": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the workflow."
          },
          "entityId": {
            "type": "string",
            "description": "The entity ID of the workflow."
          }
        },
        "additionalProperties": false,
        "description": "Properties that identify a published workflow."
      },
      "Transition": {
        "required": [
          "description",
          "from",
          "id",
          "name",
          "to",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the transition."
          },
          "name": {
            "type": "string",
            "description": "The name of the transition."
          },
          "description": {
            "type": "string",
            "description": "The description of the transition."
          },
          "from": {
            "type": "array",
            "description": "The statuses the transition can start from.",
            "items": {
              "type": "string",
              "description": "The statuses the transition can start from."
            }
          },
          "to": {
            "type": "string",
            "description": "The status the transition goes to."
          },
          "type": {
            "type": "string",
            "description": "The type of the transition.",
            "enum": [
              "global",
              "initial",
              "directed"
            ]
          },
          "screen": {
            "$ref": "#/components/schemas/TransitionScreenDetails"
          },
          "rules": {
            "$ref": "#/components/schemas/WorkflowRules"
          },
          "properties": {
            "type": "object",
            "additionalProperties": {
              "description": "The properties of the transition."
            },
            "description": "The properties of the transition."
          }
        },
        "additionalProperties": false,
        "description": "Details of a workflow transition."
      },
      "TransitionScreenDetails": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the screen."
          },
          "name": {
            "type": "string",
            "description": "The name of the screen."
          }
        },
        "additionalProperties": false,
        "description": "The details of a transition screen."
      },
      "Workflow": {
        "required": [
          "description",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "$ref": "#/components/schemas/PublishedWorkflowId"
          },
          "description": {
            "type": "string",
            "description": "The description of the workflow."
          },
          "transitions": {
            "type": "array",
            "description": "The transitions of the workflow.",
            "items": {
              "$ref": "#/components/schemas/Transition"
            }
          },
          "statuses": {
            "type": "array",
            "description": "The statuses of the workflow.",
            "items": {
              "$ref": "#/components/schemas/WorkflowStatus"
            }
          },
          "isDefault": {
            "type": "boolean",
            "description": "Whether this is the default workflow."
          },
          "schemes": {
            "type": "array",
            "description": "The workflow schemes the workflow is assigned to.",
            "items": {
              "$ref": "#/components/schemas/WorkflowSchemeIdName"
            }
          },
          "projects": {
            "type": "array",
            "description": "The projects the workflow is assigned to, through workflow schemes.",
            "items": {
              "$ref": "#/components/schemas/ProjectDetails"
            }
          },
          "hasDraftWorkflow": {
            "type": "boolean",
            "description": "Whether the workflow has a draft version."
          },
          "operations": {
            "$ref": "#/components/schemas/WorkflowOperations"
          },
          "created": {
            "type": "string",
            "description": "The creation date of the workflow.",
            "format": "date-time"
          },
          "updated": {
            "type": "string",
            "description": "The last edited date of the workflow.",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "description": "Details about a workflow."
      },
      "WorkflowCompoundCondition": {
        "required": [
          "conditions",
          "nodeType",
          "operator"
        ],
        "type": "object",
        "properties": {
          "operator": {
            "type": "string",
            "description": "The compound condition operator.",
            "enum": [
              "AND",
              "OR"
            ]
          },
          "conditions": {
            "type": "array",
            "description": "The list of workflow conditions.",
            "items": {
              "$ref": "#/components/schemas/WorkflowCondition"
            }
          },
          "nodeType": {
            "type": "string"
          }
        },
        "description": "A compound workflow transition rule condition. This object returns `nodeType` as `compound`."
      },
      "WorkflowCondition": {
        "type": "object",
        "additionalProperties": false,
        "description": "The workflow transition rule conditions tree.",
        "discriminator": {
          "propertyName": "nodeType",
          "mapping": {
            "simple": "#/components/schemas/WorkflowSimpleCondition",
            "compound": "#/components/schemas/WorkflowCompoundCondition"
          }
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/WorkflowSimpleCondition"
          },
          {
            "$ref": "#/components/schemas/WorkflowCompoundCondition"
          }
        ]
      },
      "WorkflowOperations": {
        "required": [
          "canDelete",
          "canEdit"
        ],
        "type": "object",
        "properties": {
          "canEdit": {
            "type": "boolean",
            "description": "Whether the workflow can be updated."
          },
          "canDelete": {
            "type": "boolean",
            "description": "Whether the workflow can be deleted."
          }
        },
        "additionalProperties": false,
        "description": "Operations allowed on a workflow"
      },
      "WorkflowRules": {
        "type": "object",
        "properties": {
          "conditionsTree": {
            "$ref": "#/components/schemas/WorkflowCondition"
          },
          "validators": {
            "type": "array",
            "description": "The workflow validators.",
            "items": {
              "$ref": "#/components/schemas/WorkflowTransitionRule"
            }
          },
          "postFunctions": {
            "type": "array",
            "description": "The workflow post functions.",
            "items": {
              "$ref": "#/components/schemas/WorkflowTransitionRule"
            }
          }
        },
        "additionalProperties": false,
        "description": "A collection of transition rules."
      },
      "WorkflowSchemeIdName": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the workflow scheme."
          },
          "name": {
            "type": "string",
            "description": "The name of the workflow scheme."
          }
        },
        "additionalProperties": false,
        "description": "The ID and the name of the workflow scheme."
      },
      "WorkflowSimpleCondition": {
        "required": [
          "nodeType",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of the transition rule."
          },
          "configuration": {
            "type": "object",
            "description": "EXPERIMENTAL. The configuration of the transition rule."
          },
          "nodeType": {
            "type": "string"
          }
        },
        "description": "A workflow transition rule condition. This object returns `nodeType` as `simple`."
      },
      "WorkflowStatus": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the issue status."
          },
          "name": {
            "type": "string",
            "description": "The name of the status in the workflow."
          },
          "properties": {
            "type": "object",
            "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."
          }
        },
        "additionalProperties": false,
        "description": "Details of a workflow status."
      },
      "WorkflowTransitionRule": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of the transition rule."
          },
          "configuration": {
            "description": "EXPERIMENTAL. The configuration of the transition rule."
          }
        },
        "additionalProperties": false,
        "description": "A workflow transition rule."
      },
      "ConnectWorkflowTransitionRule": {
        "required": [
          "configuration",
          "id",
          "key"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the transition rule."
          },
          "key": {
            "type": "string",
            "description": "The key of the rule, as defined in the Connect app descriptor.",
            "readOnly": true
          },
          "configuration": {
            "$ref": "#/components/schemas/RuleConfiguration"
          },
          "transition": {
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/WorkflowTransition"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "A workflow transition rule."
      },
      "PageBeanWorkflowTransitionRules": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/WorkflowTransitionRules"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "RuleConfiguration": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "Configuration of the rule, as it is stored by the Connect app on the rule configuration page."
          },
          "disabled": {
            "type": "boolean",
            "description": "EXPERIMENTAL: Whether the rule is disabled.",
            "default": false
          },
          "tag": {
            "maxLength": 255,
            "type": "string",
            "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)."
          }
        },
        "additionalProperties": false,
        "description": "A rule configuration."
      },
      "WorkflowId": {
        "required": [
          "draft",
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the workflow."
          },
          "draft": {
            "type": "boolean",
            "description": "Whether the workflow is in the draft state."
          }
        },
        "additionalProperties": false,
        "description": "Properties that identify a workflow."
      },
      "WorkflowTransition": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The transition ID.",
            "format": "int32"
          },
          "name": {
            "type": "string",
            "description": "The transition name."
          }
        },
        "additionalProperties": false,
        "description": "A workflow transition."
      },
      "WorkflowTransitionRules": {
        "required": [
          "workflowId"
        ],
        "type": "object",
        "properties": {
          "workflowId": {
            "$ref": "#/components/schemas/WorkflowId"
          },
          "postFunctions": {
            "type": "array",
            "description": "The list of post functions within the workflow.",
            "items": {
              "$ref": "#/components/schemas/ConnectWorkflowTransitionRule"
            }
          },
          "conditions": {
            "type": "array",
            "description": "The list of conditions within the workflow.",
            "items": {
              "$ref": "#/components/schemas/ConnectWorkflowTransitionRule"
            }
          },
          "validators": {
            "type": "array",
            "description": "The list of validators within the workflow.",
            "items": {
              "$ref": "#/components/schemas/ConnectWorkflowTransitionRule"
            }
          }
        },
        "additionalProperties": false,
        "description": "A workflow with transition rules."
      },
      "WorkflowTransitionRulesUpdate": {
        "required": [
          "workflows"
        ],
        "type": "object",
        "properties": {
          "workflows": {
            "type": "array",
            "description": "The list of workflows with transition rules to update.",
            "items": {
              "$ref": "#/components/schemas/WorkflowTransitionRules"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about a workflow configuration update request."
      },
      "WorkflowTransitionRulesUpdateErrorDetails": {
        "required": [
          "ruleUpdateErrors",
          "updateErrors",
          "workflowId"
        ],
        "type": "object",
        "properties": {
          "workflowId": {
            "$ref": "#/components/schemas/WorkflowId"
          },
          "ruleUpdateErrors": {
            "type": "object",
            "additionalProperties": {
              "uniqueItems": true,
              "type": "array",
              "description": "A list of transition rule update errors, indexed by the transition rule ID. Any transition rule that appears here wasn't updated.",
              "items": {
                "type": "string",
                "description": "A list of transition rule update errors, indexed by the transition rule ID. Any transition rule that appears here wasn't updated."
              }
            },
            "description": "A list of transition rule update errors, indexed by the transition rule ID. Any transition rule that appears here wasn't updated."
          },
          "updateErrors": {
            "uniqueItems": true,
            "type": "array",
            "description": "The list of errors that specify why the workflow update failed. The workflow was not updated if the list contains any entries.",
            "items": {
              "type": "string",
              "description": "An error specifying why the workflow update failed."
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of any errors encountered while updating workflow transition rules for a workflow."
      },
      "WorkflowTransitionRulesUpdateErrors": {
        "required": [
          "updateResults"
        ],
        "type": "object",
        "properties": {
          "updateResults": {
            "type": "array",
            "description": "A list of workflows.",
            "items": {
              "$ref": "#/components/schemas/WorkflowTransitionRulesUpdateErrorDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of any errors encountered while updating workflow transition rules."
      },
      "WorkflowTransitionRulesDetails": {
        "required": [
          "workflowId",
          "workflowRuleIds"
        ],
        "type": "object",
        "properties": {
          "workflowId": {
            "$ref": "#/components/schemas/WorkflowId"
          },
          "workflowRuleIds": {
            "uniqueItems": true,
            "type": "array",
            "description": "The list of connect workflow rule IDs.",
            "items": {
              "type": "string",
              "description": "The list of connect workflow rule IDs."
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about a workflow configuration update request."
      },
      "WorkflowsWithTransitionRulesDetails": {
        "required": [
          "workflows"
        ],
        "type": "object",
        "properties": {
          "workflows": {
            "type": "array",
            "description": "The list of workflows with transition rules to delete.",
            "items": {
              "$ref": "#/components/schemas/WorkflowTransitionRulesDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of workflows and their transition rules to delete."
      },
      "IssueTypeDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of these issue type details.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the issue type.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type.",
            "readOnly": true
          },
          "iconUrl": {
            "type": "string",
            "description": "The URL of the issue type's avatar.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the issue type.",
            "readOnly": true
          },
          "untranslatedName": {
            "type": "string",
            "description": "The untranslatedName of the issue type.",
            "readOnly": true
          },
          "subtask": {
            "type": "boolean",
            "description": "Whether this issue type is used to create subtasks.",
            "readOnly": true
          },
          "avatarId": {
            "type": "integer",
            "description": "The ID of the issue type's avatar.",
            "format": "int64",
            "readOnly": true
          },
          "entityId": {
            "type": "string",
            "description": "Unique ID for next-gen projects.",
            "format": "uuid",
            "readOnly": true
          },
          "hierarchyLevel": {
            "type": "integer",
            "description": "Hierarchy level of the issue type.",
            "format": "int32",
            "readOnly": true
          },
          "scope": {
            "description": "Details of the next-gen projects the issue type is available in.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about an issue type."
      },
      "ListWrapperCallbackApplicationRole": {
        "type": "object",
        "additionalProperties": false
      },
      "ListWrapperCallbackGroupName": {
        "type": "object",
        "additionalProperties": false
      },
      "PageBeanWorkflowScheme": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/WorkflowScheme"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "SimpleListWrapperApplicationRole": {
        "type": "object",
        "properties": {
          "size": {
            "type": "integer",
            "format": "int32",
            "xml": {
              "attribute": true
            }
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/ApplicationRole"
            }
          },
          "pagingCallback": {
            "$ref": "#/components/schemas/ListWrapperCallbackApplicationRole"
          },
          "callback": {
            "$ref": "#/components/schemas/ListWrapperCallbackApplicationRole"
          },
          "max-results": {
            "type": "integer",
            "format": "int32",
            "xml": {
              "name": "max-results",
              "attribute": true
            }
          }
        },
        "additionalProperties": false,
        "xml": {
          "name": "list"
        }
      },
      "SimpleListWrapperGroupName": {
        "type": "object",
        "properties": {
          "size": {
            "type": "integer",
            "format": "int32",
            "xml": {
              "attribute": true
            }
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GroupName"
            }
          },
          "pagingCallback": {
            "$ref": "#/components/schemas/ListWrapperCallbackGroupName"
          },
          "callback": {
            "$ref": "#/components/schemas/ListWrapperCallbackGroupName"
          },
          "max-results": {
            "type": "integer",
            "format": "int32",
            "xml": {
              "name": "max-results",
              "attribute": true
            }
          }
        },
        "additionalProperties": false,
        "xml": {
          "name": "list"
        }
      },
      "User": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the user.",
            "format": "uri",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "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."
          },
          "accountId": {
            "maxLength": 128,
            "type": "string",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*. Required in requests."
          },
          "accountType": {
            "type": "string",
            "description": "The user account type. Can take the following values:\n\n *  `atlassian` regular Atlassian user account\n *  `app` system account used for Connect applications and OAuth to represent external systems\n *  `customer` Jira Service Desk account representing an external service desk",
            "readOnly": true,
            "enum": [
              "atlassian",
              "app",
              "customer",
              "unknown"
            ]
          },
          "name": {
            "type": "string",
            "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."
          },
          "emailAddress": {
            "type": "string",
            "description": "The email address of the user. Depending on the user’s privacy setting, this may be returned as null.",
            "readOnly": true
          },
          "avatarUrls": {
            "description": "The avatars of the user.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/AvatarUrlsBean"
              }
            ]
          },
          "displayName": {
            "type": "string",
            "description": "The display name of the user. Depending on the user’s privacy setting, this may return an alternative value.",
            "readOnly": true
          },
          "active": {
            "type": "boolean",
            "description": "Whether the user is active.",
            "readOnly": true
          },
          "timeZone": {
            "type": "string",
            "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
          },
          "locale": {
            "type": "string",
            "description": "The locale of the user. Depending on the user’s privacy setting, this may be returned as null.",
            "readOnly": true
          },
          "groups": {
            "description": "The groups that the user belongs to.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/SimpleListWrapperGroupName"
              }
            ]
          },
          "applicationRoles": {
            "description": "The application roles the user is assigned to.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/SimpleListWrapperApplicationRole"
              }
            ]
          },
          "expand": {
            "type": "string",
            "description": "Expand options that include additional user details in the response.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          }
        },
        "additionalProperties": false,
        "description": "A user with details as permitted by the user's Atlassian Account privacy settings. However, be aware of these exceptions:\n\n *  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).\n *  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.\n *  User record unavailable: This usually occurs due to an internal service outage. In this case, all parameters have fallback values.",
        "xml": {
          "name": "user"
        }
      },
      "WorkflowScheme": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the workflow scheme.",
            "format": "int64",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the workflow scheme. The name must be unique. The maximum length is 255 characters. Required when creating a workflow scheme."
          },
          "description": {
            "type": "string",
            "description": "The description of the workflow scheme."
          },
          "defaultWorkflow": {
            "type": "string",
            "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)*."
          },
          "issueTypeMappings": {
            "type": "object",
            "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."
          },
          "originalDefaultWorkflow": {
            "type": "string",
            "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
          },
          "originalIssueTypeMappings": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "readOnly": true
            },
            "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
          },
          "draft": {
            "type": "boolean",
            "description": "Whether the workflow scheme is a draft or not.",
            "readOnly": true
          },
          "lastModifiedUser": {
            "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,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "lastModified": {
            "type": "string",
            "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
          },
          "self": {
            "type": "string",
            "format": "uri",
            "readOnly": true
          },
          "updateDraftIfNeeded": {
            "type": "boolean",
            "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:\n\n *  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.\n *  Update an active workflow scheme with `updateDraftIfNeeded` set to `false`: An error is returned, as active workflow schemes cannot be updated.\n *  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.\n\nDefaults to `false`."
          },
          "issueTypes": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/IssueTypeDetails"
            },
            "description": "The issue types available in Jira.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details about a workflow scheme."
      },
      "IssueTypesWorkflowMapping": {
        "type": "object",
        "properties": {
          "workflow": {
            "type": "string",
            "description": "The name of the workflow. Optional if updating the workflow-issue types mapping."
          },
          "issueTypes": {
            "type": "array",
            "description": "The list of issue type IDs.",
            "items": {
              "type": "string"
            }
          },
          "defaultMapping": {
            "type": "boolean",
            "description": "Whether the workflow is the default workflow for the workflow scheme."
          },
          "updateDraftIfNeeded": {
            "type": "boolean",
            "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`."
          }
        },
        "additionalProperties": false,
        "description": "Details about the mapping between issue types and a workflow."
      },
      "IssueTypeWorkflowMapping": {
        "type": "object",
        "properties": {
          "issueType": {
            "type": "string",
            "description": "The ID of the issue type. Not required if updating the issue type-workflow mapping."
          },
          "workflow": {
            "type": "string",
            "description": "The name of the workflow."
          },
          "updateDraftIfNeeded": {
            "type": "boolean",
            "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."
          }
        },
        "additionalProperties": false,
        "description": "Details about the mapping between an issue type and a workflow."
      },
      "DefaultWorkflow": {
        "required": [
          "workflow"
        ],
        "type": "object",
        "properties": {
          "workflow": {
            "type": "string",
            "description": "The name of the workflow to set as the default workflow."
          },
          "updateDraftIfNeeded": {
            "type": "boolean",
            "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`."
          }
        },
        "additionalProperties": false,
        "description": "Details about the default workflow."
      },
      "PublishDraftWorkflowScheme": {
        "type": "object",
        "properties": {
          "statusMappings": {
            "uniqueItems": true,
            "type": "array",
            "description": "Mappings of statuses to new statuses for issue types.",
            "items": {
              "$ref": "#/components/schemas/StatusMapping"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about the status mappings for publishing a draft workflow scheme."
      },
      "StatusMapping": {
        "required": [
          "issueTypeId",
          "newStatusId",
          "statusId"
        ],
        "type": "object",
        "properties": {
          "issueTypeId": {
            "type": "string",
            "description": "The ID of the issue type."
          },
          "statusId": {
            "type": "string",
            "description": "The ID of the status."
          },
          "newStatusId": {
            "type": "string",
            "description": "The ID of the new status."
          }
        },
        "additionalProperties": false,
        "description": "Details about the mapping from a status to a new status for an issue type."
      },
      "TaskProgressBeanObject": {
        "required": [
          "elapsedRuntime",
          "id",
          "lastUpdate",
          "progress",
          "self",
          "status",
          "submitted",
          "submittedBy"
        ],
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the task.",
            "format": "uri"
          },
          "id": {
            "type": "string",
            "description": "The ID of the task."
          },
          "description": {
            "type": "string",
            "description": "The description of the task."
          },
          "status": {
            "type": "string",
            "description": "The status of the task.",
            "enum": [
              "ENQUEUED",
              "RUNNING",
              "COMPLETE",
              "FAILED",
              "CANCEL_REQUESTED",
              "CANCELLED",
              "DEAD"
            ]
          },
          "message": {
            "type": "string",
            "description": "Information about the progress of the task."
          },
          "result": {
            "description": "The result of the task execution."
          },
          "submittedBy": {
            "type": "integer",
            "description": "The ID of the user who submitted the task.",
            "format": "int64"
          },
          "progress": {
            "type": "integer",
            "description": "The progress of the task, as a percentage complete.",
            "format": "int64"
          },
          "elapsedRuntime": {
            "type": "integer",
            "description": "The execution time of the task, in milliseconds.",
            "format": "int64"
          },
          "submitted": {
            "type": "integer",
            "description": "A timestamp recording when the task was submitted.",
            "format": "int64"
          },
          "started": {
            "type": "integer",
            "description": "A timestamp recording when the task was started.",
            "format": "int64"
          },
          "finished": {
            "type": "integer",
            "description": "A timestamp recording when the task was finished.",
            "format": "int64"
          },
          "lastUpdate": {
            "type": "integer",
            "description": "A timestamp recording when the task progress was last updated.",
            "format": "int64"
          }
        },
        "additionalProperties": false,
        "description": "Details about a task."
      },
      "ContainerOfWorkflowSchemeAssociations": {
        "required": [
          "values"
        ],
        "type": "object",
        "properties": {
          "values": {
            "type": "array",
            "description": "A list of workflow schemes together with projects they are associated with.",
            "items": {
              "$ref": "#/components/schemas/WorkflowSchemeAssociations"
            }
          }
        },
        "additionalProperties": false,
        "description": "A container for a list of workflow schemes together with the projects they are associated with."
      },
      "WorkflowSchemeAssociations": {
        "required": [
          "projectIds",
          "workflowScheme"
        ],
        "type": "object",
        "properties": {
          "projectIds": {
            "type": "array",
            "description": "The list of projects that use the workflow scheme.",
            "items": {
              "type": "string"
            }
          },
          "workflowScheme": {
            "description": "The workflow scheme.",
            "allOf": [
              {
                "$ref": "#/components/schemas/WorkflowScheme"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "A workflow scheme along with a list of projects that use it."
      },
      "WorkflowSchemeProjectAssociation": {
        "required": [
          "projectId"
        ],
        "type": "object",
        "properties": {
          "workflowSchemeId": {
            "type": "string",
            "description": "The ID of the workflow scheme. If the workflow scheme ID is `null`, the operation assigns the default workflow scheme."
          },
          "projectId": {
            "type": "string",
            "description": "The ID of the project."
          }
        },
        "additionalProperties": false,
        "description": "An associated workflow scheme and project."
      },
      "TimeTrackingProvider": {
        "required": [
          "key"
        ],
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "The key for the time tracking provider. For example, *JIRA*."
          },
          "name": {
            "type": "string",
            "description": "The name of the time tracking provider. For example, *JIRA provided time tracking*."
          },
          "url": {
            "type": "string",
            "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
          }
        },
        "additionalProperties": false,
        "description": "Details about the time tracking provider."
      },
      "JiraStatus": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the status."
          },
          "name": {
            "type": "string",
            "description": "The name of the status."
          },
          "statusCategory": {
            "type": "string",
            "description": "The category of the status.",
            "enum": [
              "TODO",
              "IN_PROGRESS",
              "DONE"
            ]
          },
          "scope": {
            "$ref": "#/components/schemas/StatusScope"
          },
          "description": {
            "type": "string",
            "description": "The description of the status."
          },
          "usages": {
            "uniqueItems": true,
            "type": "array",
            "description": "Projects and issue types where the status is used. Only available if the `usages` expand is requested.",
            "items": {
              "$ref": "#/components/schemas/ProjectIssueTypes"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of a status."
      },
      "ProjectId": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the project."
          }
        },
        "additionalProperties": false,
        "description": "Project ID details."
      },
      "ProjectIssueTypes": {
        "type": "object",
        "properties": {
          "project": {
            "$ref": "#/components/schemas/ProjectId"
          },
          "issueTypes": {
            "uniqueItems": true,
            "type": "array",
            "description": "IDs of the issue types",
            "items": {
              "type": "string",
              "description": "IDs of the issue types"
            }
          }
        },
        "additionalProperties": false,
        "description": "Projects and issue types where the status is used. Only available if the `usages` expand is requested."
      },
      "StatusScope": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The scope of the status. `GLOBAL` for company-managed projects and `PROJECT` for team-managed projects.",
            "enum": [
              "PROJECT",
              "GLOBAL"
            ]
          },
          "project": {
            "$ref": "#/components/schemas/ProjectId"
          }
        },
        "additionalProperties": false,
        "description": "The scope of the status."
      },
      "PageOfStatuses": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned on the page.",
            "format": "int64"
          },
          "total": {
            "type": "integer",
            "description": "Number of items that satisfy the search.",
            "format": "int64"
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page."
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32"
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "items": {
              "$ref": "#/components/schemas/JiraStatus"
            }
          },
          "self": {
            "type": "string",
            "description": "The URL of this page."
          },
          "nextPage": {
            "type": "string",
            "description": "The URL of the next page of results, if any."
          }
        },
        "additionalProperties": false
      },
      "StatusCreate": {
        "required": [
          "name",
          "statusCategory"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 255,
            "type": "string",
            "description": "The name of the status."
          },
          "statusCategory": {
            "type": "string",
            "description": "The category of the status.",
            "enum": [
              "TODO",
              "IN_PROGRESS",
              "DONE"
            ]
          },
          "description": {
            "type": "string",
            "description": "The description of the status."
          }
        },
        "additionalProperties": false,
        "description": "Details of the status being created."
      },
      "StatusCreateRequest": {
        "required": [
          "scope",
          "statuses"
        ],
        "type": "object",
        "properties": {
          "statuses": {
            "type": "array",
            "description": "Details of the statuses being created.",
            "items": {
              "$ref": "#/components/schemas/StatusCreate"
            }
          },
          "scope": {
            "$ref": "#/components/schemas/StatusScope"
          }
        },
        "additionalProperties": false,
        "description": "Details of the statuses being created and their scope."
      },
      "StatusUpdate": {
        "required": [
          "id",
          "name",
          "statusCategory"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the status."
          },
          "name": {
            "type": "string",
            "description": "The name of the status."
          },
          "statusCategory": {
            "type": "string",
            "description": "The category of the status.",
            "enum": [
              "TODO",
              "IN_PROGRESS",
              "DONE"
            ]
          },
          "description": {
            "type": "string",
            "description": "The description of the status."
          }
        },
        "additionalProperties": false,
        "description": "Details of the status being updated."
      },
      "StatusUpdateRequest": {
        "type": "object",
        "properties": {
          "statuses": {
            "type": "array",
            "description": "The list of statuses that will be updated.",
            "items": {
              "$ref": "#/components/schemas/StatusUpdate"
            }
          }
        },
        "additionalProperties": false,
        "description": "The list of statuses that will be updated."
      },
      "PageBeanUser": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/User"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "UserMigrationBean": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string"
          },
          "username": {
            "type": "string"
          },
          "accountId": {
            "type": "string"
          }
        },
        "additionalProperties": false
      },
      "UnrestrictedUserEmail": {
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The accountId of the user"
          },
          "email": {
            "type": "string",
            "description": "The email of the user"
          }
        },
        "additionalProperties": true
      },
      "PageBeanUserKey": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/UserKey"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "UserKey": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "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."
          },
          "accountId": {
            "maxLength": 128,
            "type": "string",
            "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."
          }
        },
        "additionalProperties": false,
        "description": "List of user account IDs."
      },
      "ChangeDetails": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string",
            "description": "The name of the field changed.",
            "readOnly": true
          },
          "fieldtype": {
            "type": "string",
            "description": "The type of the field changed.",
            "readOnly": true
          },
          "fieldId": {
            "type": "string",
            "description": "The ID of the field changed.",
            "readOnly": true
          },
          "from": {
            "type": "string",
            "description": "The details of the original value.",
            "readOnly": true
          },
          "fromString": {
            "type": "string",
            "description": "The details of the original value as a string.",
            "readOnly": true
          },
          "to": {
            "type": "string",
            "description": "The details of the new value.",
            "readOnly": true
          },
          "toString": {
            "type": "string",
            "description": "The details of the new value as a string.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "A change item."
      },
      "Changelog": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the changelog.",
            "readOnly": true
          },
          "author": {
            "description": "The user who made the change.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDetails"
              }
            ]
          },
          "created": {
            "type": "string",
            "description": "The date on which the change took place.",
            "format": "date-time",
            "readOnly": true
          },
          "items": {
            "type": "array",
            "description": "The list of items changed.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ChangeDetails"
            }
          },
          "historyMetadata": {
            "description": "The history metadata associated with the changed.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/HistoryMetadata"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "A changelog."
      },
      "FieldMetadata": {
        "required": [
          "key",
          "name",
          "operations",
          "required",
          "schema"
        ],
        "type": "object",
        "properties": {
          "required": {
            "type": "boolean",
            "description": "Whether the field is required.",
            "readOnly": true
          },
          "schema": {
            "description": "The data type of the field.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/JsonTypeBean"
              }
            ]
          },
          "name": {
            "type": "string",
            "description": "The name of the field.",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "description": "The key of the field.",
            "readOnly": true
          },
          "autoCompleteUrl": {
            "type": "string",
            "description": "The URL that can be used to automatically complete the field.",
            "readOnly": true
          },
          "hasDefaultValue": {
            "type": "boolean",
            "description": "Whether the field has a default value.",
            "readOnly": true
          },
          "operations": {
            "type": "array",
            "description": "The list of operations that can be performed on the field.",
            "readOnly": true,
            "items": {
              "type": "string",
              "readOnly": true
            }
          },
          "allowedValues": {
            "type": "array",
            "description": "The list of values allowed in the field.",
            "readOnly": true,
            "items": {
              "readOnly": true
            }
          },
          "defaultValue": {
            "description": "The default value of the field.",
            "readOnly": true
          },
          "configuration": {
            "type": "object",
            "additionalProperties": {
              "readOnly": true
            },
            "description": "The configuration properties.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The metadata describing an issue field.",
        "xml": {
          "name": "availableField"
        }
      },
      "HistoryMetadata": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of the history record."
          },
          "description": {
            "type": "string",
            "description": "The description of the history record."
          },
          "descriptionKey": {
            "type": "string",
            "description": "The description key of the history record."
          },
          "activityDescription": {
            "type": "string",
            "description": "The activity described in the history record."
          },
          "activityDescriptionKey": {
            "type": "string",
            "description": "The key of the activity described in the history record."
          },
          "emailDescription": {
            "type": "string",
            "description": "The description of the email address associated the history record."
          },
          "emailDescriptionKey": {
            "type": "string",
            "description": "The description key of the email address associated the history record."
          },
          "actor": {
            "description": "Details of the user whose action created the history record.",
            "allOf": [
              {
                "$ref": "#/components/schemas/HistoryMetadataParticipant"
              }
            ]
          },
          "generator": {
            "description": "Details of the system that generated the history record.",
            "allOf": [
              {
                "$ref": "#/components/schemas/HistoryMetadataParticipant"
              }
            ]
          },
          "cause": {
            "description": "Details of the cause that triggered the creation the history record.",
            "allOf": [
              {
                "$ref": "#/components/schemas/HistoryMetadataParticipant"
              }
            ]
          },
          "extraData": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            },
            "description": "Additional arbitrary information about the history record."
          }
        },
        "additionalProperties": true,
        "description": "Details of issue history metadata."
      },
      "HistoryMetadataParticipant": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the user or system associated with a history record."
          },
          "displayName": {
            "type": "string",
            "description": "The display name of the user or system associated with a history record."
          },
          "displayNameKey": {
            "type": "string",
            "description": "The key of the display name of the user or system associated with a history record."
          },
          "type": {
            "type": "string",
            "description": "The type of the user or system associated with a history record."
          },
          "avatarUrl": {
            "type": "string",
            "description": "The URL to an avatar for the user or system associated with a history record."
          },
          "url": {
            "type": "string",
            "description": "The URL of the user or system associated with a history record."
          }
        },
        "additionalProperties": true,
        "description": "Details of user or system associated with a issue history metadata item."
      },
      "IncludedFields": {
        "type": "object",
        "properties": {
          "excluded": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "actuallyIncluded": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "included": {
            "uniqueItems": true,
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "IssueBean": {
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Expand options that include additional issue details in the response.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "id": {
            "type": "string",
            "description": "The ID of the issue.",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of the issue details.",
            "format": "uri",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "description": "The key of the issue.",
            "readOnly": true
          },
          "renderedFields": {
            "type": "object",
            "additionalProperties": {
              "readOnly": true
            },
            "description": "The rendered value of each field present on the issue.",
            "readOnly": true
          },
          "properties": {
            "type": "object",
            "additionalProperties": {
              "readOnly": true
            },
            "description": "Details of the issue properties identified in the request.",
            "readOnly": true
          },
          "names": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "readOnly": true
            },
            "description": "The ID and name of each field present on the issue.",
            "readOnly": true
          },
          "schema": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/JsonTypeBean"
            },
            "description": "The schema describing each field present on the issue.",
            "readOnly": true
          },
          "transitions": {
            "type": "array",
            "description": "The transitions that can be performed on the issue.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTransition"
            }
          },
          "operations": {
            "description": "The operations that can be performed on the issue.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/Operations"
              }
            ]
          },
          "editmeta": {
            "description": "The metadata for the fields on the issue that can be amended.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/IssueUpdateMetadata"
              }
            ]
          },
          "changelog": {
            "description": "Details of changelogs associated with the issue.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/PageOfChangelogs"
              }
            ]
          },
          "versionedRepresentations": {
            "type": "object",
            "additionalProperties": {
              "type": "object",
              "additionalProperties": {
                "readOnly": true
              },
              "readOnly": true
            },
            "description": "The versions of each field on the issue.",
            "readOnly": true
          },
          "fieldsToInclude": {
            "$ref": "#/components/schemas/IncludedFields"
          },
          "fields": {
            "type": "object",
            "additionalProperties": {}
          }
        },
        "additionalProperties": false,
        "description": "Details about an issue.",
        "xml": {
          "name": "issue"
        }
      },
      "IssueTransition": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the issue transition. Required when specifying a transition to undertake."
          },
          "name": {
            "type": "string",
            "description": "The name of the issue transition.",
            "readOnly": true
          },
          "to": {
            "description": "Details of the issue status after the transition.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/StatusDetails"
              }
            ]
          },
          "hasScreen": {
            "type": "boolean",
            "description": "Whether there is a screen associated with the issue transition.",
            "readOnly": true
          },
          "isGlobal": {
            "type": "boolean",
            "description": "Whether the issue transition is global, that is, the transition is applied to issues regardless of their status.",
            "readOnly": true
          },
          "isInitial": {
            "type": "boolean",
            "description": "Whether this is the initial issue transition for the workflow.",
            "readOnly": true
          },
          "isAvailable": {
            "type": "boolean",
            "description": "Whether the transition is available to be performed.",
            "readOnly": true
          },
          "isConditional": {
            "type": "boolean",
            "description": "Whether the issue has to meet criteria before the issue transition is applied.",
            "readOnly": true
          },
          "fields": {
            "type": "object",
            "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
          },
          "expand": {
            "type": "string",
            "description": "Expand options that include additional transition details in the response.",
            "readOnly": true
          },
          "looped": {
            "type": "boolean"
          }
        },
        "additionalProperties": true,
        "description": "Details of an issue transition."
      },
      "IssueUpdateMetadata": {
        "type": "object",
        "properties": {
          "fields": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/FieldMetadata"
            },
            "description": "A list of editable field details.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "A list of editable field details."
      },
      "JsonTypeBean": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The data type of the field.",
            "readOnly": true
          },
          "items": {
            "type": "string",
            "description": "When the data type is an array, the name of the field items within the array.",
            "readOnly": true
          },
          "system": {
            "type": "string",
            "description": "If the field is a system field, the name of the field.",
            "readOnly": true
          },
          "custom": {
            "type": "string",
            "description": "If the field is a custom field, the URI of the field.",
            "readOnly": true
          },
          "customId": {
            "type": "integer",
            "description": "If the field is a custom field, the custom ID of the field.",
            "format": "int64",
            "readOnly": true
          },
          "configuration": {
            "type": "object",
            "additionalProperties": {
              "readOnly": true
            },
            "description": "If the field is a custom field, the configuration of the field.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The schema of a field."
      },
      "LinkGroup": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "styleClass": {
            "type": "string"
          },
          "header": {
            "$ref": "#/components/schemas/SimpleLink"
          },
          "weight": {
            "type": "integer",
            "format": "int32"
          },
          "links": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SimpleLink"
            }
          },
          "groups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/LinkGroup"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details a link group, which defines issue operations."
      },
      "Operations": {
        "type": "object",
        "properties": {
          "linkGroups": {
            "type": "array",
            "description": "Details of the link groups defining issue operations.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/LinkGroup"
            }
          }
        },
        "additionalProperties": true,
        "description": "Details of the operations that can be performed on the issue."
      },
      "PageOfChangelogs": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned on the page.",
            "format": "int32",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of results that could be on the page.",
            "format": "int32",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of results on the page.",
            "format": "int32",
            "readOnly": true
          },
          "histories": {
            "type": "array",
            "description": "The list of changelogs.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Changelog"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of changelogs."
      },
      "SearchResults": {
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Expand options that include additional search result details in the response.",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned on the page.",
            "format": "int32",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of results that could be on the page.",
            "format": "int32",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of results on the page.",
            "format": "int32",
            "readOnly": true
          },
          "issues": {
            "type": "array",
            "description": "The list of issues found by the search.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueBean"
            }
          },
          "warningMessages": {
            "type": "array",
            "description": "Any warnings related to the JQL query.",
            "readOnly": true,
            "items": {
              "type": "string",
              "readOnly": true
            }
          },
          "names": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "readOnly": true
            },
            "description": "The ID and name of each field in the search results.",
            "readOnly": true
          },
          "schema": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/JsonTypeBean"
            },
            "description": "The schema describing the field types in the search results.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The result of a JQL search."
      },
      "SimpleLink": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "styleClass": {
            "type": "string"
          },
          "iconClass": {
            "type": "string"
          },
          "label": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "href": {
            "type": "string"
          },
          "weight": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Details about the operations available in this version.",
        "xml": {
          "name": "link"
        }
      },
      "StatusCategory": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the status category.",
            "readOnly": true
          },
          "id": {
            "type": "integer",
            "description": "The ID of the status category.",
            "format": "int64",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "description": "The key of the status category.",
            "readOnly": true
          },
          "colorName": {
            "type": "string",
            "description": "The name of the color used to represent the status category.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the status category.",
            "readOnly": true
          }
        },
        "additionalProperties": true,
        "description": "A status category."
      },
      "StatusDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the status.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the status.",
            "readOnly": true
          },
          "iconUrl": {
            "type": "string",
            "description": "The URL of the icon used to represent the status.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the status.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the status.",
            "readOnly": true
          },
          "statusCategory": {
            "description": "The category assigned to the status.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/StatusCategory"
              }
            ]
          }
        },
        "additionalProperties": true,
        "description": "A status."
      },
      "UserDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the user.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "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
          },
          "key": {
            "type": "string",
            "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
          },
          "accountId": {
            "maxLength": 128,
            "type": "string",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*."
          },
          "emailAddress": {
            "type": "string",
            "description": "The email address of the user. Depending on the user’s privacy settings, this may be returned as null.",
            "readOnly": true
          },
          "avatarUrls": {
            "description": "The avatars of the user.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/AvatarUrlsBean"
              }
            ]
          },
          "displayName": {
            "type": "string",
            "description": "The display name of the user. Depending on the user’s privacy settings, this may return an alternative value.",
            "readOnly": true
          },
          "active": {
            "type": "boolean",
            "description": "Whether the user is active.",
            "readOnly": true
          },
          "timeZone": {
            "type": "string",
            "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
          },
          "accountType": {
            "type": "string",
            "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
          }
        },
        "additionalProperties": false,
        "description": "User details permitted by the user's Atlassian Account privacy settings. However, be aware of these exceptions:\n\n *  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).\n *  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.\n *  User record unavailable: This usually occurs due to an internal service outage. In this case, all parameters have fallback values."
      },
      "SearchRequestBean": {
        "type": "object",
        "properties": {
          "jql": {
            "type": "string",
            "description": "A [JQL](https://confluence.atlassian.com/x/egORLQ) expression."
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item to return in the page of results (page offset). The base index is `0`.",
            "format": "int32"
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items to return per page.",
            "format": "int32",
            "default": 50
          },
          "fields": {
            "type": "array",
            "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:\n\n *  `*all` Returns all fields.\n *  `*navigable` Returns navigable fields.\n *  Any issue field, prefixed with a minus to exclude.\n\nThe default is `*navigable`.\n\nExamples:\n\n *  `summary,comment` Returns the summary and comments fields only.\n *  `-description` Returns all navigable (default) fields except description.\n *  `*all,-comment` Returns all fields except comments.\n\nMultiple `fields` parameters can be included in a request.\n\nNote: 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"
            }
          },
          "validateQuery": {
            "type": "string",
            "description": "Determines how to validate the JQL query and treat the validation results. Supported values:\n\n *  `strict` Returns a 400 response code if any errors are found, along with a list of all errors (and warnings).\n *  `warn` Returns all errors as warnings.\n *  `none` No validation is performed.\n *  `true` *Deprecated* A legacy synonym for `strict`.\n *  `false` *Deprecated* A legacy synonym for `warn`.\n\nThe default is `strict`.\n\nNote: If the JQL is not correctly formed a 400 response code is returned, regardless of the `validateQuery` value.",
            "enum": [
              "strict",
              "warn",
              "none",
              "true",
              "false"
            ]
          },
          "expand": {
            "type": "array",
            "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:\n\n *  `renderedFields` Returns field values rendered in HTML format.\n *  `names` Returns the display name of each field.\n *  `schema` Returns the schema describing a field type.\n *  `transitions` Returns all possible transitions for the issue.\n *  `operations` Returns all possible operations for the issue.\n *  `editmeta` Returns information about how each field can be edited.\n *  `changelog` Returns a list of recent updates to an issue, sorted by date, starting from the most recent.\n *  `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"
            }
          },
          "properties": {
            "type": "array",
            "description": "A list of up to 5 issue properties to include in the results. This parameter accepts a comma-separated list.",
            "items": {
              "type": "string"
            }
          },
          "fieldsByKeys": {
            "type": "boolean",
            "description": "Reference fields by their key (rather than ID). The default is `false`."
          }
        },
        "additionalProperties": false
      },
      "FieldReferenceData": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The field identifier."
          },
          "displayName": {
            "type": "string",
            "description": "The display name contains the following:\n\n *  for system fields, the field name. For example, `Summary`.\n *  for collapsed custom fields, the field name followed by a hyphen and then the field name and field type. For example, `Component - Component[Dropdown]`.\n *  for other custom fields, the field name followed by a hyphen and then the custom field ID. For example, `Component - cf[10061]`."
          },
          "orderable": {
            "type": "string",
            "description": "Whether the field can be used in a query's `ORDER BY` clause.",
            "enum": [
              "true",
              "false"
            ]
          },
          "searchable": {
            "type": "string",
            "description": "Whether the content of this field can be searched.",
            "enum": [
              "true",
              "false"
            ]
          },
          "deprecated": {
            "type": "string",
            "description": "Whether this field has been deprecated.",
            "enum": [
              "true",
              "false"
            ]
          },
          "deprecatedSearcherKey": {
            "type": "string",
            "description": "The searcher key of the field, only passed when the field is deprecated."
          },
          "auto": {
            "type": "string",
            "description": "Whether the field provide auto-complete suggestions.",
            "enum": [
              "true",
              "false"
            ]
          },
          "cfid": {
            "type": "string",
            "description": "If the item is a custom field, the ID of the custom field."
          },
          "operators": {
            "type": "array",
            "description": "The valid search operators for the field.",
            "items": {
              "type": "string"
            }
          },
          "types": {
            "type": "array",
            "description": "The data types of items in the field.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of a field that can be used in advanced searches."
      },
      "FunctionReferenceData": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The function identifier."
          },
          "displayName": {
            "type": "string",
            "description": "The display name of the function."
          },
          "isList": {
            "type": "string",
            "description": "Whether the function can take a list of arguments.",
            "enum": [
              "true",
              "false"
            ]
          },
          "types": {
            "type": "array",
            "description": "The data types returned by the function.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of functions that can be used in advanced searches."
      },
      "JQLReferenceData": {
        "type": "object",
        "properties": {
          "visibleFieldNames": {
            "type": "array",
            "description": "List of fields usable in JQL queries.",
            "items": {
              "$ref": "#/components/schemas/FieldReferenceData"
            }
          },
          "visibleFunctionNames": {
            "type": "array",
            "description": "List of functions usable in JQL queries.",
            "items": {
              "$ref": "#/components/schemas/FunctionReferenceData"
            }
          },
          "jqlReservedWords": {
            "type": "array",
            "description": "List of JQL query reserved words.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "Lists of JQL reference data."
      },
      "SearchAutoCompleteFilter": {
        "type": "object",
        "properties": {
          "projectIds": {
            "type": "array",
            "description": "List of project IDs used to filter the visible field details returned.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "includeCollapsedFields": {
            "type": "boolean",
            "description": "Include collapsed fields for fields that have non-unique names.",
            "default": false
          }
        },
        "additionalProperties": false,
        "description": "Details of how to filter and list search auto complete information."
      },
      "AutoCompleteSuggestion": {
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The value of a suggested item."
          },
          "displayName": {
            "type": "string",
            "description": "The display name of a suggested item. If `fieldValue` or `predicateValue` are provided, the matching text is highlighted with the HTML bold tag."
          }
        },
        "additionalProperties": false,
        "description": "A field auto-complete suggestion."
      },
      "AutoCompleteSuggestions": {
        "type": "object",
        "properties": {
          "results": {
            "type": "array",
            "description": "The list of suggested item.",
            "items": {
              "$ref": "#/components/schemas/AutoCompleteSuggestion"
            }
          }
        },
        "additionalProperties": false,
        "description": "The results from a JQL query."
      },
      "JQLPersonalDataMigrationRequest": {
        "type": "object",
        "properties": {
          "queryStrings": {
            "type": "array",
            "description": "A list of queries with user identifiers. Maximum of 100 queries.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "The JQL queries to be converted."
      },
      "ConvertedJQLQueries": {
        "type": "object",
        "properties": {
          "queryStrings": {
            "type": "array",
            "description": "The list of converted query strings with account IDs in place of user identifiers.",
            "items": {
              "type": "string"
            }
          },
          "queriesWithUnknownUsers": {
            "type": "array",
            "description": "List of queries containing user information that could not be mapped to an existing user",
            "items": {
              "$ref": "#/components/schemas/JQLQueryWithUnknownUsers"
            }
          }
        },
        "additionalProperties": false,
        "description": "The converted JQL queries."
      },
      "JQLQueryWithUnknownUsers": {
        "type": "object",
        "properties": {
          "originalQuery": {
            "type": "string",
            "description": "The original query, for reference"
          },
          "convertedQuery": {
            "type": "string",
            "description": "The converted query, with accountIDs instead of user identifiers, or 'unknown' for users that could not be found"
          }
        },
        "additionalProperties": false,
        "description": "JQL queries that contained users that could not be found"
      },
      "Filter": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the filter.",
            "format": "uri",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the filter.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the filter. Must be unique."
          },
          "description": {
            "type": "string",
            "description": "A description of the filter."
          },
          "owner": {
            "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,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "jql": {
            "type": "string",
            "description": "The JQL query for the filter. For example, *project = SSP AND issuetype = Bug*."
          },
          "viewUrl": {
            "type": "string",
            "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
          },
          "searchUrl": {
            "type": "string",
            "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
          },
          "favourite": {
            "type": "boolean",
            "description": "Whether the filter is selected as a favorite."
          },
          "favouritedCount": {
            "type": "integer",
            "description": "The count of how many users have selected this filter as a favorite, including the filter owner.",
            "format": "int64",
            "readOnly": true
          },
          "sharePermissions": {
            "type": "array",
            "description": "The groups and projects that the filter is shared with.",
            "items": {
              "$ref": "#/components/schemas/SharePermission"
            }
          },
          "editPermissions": {
            "type": "array",
            "description": "The groups and projects that can edit the filter.",
            "items": {
              "$ref": "#/components/schemas/SharePermission"
            }
          },
          "sharedUsers": {
            "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,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserList"
              }
            ]
          },
          "subscriptions": {
            "description": "A paginated list of the users that are subscribed to the filter.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/FilterSubscriptionsList"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a filter.",
        "xml": {
          "name": "filter"
        }
      },
      "FilterSubscription": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the filter subscription.",
            "format": "int64",
            "readOnly": true
          },
          "user": {
            "description": "The user subscribing to filter.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "group": {
            "description": "The group subscribing to filter.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/GroupName"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of a user or group subscribing to a filter."
      },
      "FilterSubscriptionsList": {
        "type": "object",
        "properties": {
          "size": {
            "type": "integer",
            "description": "The number of items on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "items": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/FilterSubscription"
            }
          },
          "max-results": {
            "type": "integer",
            "description": "The maximum number of results that could be on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "name": "max-results",
              "attribute": true
            }
          },
          "start-index": {
            "type": "integer",
            "description": "The index of the first item returned on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "name": "start-index",
              "attribute": true
            }
          },
          "end-index": {
            "type": "integer",
            "description": "The index of the last item returned on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "name": "end-index",
              "attribute": true
            }
          }
        },
        "additionalProperties": false,
        "description": "A paginated list of subscriptions to a filter."
      },
      "Hierarchy": {
        "type": "object",
        "properties": {
          "baseLevelId": {
            "type": "integer",
            "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"
          },
          "levels": {
            "type": "array",
            "description": "Details about the hierarchy level.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/SimplifiedHierarchyLevel"
            }
          }
        },
        "additionalProperties": false,
        "description": "The project issue type hierarchy.",
        "xml": {
          "name": "hierarchy"
        }
      },
      "Project": {
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Expand options that include additional project details in the response.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "self": {
            "type": "string",
            "description": "The URL of the project details.",
            "format": "uri",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the project."
          },
          "key": {
            "type": "string",
            "description": "The key of the project.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "A brief description of the project.",
            "readOnly": true
          },
          "lead": {
            "description": "The username of the project lead.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "components": {
            "type": "array",
            "description": "List of the components contained in the project.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ProjectComponent"
            }
          },
          "issueTypes": {
            "type": "array",
            "description": "List of the issue types available in the project.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeDetails"
            }
          },
          "url": {
            "type": "string",
            "description": "A link to information about this project, such as project documentation.",
            "readOnly": true
          },
          "email": {
            "type": "string",
            "description": "An email address associated with the project."
          },
          "assigneeType": {
            "type": "string",
            "description": "The default assignee when creating issues for this project.",
            "readOnly": true,
            "enum": [
              "PROJECT_LEAD",
              "UNASSIGNED"
            ]
          },
          "versions": {
            "type": "array",
            "description": "The versions defined in the project. For more information, see [Create version](#api-rest-api-3-version-post).",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Version"
            }
          },
          "name": {
            "type": "string",
            "description": "The name of the project.",
            "readOnly": true
          },
          "roles": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "format": "uri",
              "readOnly": true
            },
            "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
          },
          "avatarUrls": {
            "description": "The URLs of the project's avatars.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/AvatarUrlsBean"
              }
            ]
          },
          "projectCategory": {
            "description": "The category the project belongs to.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ProjectCategory"
              }
            ]
          },
          "projectTypeKey": {
            "type": "string",
            "description": "The [project type](https://confluence.atlassian.com/x/GwiiLQ#Jiraapplicationsoverview-Productfeaturesandprojecttypes) of the project.",
            "readOnly": true,
            "enum": [
              "software",
              "service_desk",
              "business"
            ]
          },
          "simplified": {
            "type": "boolean",
            "description": "Whether the project is simplified.",
            "readOnly": true
          },
          "style": {
            "type": "string",
            "description": "The type of the project.",
            "readOnly": true,
            "enum": [
              "classic",
              "next-gen"
            ]
          },
          "favourite": {
            "type": "boolean",
            "description": "Whether the project is selected as a favorite."
          },
          "isPrivate": {
            "type": "boolean",
            "description": "Whether the project is private.",
            "readOnly": true
          },
          "issueTypeHierarchy": {
            "description": "The issue type hierarchy for the project.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/Hierarchy"
              }
            ]
          },
          "permissions": {
            "description": "User permissions on the project",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ProjectPermissions"
              }
            ]
          },
          "properties": {
            "type": "object",
            "additionalProperties": {
              "readOnly": true
            },
            "description": "Map of project properties",
            "readOnly": true
          },
          "uuid": {
            "type": "string",
            "description": "Unique ID for next-gen projects.",
            "format": "uuid",
            "readOnly": true
          },
          "insight": {
            "description": "Insights about the project.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ProjectInsight"
              }
            ]
          },
          "deleted": {
            "type": "boolean",
            "description": "Whether the project is marked as deleted.",
            "readOnly": true
          },
          "retentionTillDate": {
            "type": "string",
            "description": "The date when the project is deleted permanently.",
            "format": "date-time",
            "readOnly": true
          },
          "deletedDate": {
            "type": "string",
            "description": "The date when the project was marked as deleted.",
            "format": "date-time",
            "readOnly": true
          },
          "deletedBy": {
            "description": "The user who marked the project as deleted.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "archived": {
            "type": "boolean",
            "description": "Whether the project is archived.",
            "readOnly": true
          },
          "archivedDate": {
            "type": "string",
            "description": "The date when the project was archived.",
            "format": "date-time",
            "readOnly": true
          },
          "archivedBy": {
            "description": "The user who archived the project.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "landingPageInfo": {
            "description": "The project landing page info.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ProjectLandingPageInfo"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a project.",
        "xml": {
          "name": "project"
        }
      },
      "ProjectCategory": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the project category.",
            "format": "uri",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the project category.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the project category. Required on create, optional on update."
          },
          "description": {
            "type": "string",
            "description": "The description of the project category."
          }
        },
        "additionalProperties": false,
        "description": "A project category."
      },
      "ProjectComponent": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the component.",
            "format": "uri",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the component.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "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."
          },
          "description": {
            "type": "string",
            "description": "The description for the component. Optional when creating or updating a component."
          },
          "lead": {
            "description": "The user details for the component's lead user.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "leadUserName": {
            "type": "string",
            "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."
          },
          "leadAccountId": {
            "maxLength": 128,
            "type": "string",
            "description": "The accountId of the component's lead user. The accountId uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "writeOnly": true
          },
          "assigneeType": {
            "type": "string",
            "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:\n\n *  `PROJECT_LEAD` the assignee to any issues created with this component is nominally the lead for the project the component is in.\n *  `COMPONENT_LEAD` the assignee to any issues created with this component is nominally the lead for the component.\n *  `UNASSIGNED` an assignee is not set for issues created with this component.\n *  `PROJECT_DEFAULT` the assignee to any issues created with this component is nominally the default assignee for the project that the component is in.\n\nDefault value: `PROJECT_DEFAULT`.  \nOptional when creating or updating a component.",
            "enum": [
              "PROJECT_DEFAULT",
              "COMPONENT_LEAD",
              "PROJECT_LEAD",
              "UNASSIGNED"
            ]
          },
          "assignee": {
            "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,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "realAssigneeType": {
            "type": "string",
            "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:\n\n *  `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.\n *  `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.\n *  `UNASSIGNED` when `assigneeType` is `UNASSIGNED` and Jira is configured to allow unassigned issues.\n *  `PROJECT_DEFAULT` when none of the preceding cases are true.",
            "readOnly": true,
            "enum": [
              "PROJECT_DEFAULT",
              "COMPONENT_LEAD",
              "PROJECT_LEAD",
              "UNASSIGNED"
            ]
          },
          "realAssignee": {
            "description": "The user assigned to issues created with this component, when `assigneeType` does not identify a valid assignee.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "isAssigneeTypeValid": {
            "type": "boolean",
            "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
          },
          "project": {
            "type": "string",
            "description": "The key of the project the component is assigned to. Required when creating a component. Can't be updated."
          },
          "projectId": {
            "type": "integer",
            "description": "The ID of the project the component is assigned to.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details about a project component.",
        "xml": {
          "name": "component"
        }
      },
      "ProjectInsight": {
        "type": "object",
        "properties": {
          "totalIssueCount": {
            "type": "integer",
            "description": "Total issue count.",
            "format": "int64",
            "readOnly": true
          },
          "lastIssueUpdateTime": {
            "type": "string",
            "description": "The last issue update time.",
            "format": "date-time",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Additional details about a project."
      },
      "ProjectLandingPageInfo": {
        "type": "object",
        "properties": {
          "url": {
            "type": "string"
          },
          "projectKey": {
            "type": "string"
          },
          "projectType": {
            "type": "string"
          },
          "queueName": {
            "type": "string"
          },
          "queueId": {
            "type": "integer",
            "format": "int64"
          },
          "boardId": {
            "type": "integer",
            "format": "int64"
          },
          "simpleBoard": {
            "type": "boolean"
          },
          "boardName": {
            "type": "string"
          },
          "queueCategory": {
            "type": "string"
          },
          "simplified": {
            "type": "boolean"
          },
          "attributes": {
            "type": "object",
            "additionalProperties": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "ProjectPermissions": {
        "type": "object",
        "properties": {
          "canEdit": {
            "type": "boolean",
            "description": "Whether the logged user can edit the project.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Permissions which a user has on a project."
      },
      "ProjectRole": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL the project role details.",
            "format": "uri",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the project role."
          },
          "id": {
            "type": "integer",
            "description": "The ID of the project role.",
            "format": "int64",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the project role.",
            "readOnly": true
          },
          "actors": {
            "type": "array",
            "description": "The list of users who act in this role.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/RoleActor"
            }
          },
          "scope": {
            "description": "The scope of the role. Indicated for roles associated with [next-gen projects](https://confluence.atlassian.com/x/loMyO).",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          },
          "translatedName": {
            "type": "string",
            "description": "The translated name of the project role."
          },
          "currentUserRole": {
            "type": "boolean",
            "description": "Whether the calling user is part of this role."
          },
          "admin": {
            "type": "boolean",
            "description": "Whether this role is the admin role for the project.",
            "readOnly": true
          },
          "roleConfigurable": {
            "type": "boolean",
            "description": "Whether the roles are configurable for this project.",
            "readOnly": true
          },
          "default": {
            "type": "boolean",
            "description": "Whether this role is the default role for the project",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details about the roles in a project."
      },
      "ProjectRoleGroup": {
        "type": "object",
        "properties": {
          "displayName": {
            "type": "string",
            "description": "The display name of the group."
          },
          "name": {
            "type": "string",
            "description": "The name of the group. As a group's name can change, use of `groupId` is recommended to identify the group."
          },
          "groupId": {
            "type": "string",
            "description": "The ID of the group."
          }
        },
        "additionalProperties": false,
        "description": "Details of the group associated with the role."
      },
      "ProjectRoleUser": {
        "type": "object",
        "properties": {
          "accountId": {
            "maxLength": 128,
            "type": "string",
            "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.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of the user associated with the role."
      },
      "RoleActor": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the role actor.",
            "format": "int64",
            "readOnly": true
          },
          "displayName": {
            "type": "string",
            "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": {
            "type": "string",
            "description": "The type of role actor.",
            "readOnly": true,
            "enum": [
              "atlassian-group-role-actor",
              "atlassian-user-role-actor"
            ]
          },
          "name": {
            "type": "string",
            "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
          },
          "avatarUrl": {
            "type": "string",
            "description": "The avatar of the role actor.",
            "format": "uri",
            "readOnly": true
          },
          "actorUser": {
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ProjectRoleUser"
              }
            ]
          },
          "actorGroup": {
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/ProjectRoleGroup"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a user assigned to a project role.",
        "xml": {
          "name": "projectRoleActor"
        }
      },
      "ServiceManagementNavigationInfo": {
        "type": "object",
        "properties": {
          "queueId": {
            "type": "integer",
            "format": "int64"
          },
          "queueName": {
            "type": "string"
          },
          "queueCategory": {
            "type": "string"
          }
        }
      },
      "SharePermission": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The unique identifier of the share permission.",
            "format": "int64",
            "readOnly": true
          },
          "type": {
            "type": "string",
            "description": "The type of share permission:\n\n *  `user` Shared with a user.\n *  `group` Shared with a group. If set in a request, then specify `sharePermission.group` as well.\n *  `project` Shared with a project. If set in a request, then specify `sharePermission.project` as well.\n *  `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`.\n *  `global` Shared globally. If set in a request, no other `sharePermission` properties need to be specified.\n *  `loggedin` Shared with all logged-in users. Note: This value is set in a request by specifying `authenticated` as the `type`.\n *  `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"
            ]
          },
          "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`.  \nFor a request, specify the `id` for the project.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Project"
              }
            ]
          },
          "role": {
            "description": "The project role that the filter is shared with.  \nFor 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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/ProjectRole"
              }
            ]
          },
          "group": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/GroupName"
              }
            ]
          },
          "user": {
            "description": "The user account ID that the filter is shared with. For a request, specify the `accountId` property for the user.",
            "allOf": [
              {
                "$ref": "#/components/schemas/UserBean"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of a share permission for the filter."
      },
      "SimplifiedHierarchyLevel": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "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"
          },
          "name": {
            "type": "string",
            "description": "The name of this hierarchy level."
          },
          "aboveLevelId": {
            "type": "integer",
            "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"
          },
          "belowLevelId": {
            "type": "integer",
            "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"
          },
          "projectConfigurationId": {
            "type": "integer",
            "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"
          },
          "level": {
            "type": "integer",
            "description": "The level of this item in the hierarchy.",
            "format": "int32"
          },
          "issueTypeIds": {
            "type": "array",
            "description": "The issue types available in this hierarchy level.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "externalUuid": {
            "type": "string",
            "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"
          },
          "hierarchyLevelNumber": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "SoftwareNavigationInfo": {
        "type": "object",
        "properties": {
          "boardId": {
            "type": "integer",
            "format": "int64"
          },
          "boardName": {
            "type": "string"
          },
          "totalBoardsInProject": {
            "type": "integer",
            "format": "int64"
          },
          "simpleBoard": {
            "type": "boolean"
          }
        }
      },
      "UserBean": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "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.  \nThe key of the user."
          },
          "self": {
            "type": "string",
            "description": "The URL of the user.",
            "format": "uri"
          },
          "name": {
            "type": "string",
            "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.  \nThe username of the user."
          },
          "displayName": {
            "type": "string",
            "description": "The display name of the user. Depending on the user’s privacy setting, this may return an alternative value."
          },
          "active": {
            "type": "boolean",
            "description": "Whether the user is active."
          },
          "accountId": {
            "maxLength": 128,
            "type": "string",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*."
          },
          "avatarUrls": {
            "description": "The avatars of the user.",
            "allOf": [
              {
                "$ref": "#/components/schemas/UserBeanAvatarUrls"
              }
            ]
          }
        },
        "additionalProperties": false
      },
      "UserBeanAvatarUrls": {
        "type": "object",
        "properties": {
          "16x16": {
            "type": "string",
            "description": "The URL of the user's 16x16 pixel avatar.",
            "format": "uri"
          },
          "24x24": {
            "type": "string",
            "description": "The URL of the user's 24x24 pixel avatar.",
            "format": "uri"
          },
          "32x32": {
            "type": "string",
            "description": "The URL of the user's 32x32 pixel avatar.",
            "format": "uri"
          },
          "48x48": {
            "type": "string",
            "description": "The URL of the user's 48x48 pixel avatar.",
            "format": "uri"
          }
        },
        "additionalProperties": false
      },
      "UserList": {
        "type": "object",
        "properties": {
          "size": {
            "type": "integer",
            "description": "The number of items on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "items": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/User"
            }
          },
          "max-results": {
            "type": "integer",
            "description": "The maximum number of results that could be on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "name": "max-results",
              "attribute": true
            }
          },
          "start-index": {
            "type": "integer",
            "description": "The index of the first item returned on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "name": "start-index",
              "attribute": true
            }
          },
          "end-index": {
            "type": "integer",
            "description": "The index of the last item returned on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "name": "end-index",
              "attribute": true
            }
          }
        },
        "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."
      },
      "Version": {
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Use [expand](em>#expansion) to include additional information about version in the response. This parameter accepts a comma-separated list. Expand options include:\n\n *  `operations` Returns the list of operations available for this version.\n *  `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*.\n\nOptional for create and update.",
            "xml": {
              "attribute": true
            }
          },
          "self": {
            "type": "string",
            "description": "The URL of the version.",
            "format": "uri",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the version.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the version. Optional when creating or updating a version."
          },
          "name": {
            "type": "string",
            "description": "The unique name of the version. Required when creating a version. Optional when updating a version. The maximum length is 255 characters."
          },
          "archived": {
            "type": "boolean",
            "description": "Indicates that the version is archived. Optional when creating or updating a version."
          },
          "released": {
            "type": "boolean",
            "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."
          },
          "startDate": {
            "type": "string",
            "description": "The start date of the version. Expressed in ISO 8601 format (yyyy-mm-dd). Optional when creating or updating a version.",
            "format": "date"
          },
          "releaseDate": {
            "type": "string",
            "description": "The release date of the version. Expressed in ISO 8601 format (yyyy-mm-dd). Optional when creating or updating a version.",
            "format": "date"
          },
          "overdue": {
            "type": "boolean",
            "description": "Indicates that the version is overdue.",
            "readOnly": true
          },
          "userStartDate": {
            "type": "string",
            "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
          },
          "userReleaseDate": {
            "type": "string",
            "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
          },
          "project": {
            "type": "string",
            "description": "Deprecated. Use `projectId`."
          },
          "projectId": {
            "type": "integer",
            "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"
          },
          "moveUnfixedIssuesTo": {
            "type": "string",
            "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"
          },
          "operations": {
            "type": "array",
            "description": "If the expand option `operations` is used, returns the list of operations available for this version.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/SimpleLink"
            }
          },
          "issuesStatusForFixVersion": {
            "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,
            "allOf": [
              {
                "$ref": "#/components/schemas/VersionIssuesStatus"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a project version.",
        "xml": {
          "name": "version"
        }
      },
      "VersionIssuesStatus": {
        "type": "object",
        "properties": {
          "unmapped": {
            "type": "integer",
            "description": "Count of issues with a status other than *to do*, *in progress*, and *done*.",
            "format": "int64",
            "readOnly": true
          },
          "toDo": {
            "type": "integer",
            "description": "Count of issues with status *to do*.",
            "format": "int64",
            "readOnly": true
          },
          "inProgress": {
            "type": "integer",
            "description": "Count of issues with status *in progress*.",
            "format": "int64",
            "readOnly": true
          },
          "done": {
            "type": "integer",
            "description": "Count of issues with status *done*.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Counts of the number of issues in various statuses."
      },
      "WorkManagementNavigationInfo": {
        "type": "object",
        "properties": {
          "boardName": {
            "type": "string"
          }
        }
      },
      "FilterDetails": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Expand options that include additional filter details in the response.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "self": {
            "type": "string",
            "description": "The URL of the filter.",
            "format": "uri",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the filter.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the filter."
          },
          "description": {
            "type": "string",
            "description": "The description of the filter."
          },
          "owner": {
            "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,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "jql": {
            "type": "string",
            "description": "The JQL query for the filter. For example, *project = SSP AND issuetype = Bug*.",
            "readOnly": true
          },
          "viewUrl": {
            "type": "string",
            "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
          },
          "searchUrl": {
            "type": "string",
            "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
          },
          "favourite": {
            "type": "boolean",
            "description": "Whether the filter is selected as a favorite by any users, not including the filter owner.",
            "readOnly": true
          },
          "favouritedCount": {
            "type": "integer",
            "description": "The count of how many users have selected this filter as a favorite, including the filter owner.",
            "format": "int64",
            "readOnly": true
          },
          "sharePermissions": {
            "type": "array",
            "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"
            }
          },
          "editPermissions": {
            "type": "array",
            "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"
            }
          },
          "subscriptions": {
            "type": "array",
            "description": "The users that are subscribed to the filter.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/FilterSubscription"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of a filter."
      },
      "PageBeanFilterDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/FilterDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "ChangeFilterOwner": {
        "required": [
          "accountId"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The account ID of the new owner."
          }
        },
        "additionalProperties": false,
        "description": "The account ID of the new owner.",
        "writeOnly": true
      },
      "DefaultShareScope": {
        "required": [
          "scope"
        ],
        "type": "object",
        "properties": {
          "scope": {
            "type": "string",
            "description": "The scope of the default sharing for new filters and dashboards:\n\n *  `AUTHENTICATED` Shared with all logged-in users.\n *  `GLOBAL` Shared with all logged-in users. This shows as `AUTHENTICATED` in the response.\n *  `PRIVATE` Not shared with any users.",
            "enum": [
              "GLOBAL",
              "AUTHENTICATED",
              "PRIVATE"
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of the scope of the default sharing for new filters and dashboards.",
        "xml": {
          "name": "defaultShareScope"
        }
      },
      "SharePermissionInputBean": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The type of the share permission.Specify the type as follows:\n\n *  `user` Share with a user.\n *  `group` Share with a group. Specify `groupname` as well.\n *  `project` Share with a project. Specify `projectId` as well.\n *  `projectRole` Share with a project role in a project. Specify `projectId` and `projectRoleId` as well.\n *  `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.\n *  `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"
            ]
          },
          "projectId": {
            "type": "string",
            "description": "The ID of the project to share the filter with. Set `type` to `project`."
          },
          "groupname": {
            "type": "string",
            "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`."
          },
          "projectRoleId": {
            "type": "string",
            "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."
          },
          "accountId": {
            "type": "string",
            "description": "The user account ID that the filter is shared with. For a request, specify the `accountId` property for the user."
          },
          "rights": {
            "type": "integer",
            "description": "The rights for the share permission.",
            "format": "int32"
          },
          "groupId": {
            "type": "string",
            "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`."
          }
        },
        "additionalProperties": false
      },
      "IssueTypeInfo": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the issue type.",
            "format": "int64",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the issue type.",
            "readOnly": true
          },
          "avatarId": {
            "type": "integer",
            "description": "The avatar of the issue type.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue type."
      },
      "ProjectIssueTypeHierarchy": {
        "type": "object",
        "properties": {
          "projectId": {
            "type": "integer",
            "description": "The ID of the project.",
            "format": "int64",
            "readOnly": true
          },
          "hierarchy": {
            "type": "array",
            "description": "Details of an issue type hierarchy level.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ProjectIssueTypesHierarchyLevel"
            }
          }
        },
        "additionalProperties": false,
        "description": "The hierarchy of issue types within a project."
      },
      "ProjectIssueTypesHierarchyLevel": {
        "type": "object",
        "properties": {
          "entityId": {
            "type": "string",
            "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
          },
          "level": {
            "type": "integer",
            "description": "The level of the issue type hierarchy level.",
            "format": "int32",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the issue type hierarchy level.",
            "readOnly": true
          },
          "issueTypes": {
            "type": "array",
            "description": "The list of issue types in the hierarchy level.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeInfo"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue type hierarchy level."
      },
      "IssuesAndJQLQueries": {
        "required": [
          "issueIds",
          "jqls"
        ],
        "type": "object",
        "properties": {
          "jqls": {
            "type": "array",
            "description": "A list of JQL queries.",
            "items": {
              "type": "string",
              "description": "A list of JQL queries."
            }
          },
          "issueIds": {
            "uniqueItems": true,
            "type": "array",
            "description": "A list of issue IDs.",
            "items": {
              "type": "integer",
              "description": "A list of issue IDs.",
              "format": "int64"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of issues and JQL queries."
      },
      "IssueMatches": {
        "required": [
          "matches"
        ],
        "type": "object",
        "properties": {
          "matches": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IssueMatchesForJQL"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of matched issues or errors for each JQL query, in the order the JQL queries were passed."
      },
      "IssueMatchesForJQL": {
        "required": [
          "errors",
          "matchedIssues"
        ],
        "type": "object",
        "properties": {
          "matchedIssues": {
            "uniqueItems": true,
            "type": "array",
            "description": "A list of issue IDs.",
            "items": {
              "type": "integer",
              "description": "A list of issue IDs.",
              "format": "int64"
            }
          },
          "errors": {
            "uniqueItems": true,
            "type": "array",
            "description": "A list of errors.",
            "items": {
              "type": "string",
              "description": "A list of errors."
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of the issues matched to a JQL query or details of errors encountered during matching."
      },
      "Locale": {
        "type": "object",
        "properties": {
          "locale": {
            "type": "string",
            "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."
          }
        },
        "additionalProperties": false,
        "description": "Details of a locale."
      },
      "JqlQueriesToSanitize": {
        "required": [
          "queries"
        ],
        "type": "object",
        "properties": {
          "queries": {
            "type": "array",
            "description": "The list of JQL queries to sanitize. Must contain unique values. Maximum of 20 queries.",
            "items": {
              "$ref": "#/components/schemas/JqlQueryToSanitize"
            }
          }
        },
        "additionalProperties": false,
        "description": "The list of JQL queries to sanitize for the given account IDs.",
        "writeOnly": true
      },
      "JqlQueryToSanitize": {
        "required": [
          "query"
        ],
        "type": "object",
        "properties": {
          "accountId": {
            "maxLength": 128,
            "type": "string",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.",
            "nullable": true
          },
          "query": {
            "type": "string",
            "description": "The query to sanitize."
          }
        },
        "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.",
        "writeOnly": true
      },
      "SanitizedJqlQueries": {
        "type": "object",
        "properties": {
          "queries": {
            "type": "array",
            "description": "The list of sanitized JQL queries.",
            "items": {
              "$ref": "#/components/schemas/SanitizedJqlQuery"
            }
          }
        },
        "additionalProperties": false,
        "description": "The sanitized JQL queries for the given account IDs."
      },
      "SanitizedJqlQuery": {
        "type": "object",
        "properties": {
          "initialQuery": {
            "type": "string",
            "description": "The initial query."
          },
          "sanitizedQuery": {
            "type": "string",
            "description": "The sanitized query, if there were no errors.",
            "nullable": true
          },
          "errors": {
            "description": "The list of errors.",
            "allOf": [
              {
                "$ref": "#/components/schemas/ErrorCollection"
              }
            ]
          },
          "accountId": {
            "maxLength": 128,
            "type": "string",
            "description": "The account ID of the user for whom sanitization was performed.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Details of the sanitized JQL query."
      },
      "JqlQueriesToParse": {
        "required": [
          "queries"
        ],
        "type": "object",
        "properties": {
          "queries": {
            "minLength": 1,
            "type": "array",
            "description": "A list of queries to parse.",
            "items": {
              "minLength": 1,
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of JQL queries to parse.",
        "writeOnly": true
      },
      "CompoundClause": {
        "required": [
          "clauses",
          "operator"
        ],
        "type": "object",
        "properties": {
          "clauses": {
            "type": "array",
            "description": "The list of nested clauses.",
            "items": {
              "$ref": "#/components/schemas/JqlQueryClause"
            }
          },
          "operator": {
            "type": "string",
            "description": "The operator between the clauses.",
            "enum": [
              "and",
              "or",
              "not"
            ]
          }
        },
        "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.`"
      },
      "FieldChangedClause": {
        "required": [
          "field",
          "operator",
          "predicates"
        ],
        "type": "object",
        "properties": {
          "field": {
            "$ref": "#/components/schemas/JqlQueryField"
          },
          "operator": {
            "type": "string",
            "description": "The operator applied to the field.",
            "enum": [
              "changed"
            ]
          },
          "predicates": {
            "type": "array",
            "description": "The list of time predicates.",
            "items": {
              "$ref": "#/components/schemas/JqlQueryClauseTimePredicate"
            }
          }
        },
        "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."
      },
      "FieldValueClause": {
        "required": [
          "field",
          "operand",
          "operator"
        ],
        "type": "object",
        "properties": {
          "field": {
            "$ref": "#/components/schemas/JqlQueryField"
          },
          "operator": {
            "type": "string",
            "description": "The operator between the field and operand.",
            "enum": [
              "=",
              "!=",
              ">",
              "<",
              ">=",
              "<=",
              "in",
              "not in",
              "~",
              "~=",
              "is",
              "is not"
            ]
          },
          "operand": {
            "$ref": "#/components/schemas/JqlQueryClauseOperand"
          }
        },
        "description": "A clause that asserts the current value of a field. For example, `summary ~ test`."
      },
      "FieldWasClause": {
        "required": [
          "field",
          "operand",
          "operator",
          "predicates"
        ],
        "type": "object",
        "properties": {
          "field": {
            "$ref": "#/components/schemas/JqlQueryField"
          },
          "operator": {
            "type": "string",
            "description": "The operator between the field and operand.",
            "enum": [
              "was",
              "was in",
              "was not in",
              "was not"
            ]
          },
          "operand": {
            "$ref": "#/components/schemas/JqlQueryClauseOperand"
          },
          "predicates": {
            "type": "array",
            "description": "The list of time predicates.",
            "items": {
              "$ref": "#/components/schemas/JqlQueryClauseTimePredicate"
            }
          }
        },
        "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."
      },
      "FunctionOperand": {
        "required": [
          "arguments",
          "function"
        ],
        "type": "object",
        "properties": {
          "function": {
            "type": "string",
            "description": "The name of the function."
          },
          "arguments": {
            "type": "array",
            "description": "The list of function arguments.",
            "items": {
              "type": "string"
            }
          }
        },
        "description": "An operand that is a function. See [Advanced searching - functions reference](https://confluence.atlassian.com/x/dwiiLQ) for more information about JQL functions."
      },
      "JqlQuery": {
        "type": "object",
        "properties": {
          "where": {
            "$ref": "#/components/schemas/JqlQueryClause"
          },
          "orderBy": {
            "$ref": "#/components/schemas/JqlQueryOrderByClause"
          }
        },
        "additionalProperties": false,
        "description": "A parsed JQL query."
      },
      "JqlQueryClause": {
        "type": "object",
        "additionalProperties": false,
        "description": "A JQL query clause.",
        "anyOf": [
          {
            "$ref": "#/components/schemas/CompoundClause"
          },
          {
            "$ref": "#/components/schemas/FieldValueClause"
          },
          {
            "$ref": "#/components/schemas/FieldWasClause"
          },
          {
            "$ref": "#/components/schemas/FieldChangedClause"
          }
        ]
      },
      "JqlQueryClauseOperand": {
        "type": "object",
        "description": "Details of an operand in a JQL clause.",
        "anyOf": [
          {
            "$ref": "#/components/schemas/ListOperand"
          },
          {
            "$ref": "#/components/schemas/ValueOperand"
          },
          {
            "$ref": "#/components/schemas/FunctionOperand"
          },
          {
            "$ref": "#/components/schemas/KeywordOperand"
          }
        ]
      },
      "JqlQueryClauseTimePredicate": {
        "required": [
          "operand",
          "operator"
        ],
        "type": "object",
        "properties": {
          "operator": {
            "type": "string",
            "description": "The operator between the field and the operand.",
            "enum": [
              "before",
              "after",
              "from",
              "to",
              "on",
              "during",
              "by"
            ]
          },
          "operand": {
            "$ref": "#/components/schemas/JqlQueryClauseOperand"
          }
        },
        "description": "A time predicate for a temporal JQL clause."
      },
      "JqlQueryField": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the field."
          },
          "property": {
            "type": "array",
            "description": "When the field refers to a value in an entity property, details of the entity property value.",
            "items": {
              "$ref": "#/components/schemas/JqlQueryFieldEntityProperty"
            }
          }
        },
        "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."
      },
      "JqlQueryFieldEntityProperty": {
        "required": [
          "entity",
          "key",
          "path"
        ],
        "type": "object",
        "properties": {
          "entity": {
            "type": "string",
            "description": "The object on which the property is set.",
            "example": "issue"
          },
          "key": {
            "type": "string",
            "description": "The key of the property.",
            "example": "stats"
          },
          "path": {
            "type": "string",
            "description": "The path in the property value to query.",
            "example": "comments.count"
          },
          "type": {
            "type": "string",
            "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.",
            "example": "number",
            "enum": [
              "number",
              "string",
              "text",
              "date",
              "user"
            ]
          }
        },
        "description": "Details of an entity property."
      },
      "JqlQueryOrderByClause": {
        "required": [
          "fields"
        ],
        "type": "object",
        "properties": {
          "fields": {
            "type": "array",
            "description": "The list of order-by clause fields and their ordering directives.",
            "items": {
              "$ref": "#/components/schemas/JqlQueryOrderByClauseElement"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of the order-by JQL clause."
      },
      "JqlQueryOrderByClauseElement": {
        "required": [
          "field"
        ],
        "type": "object",
        "properties": {
          "field": {
            "$ref": "#/components/schemas/JqlQueryField"
          },
          "direction": {
            "type": "string",
            "description": "The direction in which to order the results.",
            "enum": [
              "asc",
              "desc"
            ]
          }
        },
        "additionalProperties": false,
        "description": "An element of the order-by JQL clause."
      },
      "JqlQueryUnitaryOperand": {
        "type": "object",
        "description": "An operand that can be part of a list operand.",
        "anyOf": [
          {
            "$ref": "#/components/schemas/ValueOperand"
          },
          {
            "$ref": "#/components/schemas/FunctionOperand"
          },
          {
            "$ref": "#/components/schemas/KeywordOperand"
          }
        ]
      },
      "KeywordOperand": {
        "required": [
          "keyword"
        ],
        "type": "object",
        "properties": {
          "keyword": {
            "type": "string",
            "description": "The keyword that is the operand value.",
            "enum": [
              "empty"
            ]
          }
        },
        "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."
      },
      "ListOperand": {
        "required": [
          "values"
        ],
        "type": "object",
        "properties": {
          "values": {
            "minLength": 1,
            "type": "array",
            "description": "The list of operand values.",
            "items": {
              "$ref": "#/components/schemas/JqlQueryUnitaryOperand"
            }
          }
        },
        "description": "An operand that is a list of values."
      },
      "ParsedJqlQueries": {
        "required": [
          "queries"
        ],
        "type": "object",
        "properties": {
          "queries": {
            "minLength": 1,
            "type": "array",
            "description": "A list of parsed JQL queries.",
            "items": {
              "$ref": "#/components/schemas/ParsedJqlQuery"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of parsed JQL queries."
      },
      "ParsedJqlQuery": {
        "minLength": 1,
        "required": [
          "query"
        ],
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "The JQL query that was parsed and validated."
          },
          "structure": {
            "description": "The syntax tree of the query. Empty if the query was invalid.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JqlQuery"
              }
            ]
          },
          "errors": {
            "uniqueItems": true,
            "type": "array",
            "description": "The list of syntax or validation errors.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of a parsed JQL query."
      },
      "ValueOperand": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The operand value."
          }
        },
        "description": "An operand that is a user-provided value."
      },
      "IdBean": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "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"
          }
        },
        "additionalProperties": false
      },
      "Permissions": {
        "type": "object",
        "properties": {
          "permissions": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/UserPermission"
            },
            "description": "List of permissions.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details about permissions."
      },
      "UserPermission": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "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."
          },
          "key": {
            "type": "string",
            "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."
          },
          "name": {
            "type": "string",
            "description": "The name of the permission."
          },
          "type": {
            "type": "string",
            "description": "The type of the permission.",
            "enum": [
              "GLOBAL",
              "PROJECT"
            ]
          },
          "description": {
            "type": "string",
            "description": "The description of the permission."
          },
          "havePermission": {
            "type": "boolean",
            "description": "Whether the permission is available to the user in the queried context."
          },
          "deprecatedKey": {
            "type": "boolean",
            "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.`"
          }
        },
        "additionalProperties": true,
        "description": "Details of a permission and its availability to a user."
      },
      "BulkPermissionsRequestBean": {
        "type": "object",
        "properties": {
          "projectPermissions": {
            "uniqueItems": true,
            "type": "array",
            "description": "Project permissions with associated projects and issues to look up.",
            "items": {
              "$ref": "#/components/schemas/BulkProjectPermissions"
            }
          },
          "globalPermissions": {
            "uniqueItems": true,
            "type": "array",
            "description": "Global permissions to look up.",
            "items": {
              "type": "string"
            }
          },
          "accountId": {
            "type": "string",
            "description": "The account ID of a user."
          }
        },
        "additionalProperties": false,
        "description": "Details of global permissions to look up and project permissions with associated projects and issues to look up."
      },
      "BulkProjectPermissions": {
        "required": [
          "permissions"
        ],
        "type": "object",
        "properties": {
          "issues": {
            "uniqueItems": true,
            "type": "array",
            "description": "List of issue IDs.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "projects": {
            "uniqueItems": true,
            "type": "array",
            "description": "List of project IDs.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "permissions": {
            "uniqueItems": true,
            "type": "array",
            "description": "List of project permissions.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of project permissions and associated issues and projects to look up."
      },
      "BulkPermissionGrants": {
        "required": [
          "globalPermissions",
          "projectPermissions"
        ],
        "type": "object",
        "properties": {
          "projectPermissions": {
            "uniqueItems": true,
            "type": "array",
            "description": "List of project permissions and the projects and issues those permissions provide access to.",
            "items": {
              "$ref": "#/components/schemas/BulkProjectPermissionGrants"
            }
          },
          "globalPermissions": {
            "uniqueItems": true,
            "type": "array",
            "description": "List of permissions granted to the user.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of global and project permissions granted to the user."
      },
      "BulkProjectPermissionGrants": {
        "required": [
          "issues",
          "permission",
          "projects"
        ],
        "type": "object",
        "properties": {
          "permission": {
            "type": "string",
            "description": "A project permission,"
          },
          "issues": {
            "uniqueItems": true,
            "type": "array",
            "description": "IDs of the issues the user has the permission for.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "projects": {
            "uniqueItems": true,
            "type": "array",
            "description": "IDs of the projects the user has the permission for.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of project permissions and the projects and issues those permissions grant access to."
      },
      "PermissionsKeysBean": {
        "required": [
          "permissions"
        ],
        "type": "object",
        "properties": {
          "permissions": {
            "type": "array",
            "description": "A list of permission keys.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "PermittedProjects": {
        "type": "object",
        "properties": {
          "projects": {
            "type": "array",
            "description": "A list of projects.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ProjectIdentifierBean"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of projects in which a user is granted permissions."
      },
      "ProjectIdentifierBean": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the project.",
            "format": "int64",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "description": "The key of the project.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The identifiers for a project."
      },
      "FailedWebhook": {
        "required": [
          "failureTime",
          "id",
          "url"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The webhook ID, as sent in the `X-Atlassian-Webhook-Identifier` header with the webhook."
          },
          "body": {
            "type": "string",
            "description": "The webhook body."
          },
          "url": {
            "type": "string",
            "description": "The original webhook destination."
          },
          "failureTime": {
            "type": "integer",
            "description": "The time the webhook was added to the list of failed webhooks (that is, the time of the last failed retry).",
            "format": "int64"
          }
        },
        "additionalProperties": false,
        "description": "Details about a failed webhook."
      },
      "FailedWebhooks": {
        "required": [
          "maxResults",
          "values"
        ],
        "type": "object",
        "properties": {
          "values": {
            "type": "array",
            "description": "The list of webhooks.",
            "items": {
              "$ref": "#/components/schemas/FailedWebhook"
            }
          },
          "maxResults": {
            "type": "integer",
            "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"
          },
          "next": {
            "type": "string",
            "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"
          }
        },
        "additionalProperties": false,
        "description": "A page of failed webhooks."
      },
      "WebhookDetails": {
        "required": [
          "events",
          "jqlFilter"
        ],
        "type": "object",
        "properties": {
          "jqlFilter": {
            "type": "string",
            "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:\n\n *  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.\".\n *  Operators: `=`, `!=`, `IN`, and `NOT IN`."
          },
          "fieldIdsFilter": {
            "type": "array",
            "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": {
              "type": "string",
              "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."
            }
          },
          "issuePropertyKeysFilter": {
            "type": "array",
            "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": {
              "type": "string",
              "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."
            }
          },
          "events": {
            "type": "array",
            "description": "The Jira events that trigger the webhook.",
            "items": {
              "type": "string",
              "enum": [
                "jira:issue_created",
                "jira:issue_updated",
                "jira:issue_deleted",
                "comment_created",
                "comment_updated",
                "comment_deleted",
                "issue_property_set",
                "issue_property_deleted"
              ]
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of webhooks."
      },
      "WebhookRegistrationDetails": {
        "required": [
          "url",
          "webhooks"
        ],
        "type": "object",
        "properties": {
          "webhooks": {
            "type": "array",
            "description": "A list of webhooks.",
            "items": {
              "$ref": "#/components/schemas/WebhookDetails"
            }
          },
          "url": {
            "type": "string",
            "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."
          }
        },
        "additionalProperties": false,
        "description": "Details of webhooks to register."
      },
      "ContainerForRegisteredWebhooks": {
        "type": "object",
        "properties": {
          "webhookRegistrationResult": {
            "type": "array",
            "description": "A list of registered webhooks.",
            "items": {
              "$ref": "#/components/schemas/RegisteredWebhook"
            }
          }
        },
        "additionalProperties": false,
        "description": "Container for a list of registered webhooks. Webhook details are returned in the same order as the request."
      },
      "RegisteredWebhook": {
        "type": "object",
        "properties": {
          "createdWebhookId": {
            "type": "integer",
            "description": "The ID of the webhook. Returned if the webhook is created.",
            "format": "int64"
          },
          "errors": {
            "type": "array",
            "description": "Error messages specifying why the webhook creation failed.",
            "items": {
              "type": "string",
              "description": "Error messages specifying why the webhook creation failed."
            }
          }
        },
        "additionalProperties": false,
        "description": "ID of a registered webhook or error messages explaining why a webhook wasn't registered."
      },
      "PageBeanWebhook": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Webhook"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "Webhook": {
        "required": [
          "events",
          "id",
          "jqlFilter"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the webhook.",
            "format": "int64"
          },
          "jqlFilter": {
            "type": "string",
            "description": "The JQL filter that specifies which issues the webhook is sent for."
          },
          "fieldIdsFilter": {
            "type": "array",
            "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": {
              "type": "string",
              "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."
            }
          },
          "issuePropertyKeysFilter": {
            "type": "array",
            "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": {
              "type": "string",
              "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."
            }
          },
          "events": {
            "type": "array",
            "description": "The Jira events that trigger the webhook.",
            "items": {
              "type": "string",
              "enum": [
                "jira:issue_created",
                "jira:issue_updated",
                "jira:issue_deleted",
                "comment_created",
                "comment_updated",
                "comment_deleted",
                "issue_property_set",
                "issue_property_deleted"
              ]
            }
          },
          "expirationDate": {
            "type": "integer",
            "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
          }
        },
        "additionalProperties": false,
        "description": "A webhook."
      },
      "ContainerForWebhookIDs": {
        "required": [
          "webhookIds"
        ],
        "type": "object",
        "properties": {
          "webhookIds": {
            "type": "array",
            "description": "A list of webhook IDs.",
            "items": {
              "type": "integer",
              "description": "A list of webhook IDs.",
              "format": "int64"
            }
          }
        },
        "additionalProperties": false,
        "description": "Container for a list of webhook IDs."
      },
      "WebhooksExpirationDate": {
        "required": [
          "expirationDate"
        ],
        "type": "object",
        "properties": {
          "expirationDate": {
            "type": "integer",
            "description": "The expiration date of all the refreshed webhooks.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The date the refreshed webhooks expire."
      },
      "PropertyKey": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the property.",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "description": "The key of the property.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Property key details."
      },
      "PropertyKeys": {
        "type": "object",
        "properties": {
          "keys": {
            "type": "array",
            "description": "Property key details.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/PropertyKey"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of property keys."
      },
      "EntityProperty": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "The key of the property. Required on create and update."
          },
          "value": {
            "description": "The value of the property. Required on create and update."
          }
        },
        "additionalProperties": false,
        "description": "An entity property, for more information see [Entity properties](https://developer.atlassian.com/cloud/jira/platform/jira-entity-properties/)."
      },
      "PageBeanString": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "type": "string",
              "readOnly": true
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "EventNotification": {
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Expand options that include additional event notification details in the response."
          },
          "id": {
            "type": "integer",
            "description": "The ID of the notification.",
            "format": "int64"
          },
          "notificationType": {
            "type": "string",
            "description": "Identifies the recipients of the notification.",
            "enum": [
              "CurrentAssignee",
              "Reporter",
              "CurrentUser",
              "ProjectLead",
              "ComponentLead",
              "User",
              "Group",
              "ProjectRole",
              "EmailAddress",
              "AllWatchers",
              "UserCustomField",
              "GroupCustomField"
            ]
          },
          "parameter": {
            "type": "string",
            "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:\n\n *  `User` The `parameter` is the user account ID.\n *  `Group` The `parameter` is the group name.\n *  `ProjectRole` The `parameter` is the project role ID.\n *  `UserCustomField` The `parameter` is the ID of the custom field.\n *  `GroupCustomField` The `parameter` is the ID of the custom field."
          },
          "recipient": {
            "type": "string",
            "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:\n\n *  `User`, `recipient` is the user account ID.\n *  `Group`, `recipient` is the group ID.\n *  `ProjectRole`, `recipient` is the project role ID.\n *  `UserCustomField`, `recipient` is the ID of the custom field.\n *  `GroupCustomField`, `recipient` is the ID of the custom field."
          },
          "group": {
            "description": "The specified group.",
            "allOf": [
              {
                "$ref": "#/components/schemas/GroupName"
              }
            ]
          },
          "field": {
            "description": "The custom user or group field.",
            "allOf": [
              {
                "$ref": "#/components/schemas/FieldDetails"
              }
            ]
          },
          "emailAddress": {
            "type": "string",
            "description": "The email address."
          },
          "projectRole": {
            "description": "The specified project role.",
            "allOf": [
              {
                "$ref": "#/components/schemas/ProjectRole"
              }
            ]
          },
          "user": {
            "description": "The specified user.",
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDetails"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a notification associated with an event."
      },
      "FieldDetails": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the field."
          },
          "key": {
            "type": "string",
            "description": "The key of the field."
          },
          "name": {
            "type": "string",
            "description": "The name of the field."
          },
          "custom": {
            "type": "boolean",
            "description": "Whether the field is a custom field."
          },
          "orderable": {
            "type": "boolean",
            "description": "Whether the content of the field can be used to order lists."
          },
          "navigable": {
            "type": "boolean",
            "description": "Whether the field can be used as a column on the issue navigator."
          },
          "searchable": {
            "type": "boolean",
            "description": "Whether the content of the field can be searched."
          },
          "clauseNames": {
            "uniqueItems": true,
            "type": "array",
            "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"
            }
          },
          "scope": {
            "description": "The scope of the field.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          },
          "schema": {
            "description": "The data schema for the field.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JsonTypeBean"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a field.",
        "xml": {
          "name": "field"
        }
      },
      "NotificationEvent": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "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"
          },
          "name": {
            "type": "string",
            "description": "The name of the event."
          },
          "description": {
            "type": "string",
            "description": "The description of the event."
          },
          "templateEvent": {
            "description": "The template of the event. Only custom events configured by Jira administrators have template.",
            "allOf": [
              {
                "$ref": "#/components/schemas/NotificationEvent"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a notification event."
      },
      "NotificationScheme": {
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Expand options that include additional notification scheme details in the response."
          },
          "id": {
            "type": "integer",
            "description": "The ID of the notification scheme.",
            "format": "int64"
          },
          "self": {
            "type": "string"
          },
          "name": {
            "type": "string",
            "description": "The name of the notification scheme."
          },
          "description": {
            "type": "string",
            "description": "The description of the notification scheme."
          },
          "notificationSchemeEvents": {
            "type": "array",
            "description": "The notification events and associated recipients.",
            "items": {
              "$ref": "#/components/schemas/NotificationSchemeEvent"
            }
          },
          "scope": {
            "description": "The scope of the notification scheme.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          },
          "projects": {
            "type": "array",
            "description": "The list of project IDs associated with the notification scheme.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about a notification scheme."
      },
      "NotificationSchemeEvent": {
        "type": "object",
        "properties": {
          "event": {
            "$ref": "#/components/schemas/NotificationEvent"
          },
          "notifications": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/EventNotification"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about a notification scheme event."
      },
      "PageBeanNotificationScheme": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/NotificationScheme"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "UpdateNotificationSchemeDetails": {
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 255,
            "type": "string",
            "description": "The name of the notification scheme. Must be unique.",
            "writeOnly": true
          },
          "description": {
            "maxLength": 4000,
            "type": "string",
            "description": "The description of the notification scheme.",
            "writeOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Details of a notification scheme."
      },
      "CreateNotificationSchemeDetails": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 255,
            "type": "string",
            "description": "The name of the notification scheme. Must be unique (case-insensitive).",
            "writeOnly": true
          },
          "description": {
            "maxLength": 4000,
            "type": "string",
            "description": "The description of the notification scheme.",
            "writeOnly": true
          },
          "notificationSchemeEvents": {
            "type": "array",
            "description": "The list of notifications which should be added to the notification scheme.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchemeEventDetails"
            }
          }
        },
        "additionalProperties": true,
        "description": "Details of an notification scheme."
      },
      "NotificationSchemeEventDetails": {
        "required": [
          "event",
          "notifications"
        ],
        "type": "object",
        "properties": {
          "event": {
            "description": "The ID of the event.",
            "allOf": [
              {
                "$ref": "#/components/schemas/NotificationSchemeEventTypeId"
              }
            ]
          },
          "notifications": {
            "maxLength": 255,
            "type": "array",
            "description": "The list of notifications mapped to a specified event.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchemeNotificationDetails"
            }
          }
        },
        "additionalProperties": true,
        "description": "Details of a notification scheme event.",
        "writeOnly": true
      },
      "NotificationSchemeEventTypeId": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the notification scheme event.",
            "writeOnly": true
          }
        },
        "additionalProperties": true,
        "description": "The ID of an event that is being mapped to notifications.",
        "writeOnly": true
      },
      "NotificationSchemeNotificationDetails": {
        "maxLength": 255,
        "required": [
          "notificationType"
        ],
        "type": "object",
        "properties": {
          "notificationType": {
            "type": "string",
            "description": "The notification type, e.g `CurrentAssignee`, `Group`, `EmailAddress`.",
            "writeOnly": true
          },
          "parameter": {
            "type": "string",
            "description": "The value corresponding to the specified notification type.",
            "writeOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Details of a notification within a notification scheme.",
        "writeOnly": true
      },
      "NotificationSchemeId": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of a notification scheme.",
            "readOnly": true
          }
        },
        "additionalProperties": true,
        "description": "The ID of a notification scheme."
      },
      "AddNotificationsDetails": {
        "required": [
          "notificationSchemeEvents"
        ],
        "type": "object",
        "properties": {
          "notificationSchemeEvents": {
            "type": "array",
            "description": "The list of notifications which should be added to the notification scheme.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/NotificationSchemeEventDetails"
            }
          }
        },
        "additionalProperties": true,
        "description": "Details of notifications which should be added to the notification scheme."
      },
      "ProjectEmailAddress": {
        "type": "object",
        "properties": {
          "emailAddress": {
            "type": "string",
            "description": "The email address."
          },
          "emailAddressStatus": {
            "type": "array",
            "description": "When using a custom domain, the status of the email address.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "A project's sender email address."
      },
      "ProjectType": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "description": "The key of the project type.",
            "readOnly": true
          },
          "formattedKey": {
            "type": "string",
            "description": "The formatted key of the project type.",
            "readOnly": true
          },
          "descriptionI18nKey": {
            "type": "string",
            "description": "The key of the project type's description.",
            "readOnly": true
          },
          "icon": {
            "type": "string",
            "description": "The icon of the project type.",
            "readOnly": true
          },
          "color": {
            "type": "string",
            "description": "The color of the project type.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details about a project type."
      },
      "ProjectIssueSecurityLevels": {
        "required": [
          "levels"
        ],
        "type": "object",
        "properties": {
          "levels": {
            "type": "array",
            "description": "Issue level security items list.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/SecurityLevel"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of issue level security items in a project."
      },
      "SecurityLevel": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the issue level security item.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the issue level security item.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the issue level security item.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the issue level security item.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue level security item."
      },
      "Dashboard": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string"
          },
          "id": {
            "type": "string",
            "description": "The ID of the dashboard.",
            "readOnly": true
          },
          "isFavourite": {
            "type": "boolean",
            "description": "Whether the dashboard is selected as a favorite by the user.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the dashboard.",
            "readOnly": true
          },
          "owner": {
            "description": "The owner of the dashboard.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserBean"
              }
            ]
          },
          "popularity": {
            "type": "integer",
            "description": "The number of users who have this dashboard as a favorite.",
            "format": "int64",
            "readOnly": true
          },
          "rank": {
            "type": "integer",
            "description": "The rank of this dashboard.",
            "format": "int32",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of these dashboard details.",
            "format": "uri",
            "readOnly": true
          },
          "sharePermissions": {
            "type": "array",
            "description": "The details of any view share permissions for the dashboard.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/SharePermission"
            }
          },
          "editPermissions": {
            "type": "array",
            "description": "The details of any edit share permissions for the dashboard.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/SharePermission"
            }
          },
          "automaticRefreshMs": {
            "type": "integer",
            "description": "The automatic refresh interval for the dashboard in milliseconds.",
            "format": "int32",
            "readOnly": true
          },
          "view": {
            "type": "string",
            "description": "The URL of the dashboard.",
            "readOnly": true
          },
          "isWritable": {
            "type": "boolean",
            "description": "Whether the current user has permission to edit the dashboard.",
            "readOnly": true
          },
          "systemDashboard": {
            "type": "boolean",
            "description": "Whether the current dashboard is system dashboard.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of a dashboard."
      },
      "PageOfDashboards": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned on the page.",
            "format": "int32",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of results that could be on the page.",
            "format": "int32",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of results on the page.",
            "format": "int32",
            "readOnly": true
          },
          "prev": {
            "type": "string",
            "description": "The URL of the previous page of results, if any.",
            "readOnly": true
          },
          "next": {
            "type": "string",
            "description": "The URL of the next page of results, if any.",
            "readOnly": true
          },
          "dashboards": {
            "type": "array",
            "description": "List of dashboards.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Dashboard"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page containing dashboard details."
      },
      "PageBeanDashboard": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Dashboard"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "DashboardDetails": {
        "required": [
          "editPermissions",
          "name",
          "sharePermissions"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the dashboard."
          },
          "description": {
            "type": "string",
            "description": "The description of the dashboard."
          },
          "sharePermissions": {
            "type": "array",
            "description": "The share permissions for the dashboard.",
            "items": {
              "$ref": "#/components/schemas/SharePermission"
            }
          },
          "editPermissions": {
            "type": "array",
            "description": "The edit permissions for the dashboard.",
            "items": {
              "$ref": "#/components/schemas/SharePermission"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of a dashboard."
      },
      "AvailableDashboardGadget": {
        "required": [
          "title"
        ],
        "type": "object",
        "properties": {
          "moduleKey": {
            "type": "string",
            "description": "The module key of the gadget type.",
            "readOnly": true
          },
          "uri": {
            "type": "string",
            "description": "The URI of the gadget type.",
            "readOnly": true
          },
          "title": {
            "type": "string",
            "description": "The title of the gadget.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The details of the available dashboard gadget."
      },
      "AvailableDashboardGadgetsResponse": {
        "required": [
          "gadgets"
        ],
        "type": "object",
        "properties": {
          "gadgets": {
            "type": "array",
            "description": "The list of available gadgets.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/AvailableDashboardGadget"
            }
          }
        },
        "additionalProperties": false,
        "description": "The list of available gadgets."
      },
      "DashboardGadget": {
        "required": [
          "color",
          "id",
          "position",
          "title"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the gadget instance.",
            "format": "int64",
            "readOnly": true
          },
          "moduleKey": {
            "type": "string",
            "description": "The module key of the gadget type.",
            "readOnly": true
          },
          "uri": {
            "type": "string",
            "description": "The URI of the gadget type.",
            "readOnly": true
          },
          "color": {
            "type": "string",
            "description": "The color of the gadget. Should be one of `blue`, `red`, `yellow`, `green`, `cyan`, `purple`, `gray`, or `white`.",
            "readOnly": true,
            "enum": [
              "blue",
              "red",
              "yellow",
              "green",
              "cyan",
              "purple",
              "gray",
              "white"
            ]
          },
          "position": {
            "description": "The position of the gadget.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/DashboardGadgetPosition"
              }
            ]
          },
          "title": {
            "type": "string",
            "description": "The title of the gadget.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of a gadget."
      },
      "DashboardGadgetPosition": {
        "required": [
          "The column position of the gadget.",
          "The row position of the gadget."
        ],
        "type": "object",
        "properties": {
          "The row position of the gadget.": {
            "type": "integer",
            "format": "int32"
          },
          "The column position of the gadget.": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false,
        "description": "Details of a gadget position.",
        "writeOnly": true
      },
      "DashboardGadgetResponse": {
        "required": [
          "gadgets"
        ],
        "type": "object",
        "properties": {
          "gadgets": {
            "type": "array",
            "description": "The list of gadgets.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/DashboardGadget"
            }
          }
        },
        "additionalProperties": false,
        "description": "The list of gadgets on the dashboard."
      },
      "DashboardGadgetSettings": {
        "type": "object",
        "properties": {
          "moduleKey": {
            "type": "string",
            "description": "The module key of the gadget type. Can't be provided with `uri`.",
            "writeOnly": true
          },
          "uri": {
            "type": "string",
            "description": "The URI of the gadget type. Can't be provided with `moduleKey`.",
            "writeOnly": true
          },
          "color": {
            "type": "string",
            "description": "The color of the gadget. Should be one of `blue`, `red`, `yellow`, `green`, `cyan`, `purple`, `gray`, or `white`.",
            "writeOnly": true
          },
          "position": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/DashboardGadgetPosition"
              }
            ]
          },
          "title": {
            "type": "string",
            "description": "The title of the gadget.",
            "writeOnly": true
          },
          "ignoreUriAndModuleKeyValidation": {
            "type": "boolean",
            "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.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of the settings for a dashboard gadget."
      },
      "DashboardGadgetUpdateRequest": {
        "type": "object",
        "properties": {
          "title": {
            "type": "string",
            "description": "The title of the gadget.",
            "writeOnly": true
          },
          "color": {
            "type": "string",
            "description": "The color of the gadget. Should be one of `blue`, `red`, `yellow`, `green`, `cyan`, `purple`, `gray`, or `white`.",
            "writeOnly": true
          },
          "position": {
            "description": "The position of the gadget.",
            "allOf": [
              {
                "$ref": "#/components/schemas/DashboardGadgetPosition"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "The details of the gadget to update."
      },
      "CustomContextVariable": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of custom context variable."
          }
        },
        "additionalProperties": false,
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "user": "#/components/schemas/UserContextVariable",
            "issue": "#/components/schemas/IssueContextVariable",
            "json": "#/components/schemas/JsonContextVariable"
          }
        },
        "oneOf": [
          {
            "$ref": "#/components/schemas/UserContextVariable"
          },
          {
            "$ref": "#/components/schemas/IssueContextVariable"
          },
          {
            "$ref": "#/components/schemas/JsonContextVariable"
          }
        ]
      },
      "IdOrKeyBean": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the referenced item.",
            "format": "int64"
          },
          "key": {
            "type": "string",
            "description": "The key of the referenced item."
          }
        },
        "additionalProperties": false
      },
      "IssueContextVariable": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of custom context variable."
          },
          "id": {
            "type": "integer",
            "description": "The issue ID.",
            "format": "int64"
          },
          "key": {
            "type": "string",
            "description": "The issue key."
          }
        },
        "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."
      },
      "JexpIssues": {
        "type": "object",
        "properties": {
          "jql": {
            "description": "The JQL query that specifies the set of issues available in the Jira expression.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JexpJqlIssues"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "The JQL specifying the issues available in the evaluated Jira expression under the `issues` context variable."
      },
      "JexpJqlIssues": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "The JQL query."
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first issue to return from the JQL query.",
            "format": "int64"
          },
          "maxResults": {
            "type": "integer",
            "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"
          },
          "validation": {
            "type": "string",
            "description": "Determines how to validate the JQL query and treat the validation results.",
            "enum": [
              "strict",
              "warn",
              "none"
            ],
            "default": "strict"
          }
        },
        "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."
      },
      "JiraExpressionEvalContextBean": {
        "type": "object",
        "properties": {
          "issue": {
            "description": "The issue that is available under the `issue` variable when evaluating the expression.",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdOrKeyBean"
              }
            ]
          },
          "issues": {
            "description": "The collection of issues that is available under the `issues` variable when evaluating the expression.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JexpIssues"
              }
            ]
          },
          "project": {
            "description": "The project that is available under the `project` variable when evaluating the expression.",
            "allOf": [
              {
                "$ref": "#/components/schemas/IdOrKeyBean"
              }
            ]
          },
          "sprint": {
            "type": "integer",
            "description": "The ID of the sprint that is available under the `sprint` variable when evaluating the expression.",
            "format": "int64"
          },
          "board": {
            "type": "integer",
            "description": "The ID of the board that is available under the `board` variable when evaluating the expression.",
            "format": "int64"
          },
          "serviceDesk": {
            "type": "integer",
            "description": "The ID of the service desk that is available under the `serviceDesk` variable when evaluating the expression.",
            "format": "int64"
          },
          "customerRequest": {
            "type": "integer",
            "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"
          },
          "custom": {
            "type": "array",
            "description": "Custom context variables and their types. These variable types are available for use in a custom context:\n\n *  `user`: A [user](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#user) specified as an Atlassian account ID.\n *  `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.\n *  `json`: A JSON object containing custom content.\n *  `list`: A JSON list of `user`, `issue`, or `json` variable types.",
            "items": {
              "$ref": "#/components/schemas/CustomContextVariable"
            }
          }
        },
        "additionalProperties": false
      },
      "JiraExpressionEvalRequestBean": {
        "required": [
          "expression"
        ],
        "type": "object",
        "properties": {
          "expression": {
            "type": "string",
            "description": "The Jira expression to evaluate.",
            "example": "{ key: issue.key, type: issue.issueType.name, links: issue.links.map(link => link.linkedIssue.id) }"
          },
          "context": {
            "description": "The context in which the Jira expression is evaluated.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraExpressionEvalContextBean"
              }
            ]
          }
        },
        "additionalProperties": false
      },
      "JsonContextVariable": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of custom context variable."
          },
          "value": {
            "type": "object",
            "description": "A JSON object containing custom content."
          }
        },
        "description": "A JSON object with custom content."
      },
      "UserContextVariable": {
        "required": [
          "accountId",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Type of custom context variable."
          },
          "accountId": {
            "type": "string",
            "description": "The account ID of the user."
          }
        },
        "description": "A [user](https://developer.atlassian.com/cloud/jira/platform/jira-expressions-type-reference#user) specified as an Atlassian account ID."
      },
      "IssuesJqlMetaDataBean": {
        "required": [
          "count",
          "maxResults",
          "startAt",
          "totalCount"
        ],
        "type": "object",
        "properties": {
          "startAt": {
            "type": "integer",
            "description": "The index of the first issue.",
            "format": "int64"
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of issues that could be loaded in this evaluation.",
            "format": "int32"
          },
          "count": {
            "type": "integer",
            "description": "The number of issues that were loaded in this evaluation.",
            "format": "int32"
          },
          "totalCount": {
            "type": "integer",
            "description": "The total number of issues the JQL returned.",
            "format": "int64"
          },
          "validationWarnings": {
            "type": "array",
            "description": "Any warnings related to the JQL query. Present only if the validation mode was set to `warn`.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "The description of the page of issues loaded by the provided JQL query."
      },
      "IssuesMetaBean": {
        "type": "object",
        "properties": {
          "jql": {
            "$ref": "#/components/schemas/IssuesJqlMetaDataBean"
          }
        },
        "additionalProperties": false,
        "description": "Meta data describing the `issues` context variable."
      },
      "JiraExpressionEvaluationMetaDataBean": {
        "type": "object",
        "properties": {
          "complexity": {
            "description": "Contains information about the expression complexity. For example, the number of steps it took to evaluate the expression.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraExpressionsComplexityBean"
              }
            ]
          },
          "issues": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/IssuesMetaBean"
              }
            ]
          }
        },
        "additionalProperties": false
      },
      "JiraExpressionResult": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "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.)"
          },
          "meta": {
            "description": "Contains various characteristics of the performed expression evaluation.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraExpressionEvaluationMetaDataBean"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "The result of evaluating a Jira expression."
      },
      "JiraExpressionsComplexityBean": {
        "required": [
          "beans",
          "expensiveOperations",
          "primitiveValues",
          "steps"
        ],
        "type": "object",
        "properties": {
          "steps": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraExpressionsComplexityValueBean"
              }
            ]
          },
          "expensiveOperations": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraExpressionsComplexityValueBean"
              }
            ]
          },
          "beans": {
            "description": "The number of Jira REST API beans returned in the response.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraExpressionsComplexityValueBean"
              }
            ]
          },
          "primitiveValues": {
            "description": "The number of primitive values returned in the response.",
            "allOf": [
              {
                "$ref": "#/components/schemas/JiraExpressionsComplexityValueBean"
              }
            ]
          }
        },
        "additionalProperties": false
      },
      "JiraExpressionsComplexityValueBean": {
        "required": [
          "limit",
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "integer",
            "description": "The complexity value of the current expression.",
            "format": "int32"
          },
          "limit": {
            "type": "integer",
            "description": "The maximum allowed complexity. The evaluation will fail if this value is exceeded.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "JiraExpressionForAnalysis": {
        "required": [
          "expressions"
        ],
        "type": "object",
        "properties": {
          "expressions": {
            "type": "array",
            "description": "The list of Jira expressions to analyse.",
            "example": "issues.map(issue => issue.properties['property_key'])",
            "items": {
              "type": "string",
              "description": "The list of Jira expressions to analyse.",
              "example": "issues.map(issue => issue.properties['property_key'])"
            }
          },
          "contextVariables": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "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."
            },
            "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."
          }
        },
        "additionalProperties": false,
        "description": "Details of Jira expressions for analysis."
      },
      "JiraExpressionAnalysis": {
        "required": [
          "expression",
          "valid"
        ],
        "type": "object",
        "properties": {
          "expression": {
            "type": "string",
            "description": "The analysed expression."
          },
          "errors": {
            "type": "array",
            "description": "A list of validation errors. Not included if the expression is valid.",
            "items": {
              "$ref": "#/components/schemas/JiraExpressionValidationError"
            }
          },
          "valid": {
            "type": "boolean",
            "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": {
            "type": "string",
            "description": "EXPERIMENTAL. The inferred type of the expression."
          },
          "complexity": {
            "$ref": "#/components/schemas/JiraExpressionComplexity"
          }
        },
        "additionalProperties": false,
        "description": "Details about the analysed Jira expression."
      },
      "JiraExpressionComplexity": {
        "required": [
          "expensiveOperations"
        ],
        "type": "object",
        "properties": {
          "expensiveOperations": {
            "type": "string",
            "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:\n\n *  `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.\n *  `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)."
          },
          "variables": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "description": "Variables used in the formula, mapped to the parts of the expression they refer to."
            },
            "description": "Variables used in the formula, mapped to the parts of the expression they refer to."
          }
        },
        "additionalProperties": false,
        "description": "Details about the complexity of the analysed Jira expression."
      },
      "JiraExpressionValidationError": {
        "required": [
          "message",
          "type"
        ],
        "type": "object",
        "properties": {
          "line": {
            "type": "integer",
            "description": "The text line in which the error occurred.",
            "format": "int32"
          },
          "column": {
            "type": "integer",
            "description": "The text column in which the error occurred.",
            "format": "int32"
          },
          "expression": {
            "type": "string",
            "description": "The part of the expression in which the error occurred."
          },
          "message": {
            "type": "string",
            "description": "Details about the error.",
            "example": "!, -, typeof, (, IDENTIFIER, null, true, false, NUMBER, STRING, TEMPLATE_LITERAL, new, [ or { expected, > encountered."
          },
          "type": {
            "type": "string",
            "description": "The error type.",
            "enum": [
              "syntax",
              "type",
              "other"
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about syntax and type errors. The error details apply to the entire expression, unless the object includes:\n\n *  `line` and `column`\n *  `expression`"
      },
      "JiraExpressionsAnalysis": {
        "required": [
          "results"
        ],
        "type": "object",
        "properties": {
          "results": {
            "type": "array",
            "description": "The results of Jira expressions analysis.",
            "items": {
              "$ref": "#/components/schemas/JiraExpressionAnalysis"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about the analysed Jira expression."
      },
      "CustomFieldReplacement": {
        "type": "object",
        "properties": {
          "customFieldId": {
            "type": "integer",
            "description": "The ID of the custom field in which to replace the version number.",
            "format": "int64"
          },
          "moveTo": {
            "type": "integer",
            "description": "The version number to use as a replacement for the deleted version.",
            "format": "int64"
          }
        },
        "additionalProperties": false,
        "description": "Details about the replacement for a deleted version."
      },
      "DeleteAndReplaceVersionBean": {
        "type": "object",
        "properties": {
          "moveFixIssuesTo": {
            "type": "integer",
            "description": "The ID of the version to update `fixVersion` to when the field contains the deleted version.",
            "format": "int64"
          },
          "moveAffectedIssuesTo": {
            "type": "integer",
            "description": "The ID of the version to update `affectedVersion` to when the field contains the deleted version.",
            "format": "int64"
          },
          "customFieldReplacementList": {
            "type": "array",
            "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"
            }
          }
        },
        "additionalProperties": false
      },
      "VersionIssueCounts": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of these count details.",
            "format": "uri",
            "readOnly": true
          },
          "issuesFixedCount": {
            "type": "integer",
            "description": "Count of issues where the `fixVersion` is set to the version.",
            "format": "int64",
            "readOnly": true
          },
          "issuesAffectedCount": {
            "type": "integer",
            "description": "Count of issues where the `affectedVersion` is set to the version.",
            "format": "int64",
            "readOnly": true
          },
          "issueCountWithCustomFieldsShowingVersion": {
            "type": "integer",
            "description": "Count of issues where a version custom field is set to the version.",
            "format": "int64",
            "readOnly": true
          },
          "customFieldUsage": {
            "type": "array",
            "description": "List of custom fields using the version.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/VersionUsageInCustomField"
            }
          }
        },
        "additionalProperties": false,
        "description": "Various counts of issues within a version.",
        "xml": {
          "name": "version"
        }
      },
      "VersionUsageInCustomField": {
        "type": "object",
        "properties": {
          "fieldName": {
            "type": "string",
            "description": "The name of the custom field.",
            "readOnly": true
          },
          "customFieldId": {
            "type": "integer",
            "description": "The ID of the custom field.",
            "format": "int64",
            "readOnly": true
          },
          "issueCountWithVersionInCustomField": {
            "type": "integer",
            "description": "Count of the issues where the custom field contains the version.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "List of custom fields using the version."
      },
      "VersionUnresolvedIssuesCount": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of these count details.",
            "format": "uri",
            "readOnly": true
          },
          "issuesUnresolvedCount": {
            "type": "integer",
            "description": "Count of unresolved issues.",
            "format": "int64",
            "readOnly": true
          },
          "issuesCount": {
            "type": "integer",
            "description": "Count of issues.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Count of a version's unresolved issues.",
        "xml": {
          "name": "version"
        }
      },
      "VersionMoveBean": {
        "type": "object",
        "properties": {
          "after": {
            "type": "string",
            "description": "The URL (self link) of the version after which to place the moved version. Cannot be used with `position`.",
            "format": "uri"
          },
          "position": {
            "type": "string",
            "description": "An absolute position in which to place the moved version. Cannot be used with `after`.",
            "enum": [
              "Earlier",
              "Later",
              "First",
              "Last"
            ]
          }
        },
        "additionalProperties": false,
        "xml": {
          "name": "version"
        }
      },
      "FoundUsers": {
        "type": "object",
        "properties": {
          "users": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/UserPickerUser"
            }
          },
          "total": {
            "type": "integer",
            "description": "The total number of users found in the search.",
            "format": "int32"
          },
          "header": {
            "type": "string",
            "description": "Header text indicating the number of users in the response and the total number of users found in the search."
          }
        },
        "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."
      },
      "UserPickerUser": {
        "type": "object",
        "properties": {
          "accountId": {
            "type": "string",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*."
          },
          "name": {
            "type": "string",
            "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."
          },
          "key": {
            "type": "string",
            "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."
          },
          "html": {
            "type": "string",
            "description": "The display name, email address, and key of the user with the matched query string highlighted with the HTML bold tag."
          },
          "displayName": {
            "type": "string",
            "description": "The display name of the user. Depending on the user’s privacy setting, this may be returned as null."
          },
          "avatarUrl": {
            "type": "string",
            "description": "The avatar URL of the user.",
            "format": "uri"
          }
        },
        "additionalProperties": false,
        "description": "A user found in a search."
      },
      "NewUserDetails": {
        "required": [
          "emailAddress"
        ],
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the user.",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "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."
          },
          "name": {
            "type": "string",
            "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."
          },
          "password": {
            "type": "string",
            "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."
          },
          "emailAddress": {
            "type": "string",
            "description": "The email address for the user."
          },
          "displayName": {
            "type": "string",
            "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."
          },
          "applicationKeys": {
            "type": "array",
            "description": "Deprecated, do not use.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": true,
        "description": "The user details."
      },
      "Avatar": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the avatar."
          },
          "owner": {
            "type": "string",
            "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
          },
          "isSystemAvatar": {
            "type": "boolean",
            "description": "Whether the avatar is a system avatar.",
            "readOnly": true
          },
          "isSelected": {
            "type": "boolean",
            "description": "Whether the avatar is used in Jira. For example, shown as a project's avatar.",
            "readOnly": true
          },
          "isDeletable": {
            "type": "boolean",
            "description": "Whether the avatar can be deleted.",
            "readOnly": true
          },
          "fileName": {
            "type": "string",
            "description": "The file name of the avatar icon. Returned for system avatars.",
            "readOnly": true
          },
          "urls": {
            "type": "object",
            "additionalProperties": {
              "type": "string",
              "format": "uri",
              "readOnly": true
            },
            "description": "The list of avatar icon URLs.",
            "readOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Details of an avatar."
      },
      "Avatars": {
        "type": "object",
        "properties": {
          "system": {
            "type": "array",
            "description": "System avatars list.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Avatar"
            }
          },
          "custom": {
            "type": "array",
            "description": "Custom avatars list.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Avatar"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about system and custom avatars."
      },
      "ScreenableTab": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the screen tab.",
            "format": "int64",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the screen tab. The maximum length is 255 characters."
          }
        },
        "additionalProperties": false,
        "description": "A screen tab."
      },
      "PageBeanScreen": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Screen"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "Screen": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the screen.",
            "format": "int64",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the screen.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the screen.",
            "readOnly": true
          },
          "scope": {
            "description": "The scope of the screen.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "A screen."
      },
      "ScreenableField": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the screen tab field.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the screen tab field. Required on create and update. The maximum length is 255 characters."
          }
        },
        "additionalProperties": false,
        "description": "A screen tab field."
      },
      "MoveFieldBean": {
        "type": "object",
        "properties": {
          "after": {
            "type": "string",
            "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"
          },
          "position": {
            "type": "string",
            "description": "The named position to which the screen tab field should be moved. Required if `after` isn't provided.",
            "enum": [
              "Earlier",
              "Later",
              "First",
              "Last"
            ]
          }
        },
        "additionalProperties": false
      },
      "AddFieldBean": {
        "required": [
          "fieldId"
        ],
        "type": "object",
        "properties": {
          "fieldId": {
            "type": "string",
            "description": "The ID of the field to add."
          }
        },
        "additionalProperties": false
      },
      "ScreenDetails": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the screen. The name must be unique. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the screen. The maximum length is 255 characters.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of a screen."
      },
      "UpdateScreenDetails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the screen. The name must be unique. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the screen. The maximum length is 255 characters.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of a screen."
      },
      "Resolution": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the issue resolution.",
            "format": "uri"
          },
          "id": {
            "type": "string",
            "description": "The ID of the issue resolution."
          },
          "description": {
            "type": "string",
            "description": "The description of the issue resolution."
          },
          "name": {
            "type": "string",
            "description": "The name of the issue resolution."
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue resolution.",
        "xml": {
          "name": "resolution"
        }
      },
      "CreateResolutionDetails": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 60,
            "type": "string",
            "description": "The name of the resolution. Must be unique (case-insensitive).",
            "writeOnly": true
          },
          "description": {
            "maxLength": 255,
            "type": "string",
            "description": "The description of the resolution.",
            "writeOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Details of an issue resolution."
      },
      "ResolutionId": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the issue resolution.",
            "readOnly": true
          }
        },
        "additionalProperties": true,
        "description": "The ID of an issue resolution."
      },
      "UpdateResolutionDetails": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 60,
            "type": "string",
            "description": "The name of the resolution. Must be unique.",
            "writeOnly": true
          },
          "description": {
            "maxLength": 255,
            "type": "string",
            "description": "The description of the resolution.",
            "writeOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Details of an issue resolution."
      },
      "PageBeanResolutionJsonBean": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ResolutionJsonBean"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "ResolutionJsonBean": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string"
          },
          "id": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "iconUrl": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "default": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "SetDefaultResolutionRequest": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "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.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The new default issue resolution."
      },
      "ReorderIssueResolutionsRequest": {
        "required": [
          "ids"
        ],
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "description": "The list of resolution IDs to be reordered. Cannot contain duplicates nor after ID.",
            "writeOnly": true,
            "items": {
              "type": "string",
              "writeOnly": true
            }
          },
          "after": {
            "type": "string",
            "description": "The ID of the resolution. Required if `position` isn't provided.",
            "writeOnly": true
          },
          "position": {
            "type": "string",
            "description": "The position for issue resolutions to be moved to. Required if `after` isn't provided.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Change the order of issue resolutions."
      },
      "CreateProjectDetails": {
        "required": [
          "key",
          "name"
        ],
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "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."
          },
          "name": {
            "type": "string",
            "description": "The name of the project."
          },
          "description": {
            "type": "string",
            "description": "A brief description of the project."
          },
          "lead": {
            "type": "string",
            "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`."
          },
          "leadAccountId": {
            "maxLength": 128,
            "type": "string",
            "description": "The account ID of the project lead. Either `lead` or `leadAccountId` must be set when creating a project. Cannot be provided with `lead`."
          },
          "url": {
            "type": "string",
            "description": "A link to information about this project, such as project documentation"
          },
          "assigneeType": {
            "type": "string",
            "description": "The default assignee when creating issues for this project.",
            "enum": [
              "PROJECT_LEAD",
              "UNASSIGNED"
            ]
          },
          "avatarId": {
            "type": "integer",
            "description": "An integer value for the project's avatar.",
            "format": "int64"
          },
          "issueSecurityScheme": {
            "type": "integer",
            "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"
          },
          "permissionScheme": {
            "type": "integer",
            "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"
          },
          "notificationScheme": {
            "type": "integer",
            "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"
          },
          "categoryId": {
            "type": "integer",
            "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"
          },
          "projectTypeKey": {
            "type": "string",
            "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"
            ]
          },
          "projectTemplateKey": {
            "type": "string",
            "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-halp-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-"
            ]
          },
          "workflowScheme": {
            "type": "integer",
            "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"
          },
          "issueTypeScreenScheme": {
            "type": "integer",
            "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"
          },
          "issueTypeScheme": {
            "type": "integer",
            "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"
          },
          "fieldConfigurationScheme": {
            "type": "integer",
            "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"
          }
        },
        "additionalProperties": false,
        "description": "Details about the project."
      },
      "ProjectIdentifiers": {
        "required": [
          "id",
          "key",
          "self"
        ],
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the created project.",
            "format": "uri",
            "readOnly": true
          },
          "id": {
            "type": "integer",
            "description": "The ID of the created project.",
            "format": "int64",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "description": "The key of the created project.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Identifiers for a project."
      },
      "UpdateProjectDetails": {
        "type": "object",
        "properties": {
          "key": {
            "type": "string",
            "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."
          },
          "name": {
            "type": "string",
            "description": "The name of the project."
          },
          "description": {
            "type": "string",
            "description": "A brief description of the project."
          },
          "lead": {
            "type": "string",
            "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`."
          },
          "leadAccountId": {
            "maxLength": 128,
            "type": "string",
            "description": "The account ID of the project lead. Cannot be provided with `lead`."
          },
          "url": {
            "type": "string",
            "description": "A link to information about this project, such as project documentation"
          },
          "assigneeType": {
            "type": "string",
            "description": "The default assignee when creating issues for this project.",
            "enum": [
              "PROJECT_LEAD",
              "UNASSIGNED"
            ]
          },
          "avatarId": {
            "type": "integer",
            "description": "An integer value for the project's avatar.",
            "format": "int64"
          },
          "issueSecurityScheme": {
            "type": "integer",
            "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"
          },
          "permissionScheme": {
            "type": "integer",
            "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"
          },
          "notificationScheme": {
            "type": "integer",
            "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"
          },
          "categoryId": {
            "type": "integer",
            "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"
          }
        },
        "additionalProperties": false,
        "description": "Details about the project."
      },
      "PageBeanVersion": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Version"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "ComponentWithIssueCount": {
        "type": "object",
        "properties": {
          "issueCount": {
            "type": "integer",
            "description": "Count of issues for the component.",
            "format": "int64",
            "readOnly": true
          },
          "projectId": {
            "type": "integer",
            "description": "Not used.",
            "format": "int64",
            "readOnly": true
          },
          "assignee": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "realAssignee": {
            "description": "The user assigned to issues created with this component, when `assigneeType` does not identify a valid assignee.",
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "isAssigneeTypeValid": {
            "type": "boolean",
            "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
          },
          "realAssigneeType": {
            "type": "string",
            "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:\n\n *  `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.\n *  `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.\n *  `UNASSIGNED` when `assigneeType` is `UNASSIGNED` and Jira is configured to allow unassigned issues.\n *  `PROJECT_DEFAULT` when none of the preceding cases are true.",
            "readOnly": true,
            "enum": [
              "PROJECT_DEFAULT",
              "COMPONENT_LEAD",
              "PROJECT_LEAD",
              "UNASSIGNED"
            ]
          },
          "description": {
            "type": "string",
            "description": "The description for the component.",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL for this count of the issues contained in the component.",
            "format": "uri",
            "readOnly": true
          },
          "project": {
            "type": "string",
            "description": "The key of the project to which the component is assigned.",
            "readOnly": true
          },
          "lead": {
            "description": "The user details for the component's lead user.",
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "assigneeType": {
            "type": "string",
            "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:\n\n *  `PROJECT_LEAD` the assignee to any issues created with this component is nominally the lead for the project the component is in.\n *  `COMPONENT_LEAD` the assignee to any issues created with this component is nominally the lead for the component.\n *  `UNASSIGNED` an assignee is not set for issues created with this component.\n *  `PROJECT_DEFAULT` the assignee to any issues created with this component is nominally the default assignee for the project that the component is in.",
            "readOnly": true,
            "enum": [
              "PROJECT_DEFAULT",
              "COMPONENT_LEAD",
              "PROJECT_LEAD",
              "UNASSIGNED"
            ]
          },
          "name": {
            "type": "string",
            "description": "The name for the component.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The unique identifier for the component.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details about a component with a count of the issues it contains."
      },
      "PageBeanComponentWithIssueCount": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ComponentWithIssueCount"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "StringList": {
        "type": "object",
        "additionalProperties": false
      },
      "PageBeanProject": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Project"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "ProjectAvatars": {
        "type": "object",
        "properties": {
          "system": {
            "type": "array",
            "description": "List of avatars included with Jira. These avatars cannot be deleted.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Avatar"
            }
          },
          "custom": {
            "type": "array",
            "description": "List of avatars added to Jira. These avatars may be deleted.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Avatar"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of project avatars."
      },
      "IssueTypeWithStatus": {
        "required": [
          "id",
          "name",
          "self",
          "statuses",
          "subtask"
        ],
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the issue type's status details.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the issue type.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the issue type.",
            "readOnly": true
          },
          "subtask": {
            "type": "boolean",
            "description": "Whether this issue type represents subtasks.",
            "readOnly": true
          },
          "statuses": {
            "type": "array",
            "description": "List of status details for the issue type.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/StatusDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "Status details for an issue type."
      },
      "SecurityScheme": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the issue security scheme.",
            "readOnly": true
          },
          "id": {
            "type": "integer",
            "description": "The ID of the issue security scheme.",
            "format": "int64",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the issue security scheme.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the issue security scheme.",
            "readOnly": true
          },
          "defaultSecurityLevelId": {
            "type": "integer",
            "description": "The ID of the default security level.",
            "format": "int64",
            "readOnly": true
          },
          "levels": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SecurityLevel"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about a security scheme."
      },
      "ContainerForProjectFeatures": {
        "type": "object",
        "properties": {
          "features": {
            "type": "array",
            "description": "The project features.",
            "items": {
              "$ref": "#/components/schemas/ProjectFeature"
            }
          }
        },
        "additionalProperties": false,
        "description": "The list of features on a project."
      },
      "ProjectFeature": {
        "type": "object",
        "properties": {
          "projectId": {
            "type": "integer",
            "description": "The ID of the project.",
            "format": "int64"
          },
          "state": {
            "type": "string",
            "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"
            ]
          },
          "toggleLocked": {
            "type": "boolean",
            "description": "Whether the state of the feature can be updated."
          },
          "feature": {
            "type": "string",
            "description": "The key of the feature."
          },
          "prerequisites": {
            "type": "array",
            "description": "List of keys of the features required to enable the feature.",
            "items": {
              "type": "string"
            }
          },
          "localisedName": {
            "type": "string",
            "description": "Localized display name for the feature."
          },
          "localisedDescription": {
            "type": "string",
            "description": "Localized display description for the feature."
          },
          "imageUri": {
            "type": "string",
            "description": "URI for the image representing the feature."
          }
        },
        "additionalProperties": false,
        "description": "Details of a project feature."
      },
      "ProjectFeatureState": {
        "type": "object",
        "properties": {
          "state": {
            "type": "string",
            "description": "The feature state.",
            "enum": [
              "ENABLED",
              "DISABLED",
              "COMING_SOON"
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of the feature state."
      },
      "Priority": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the issue priority."
          },
          "statusColor": {
            "type": "string",
            "description": "The color used to indicate the issue priority."
          },
          "description": {
            "type": "string",
            "description": "The description of the issue priority."
          },
          "iconUrl": {
            "type": "string",
            "description": "The URL of the icon for the issue priority."
          },
          "name": {
            "type": "string",
            "description": "The name of the issue priority."
          },
          "id": {
            "type": "string",
            "description": "The ID of the issue priority."
          },
          "isDefault": {
            "type": "boolean",
            "description": "Whether this priority is the default."
          }
        },
        "additionalProperties": true,
        "description": "An issue priority."
      },
      "CreatePriorityDetails": {
        "required": [
          "name",
          "statusColor"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 60,
            "type": "string",
            "description": "The name of the priority. Must be unique.",
            "writeOnly": true
          },
          "description": {
            "maxLength": 255,
            "type": "string",
            "description": "The description of the priority.",
            "writeOnly": true
          },
          "iconUrl": {
            "maxLength": 255,
            "type": "string",
            "description": "The URL of an icon for the priority. Accepted protocols are HTTP and HTTPS. Built in icons can also be used.",
            "writeOnly": true,
            "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"
            ]
          },
          "statusColor": {
            "type": "string",
            "description": "The status color of the priority in 3-digit or 6-digit hexadecimal format.",
            "writeOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Details of an issue priority."
      },
      "PriorityId": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the issue priority.",
            "readOnly": true
          }
        },
        "additionalProperties": true,
        "description": "The ID of an issue priority."
      },
      "UpdatePriorityDetails": {
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 60,
            "type": "string",
            "description": "The name of the priority. Must be unique.",
            "writeOnly": true
          },
          "description": {
            "maxLength": 255,
            "type": "string",
            "description": "The description of the priority.",
            "writeOnly": true
          },
          "iconUrl": {
            "maxLength": 255,
            "type": "string",
            "description": "The URL of an icon for the priority. Accepted protocols are HTTP and HTTPS. Built in icons can also be used.",
            "writeOnly": true,
            "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"
            ]
          },
          "statusColor": {
            "type": "string",
            "description": "The status color of the priority in 3-digit or 6-digit hexadecimal format.",
            "writeOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Details of an issue priority."
      },
      "PageBeanPriority": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Priority"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "ReorderIssuePriorities": {
        "required": [
          "ids"
        ],
        "type": "object",
        "properties": {
          "ids": {
            "type": "array",
            "description": "The list of issue IDs to be reordered. Cannot contain duplicates nor after ID.",
            "writeOnly": true,
            "items": {
              "type": "string",
              "writeOnly": true
            }
          },
          "after": {
            "type": "string",
            "description": "The ID of the priority. Required if `position` isn't provided.",
            "writeOnly": true
          },
          "position": {
            "type": "string",
            "description": "The position for issue priorities to be moved to. Required if `after` isn't provided.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Change the order of issue priorities."
      },
      "SetDefaultPriorityRequest": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "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.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The new default issue priority."
      },
      "Comment": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the comment.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the comment.",
            "readOnly": true
          },
          "author": {
            "description": "The ID of the user who created the comment.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDetails"
              }
            ]
          },
          "body": {
            "description": "The comment text in [Atlassian Document Format](https://developer.atlassian.com/cloud/jira/platform/apis/document/structure/)."
          },
          "renderedBody": {
            "type": "string",
            "description": "The rendered version of the comment.",
            "readOnly": true
          },
          "updateAuthor": {
            "description": "The ID of the user who updated the comment last.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDetails"
              }
            ]
          },
          "created": {
            "type": "string",
            "description": "The date and time at which the comment was created.",
            "format": "date-time",
            "readOnly": true
          },
          "updated": {
            "type": "string",
            "description": "The date and time at which the comment was updated last.",
            "format": "date-time",
            "readOnly": true
          },
          "visibility": {
            "description": "The group or role to which this comment is visible. Optional on create and update.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Visibility"
              }
            ]
          },
          "jsdPublic": {
            "type": "boolean",
            "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
          },
          "jsdAuthorCanSeeRequest": {
            "type": "boolean",
            "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
          },
          "properties": {
            "type": "array",
            "description": "A list of comment properties. Optional on create and update.",
            "items": {
              "$ref": "#/components/schemas/EntityProperty"
            }
          }
        },
        "additionalProperties": true,
        "description": "A comment."
      },
      "Fields": {
        "type": "object",
        "properties": {
          "summary": {
            "type": "string",
            "description": "The summary description of the linked issue.",
            "readOnly": true
          },
          "status": {
            "description": "The status of the linked issue.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/StatusDetails"
              }
            ]
          },
          "priority": {
            "description": "The priority of the linked issue.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/Priority"
              }
            ]
          },
          "assignee": {
            "description": "The assignee of the linked issue.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDetails"
              }
            ]
          },
          "timetracking": {
            "description": "The time tracking of the linked issue.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/TimeTrackingDetails"
              }
            ]
          },
          "issuetype": {
            "description": "The type of the linked issue.",
            "$ref": "#/components/schemas/IssueTypeDetails"
          },
          "issueType": {
            "description": "The type of the linked issue.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/IssueTypeDetails"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Key fields from the linked issue."
      },
      "IssueLinkType": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the issue link type and is used as follows:\n\n *  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.\n *  In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it is read only."
          },
          "name": {
            "type": "string",
            "description": "The name of the issue link type and is used as follows:\n\n *  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.\n *  In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it is required on create and optional on update. Otherwise, read only."
          },
          "inward": {
            "type": "string",
            "description": "The description of the issue link type inward link and is used as follows:\n\n *  In the [ issueLink](#api-rest-api-3-issueLink-post) resource it is read only.\n *  In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it is required on create and optional on update. Otherwise, read only."
          },
          "outward": {
            "type": "string",
            "description": "The description of the issue link type outward link and is used as follows:\n\n *  In the [ issueLink](#api-rest-api-3-issueLink-post) resource it is read only.\n *  In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it is required on create and optional on update. Otherwise, read only."
          },
          "self": {
            "type": "string",
            "description": "The URL of the issue link type. Read only.",
            "format": "uri",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "This object is used as follows:\n\n *  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).\n *  In the [ issueLinkType](#api-rest-api-3-issueLinkType-post) resource it defines and reports on issue link types."
      },
      "LinkIssueRequestJsonBean": {
        "required": [
          "inwardIssue",
          "outwardIssue",
          "type"
        ],
        "type": "object",
        "properties": {
          "type": {
            "$ref": "#/components/schemas/IssueLinkType"
          },
          "inwardIssue": {
            "$ref": "#/components/schemas/LinkedIssue"
          },
          "outwardIssue": {
            "$ref": "#/components/schemas/LinkedIssue"
          },
          "comment": {
            "$ref": "#/components/schemas/Comment"
          }
        },
        "additionalProperties": false
      },
      "LinkedIssue": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of an issue. Required if `key` isn't provided."
          },
          "key": {
            "type": "string",
            "description": "The key of an issue. Required if `id` isn't provided."
          },
          "self": {
            "type": "string",
            "description": "The URL of the issue.",
            "format": "uri",
            "readOnly": true
          },
          "fields": {
            "description": "The fields associated with the issue.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/Fields"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "The ID or key of a linked issue."
      },
      "RichText": {
        "type": "object",
        "properties": {
          "emptyAdf": {
            "type": "boolean"
          },
          "valueSet": {
            "type": "boolean"
          },
          "finalised": {
            "type": "boolean"
          },
          "empty": {
            "type": "boolean"
          }
        }
      },
      "TimeTrackingDetails": {
        "type": "object",
        "properties": {
          "originalEstimate": {
            "type": "string",
            "description": "The original estimate of time needed for this issue in readable format.",
            "readOnly": true
          },
          "remainingEstimate": {
            "type": "string",
            "description": "The remaining estimate of time needed for this issue in readable format.",
            "readOnly": true
          },
          "timeSpent": {
            "type": "string",
            "description": "Time worked on this issue in readable format.",
            "readOnly": true
          },
          "originalEstimateSeconds": {
            "type": "integer",
            "description": "The original estimate of time needed for this issue in seconds.",
            "format": "int64",
            "readOnly": true
          },
          "remainingEstimateSeconds": {
            "type": "integer",
            "description": "The remaining estimate of time needed for this issue in seconds.",
            "format": "int64",
            "readOnly": true
          },
          "timeSpentSeconds": {
            "type": "integer",
            "description": "Time worked on this issue in seconds.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Time tracking details."
      },
      "Visibility": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Whether visibility of this item is restricted to a group or role.",
            "enum": [
              "group",
              "role"
            ]
          },
          "value": {
            "type": "string",
            "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`."
          },
          "identifier": {
            "type": "string",
            "description": "The ID of the group or the name of the role that visibility of this item is restricted to.",
            "nullable": true
          }
        },
        "additionalProperties": true,
        "description": "The group or role to which this item is visible."
      },
      "IssueLink": {
        "required": [
          "inwardIssue",
          "outwardIssue",
          "type"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the issue link.",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of the issue link.",
            "format": "uri",
            "readOnly": true
          },
          "type": {
            "description": "The type of link between the issues.",
            "allOf": [
              {
                "$ref": "#/components/schemas/IssueLinkType"
              }
            ]
          },
          "inwardIssue": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkedIssue"
              }
            ]
          },
          "outwardIssue": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/LinkedIssue"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of a link between issues.",
        "xml": {
          "name": "issueLinks"
        }
      },
      "PageOfWorklogs": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned on the page.",
            "format": "int32",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of results that could be on the page.",
            "format": "int32",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of results on the page.",
            "format": "int32",
            "readOnly": true
          },
          "worklogs": {
            "type": "array",
            "description": "List of worklogs.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Worklog"
            }
          }
        },
        "additionalProperties": true,
        "description": "Paginated list of worklog details"
      },
      "Worklog": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the worklog item.",
            "format": "uri",
            "readOnly": true
          },
          "author": {
            "description": "Details of the user who created the worklog.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDetails"
              }
            ]
          },
          "updateAuthor": {
            "description": "Details of the user who last updated the worklog.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDetails"
              }
            ]
          },
          "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": {
            "type": "string",
            "description": "The datetime on which the worklog was created.",
            "format": "date-time",
            "readOnly": true
          },
          "updated": {
            "type": "string",
            "description": "The datetime on which the worklog was last updated.",
            "format": "date-time",
            "readOnly": true
          },
          "visibility": {
            "description": "Details about any restrictions in the visibility of the worklog. Optional when creating or updating a worklog.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Visibility"
              }
            ]
          },
          "started": {
            "type": "string",
            "description": "The datetime on which the worklog effort was started. Required when creating a worklog. Optional when updating a worklog.",
            "format": "date-time"
          },
          "timeSpent": {
            "type": "string",
            "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."
          },
          "timeSpentSeconds": {
            "type": "integer",
            "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"
          },
          "id": {
            "type": "string",
            "description": "The ID of the worklog record.",
            "readOnly": true
          },
          "issueId": {
            "type": "string",
            "description": "The ID of the issue this worklog is for.",
            "readOnly": true
          },
          "properties": {
            "type": "array",
            "description": "Details of properties for the worklog. Optional when creating or updating a worklog.",
            "items": {
              "$ref": "#/components/schemas/EntityProperty"
            }
          }
        },
        "additionalProperties": true,
        "description": "Details of a worklog.",
        "xml": {
          "name": "worklog"
        }
      },
      "IssueTypeCreateBean": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The unique name for the issue type. The maximum length is 60 characters."
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type."
          },
          "type": {
            "type": "string",
            "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.\n\nWhether the issue type is `subtype` or `standard`. Defaults to `standard`.",
            "enum": [
              "subtask",
              "standard"
            ]
          },
          "hierarchyLevel": {
            "type": "integer",
            "description": "The hierarchy level of the issue type. Use:\n\n *  `-1` for Subtask.\n *  `0` for Base.\n\nDefaults to `0`.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "IssueTypeUpdateBean": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The unique name for the issue type. The maximum length is 60 characters."
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type."
          },
          "avatarId": {
            "type": "integer",
            "description": "The ID of an issue type avatar.",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "SecuritySchemes": {
        "type": "object",
        "properties": {
          "issueSecuritySchemes": {
            "type": "array",
            "description": "List of security schemes.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/SecurityScheme"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of security schemes."
      },
      "IssueSecurityLevelMember": {
        "required": [
          "holder",
          "id",
          "issueSecurityLevelId"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the issue security level member.",
            "format": "int64"
          },
          "issueSecurityLevelId": {
            "type": "integer",
            "description": "The ID of the issue security level.",
            "format": "int64"
          },
          "holder": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/PermissionHolder"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Issue security level member."
      },
      "PageBeanIssueSecurityLevelMember": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueSecurityLevelMember"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "Transitions": {
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Expand options that include additional transitions details in the response.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "transitions": {
            "type": "array",
            "description": "List of issue transitions.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTransition"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of issue transitions."
      },
      "IssuePickerSuggestions": {
        "type": "object",
        "properties": {
          "sections": {
            "type": "array",
            "description": "A list of issues for an issue type suggested for use in auto-completion.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssuePickerSuggestionsIssueType"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of issues suggested for use in auto-completion."
      },
      "IssuePickerSuggestionsIssueType": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string",
            "description": "The label of the type of issues suggested for use in auto-completion.",
            "readOnly": true
          },
          "sub": {
            "type": "string",
            "description": "If issue suggestions are found, returns a message indicating the number of issues suggestions found and returned.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the type of issues suggested for use in auto-completion.",
            "readOnly": true
          },
          "msg": {
            "type": "string",
            "description": "If no issue suggestions are found, returns a message indicating no suggestions were found,",
            "readOnly": true
          },
          "issues": {
            "type": "array",
            "description": "A list of issues suggested for use in auto-completion.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/SuggestedIssue"
            }
          }
        },
        "additionalProperties": false,
        "description": "A type of issue suggested for use in auto-completion."
      },
      "SuggestedIssue": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the issue.",
            "format": "int64",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "description": "The key of the issue.",
            "readOnly": true
          },
          "keyHtml": {
            "type": "string",
            "description": "The key of the issue in HTML format.",
            "readOnly": true
          },
          "img": {
            "type": "string",
            "description": "The URL of the issue type's avatar.",
            "readOnly": true
          },
          "summary": {
            "type": "string",
            "description": "The phrase containing the query string in HTML format, with the string highlighted with HTML bold tags.",
            "readOnly": true
          },
          "summaryText": {
            "type": "string",
            "description": "The phrase containing the query string, as plain text.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "An issue suggested for use in the issue picker auto-completion."
      },
      "FieldUpdateOperation": {
        "type": "object",
        "properties": {
          "add": {
            "description": "The value to add to the field.",
            "example": "triaged"
          },
          "set": {
            "description": "The value to set in the field.",
            "example": "A new summary"
          },
          "remove": {
            "description": "The value to removed from the field.",
            "example": "blocker"
          },
          "edit": {
            "description": "The value to edit in the field.",
            "example": {
              "remainingEstimate": "4d",
              "originalEstimate": "1w 1d"
            }
          },
          "copy": {
            "description": "The field value to copy from another issue.",
            "example": {
              "issuelinks": {
                "sourceIssues": [
                  {
                    "key": "FP-5"
                  }
                ]
              }
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of an operation to perform on a field."
      },
      "IssueUpdateDetails": {
        "type": "object",
        "properties": {
          "transition": {
            "description": "Details of a transition. Required when performing a transition, optional when creating or editing an issue.",
            "allOf": [
              {
                "$ref": "#/components/schemas/IssueTransition"
              }
            ]
          },
          "fields": {
            "type": "object",
            "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`."
          },
          "update": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/FieldUpdateOperation"
              }
            },
            "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`."
          },
          "historyMetadata": {
            "description": "Additional issue history details.",
            "allOf": [
              {
                "$ref": "#/components/schemas/HistoryMetadata"
              }
            ]
          },
          "properties": {
            "type": "array",
            "description": "Details of issue properties to be add or update.",
            "items": {
              "$ref": "#/components/schemas/EntityProperty"
            }
          }
        },
        "additionalProperties": true,
        "description": "Details of an issue update request."
      },
      "Votes": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of these issue vote details.",
            "format": "uri",
            "readOnly": true
          },
          "votes": {
            "type": "integer",
            "description": "The number of votes on the issue.",
            "format": "int64",
            "readOnly": true
          },
          "hasVoted": {
            "type": "boolean",
            "description": "Whether the user making this request has voted on the issue.",
            "readOnly": true
          },
          "voters": {
            "type": "array",
            "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.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/User"
            }
          }
        },
        "additionalProperties": false,
        "description": "The details of votes on an issue."
      },
      "IssueList": {
        "required": [
          "issueIds"
        ],
        "type": "object",
        "properties": {
          "issueIds": {
            "type": "array",
            "description": "The list of issue IDs.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of issue IDs."
      },
      "BulkIssueIsWatching": {
        "type": "object",
        "properties": {
          "issuesIsWatching": {
            "type": "object",
            "additionalProperties": {
              "type": "boolean",
              "readOnly": true
            },
            "description": "The map of issue ID to boolean watch status.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "A container for the watch status of a list of issues."
      },
      "Watchers": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of these issue watcher details.",
            "readOnly": true
          },
          "isWatching": {
            "type": "boolean",
            "description": "Whether the calling user is watching this issue.",
            "readOnly": true
          },
          "watchCount": {
            "type": "integer",
            "description": "The number of users watching this issue.",
            "format": "int32",
            "readOnly": true
          },
          "watchers": {
            "type": "array",
            "description": "Details of the users watching this issue.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/UserDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "The details of watchers on an issue.",
        "xml": {
          "name": "watchers"
        }
      },
      "CreatedIssue": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the created issue or subtask.",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "description": "The key of the created issue or subtask.",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of the created issue or subtask.",
            "readOnly": true
          },
          "transition": {
            "description": "The response code and messages related to any requested transition.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/NestedResponse"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details about a created issue or subtask."
      },
      "NestedResponse": {
        "type": "object",
        "properties": {
          "status": {
            "type": "integer",
            "format": "int32"
          },
          "errorCollection": {
            "$ref": "#/components/schemas/ErrorCollection"
          }
        },
        "additionalProperties": false
      },
      "IssuesUpdateBean": {
        "type": "object",
        "properties": {
          "issueUpdates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/IssueUpdateDetails"
            }
          }
        },
        "additionalProperties": true
      },
      "BulkOperationErrorResult": {
        "type": "object",
        "properties": {
          "status": {
            "type": "integer",
            "format": "int32"
          },
          "elementErrors": {
            "$ref": "#/components/schemas/ErrorCollection"
          },
          "failedElementNumber": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "CreatedIssues": {
        "type": "object",
        "properties": {
          "issues": {
            "type": "array",
            "description": "Details of the issues created.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/CreatedIssue"
            }
          },
          "errors": {
            "type": "array",
            "description": "Error details for failed issue creation requests.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/BulkOperationErrorResult"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details about the issues created and the errors for requests that failed."
      },
      "IssueCreateMetadata": {
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Expand options that include additional project details in the response.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "projects": {
            "type": "array",
            "description": "List of projects and their issue creation metadata.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ProjectIssueCreateMetadata"
            }
          }
        },
        "additionalProperties": false,
        "description": "The wrapper for the issue creation metadata for a list of projects."
      },
      "IssueTypeIssueCreateMetadata": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of these issue type details.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the issue type.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type.",
            "readOnly": true
          },
          "iconUrl": {
            "type": "string",
            "description": "The URL of the issue type's avatar.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the issue type.",
            "readOnly": true
          },
          "subtask": {
            "type": "boolean",
            "description": "Whether this issue type is used to create subtasks.",
            "readOnly": true
          },
          "avatarId": {
            "type": "integer",
            "description": "The ID of the issue type's avatar.",
            "format": "int64",
            "readOnly": true
          },
          "entityId": {
            "type": "string",
            "description": "Unique ID for next-gen projects.",
            "format": "uuid",
            "readOnly": true
          },
          "hierarchyLevel": {
            "type": "integer",
            "description": "Hierarchy level of the issue type.",
            "format": "int32",
            "readOnly": true
          },
          "scope": {
            "description": "Details of the next-gen projects the issue type is available in.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          },
          "expand": {
            "type": "string",
            "description": "Expand options that include additional issue type metadata details in the response.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "fields": {
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/FieldMetadata"
            },
            "description": "List of the fields available when creating an issue for the issue type.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of the issue creation metadata for an issue type."
      },
      "ProjectIssueCreateMetadata": {
        "type": "object",
        "properties": {
          "expand": {
            "type": "string",
            "description": "Expand options that include additional project issue create metadata details in the response.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "self": {
            "type": "string",
            "description": "The URL of the project.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the project.",
            "readOnly": true
          },
          "key": {
            "type": "string",
            "description": "The key of the project.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the project.",
            "readOnly": true
          },
          "avatarUrls": {
            "description": "List of the project's avatars, returning the avatar size and associated URL.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/AvatarUrlsBean"
              }
            ]
          },
          "issuetypes": {
            "type": "array",
            "description": "List of the issue types supported by the project.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeIssueCreateMetadata"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of the issue creation metadata for a project."
      },
      "Application": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "The name-spaced type of the application, used by registered rendering apps."
          },
          "name": {
            "type": "string",
            "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."
          }
        },
        "additionalProperties": true,
        "description": "The application the linked item is in."
      },
      "IconBean": {
        "type": "object",
        "properties": {
          "url16x16": {
            "type": "string",
            "description": "The URL of a 16x16 pixel icon."
          },
          "title": {
            "type": "string",
            "description": "The title of the icon, for use as a tooltip on the icon."
          },
          "link": {
            "type": "string",
            "description": "The URL of the tooltip, used only for a status icon."
          }
        },
        "additionalProperties": false,
        "description": "An icon.",
        "xml": {
          "name": "icon"
        }
      },
      "RemoteIssueLink": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the link.",
            "format": "int64"
          },
          "self": {
            "type": "string",
            "description": "The URL of the link.",
            "format": "uri"
          },
          "globalId": {
            "type": "string",
            "description": "The global ID of the link, such as the ID of the item on the remote system."
          },
          "application": {
            "description": "Details of the remote application the linked item is in.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Application"
              }
            ]
          },
          "relationship": {
            "type": "string",
            "description": "Description of the relationship between the issue and the linked item."
          },
          "object": {
            "description": "Details of the item linked to.",
            "allOf": [
              {
                "$ref": "#/components/schemas/RemoteObject"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue remote link."
      },
      "RemoteObject": {
        "required": [
          "title",
          "url"
        ],
        "type": "object",
        "properties": {
          "url": {
            "type": "string",
            "description": "The URL of the item."
          },
          "title": {
            "type": "string",
            "description": "The title of the item."
          },
          "summary": {
            "type": "string",
            "description": "The summary details of the item."
          },
          "icon": {
            "description": "Details of the icon for the item. If no icon is defined, the default link icon is used in Jira.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Icon"
              }
            ]
          },
          "status": {
            "description": "The status of the item.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Status"
              }
            ]
          }
        },
        "additionalProperties": true,
        "description": "The linked item."
      },
      "Status": {
        "type": "object",
        "properties": {
          "resolved": {
            "type": "boolean",
            "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."
          },
          "icon": {
            "description": "Details of the icon representing the status. If not provided, no status icon displays in Jira.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Icon"
              }
            ]
          }
        },
        "additionalProperties": true,
        "description": "The status of the item."
      },
      "Icon": {
        "type": "object",
        "properties": {
          "url16x16": {
            "type": "string",
            "description": "The URL of an icon that displays at 16x16 pixel in Jira."
          },
          "title": {
            "type": "string",
            "description": "The title of the icon. This is used as follows:\n\n *  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.\n *  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\"."
          },
          "link": {
            "type": "string",
            "description": "The URL of the tooltip, used only for a status icon. If not set, the status icon in Jira is not clickable."
          }
        },
        "additionalProperties": true,
        "description": "An icon. If no icon is defined:\n\n *  for a status icon, no status icon displays in Jira.\n *  for the remote object icon, the default link icon displays in Jira."
      },
      "RemoteIssueLinkRequest": {
        "required": [
          "object"
        ],
        "type": "object",
        "properties": {
          "globalId": {
            "type": "string",
            "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`.\n\nSetting 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.\n\nThe maximum length is 255 characters."
          },
          "application": {
            "description": "Details of the remote application the linked item is in. For example, trello.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Application"
              }
            ]
          },
          "relationship": {
            "type": "string",
            "description": "Description of the relationship between the issue and the linked item. If not set, the relationship description \"links to\" is used in Jira."
          },
          "object": {
            "description": "Details of the item linked to.",
            "allOf": [
              {
                "$ref": "#/components/schemas/RemoteObject"
              }
            ]
          }
        },
        "additionalProperties": true,
        "description": "Details of a remote issue link."
      },
      "RemoteIssueLinkIdentifies": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the remote issue link, such as the ID of the item on the remote system.",
            "format": "int64",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "self": {
            "type": "string",
            "description": "The URL of the remote issue link.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of the identifiers for a created or updated remote issue link."
      },
      "Notification": {
        "type": "object",
        "properties": {
          "subject": {
            "type": "string",
            "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."
          },
          "textBody": {
            "type": "string",
            "description": "The plain text body of the email notification for the issue."
          },
          "htmlBody": {
            "type": "string",
            "description": "The HTML body of the email notification for the issue."
          },
          "to": {
            "description": "The recipients of the email notification for the issue.",
            "allOf": [
              {
                "$ref": "#/components/schemas/NotificationRecipients"
              }
            ]
          },
          "restrict": {
            "description": "Restricts the notifications to users with the specified permissions.",
            "allOf": [
              {
                "$ref": "#/components/schemas/NotificationRecipientsRestrictions"
              }
            ]
          }
        },
        "additionalProperties": true,
        "description": "Details about a notification."
      },
      "NotificationRecipients": {
        "type": "object",
        "properties": {
          "reporter": {
            "type": "boolean",
            "description": "Whether the notification should be sent to the issue's reporter."
          },
          "assignee": {
            "type": "boolean",
            "description": "Whether the notification should be sent to the issue's assignees."
          },
          "watchers": {
            "type": "boolean",
            "description": "Whether the notification should be sent to the issue's watchers."
          },
          "voters": {
            "type": "boolean",
            "description": "Whether the notification should be sent to the issue's voters."
          },
          "users": {
            "type": "array",
            "description": "List of users to receive the notification.",
            "items": {
              "$ref": "#/components/schemas/UserDetails"
            }
          },
          "groups": {
            "type": "array",
            "description": "List of groups to receive the notification.",
            "items": {
              "$ref": "#/components/schemas/GroupName"
            }
          },
          "groupIds": {
            "type": "array",
            "description": "List of groupIds to receive the notification.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": true,
        "description": "Details of the users and groups to receive the notification."
      },
      "NotificationRecipientsRestrictions": {
        "type": "object",
        "properties": {
          "groups": {
            "type": "array",
            "description": "List of group memberships required to receive the notification.",
            "items": {
              "$ref": "#/components/schemas/GroupName"
            }
          },
          "groupIds": {
            "type": "array",
            "description": "List of groupId memberships required to receive the notification.",
            "items": {
              "type": "string"
            }
          },
          "permissions": {
            "type": "array",
            "description": "List of permissions required to receive the notification.",
            "items": {
              "$ref": "#/components/schemas/RestrictedPermission"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of the group membership or permissions needed to receive the notification."
      },
      "RestrictedPermission": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "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."
          },
          "key": {
            "type": "string",
            "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."
          }
        },
        "additionalProperties": true,
        "description": "Details of the permission."
      },
      "IssueLinkTypes": {
        "type": "object",
        "properties": {
          "issueLinkTypes": {
            "type": "array",
            "description": "The issue link type bean.",
            "readOnly": true,
            "xml": {
              "name": "issueLinkTypes"
            },
            "items": {
              "$ref": "#/components/schemas/IssueLinkType"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of issue link type beans.",
        "xml": {
          "name": "issueLinkTypes"
        }
      },
      "PageOfComments": {
        "type": "object",
        "properties": {
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "comments": {
            "type": "array",
            "description": "The list of comments.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Comment"
            }
          }
        },
        "additionalProperties": true,
        "description": "A page of comments."
      },
      "PaginatedResponseComment": {
        "type": "object",
        "properties": {
          "maxResults": {
            "type": "integer",
            "format": "int32"
          },
          "startAt": {
            "type": "integer",
            "format": "int64"
          },
          "total": {
            "type": "integer",
            "format": "int64"
          },
          "results": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/Comment"
            }
          }
        },
        "additionalProperties": false
      },
      "IssueCommentListRequestBean": {
        "required": [
          "ids"
        ],
        "type": "object",
        "properties": {
          "ids": {
            "uniqueItems": true,
            "type": "array",
            "description": "The list of comment IDs. A maximum of 1000 IDs can be specified.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          }
        },
        "additionalProperties": false
      },
      "PageBeanComment": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Comment"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "PageBeanChangelog": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Changelog"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "IssueChangelogIds": {
        "required": [
          "changelogIds"
        ],
        "type": "object",
        "properties": {
          "changelogIds": {
            "uniqueItems": true,
            "type": "array",
            "description": "The list of changelog IDs.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of changelog IDs."
      },
      "Attachment": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the attachment details response.",
            "readOnly": true
          },
          "id": {
            "type": "string",
            "description": "The ID of the attachment.",
            "readOnly": true
          },
          "filename": {
            "type": "string",
            "description": "The file name of the attachment.",
            "readOnly": true
          },
          "author": {
            "description": "Details of the user who added the attachment.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/UserDetails"
              }
            ]
          },
          "created": {
            "type": "string",
            "description": "The datetime the attachment was created.",
            "format": "date-time",
            "readOnly": true
          },
          "size": {
            "type": "integer",
            "description": "The size of the attachment.",
            "format": "int64",
            "readOnly": true
          },
          "mimeType": {
            "type": "string",
            "description": "The MIME type of the attachment.",
            "readOnly": true
          },
          "content": {
            "type": "string",
            "description": "The content of the attachment.",
            "readOnly": true
          },
          "thumbnail": {
            "type": "string",
            "description": "The URL of a thumbnail representing the attachment.",
            "readOnly": true
          }
        },
        "additionalProperties": true,
        "description": "Details about an attachment."
      },
      "Group": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of group."
          },
          "groupId": {
            "type": "string",
            "description": "The ID of the group, which uniquely identifies the group across all Atlassian products. For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*.",
            "nullable": true
          },
          "self": {
            "type": "string",
            "description": "The URL for these group details.",
            "format": "uri",
            "readOnly": true
          },
          "users": {
            "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,
            "allOf": [
              {
                "$ref": "#/components/schemas/PagedListUserDetailsApplicationUser"
              }
            ]
          },
          "expand": {
            "type": "string",
            "description": "Expand options that include additional group details in the response.",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          }
        },
        "additionalProperties": false
      },
      "PagedListUserDetailsApplicationUser": {
        "type": "object",
        "properties": {
          "size": {
            "type": "integer",
            "description": "The number of items on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "attribute": true
            }
          },
          "items": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/UserDetails"
            }
          },
          "max-results": {
            "type": "integer",
            "description": "The maximum number of results that could be on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "name": "max-results",
              "attribute": true
            }
          },
          "start-index": {
            "type": "integer",
            "description": "The index of the first item returned on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "name": "start-index",
              "attribute": true
            }
          },
          "end-index": {
            "type": "integer",
            "description": "The index of the last item returned on the page.",
            "format": "int32",
            "readOnly": true,
            "xml": {
              "name": "end-index",
              "attribute": true
            }
          }
        },
        "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."
      },
      "PageBeanUserDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/UserDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "AddGroupBean": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the group."
          }
        },
        "additionalProperties": true
      },
      "UpdateUserToGroupBean": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "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."
          },
          "accountId": {
            "maxLength": 128,
            "type": "string",
            "description": "The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*."
          }
        },
        "additionalProperties": true
      },
      "FoundGroup": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the group. The name of a group is mutable, to reliably identify a group use ``groupId`.`"
          },
          "html": {
            "type": "string",
            "description": "The group name with the matched query string highlighted with the HTML bold tag."
          },
          "labels": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GroupLabel"
            }
          },
          "groupId": {
            "type": "string",
            "description": "The ID of the group, which uniquely identifies the group across all Atlassian products. For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*."
          }
        },
        "additionalProperties": false,
        "description": "A group found in a search.",
        "xml": {
          "name": "group"
        }
      },
      "FoundGroups": {
        "type": "object",
        "properties": {
          "header": {
            "type": "string",
            "description": "Header text indicating the number of groups in the response and the total number of groups found in the search."
          },
          "total": {
            "type": "integer",
            "description": "The total number of groups found in the search.",
            "format": "int32"
          },
          "groups": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/FoundGroup"
            }
          }
        },
        "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.",
        "xml": {
          "name": "groupsuggestions"
        }
      },
      "GroupLabel": {
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "The group label name."
          },
          "title": {
            "type": "string",
            "description": "The title of the group label."
          },
          "type": {
            "type": "string",
            "description": "The type of the group label.",
            "enum": [
              "ADMIN",
              "SINGLE",
              "MULTIPLE"
            ]
          }
        },
        "additionalProperties": false,
        "description": "A group label.",
        "xml": {
          "name": "grouplabel"
        }
      },
      "FoundUsersAndGroups": {
        "type": "object",
        "properties": {
          "users": {
            "$ref": "#/components/schemas/FoundUsers"
          },
          "groups": {
            "$ref": "#/components/schemas/FoundGroups"
          }
        },
        "additionalProperties": false,
        "description": "List of users and groups found in a search."
      },
      "CustomFieldDefinitionJsonBean": {
        "required": [
          "name",
          "type"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the custom field, which is displayed in Jira. This is not the unique identifier."
          },
          "description": {
            "type": "string",
            "description": "The description of the custom field, which is displayed in Jira."
          },
          "type": {
            "type": "string",
            "description": "The type of the custom field. These built-in custom field types are available:\n\n *  `cascadingselect`: Enables values to be selected from two levels of select lists (value: `com.atlassian.jira.plugin.system.customfieldtypes:cascadingselect`)\n *  `datepicker`: Stores a date using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:datepicker`)\n *  `datetime`: Stores a date with a time component (value: `com.atlassian.jira.plugin.system.customfieldtypes:datetime`)\n *  `float`: Stores and validates a numeric (floating point) input (value: `com.atlassian.jira.plugin.system.customfieldtypes:float`)\n *  `grouppicker`: Stores a user group using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:grouppicker`)\n *  `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`)\n *  `labels`: Stores labels (value: `com.atlassian.jira.plugin.system.customfieldtypes:labels`)\n *  `multicheckboxes`: Stores multiple values using checkboxes (value: ``)\n *  `multigrouppicker`: Stores multiple user groups using a picker control (value: ``)\n *  `multiselect`: Stores multiple values using a select list (value: `com.atlassian.jira.plugin.system.customfieldtypes:multicheckboxes`)\n *  `multiuserpicker`: Stores multiple users using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:multigrouppicker`)\n *  `multiversion`: Stores multiple versions from the versions available in a project using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:multiversion`)\n *  `project`: Stores a project from a list of projects that the user is permitted to view (value: `com.atlassian.jira.plugin.system.customfieldtypes:project`)\n *  `radiobuttons`: Stores a value using radio buttons (value: `com.atlassian.jira.plugin.system.customfieldtypes:radiobuttons`)\n *  `readonlyfield`: Stores a read-only text value, which can only be populated via the API (value: `com.atlassian.jira.plugin.system.customfieldtypes:readonlyfield`)\n *  `select`: Stores a value from a configurable list of options (value: `com.atlassian.jira.plugin.system.customfieldtypes:select`)\n *  `textarea`: Stores a long text string using a multiline text area (value: `com.atlassian.jira.plugin.system.customfieldtypes:textarea`)\n *  `textfield`: Stores a text string using a single-line text box (value: `com.atlassian.jira.plugin.system.customfieldtypes:textfield`)\n *  `url`: Stores a URL (value: `com.atlassian.jira.plugin.system.customfieldtypes:url`)\n *  `userpicker`: Stores a user using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:userpicker`)\n *  `version`: Stores a version using a picker control (value: `com.atlassian.jira.plugin.system.customfieldtypes:version`)\n\nTo 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`."
          },
          "searcherKey": {
            "type": "string",
            "description": "The searcher defines the way the field is searched in Jira. For example, *com.atlassian.jira.plugin.system.customfieldtypes:grouppickersearcher*.  \nThe 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):\n\n *  `cascadingselect`: `cascadingselectsearcher`\n *  `datepicker`: `daterange`\n *  `datetime`: `datetimerange`\n *  `float`: `exactnumber` or `numberrange`\n *  `grouppicker`: `grouppickersearcher`\n *  `importid`: `exactnumber` or `numberrange`\n *  `labels`: `labelsearcher`\n *  `multicheckboxes`: `multiselectsearcher`\n *  `multigrouppicker`: `multiselectsearcher`\n *  `multiselect`: `multiselectsearcher`\n *  `multiuserpicker`: `userpickergroupsearcher`\n *  `multiversion`: `versionsearcher`\n *  `project`: `projectsearcher`\n *  `radiobuttons`: `multiselectsearcher`\n *  `readonlyfield`: `textsearcher`\n *  `select`: `multiselectsearcher`\n *  `textarea`: `textsearcher`\n *  `textfield`: `textsearcher`\n *  `url`: `exacttextsearcher`\n *  `userpicker`: `userpickergroupsearcher`\n *  `version`: `versionsearcher`\n\nIf 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"
            ]
          }
        },
        "additionalProperties": false
      },
      "UpdateCustomFieldDetails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the custom field. It doesn't have to be unique. The maximum length is 255 characters."
          },
          "description": {
            "type": "string",
            "description": "The description of the custom field. The maximum length is 40000 characters."
          },
          "searcherKey": {
            "type": "string",
            "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):\n\n *  `cascadingselect`: `cascadingselectsearcher`\n *  `datepicker`: `daterange`\n *  `datetime`: `datetimerange`\n *  `float`: `exactnumber` or `numberrange`\n *  `grouppicker`: `grouppickersearcher`\n *  `importid`: `exactnumber` or `numberrange`\n *  `labels`: `labelsearcher`\n *  `multicheckboxes`: `multiselectsearcher`\n *  `multigrouppicker`: `multiselectsearcher`\n *  `multiselect`: `multiselectsearcher`\n *  `multiuserpicker`: `userpickergroupsearcher`\n *  `multiversion`: `versionsearcher`\n *  `project`: `projectsearcher`\n *  `radiobuttons`: `multiselectsearcher`\n *  `readonlyfield`: `textsearcher`\n *  `select`: `multiselectsearcher`\n *  `textarea`: `textsearcher`\n *  `textfield`: `textsearcher`\n *  `url`: `exacttextsearcher`\n *  `userpicker`: `userpickergroupsearcher`\n *  `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"
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of a custom field.",
        "writeOnly": true
      },
      "PageBeanScreenWithTab": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ScreenWithTab"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "ScreenWithTab": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the screen.",
            "format": "int64",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the screen.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the screen.",
            "readOnly": true
          },
          "scope": {
            "description": "The scope of the screen.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          },
          "tab": {
            "description": "The tab for the screen.",
            "allOf": [
              {
                "$ref": "#/components/schemas/ScreenableTab"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "A screen with tab details."
      },
      "Context": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the context.",
            "format": "int64",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the context.",
            "readOnly": true
          },
          "scope": {
            "description": "The scope of the context.",
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "A context."
      },
      "PageBeanContext": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Context"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "CustomFieldContextOption": {
        "required": [
          "disabled",
          "id",
          "value"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the custom field option."
          },
          "value": {
            "type": "string",
            "description": "The value of the custom field option."
          },
          "optionId": {
            "type": "string",
            "description": "For cascading options, the ID of the custom field option containing the cascading option."
          },
          "disabled": {
            "type": "boolean",
            "description": "Whether the option is disabled."
          }
        },
        "additionalProperties": false,
        "description": "Details of the custom field options for a context."
      },
      "PageBeanCustomFieldContextOption": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/CustomFieldContextOption"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "BulkCustomFieldOptionCreateRequest": {
        "type": "object",
        "properties": {
          "options": {
            "type": "array",
            "description": "Details of options to create.",
            "items": {
              "$ref": "#/components/schemas/CustomFieldOptionCreate"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of the options to create for a custom field.",
        "writeOnly": true
      },
      "CustomFieldOptionCreate": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The value of the custom field option."
          },
          "optionId": {
            "type": "string",
            "description": "For cascading options, the ID of the custom field object containing the cascading option."
          },
          "disabled": {
            "type": "boolean",
            "description": "Whether the option is disabled."
          }
        },
        "additionalProperties": false,
        "description": "Details of a custom field option to create."
      },
      "CustomFieldCreatedContextOptionsList": {
        "type": "object",
        "properties": {
          "options": {
            "type": "array",
            "description": "The created custom field options.",
            "items": {
              "$ref": "#/components/schemas/CustomFieldContextOption"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of custom field options for a context."
      },
      "OrderOfCustomFieldOptions": {
        "required": [
          "customFieldOptionIds"
        ],
        "type": "object",
        "properties": {
          "customFieldOptionIds": {
            "type": "array",
            "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.",
            "writeOnly": true,
            "items": {
              "type": "string",
              "writeOnly": true
            }
          },
          "after": {
            "type": "string",
            "description": "The ID of the custom field option or cascading option to place the moved options after. Required if `position` isn't provided.",
            "writeOnly": true
          },
          "position": {
            "type": "string",
            "description": "The position the custom field options should be moved to. Required if `after` isn't provided.",
            "writeOnly": true,
            "enum": [
              "First",
              "Last"
            ]
          }
        },
        "additionalProperties": false,
        "description": "An ordered list of custom field option IDs and information on where to move them."
      },
      "BulkCustomFieldOptionUpdateRequest": {
        "type": "object",
        "properties": {
          "options": {
            "type": "array",
            "description": "Details of the options to update.",
            "items": {
              "$ref": "#/components/schemas/CustomFieldOptionUpdate"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of the options to update for a custom field.",
        "writeOnly": true
      },
      "CustomFieldOptionUpdate": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the custom field option."
          },
          "value": {
            "type": "string",
            "description": "The value of the custom field option."
          },
          "disabled": {
            "type": "boolean",
            "description": "Whether the option is disabled."
          }
        },
        "additionalProperties": false,
        "description": "Details of a custom field option for a context."
      },
      "CustomFieldUpdatedContextOptionsList": {
        "type": "object",
        "properties": {
          "options": {
            "type": "array",
            "description": "The updated custom field options.",
            "items": {
              "$ref": "#/components/schemas/CustomFieldOptionUpdate"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of custom field options for a context."
      },
      "ComponentIssuesCount": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL for this count of issues for a component.",
            "format": "uri",
            "readOnly": true
          },
          "issueCount": {
            "type": "integer",
            "description": "The count of issues assigned to a component.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Count of issues assigned to a component.",
        "xml": {
          "name": "component"
        }
      },
      "SystemAvatars": {
        "type": "object",
        "properties": {
          "system": {
            "type": "array",
            "description": "A list of avatar details.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Avatar"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of system avatars."
      },
      "ChangedWorklog": {
        "type": "object",
        "properties": {
          "worklogId": {
            "type": "integer",
            "description": "The ID of the worklog.",
            "format": "int64",
            "readOnly": true
          },
          "updatedTime": {
            "type": "integer",
            "description": "The datetime of the change.",
            "format": "int64",
            "readOnly": true
          },
          "properties": {
            "type": "array",
            "description": "Details of properties associated with the change.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/EntityProperty"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of a changed worklog."
      },
      "ChangedWorklogs": {
        "type": "object",
        "properties": {
          "values": {
            "type": "array",
            "description": "Changed worklog list.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ChangedWorklog"
            }
          },
          "since": {
            "type": "integer",
            "description": "The datetime of the first worklog item in the list.",
            "format": "int64",
            "readOnly": true
          },
          "until": {
            "type": "integer",
            "description": "The datetime of the last worklog item in the list.",
            "format": "int64",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of this changed worklogs list.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "The URL of the next list of changed worklogs.",
            "format": "uri",
            "readOnly": true
          },
          "lastPage": {
            "type": "boolean"
          }
        },
        "additionalProperties": false,
        "description": "List of changed worklogs."
      },
      "WorklogIdsRequestBean": {
        "required": [
          "ids"
        ],
        "type": "object",
        "properties": {
          "ids": {
            "uniqueItems": true,
            "type": "array",
            "description": "A list of worklog IDs.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          }
        },
        "additionalProperties": false
      },
      "CreateUpdateRoleRequestBean": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "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."
          },
          "description": {
            "type": "string",
            "description": "A description of the project role. Required when fully updating a project role. Optional when creating or partially updating a project role."
          }
        },
        "additionalProperties": false
      },
      "ActorInputBean": {
        "type": "object",
        "properties": {
          "user": {
            "type": "array",
            "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"
            }
          },
          "groupId": {
            "type": "array",
            "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"
            }
          },
          "group": {
            "type": "array",
            "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"
            }
          }
        },
        "additionalProperties": false
      },
      "ProjectRoleActorsUpdateBean": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "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
          },
          "categorisedActors": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "description": "The actors to add to the project role.\n\nAdd groups using:\n\n *  `atlassian-group-role-actor` and a list of group names.\n *  `atlassian-group-role-actor-id` and a list of group IDs.\n\nAs 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\"]`.\n\nAdd 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\"]`."
          }
        },
        "additionalProperties": false,
        "xml": {
          "name": "actor"
        }
      },
      "ActorsMap": {
        "type": "object",
        "properties": {
          "user": {
            "type": "array",
            "description": "The user account ID of the user to add.",
            "items": {
              "type": "string"
            }
          },
          "group": {
            "type": "array",
            "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"
            }
          },
          "groupId": {
            "type": "array",
            "description": "The ID of the group to add. This parameter cannot be used with the `group` parameter.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false
      },
      "ProjectRoleDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL the project role details.",
            "format": "uri",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the project role."
          },
          "id": {
            "type": "integer",
            "description": "The ID of the project role.",
            "format": "int64",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the project role.",
            "readOnly": true
          },
          "admin": {
            "type": "boolean",
            "description": "Whether this role is the admin role for the project.",
            "readOnly": true
          },
          "scope": {
            "description": "The scope of the role. Indicated for roles associated with [next-gen projects](https://confluence.atlassian.com/x/loMyO).",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/Scope"
              }
            ]
          },
          "roleConfigurable": {
            "type": "boolean",
            "description": "Whether the roles are configurable for this project.",
            "readOnly": true
          },
          "translatedName": {
            "type": "string",
            "description": "The translated name of the project role."
          },
          "default": {
            "type": "boolean",
            "description": "Whether this role is the default role for the project.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details about a project role."
      },
      "AttachmentMetadata": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the attachment.",
            "format": "int64",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of the attachment metadata details.",
            "format": "uri",
            "readOnly": true
          },
          "filename": {
            "type": "string",
            "description": "The name of the attachment file.",
            "readOnly": true
          },
          "author": {
            "description": "Details of the user who attached the file.",
            "readOnly": true,
            "allOf": [
              {
                "$ref": "#/components/schemas/User"
              }
            ]
          },
          "created": {
            "type": "string",
            "description": "The datetime the attachment was created.",
            "format": "date-time",
            "readOnly": true
          },
          "size": {
            "type": "integer",
            "description": "The size of the attachment.",
            "format": "int64",
            "readOnly": true
          },
          "mimeType": {
            "type": "string",
            "description": "The MIME type of the attachment.",
            "readOnly": true
          },
          "properties": {
            "type": "object",
            "additionalProperties": {
              "readOnly": true
            },
            "description": "Additional properties of the attachment.",
            "readOnly": true
          },
          "content": {
            "type": "string",
            "description": "The URL of the attachment.",
            "readOnly": true
          },
          "thumbnail": {
            "type": "string",
            "description": "The URL of a thumbnail representing the attachment.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Metadata for an issue attachment.",
        "xml": {
          "name": "attachment"
        }
      },
      "AttachmentSettings": {
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Whether the ability to add attachments is enabled.",
            "readOnly": true
          },
          "uploadLimit": {
            "type": "integer",
            "description": "The maximum size of attachments permitted, in bytes.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of the instance's attachment settings."
      },
      "AttachmentArchiveEntry": {
        "type": "object",
        "properties": {
          "entryIndex": {
            "type": "integer",
            "format": "int64"
          },
          "abbreviatedName": {
            "type": "string"
          },
          "mediaType": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "size": {
            "type": "integer",
            "format": "int64"
          }
        },
        "additionalProperties": false
      },
      "AttachmentArchiveImpl": {
        "type": "object",
        "properties": {
          "entries": {
            "type": "array",
            "description": "The list of the items included in the archive.",
            "items": {
              "$ref": "#/components/schemas/AttachmentArchiveEntry"
            }
          },
          "totalEntryCount": {
            "type": "integer",
            "description": "The number of items in the archive.",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "AttachmentArchive": {
        "type": "object",
        "properties": {
          "moreAvailable": {
            "type": "boolean"
          },
          "totalNumberOfEntriesAvailable": {
            "type": "integer",
            "format": "int32"
          },
          "totalEntryCount": {
            "type": "integer",
            "format": "int32"
          },
          "entries": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/AttachmentArchiveEntry"
            }
          }
        },
        "additionalProperties": false
      },
      "AttachmentArchiveItemReadable": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string",
            "description": "The path of the archive item.",
            "readOnly": true
          },
          "index": {
            "type": "integer",
            "description": "The position of the item within the archive.",
            "format": "int64",
            "readOnly": true
          },
          "size": {
            "type": "string",
            "description": "The size of the archive item.",
            "readOnly": true
          },
          "mediaType": {
            "type": "string",
            "description": "The MIME type of the archive item.",
            "readOnly": true
          },
          "label": {
            "type": "string",
            "description": "The label for the archive item.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Metadata for an item in an attachment archive."
      },
      "AttachmentArchiveMetadataReadable": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the attachment.",
            "format": "int64",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the archive file.",
            "readOnly": true
          },
          "entries": {
            "type": "array",
            "description": "The list of the items included in the archive.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/AttachmentArchiveItemReadable"
            }
          },
          "totalEntryCount": {
            "type": "integer",
            "description": "The number of items included in the archive.",
            "format": "int64",
            "readOnly": true
          },
          "mediaType": {
            "type": "string",
            "description": "The MIME type of the attachment.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Metadata for an archive (for example a zip) and its contents."
      },
      "GlobalScopeBean": {
        "type": "object",
        "properties": {
          "attributes": {
            "uniqueItems": true,
            "type": "array",
            "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": {
              "type": "string",
              "enum": [
                "notSelectable",
                "defaultValue"
              ]
            }
          }
        },
        "additionalProperties": false
      },
      "IssueFieldOption": {
        "required": [
          "id",
          "value"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The unique identifier for the option. This is only unique within the select field's set of options.",
            "format": "int64"
          },
          "value": {
            "type": "string",
            "description": "The option's name, which is displayed in Jira."
          },
          "properties": {
            "type": "object",
            "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."
          },
          "config": {
            "$ref": "#/components/schemas/IssueFieldOptionConfiguration"
          }
        },
        "additionalProperties": false,
        "description": "Details of the options for a select list issue field."
      },
      "IssueFieldOptionConfiguration": {
        "type": "object",
        "properties": {
          "scope": {
            "description": "Defines the projects that the option is available in. If the scope is not defined, then the option is available in all projects.",
            "allOf": [
              {
                "$ref": "#/components/schemas/IssueFieldOptionScopeBean"
              }
            ]
          },
          "attributes": {
            "uniqueItems": true,
            "type": "array",
            "description": "DEPRECATED",
            "items": {
              "type": "string",
              "enum": [
                "notSelectable",
                "defaultValue"
              ]
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of the projects the option is available in."
      },
      "IssueFieldOptionScopeBean": {
        "type": "object",
        "properties": {
          "projects": {
            "uniqueItems": true,
            "type": "array",
            "description": "DEPRECATED",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "projects2": {
            "uniqueItems": true,
            "type": "array",
            "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"
            }
          },
          "global": {
            "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.",
            "allOf": [
              {
                "$ref": "#/components/schemas/GlobalScopeBean"
              }
            ]
          }
        },
        "additionalProperties": false
      },
      "PageBeanIssueFieldOption": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueFieldOption"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "ProjectScopeBean": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the project that the option's behavior applies to.",
            "format": "int64"
          },
          "attributes": {
            "uniqueItems": true,
            "type": "array",
            "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": {
              "type": "string",
              "enum": [
                "notSelectable",
                "defaultValue"
              ]
            }
          }
        },
        "additionalProperties": false
      },
      "IssueFieldOptionCreateBean": {
        "required": [
          "value"
        ],
        "type": "object",
        "properties": {
          "value": {
            "type": "string",
            "description": "The option's name, which is displayed in Jira."
          },
          "properties": {
            "type": "object",
            "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."
          },
          "config": {
            "$ref": "#/components/schemas/IssueFieldOptionConfiguration"
          }
        },
        "additionalProperties": true
      },
      "RemoveOptionFromIssuesResult": {
        "type": "object",
        "properties": {
          "modifiedIssues": {
            "type": "array",
            "description": "The IDs of the modified issues.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "unmodifiedIssues": {
            "type": "array",
            "description": "The IDs of the unchanged issues, those issues where errors prevent modification.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "errors": {
            "description": "A collection of errors related to unchanged issues. The collection size is limited, which means not all errors may be returned.",
            "allOf": [
              {
                "$ref": "#/components/schemas/SimpleErrorCollection"
              }
            ]
          }
        },
        "additionalProperties": false
      },
      "SimpleErrorCollection": {
        "type": "object",
        "properties": {
          "errors": {
            "type": "object",
            "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.\""
          },
          "errorMessages": {
            "type": "array",
            "description": "The list of error messages produced by this operation. For example, \"input parameter 'key' must be provided\"",
            "items": {
              "type": "string"
            }
          },
          "httpStatusCode": {
            "type": "integer",
            "format": "int32"
          }
        },
        "additionalProperties": false
      },
      "TaskProgressBeanRemoveOptionFromIssuesResult": {
        "required": [
          "elapsedRuntime",
          "id",
          "lastUpdate",
          "progress",
          "self",
          "status",
          "submitted",
          "submittedBy"
        ],
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the task.",
            "format": "uri"
          },
          "id": {
            "type": "string",
            "description": "The ID of the task."
          },
          "description": {
            "type": "string",
            "description": "The description of the task."
          },
          "status": {
            "type": "string",
            "description": "The status of the task.",
            "enum": [
              "ENQUEUED",
              "RUNNING",
              "COMPLETE",
              "FAILED",
              "CANCEL_REQUESTED",
              "CANCELLED",
              "DEAD"
            ]
          },
          "message": {
            "type": "string",
            "description": "Information about the progress of the task."
          },
          "result": {
            "description": "The result of the task execution.",
            "allOf": [
              {
                "$ref": "#/components/schemas/RemoveOptionFromIssuesResult"
              }
            ]
          },
          "submittedBy": {
            "type": "integer",
            "description": "The ID of the user who submitted the task.",
            "format": "int64"
          },
          "progress": {
            "type": "integer",
            "description": "The progress of the task, as a percentage complete.",
            "format": "int64"
          },
          "elapsedRuntime": {
            "type": "integer",
            "description": "The execution time of the task, in milliseconds.",
            "format": "int64"
          },
          "submitted": {
            "type": "integer",
            "description": "A timestamp recording when the task was submitted.",
            "format": "int64"
          },
          "started": {
            "type": "integer",
            "description": "A timestamp recording when the task was started.",
            "format": "int64"
          },
          "finished": {
            "type": "integer",
            "description": "A timestamp recording when the task was finished.",
            "format": "int64"
          },
          "lastUpdate": {
            "type": "integer",
            "description": "A timestamp recording when the task progress was last updated.",
            "format": "int64"
          }
        },
        "additionalProperties": false,
        "description": "Details about a task."
      },
      "Field": {
        "required": [
          "id",
          "name",
          "schema"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the field."
          },
          "name": {
            "type": "string",
            "description": "The name of the field."
          },
          "schema": {
            "$ref": "#/components/schemas/JsonTypeBean"
          },
          "description": {
            "type": "string",
            "description": "The description of the field."
          },
          "key": {
            "type": "string",
            "description": "The key of the field."
          },
          "isLocked": {
            "type": "boolean",
            "description": "Whether the field is locked."
          },
          "isUnscreenable": {
            "type": "boolean",
            "description": "Whether the field is shown on screen or not."
          },
          "searcherKey": {
            "type": "string",
            "description": "The searcher key of the field. Returned for custom fields."
          },
          "screensCount": {
            "type": "integer",
            "description": "Number of screens where the field is used.",
            "format": "int64"
          },
          "contextsCount": {
            "type": "integer",
            "description": "Number of contexts where the field is used.",
            "format": "int64"
          },
          "projectsCount": {
            "type": "integer",
            "description": "Number of projects where the field is used.",
            "format": "int64"
          },
          "lastUsed": {
            "$ref": "#/components/schemas/FieldLastUsed"
          }
        },
        "additionalProperties": false,
        "description": "Details of a field."
      },
      "FieldLastUsed": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "description": "Last used value type:\n\n *  *TRACKED*: field is tracked and a last used date is available.\n *  *NOT\\_TRACKED*: field is not tracked, last used date is not available.\n *  *NO\\_INFORMATION*: field is tracked, but no last used date is available.",
            "enum": [
              "TRACKED",
              "NOT_TRACKED",
              "NO_INFORMATION"
            ]
          },
          "value": {
            "type": "string",
            "description": "The date when the value of the field last changed.",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "description": "Information about the most recent use of a field."
      },
      "PageBeanField": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/Field"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "FieldConfigurationScheme": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the field configuration scheme."
          },
          "name": {
            "type": "string",
            "description": "The name of the field configuration scheme."
          },
          "description": {
            "type": "string",
            "description": "The description of the field configuration scheme."
          }
        },
        "additionalProperties": false,
        "description": "Details of a field configuration scheme."
      },
      "PageBeanFieldConfigurationScheme": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/FieldConfigurationScheme"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "FieldConfigurationIssueTypeItem": {
        "required": [
          "fieldConfigurationId",
          "fieldConfigurationSchemeId",
          "issueTypeId"
        ],
        "type": "object",
        "properties": {
          "fieldConfigurationSchemeId": {
            "type": "string",
            "description": "The ID of the field configuration scheme."
          },
          "issueTypeId": {
            "type": "string",
            "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."
          },
          "fieldConfigurationId": {
            "type": "string",
            "description": "The ID of the field configuration."
          }
        },
        "additionalProperties": false,
        "description": "The field configuration for an issue type."
      },
      "PageBeanFieldConfigurationIssueTypeItem": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/FieldConfigurationIssueTypeItem"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "AssociateFieldConfigurationsWithIssueTypesRequest": {
        "required": [
          "mappings"
        ],
        "type": "object",
        "properties": {
          "mappings": {
            "uniqueItems": true,
            "type": "array",
            "description": "Field configuration to issue type mappings.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/FieldConfigurationToIssueTypeMapping"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of a field configuration to issue type mappings."
      },
      "FieldConfigurationToIssueTypeMapping": {
        "required": [
          "fieldConfigurationId",
          "issueTypeId"
        ],
        "type": "object",
        "properties": {
          "issueTypeId": {
            "type": "string",
            "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.",
            "writeOnly": true
          },
          "fieldConfigurationId": {
            "type": "string",
            "description": "The ID of the field configuration.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The field configuration to issue type mapping.",
        "writeOnly": true
      },
      "FieldConfigurationSchemeProjects": {
        "required": [
          "projectIds"
        ],
        "type": "object",
        "properties": {
          "fieldConfigurationScheme": {
            "$ref": "#/components/schemas/FieldConfigurationScheme"
          },
          "projectIds": {
            "type": "array",
            "description": "The IDs of projects using the field configuration scheme.",
            "items": {
              "type": "string",
              "description": "The IDs of projects using the field configuration scheme."
            }
          }
        },
        "additionalProperties": false,
        "description": "Project list with assigned field configuration schema."
      },
      "PageBeanFieldConfigurationSchemeProjects": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/FieldConfigurationSchemeProjects"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "FieldConfigurationSchemeProjectAssociation": {
        "required": [
          "projectId"
        ],
        "type": "object",
        "properties": {
          "fieldConfigurationSchemeId": {
            "type": "string",
            "description": "The ID of the field configuration scheme. If the field configuration scheme ID is `null`, the operation assigns the default field configuration scheme.",
            "writeOnly": true
          },
          "projectId": {
            "type": "string",
            "description": "The ID of the project.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Associated field configuration scheme and project."
      },
      "UpdateFieldConfigurationSchemeDetails": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 255,
            "type": "string",
            "description": "The name of the field configuration scheme. The name must be unique.",
            "writeOnly": true
          },
          "description": {
            "maxLength": 1024,
            "type": "string",
            "description": "The description of the field configuration scheme.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The details of the field configuration scheme."
      },
      "IssueTypeIdsToRemove": {
        "required": [
          "issueTypeIds"
        ],
        "type": "object",
        "properties": {
          "issueTypeIds": {
            "type": "array",
            "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"
            }
          }
        },
        "additionalProperties": false,
        "description": "The list of issue type IDs to be removed from the field configuration scheme."
      },
      "FieldConfigurationDetails": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "maxLength": 255,
            "type": "string",
            "description": "The name of the field configuration. Must be unique.",
            "writeOnly": true
          },
          "description": {
            "maxLength": 255,
            "type": "string",
            "description": "The description of the field configuration.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of a field configuration."
      },
      "PageBeanFieldConfigurationDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/FieldConfigurationDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "FieldConfigurationItem": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the field within the field configuration."
          },
          "description": {
            "type": "string",
            "description": "The description of the field within the field configuration."
          },
          "isHidden": {
            "type": "boolean",
            "description": "Whether the field is hidden in the field configuration."
          },
          "isRequired": {
            "type": "boolean",
            "description": "Whether the field is required in the field configuration."
          },
          "renderer": {
            "type": "string",
            "description": "The renderer type for the field within the field configuration."
          }
        },
        "additionalProperties": false,
        "description": "A field within a field configuration."
      },
      "PageBeanFieldConfigurationItem": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/FieldConfigurationItem"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "FieldConfiguration": {
        "required": [
          "description",
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the field configuration.",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "The name of the field configuration."
          },
          "description": {
            "type": "string",
            "description": "The description of the field configuration."
          },
          "isDefault": {
            "type": "boolean",
            "description": "Whether the field configuration is the default."
          }
        },
        "additionalProperties": false,
        "description": "Details of a field configuration."
      },
      "FieldConfigurationItemsDetails": {
        "required": [
          "fieldConfigurationItems"
        ],
        "type": "object",
        "properties": {
          "fieldConfigurationItems": {
            "type": "array",
            "description": "Details of fields in a field configuration.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/FieldConfigurationItem"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of field configuration items."
      },
      "IssueTypeScheme": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the issue type scheme."
          },
          "name": {
            "type": "string",
            "description": "The name of the issue type scheme."
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type scheme."
          },
          "defaultIssueTypeId": {
            "type": "string",
            "description": "The ID of the default issue type of the issue type scheme."
          },
          "isDefault": {
            "type": "boolean",
            "description": "Whether the issue type scheme is the default."
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue type scheme."
      },
      "PageBeanIssueTypeScheme": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeScheme"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "IssueTypeSchemeProjects": {
        "required": [
          "issueTypeScheme",
          "projectIds"
        ],
        "type": "object",
        "properties": {
          "issueTypeScheme": {
            "description": "Details of an issue type scheme.",
            "allOf": [
              {
                "$ref": "#/components/schemas/IssueTypeScheme"
              }
            ]
          },
          "projectIds": {
            "type": "array",
            "description": "The IDs of the projects using the issue type scheme.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "Issue type scheme with a list of the projects that use it."
      },
      "PageBeanIssueTypeSchemeProjects": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeSchemeProjects"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "IssueTypeSchemeMapping": {
        "required": [
          "issueTypeId",
          "issueTypeSchemeId"
        ],
        "type": "object",
        "properties": {
          "issueTypeSchemeId": {
            "type": "string",
            "description": "The ID of the issue type scheme."
          },
          "issueTypeId": {
            "type": "string",
            "description": "The ID of the issue type."
          }
        },
        "additionalProperties": false,
        "description": "Issue type scheme item."
      },
      "PageBeanIssueTypeSchemeMapping": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeSchemeMapping"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "IssueTypeSchemeProjectAssociation": {
        "required": [
          "issueTypeSchemeId",
          "projectId"
        ],
        "type": "object",
        "properties": {
          "issueTypeSchemeId": {
            "type": "string",
            "description": "The ID of the issue type scheme.",
            "writeOnly": true
          },
          "projectId": {
            "type": "string",
            "description": "The ID of the project.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of the association between an issue type scheme and project."
      },
      "IssueTypeSchemeDetails": {
        "required": [
          "issueTypeIds",
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the issue type scheme. The name must be unique. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type scheme. The maximum length is 4000 characters.",
            "writeOnly": true
          },
          "defaultIssueTypeId": {
            "type": "string",
            "description": "The ID of the default issue type of the issue type scheme. This ID must be included in `issueTypeIds`.",
            "writeOnly": true
          },
          "issueTypeIds": {
            "type": "array",
            "description": "The list of issue types IDs of the issue type scheme. At least one standard issue type ID is required.",
            "writeOnly": true,
            "items": {
              "type": "string",
              "writeOnly": true
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue type scheme and its associated issue types."
      },
      "IssueTypeSchemeID": {
        "required": [
          "issueTypeSchemeId"
        ],
        "type": "object",
        "properties": {
          "issueTypeSchemeId": {
            "type": "string",
            "description": "The ID of the issue type scheme.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The ID of an issue type scheme."
      },
      "IssueTypeIds": {
        "required": [
          "issueTypeIds"
        ],
        "type": "object",
        "properties": {
          "issueTypeIds": {
            "type": "array",
            "description": "The list of issue type IDs.",
            "writeOnly": true,
            "items": {
              "type": "string",
              "writeOnly": true
            }
          }
        },
        "additionalProperties": false,
        "description": "The list of issue type IDs."
      },
      "IssueTypeSchemeUpdateDetails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the issue type scheme. The name must be unique. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type scheme. The maximum length is 4000 characters.",
            "writeOnly": true
          },
          "defaultIssueTypeId": {
            "type": "string",
            "description": "The ID of the default issue type of the issue type scheme.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of the name, description, and default issue type for an issue type scheme."
      },
      "OrderOfIssueTypes": {
        "required": [
          "issueTypeIds"
        ],
        "type": "object",
        "properties": {
          "issueTypeIds": {
            "type": "array",
            "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.",
            "writeOnly": true,
            "items": {
              "type": "string",
              "writeOnly": true
            }
          },
          "after": {
            "type": "string",
            "description": "The ID of the issue type to place the moved issue types after. Required if `position` isn't provided.",
            "writeOnly": true
          },
          "position": {
            "type": "string",
            "description": "The position the issue types should be moved to. Required if `after` isn't provided.",
            "writeOnly": true,
            "enum": [
              "First",
              "Last"
            ]
          }
        },
        "additionalProperties": false,
        "description": "An ordered list of issue type IDs and information about where to move them."
      },
      "PageBeanUiModificationDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/UiModificationDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "UiModificationContextDetails": {
        "required": [
          "issueTypeId",
          "projectId",
          "viewType"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the UI modification context.",
            "readOnly": true
          },
          "projectId": {
            "type": "string",
            "description": "The project ID of the context."
          },
          "issueTypeId": {
            "type": "string",
            "description": "The issue type ID of the context."
          },
          "viewType": {
            "type": "string",
            "description": "The view type of the context. Only `GIC` (Global Issue Create) is supported."
          },
          "isAvailable": {
            "type": "boolean",
            "description": "Whether a context is available. For example, when a project is deleted the context becomes unavailable.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The details of a UI modification's context, which define where to activate the UI modification.",
        "writeOnly": true
      },
      "UiModificationDetails": {
        "required": [
          "id",
          "name",
          "self"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the UI modification.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the UI modification. The maximum length is 255 characters.",
            "readOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the UI modification. The maximum length is 255 characters.",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of the UI modification.",
            "readOnly": true
          },
          "data": {
            "type": "string",
            "description": "The data of the UI modification. The maximum size of the data is 50000 characters.",
            "readOnly": true
          },
          "contexts": {
            "type": "array",
            "description": "List of contexts of the UI modification. The maximum number of contexts is 1000.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/UiModificationContextDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "The details of a UI modification."
      },
      "CreateUiModificationDetails": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the UI modification. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the UI modification. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "data": {
            "type": "string",
            "description": "The data of the UI modification. The maximum size of the data is 50000 characters.",
            "writeOnly": true
          },
          "contexts": {
            "type": "array",
            "description": "List of contexts of the UI modification. The maximum number of contexts is 1000.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/UiModificationContextDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "The details of a UI modification."
      },
      "UiModificationIdentifiers": {
        "required": [
          "id",
          "self"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the UI modification.",
            "readOnly": true
          },
          "self": {
            "type": "string",
            "description": "The URL of the UI modification.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Identifiers for a UI modification."
      },
      "UpdateUiModificationDetails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the UI modification. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the UI modification. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "data": {
            "type": "string",
            "description": "The data of the UI modification. The maximum size of the data is 50000 characters.",
            "writeOnly": true
          },
          "contexts": {
            "type": "array",
            "description": "List of contexts of the UI modification. The maximum number of contexts is 1000. If provided, replaces all existing contexts.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/UiModificationContextDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "The details of a UI modification."
      },
      "IssueTypeScreenScheme": {
        "required": [
          "id",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the issue type screen scheme."
          },
          "name": {
            "type": "string",
            "description": "The name of the issue type screen scheme."
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type screen scheme."
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue type screen scheme."
      },
      "PageBeanIssueTypeScreenScheme": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeScreenScheme"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "PageBeanScreenScheme": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ScreenScheme"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "ScreenScheme": {
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the screen scheme.",
            "format": "int64"
          },
          "name": {
            "type": "string",
            "description": "The name of the screen scheme."
          },
          "description": {
            "type": "string",
            "description": "The description of the screen scheme."
          },
          "screens": {
            "description": "The IDs of the screens for the screen types of the screen scheme.",
            "allOf": [
              {
                "$ref": "#/components/schemas/ScreenTypes"
              }
            ]
          },
          "issueTypeScreenSchemes": {
            "description": "Details of the issue type screen schemes associated with the screen scheme.",
            "allOf": [
              {
                "$ref": "#/components/schemas/PageBeanIssueTypeScreenScheme"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "A screen scheme."
      },
      "ScreenTypes": {
        "required": [
          "defaultScreen"
        ],
        "type": "object",
        "properties": {
          "edit": {
            "type": "integer",
            "description": "The ID of the edit screen.",
            "format": "int64"
          },
          "create": {
            "type": "integer",
            "description": "The ID of the create screen.",
            "format": "int64"
          },
          "view": {
            "type": "integer",
            "description": "The ID of the view screen.",
            "format": "int64"
          },
          "default": {
            "type": "integer",
            "description": "The ID of the default screen. Required when creating a screen scheme.",
            "format": "int64"
          }
        },
        "additionalProperties": false,
        "description": "The IDs of the screens for the screen types of the screen scheme.",
        "writeOnly": true
      },
      "ScreenSchemeDetails": {
        "required": [
          "name",
          "screens"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the screen scheme. The name must be unique. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the screen scheme. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "screens": {
            "description": "The IDs of the screens for the screen types of the screen scheme. Only screens used in classic projects are accepted.",
            "allOf": [
              {
                "$ref": "#/components/schemas/ScreenTypes"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of a screen scheme."
      },
      "ScreenSchemeId": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "integer",
            "description": "The ID of the screen scheme.",
            "format": "int64",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The ID of a screen scheme."
      },
      "UpdateScreenSchemeDetails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the screen scheme. The name must be unique. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the screen scheme. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "screens": {
            "description": "The IDs of the screens for the screen types of the screen scheme. Only screens used in classic projects are accepted.",
            "allOf": [
              {
                "$ref": "#/components/schemas/UpdateScreenTypes"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Details of a screen scheme."
      },
      "UpdateScreenTypes": {
        "type": "object",
        "properties": {
          "edit": {
            "type": "string",
            "description": "The ID of the edit screen. To remove the screen association, pass a null.",
            "writeOnly": true
          },
          "create": {
            "type": "string",
            "description": "The ID of the create screen. To remove the screen association, pass a null.",
            "writeOnly": true
          },
          "view": {
            "type": "string",
            "description": "The ID of the view screen. To remove the screen association, pass a null.",
            "writeOnly": true
          },
          "default": {
            "type": "string",
            "description": "The ID of the default screen. When specified, must include a screen ID as a default screen is required.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The IDs of the screens for the screen types of the screen scheme.",
        "writeOnly": true
      },
      "CustomFieldOption": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of these custom field option details.",
            "format": "uri",
            "readOnly": true
          },
          "value": {
            "type": "string",
            "description": "The value of the custom field option.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of a custom option for a field.",
        "xml": {
          "name": "customFieldOption"
        }
      },
      "CustomFieldContextProjectMapping": {
        "required": [
          "contextId"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context.",
            "readOnly": true
          },
          "projectId": {
            "type": "string",
            "description": "The ID of the project.",
            "readOnly": true
          },
          "isGlobalContext": {
            "type": "boolean",
            "description": "Whether context is global.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of a context to project association."
      },
      "PageBeanCustomFieldContextProjectMapping": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/CustomFieldContextProjectMapping"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "CustomFieldContext": {
        "required": [
          "description",
          "id",
          "isAnyIssueType",
          "isGlobalContext",
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the context."
          },
          "name": {
            "type": "string",
            "description": "The name of the context."
          },
          "description": {
            "type": "string",
            "description": "The description of the context."
          },
          "isGlobalContext": {
            "type": "boolean",
            "description": "Whether the context is global."
          },
          "isAnyIssueType": {
            "type": "boolean",
            "description": "Whether the context apply to all issue types."
          }
        },
        "additionalProperties": false,
        "description": "The details of a custom field context."
      },
      "PageBeanCustomFieldContext": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/CustomFieldContext"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "CustomFieldContextDefaultValue": {
        "type": "object",
        "additionalProperties": false,
        "discriminator": {
          "propertyName": "type",
          "mapping": {
            "option.cascading": "#/components/schemas/CustomFieldContextDefaultValueCascadingOption",
            "option.multiple": "#/components/schemas/CustomFieldContextDefaultValueMultipleOption",
            "option.single": "#/components/schemas/CustomFieldContextDefaultValueSingleOption",
            "single.user.select": "#/components/schemas/CustomFieldContextSingleUserPickerDefaults",
            "multi.user.select": "#/components/schemas/CustomFieldContextDefaultValueMultiUserPicker",
            "grouppicker.single": "#/components/schemas/CustomFieldContextDefaultValueSingleGroupPicker",
            "grouppicker.multiple": "#/components/schemas/CustomFieldContextDefaultValueMultipleGroupPicker",
            "datepicker": "#/components/schemas/CustomFieldContextDefaultValueDate",
            "datetimepicker": "#/components/schemas/CustomFieldContextDefaultValueDateTime",
            "url": "#/components/schemas/CustomFieldContextDefaultValueURL",
            "project": "#/components/schemas/CustomFieldContextDefaultValueProject",
            "float": "#/components/schemas/CustomFieldContextDefaultValueFloat",
            "labels": "#/components/schemas/CustomFieldContextDefaultValueLabels",
            "textfield": "#/components/schemas/CustomFieldContextDefaultValueTextField",
            "textarea": "#/components/schemas/CustomFieldContextDefaultValueTextArea",
            "readonly": "#/components/schemas/CustomFieldContextDefaultValueReadOnly",
            "version.single": "#/components/schemas/CustomFieldContextDefaultValueSingleVersionPicker",
            "version.multiple": "#/components/schemas/CustomFieldContextDefaultValueMultipleVersionPicker",
            "forge.string": "#/components/schemas/CustomFieldContextDefaultValueForgeStringField",
            "forge.string.list": "#/components/schemas/CustomFieldContextDefaultValueForgeMultiStringField",
            "forge.object": "#/components/schemas/CustomFieldContextDefaultValueForgeObjectField",
            "forge.datetime": "#/components/schemas/CustomFieldContextDefaultValueForgeDateTimeField",
            "forge.group": "#/components/schemas/CustomFieldContextDefaultValueForgeGroupField",
            "forge.group.list": "#/components/schemas/CustomFieldContextDefaultValueForgeMultiGroupField",
            "forge.number": "#/components/schemas/CustomFieldContextDefaultValueForgeNumberField",
            "forge.user": "#/components/schemas/CustomFieldContextDefaultValueForgeUserField",
            "forge.user.list": "#/components/schemas/CustomFieldContextDefaultValueForgeMultiUserField"
          }
        },
        "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"
          }
        ]
      },
      "CustomFieldContextDefaultValueCascadingOption": {
        "required": [
          "contextId",
          "optionId",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "optionId": {
            "type": "string",
            "description": "The ID of the default option."
          },
          "cascadingOptionId": {
            "type": "string",
            "description": "The ID of the default cascading option."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a cascading select custom field."
      },
      "CustomFieldContextDefaultValueDate": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "date": {
            "type": "string",
            "description": "The default date in ISO format. Ignored if `useCurrent` is true."
          },
          "useCurrent": {
            "type": "boolean",
            "description": "Whether to use the current date.",
            "default": false
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a Date custom field."
      },
      "CustomFieldContextDefaultValueDateTime": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "dateTime": {
            "type": "string",
            "description": "The default date-time in ISO format. Ignored if `useCurrent` is true."
          },
          "useCurrent": {
            "type": "boolean",
            "description": "Whether to use the current date.",
            "default": false
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a date time custom field."
      },
      "CustomFieldContextDefaultValueFloat": {
        "required": [
          "number",
          "type"
        ],
        "type": "object",
        "properties": {
          "number": {
            "type": "number",
            "description": "The default floating-point number.",
            "format": "double"
          },
          "type": {
            "type": "string"
          }
        },
        "description": "Default value for a float (number) custom field."
      },
      "CustomFieldContextDefaultValueForgeDateTimeField": {
        "required": [
          "contextId",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "dateTime": {
            "type": "string",
            "description": "The default date-time in ISO format. Ignored if `useCurrent` is true."
          },
          "useCurrent": {
            "type": "boolean",
            "description": "Whether to use the current date.",
            "default": false
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a Forge date time custom field."
      },
      "CustomFieldContextDefaultValueForgeGroupField": {
        "required": [
          "contextId",
          "groupId",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "groupId": {
            "type": "string",
            "description": "The ID of the the default group."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a Forge group custom field."
      },
      "CustomFieldContextDefaultValueForgeMultiGroupField": {
        "required": [
          "contextId",
          "groupIds",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "groupIds": {
            "uniqueItems": true,
            "type": "array",
            "description": "The IDs of the default groups.",
            "items": {
              "type": "string",
              "description": "The IDs of the default groups."
            }
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a Forge collection of groups custom field."
      },
      "CustomFieldContextDefaultValueForgeMultiStringField": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "values": {
            "type": "array",
            "description": "List of string values. The maximum length for a value is 254 characters.",
            "items": {
              "type": "string",
              "description": "List of string values. The maximum length for a value is 254 characters."
            }
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default text for a Forge collection of strings custom field."
      },
      "CustomFieldContextDefaultValueForgeMultiUserField": {
        "required": [
          "accountIds",
          "contextId",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "accountIds": {
            "type": "array",
            "description": "The IDs of the default users.",
            "items": {
              "type": "string",
              "description": "The IDs of the default users."
            }
          },
          "type": {
            "type": "string"
          }
        },
        "description": "Defaults for a Forge collection of users custom field."
      },
      "CustomFieldContextDefaultValueForgeNumberField": {
        "required": [
          "contextId",
          "number",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "number": {
            "type": "number",
            "description": "The default floating-point number.",
            "format": "double"
          },
          "type": {
            "type": "string"
          }
        },
        "description": "Default value for a Forge number custom field."
      },
      "CustomFieldContextDefaultValueForgeObjectField": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "object": {
            "type": "object",
            "description": "The default JSON object."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a Forge object custom field."
      },
      "CustomFieldContextDefaultValueForgeStringField": {
        "required": [
          "contextId",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "text": {
            "type": "string",
            "description": "The default text. The maximum length is 254 characters."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default text for a Forge string custom field."
      },
      "CustomFieldContextDefaultValueForgeUserField": {
        "required": [
          "accountId",
          "contextId",
          "type",
          "userFilter"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "accountId": {
            "type": "string",
            "description": "The ID of the default user."
          },
          "userFilter": {
            "$ref": "#/components/schemas/UserFilter"
          },
          "type": {
            "type": "string"
          }
        },
        "description": "Defaults for a Forge user custom field."
      },
      "CustomFieldContextDefaultValueLabels": {
        "required": [
          "labels",
          "type"
        ],
        "type": "object",
        "properties": {
          "labels": {
            "type": "array",
            "description": "The default labels value.",
            "items": {
              "type": "string",
              "description": "The default labels value."
            }
          },
          "type": {
            "type": "string"
          }
        },
        "description": "Default value for a labels custom field."
      },
      "CustomFieldContextDefaultValueMultiUserPicker": {
        "required": [
          "accountIds",
          "contextId",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "accountIds": {
            "type": "array",
            "description": "The IDs of the default users.",
            "items": {
              "type": "string",
              "description": "The IDs of the default users."
            }
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a User Picker (multiple) custom field."
      },
      "CustomFieldContextDefaultValueMultipleGroupPicker": {
        "required": [
          "contextId",
          "groupIds",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "groupIds": {
            "uniqueItems": true,
            "type": "array",
            "description": "The IDs of the default groups.",
            "items": {
              "type": "string",
              "description": "The IDs of the default groups."
            }
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a multiple group picker custom field."
      },
      "CustomFieldContextDefaultValueMultipleOption": {
        "required": [
          "contextId",
          "optionIds",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "optionIds": {
            "type": "array",
            "description": "The list of IDs of the default options.",
            "items": {
              "type": "string",
              "description": "The list of IDs of the default options."
            }
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a multi-select custom field."
      },
      "CustomFieldContextDefaultValueMultipleVersionPicker": {
        "required": [
          "type",
          "versionIds"
        ],
        "type": "object",
        "properties": {
          "versionIds": {
            "uniqueItems": true,
            "type": "array",
            "description": "The IDs of the default versions.",
            "items": {
              "type": "string",
              "description": "The IDs of the default versions."
            }
          },
          "versionOrder": {
            "type": "string",
            "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": {
            "type": "string"
          }
        },
        "description": "The default value for a multiple version picker custom field."
      },
      "CustomFieldContextDefaultValueProject": {
        "required": [
          "contextId",
          "projectId",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "projectId": {
            "type": "string",
            "description": "The ID of the default project."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a project custom field."
      },
      "CustomFieldContextDefaultValueReadOnly": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "The default text. The maximum length is 255 characters."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default text for a read only custom field."
      },
      "CustomFieldContextDefaultValueSingleGroupPicker": {
        "required": [
          "contextId",
          "groupId",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "groupId": {
            "type": "string",
            "description": "The ID of the the default group."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a group picker custom field."
      },
      "CustomFieldContextDefaultValueSingleOption": {
        "required": [
          "contextId",
          "optionId",
          "type"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "optionId": {
            "type": "string",
            "description": "The ID of the default option."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a single select custom field."
      },
      "CustomFieldContextDefaultValueSingleVersionPicker": {
        "required": [
          "type",
          "versionId"
        ],
        "type": "object",
        "properties": {
          "versionId": {
            "type": "string",
            "description": "The ID of the default version."
          },
          "versionOrder": {
            "type": "string",
            "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": {
            "type": "string"
          }
        },
        "description": "The default value for a version picker custom field."
      },
      "CustomFieldContextDefaultValueTextArea": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "The default text. The maximum length is 32767 characters."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default text for a text area custom field."
      },
      "CustomFieldContextDefaultValueTextField": {
        "required": [
          "type"
        ],
        "type": "object",
        "properties": {
          "text": {
            "type": "string",
            "description": "The default text. The maximum length is 254 characters."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default text for a text custom field."
      },
      "CustomFieldContextDefaultValueURL": {
        "required": [
          "contextId",
          "type",
          "url"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "url": {
            "type": "string",
            "description": "The default URL."
          },
          "type": {
            "type": "string"
          }
        },
        "description": "The default value for a URL custom field."
      },
      "CustomFieldContextSingleUserPickerDefaults": {
        "required": [
          "accountId",
          "contextId",
          "type",
          "userFilter"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "accountId": {
            "type": "string",
            "description": "The ID of the default user."
          },
          "userFilter": {
            "$ref": "#/components/schemas/UserFilter"
          },
          "type": {
            "type": "string"
          }
        },
        "description": "Defaults for a User Picker (single) custom field."
      },
      "PageBeanCustomFieldContextDefaultValue": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/CustomFieldContextDefaultValue"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "UserFilter": {
        "required": [
          "enabled"
        ],
        "type": "object",
        "properties": {
          "enabled": {
            "type": "boolean",
            "description": "Whether the filter is enabled."
          },
          "groups": {
            "uniqueItems": true,
            "type": "array",
            "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": {
              "type": "string",
              "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."
            }
          },
          "roleIds": {
            "uniqueItems": true,
            "type": "array",
            "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": {
              "type": "integer",
              "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"
            }
          }
        },
        "description": "Filter for a User Picker (single) custom field."
      },
      "CreateCustomFieldContext": {
        "required": [
          "name"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the context.",
            "readOnly": true
          },
          "name": {
            "type": "string",
            "description": "The name of the context."
          },
          "description": {
            "type": "string",
            "description": "The description of the context."
          },
          "projectIds": {
            "type": "array",
            "description": "The list of project IDs associated with the context. If the list is empty, the context is global.",
            "items": {
              "type": "string"
            }
          },
          "issueTypeIds": {
            "type": "array",
            "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"
            }
          }
        },
        "additionalProperties": false,
        "description": "The details of a created custom field context."
      },
      "ProjectIds": {
        "required": [
          "projectIds"
        ],
        "type": "object",
        "properties": {
          "projectIds": {
            "type": "array",
            "description": "The IDs of projects.",
            "writeOnly": true,
            "items": {
              "type": "string",
              "writeOnly": true
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of project IDs."
      },
      "CustomFieldContextUpdateDetails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the custom field context. The name must be unique. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the custom field context. The maximum length is 255 characters.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of a custom field context."
      },
      "ProjectIssueTypeMapping": {
        "required": [
          "issueTypeId",
          "projectId"
        ],
        "type": "object",
        "properties": {
          "projectId": {
            "type": "string",
            "description": "The ID of the project.",
            "writeOnly": true
          },
          "issueTypeId": {
            "type": "string",
            "description": "The ID of the issue type.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The project and issue type mapping.",
        "writeOnly": true
      },
      "ProjectIssueTypeMappings": {
        "required": [
          "mappings"
        ],
        "type": "object",
        "properties": {
          "mappings": {
            "type": "array",
            "description": "The project and issue type mappings.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/ProjectIssueTypeMapping"
            }
          }
        },
        "additionalProperties": false,
        "description": "The project and issue type mappings."
      },
      "ContextForProjectAndIssueType": {
        "required": [
          "contextId",
          "issueTypeId",
          "projectId"
        ],
        "type": "object",
        "properties": {
          "projectId": {
            "type": "string",
            "description": "The ID of the project."
          },
          "issueTypeId": {
            "type": "string",
            "description": "The ID of the issue type."
          },
          "contextId": {
            "type": "string",
            "description": "The ID of the custom field context."
          }
        },
        "additionalProperties": false,
        "description": "The project and issue type mapping with a matching custom field context."
      },
      "PageBeanContextForProjectAndIssueType": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ContextForProjectAndIssueType"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "CustomFieldContextDefaultValueUpdate": {
        "type": "object",
        "properties": {
          "defaultValues": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/CustomFieldContextDefaultValue"
            }
          }
        },
        "additionalProperties": false,
        "description": "Default values to update."
      },
      "IssueTypeToContextMapping": {
        "required": [
          "contextId"
        ],
        "type": "object",
        "properties": {
          "contextId": {
            "type": "string",
            "description": "The ID of the context."
          },
          "issueTypeId": {
            "type": "string",
            "description": "The ID of the issue type."
          },
          "isAnyIssueType": {
            "type": "boolean",
            "description": "Whether the context is mapped to any issue type."
          }
        },
        "additionalProperties": false,
        "description": "Mapping of an issue type to a context."
      },
      "PageBeanIssueTypeToContextMapping": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeToContextMapping"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "CustomFieldValueUpdate": {
        "required": [
          "issueIds",
          "value"
        ],
        "type": "object",
        "properties": {
          "issueIds": {
            "type": "array",
            "description": "The list of issue IDs.",
            "writeOnly": true,
            "items": {
              "type": "integer",
              "format": "int64",
              "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:\n\n *  `string` the value must be a string.\n *  `number` the value must be a number.\n *  `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.\n *  `user` the value must be an object that contains the `accountId` field.\n *  `group` the value must be an object that contains the group `name` or `groupId` field. Because group names can change, we recommend using `groupId`.\n\nA 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)."
          }
        },
        "additionalProperties": false,
        "description": "A list of issue IDs and the value to update a custom field to.",
        "writeOnly": true
      },
      "CustomFieldValueUpdateDetails": {
        "type": "object",
        "properties": {
          "updates": {
            "type": "array",
            "description": "The list of custom field update details.",
            "items": {
              "$ref": "#/components/schemas/CustomFieldValueUpdate"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of updates for a custom field.",
        "writeOnly": true
      },
      "MultipleCustomFieldValuesUpdate": {
        "required": [
          "customField",
          "issueIds",
          "value"
        ],
        "type": "object",
        "properties": {
          "customField": {
            "type": "string",
            "description": "The ID or key of the custom field. For example, `customfield_10010`.",
            "writeOnly": true
          },
          "issueIds": {
            "type": "array",
            "description": "The list of issue IDs.",
            "writeOnly": true,
            "items": {
              "type": "integer",
              "format": "int64",
              "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:\n\n *  `string` the value must be a string.\n *  `number` the value must be a number.\n *  `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.\n *  `user` the value must be an object that contains the `accountId` field.\n *  `group` the value must be an object that contains the group `name` or `groupId` field. Because group names can change, we recommend using `groupId`.\n\nA 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)."
          }
        },
        "additionalProperties": false,
        "description": "A custom field and its new value with a list of issue to update.",
        "writeOnly": true
      },
      "MultipleCustomFieldValuesUpdateDetails": {
        "type": "object",
        "properties": {
          "updates": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/MultipleCustomFieldValuesUpdate"
            }
          }
        },
        "additionalProperties": false,
        "description": "List of updates for a custom fields.",
        "writeOnly": true
      },
      "ContextualConfiguration": {
        "required": [
          "fieldContextId",
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the configuration."
          },
          "fieldContextId": {
            "type": "string",
            "description": "The ID of the field context the configuration is associated with.",
            "readOnly": true
          },
          "configuration": {
            "description": "The field configuration."
          },
          "schema": {
            "description": "The field value schema."
          }
        },
        "additionalProperties": false,
        "description": "Details of the contextual configuration for a custom field."
      },
      "PageBeanContextualConfiguration": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ContextualConfiguration"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "CustomFieldConfigurations": {
        "required": [
          "configurations"
        ],
        "type": "object",
        "properties": {
          "configurations": {
            "maxItems": 1000,
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "description": "The list of custom field configuration details.",
            "items": {
              "$ref": "#/components/schemas/ContextualConfiguration"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of configurations for a custom field.",
        "writeOnly": true
      },
      "IssueTypeScreenSchemeItem": {
        "required": [
          "issueTypeId",
          "issueTypeScreenSchemeId",
          "screenSchemeId"
        ],
        "type": "object",
        "properties": {
          "issueTypeScreenSchemeId": {
            "type": "string",
            "description": "The ID of the issue type screen scheme."
          },
          "issueTypeId": {
            "type": "string",
            "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."
          },
          "screenSchemeId": {
            "type": "string",
            "description": "The ID of the screen scheme."
          }
        },
        "additionalProperties": false,
        "description": "The screen scheme for an issue type."
      },
      "PageBeanIssueTypeScreenSchemeItem": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeScreenSchemeItem"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "IssueTypeScreenSchemesProjects": {
        "required": [
          "issueTypeScreenScheme",
          "projectIds"
        ],
        "type": "object",
        "properties": {
          "issueTypeScreenScheme": {
            "description": "Details of an issue type screen scheme.",
            "allOf": [
              {
                "$ref": "#/components/schemas/IssueTypeScreenScheme"
              }
            ]
          },
          "projectIds": {
            "type": "array",
            "description": "The IDs of the projects using the issue type screen scheme.",
            "items": {
              "type": "string"
            }
          }
        },
        "additionalProperties": false,
        "description": "Issue type screen scheme with a list of the projects that use it."
      },
      "PageBeanIssueTypeScreenSchemesProjects": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeScreenSchemesProjects"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "PageBeanProjectDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/ProjectDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "IssueTypeScreenSchemeProjectAssociation": {
        "type": "object",
        "properties": {
          "issueTypeScreenSchemeId": {
            "type": "string",
            "description": "The ID of the issue type screen scheme.",
            "writeOnly": true
          },
          "projectId": {
            "type": "string",
            "description": "The ID of the project.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Associated issue type screen scheme and project."
      },
      "IssueTypeScreenSchemeDetails": {
        "required": [
          "issueTypeMappings",
          "name"
        ],
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the issue type screen scheme. The name must be unique. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type screen scheme. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "issueTypeMappings": {
            "type": "array",
            "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.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeScreenSchemeMapping"
            }
          }
        },
        "additionalProperties": false,
        "description": "The details of an issue type screen scheme."
      },
      "IssueTypeScreenSchemeMapping": {
        "required": [
          "issueTypeId",
          "screenSchemeId"
        ],
        "type": "object",
        "properties": {
          "issueTypeId": {
            "type": "string",
            "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.",
            "writeOnly": true
          },
          "screenSchemeId": {
            "type": "string",
            "description": "The ID of the screen scheme. Only screen schemes used in classic projects are accepted.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The IDs of the screen schemes for the issue type IDs.",
        "writeOnly": true
      },
      "IssueTypeScreenSchemeId": {
        "required": [
          "id"
        ],
        "type": "object",
        "properties": {
          "id": {
            "type": "string",
            "description": "The ID of the issue type screen scheme.",
            "readOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The ID of an issue type screen scheme."
      },
      "IssueTypeScreenSchemeUpdateDetails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the issue type screen scheme. The name must be unique. The maximum length is 255 characters.",
            "writeOnly": true
          },
          "description": {
            "type": "string",
            "description": "The description of the issue type screen scheme. The maximum length is 255 characters.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "Details of an issue type screen scheme."
      },
      "IssueTypeScreenSchemeMappingDetails": {
        "required": [
          "issueTypeMappings"
        ],
        "type": "object",
        "properties": {
          "issueTypeMappings": {
            "type": "array",
            "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.",
            "writeOnly": true,
            "items": {
              "$ref": "#/components/schemas/IssueTypeScreenSchemeMapping"
            }
          }
        },
        "additionalProperties": false,
        "description": "A list of issue type screen scheme mappings."
      },
      "UpdateDefaultScreenScheme": {
        "required": [
          "screenSchemeId"
        ],
        "type": "object",
        "properties": {
          "screenSchemeId": {
            "type": "string",
            "description": "The ID of the screen scheme.",
            "writeOnly": true
          }
        },
        "additionalProperties": false,
        "description": "The ID of a screen scheme."
      },
      "GroupDetails": {
        "type": "object",
        "properties": {
          "name": {
            "type": "string",
            "description": "The name of the group."
          },
          "groupId": {
            "type": "string",
            "description": "The ID of the group, which uniquely identifies the group across all Atlassian products. For example, *952d12c3-5b5b-4d04-bb32-44d383afc4b2*.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Details about a group."
      },
      "PageBeanGroupDetails": {
        "type": "object",
        "properties": {
          "self": {
            "type": "string",
            "description": "The URL of the page.",
            "format": "uri",
            "readOnly": true
          },
          "nextPage": {
            "type": "string",
            "description": "If there is another page of results, the URL of the next page.",
            "format": "uri",
            "readOnly": true
          },
          "maxResults": {
            "type": "integer",
            "description": "The maximum number of items that could be returned.",
            "format": "int32",
            "readOnly": true
          },
          "startAt": {
            "type": "integer",
            "description": "The index of the first item returned.",
            "format": "int64",
            "readOnly": true
          },
          "total": {
            "type": "integer",
            "description": "The number of items returned.",
            "format": "int64",
            "readOnly": true
          },
          "isLast": {
            "type": "boolean",
            "description": "Whether this is the last page.",
            "readOnly": true
          },
          "values": {
            "type": "array",
            "description": "The list of items.",
            "readOnly": true,
            "items": {
              "$ref": "#/components/schemas/GroupDetails"
            }
          }
        },
        "additionalProperties": false,
        "description": "A page of items."
      },
      "BulkIssuePropertyUpdateRequest": {
        "type": "object",
        "properties": {
          "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."
          },
          "expression": {
            "type": "string",
            "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."
          },
          "filter": {
            "description": "The bulk operation filter.",
            "allOf": [
              {
                "$ref": "#/components/schemas/IssueFilterForBulkPropertySet"
              }
            ]
          }
        },
        "additionalProperties": false,
        "description": "Bulk issue property update request details."
      },
      "IssueFilterForBulkPropertySet": {
        "type": "object",
        "properties": {
          "entityIds": {
            "uniqueItems": true,
            "type": "array",
            "description": "List of issues to perform the bulk operation on.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "currentValue": {
            "description": "The value of properties to perform the bulk operation on."
          },
          "hasProperty": {
            "type": "boolean",
            "description": "Whether the bulk operation occurs only when the property is present on or absent from an issue."
          }
        },
        "additionalProperties": false,
        "description": "Bulk operation filter details."
      },
      "IssueFilterForBulkPropertyDelete": {
        "type": "object",
        "properties": {
          "entityIds": {
            "uniqueItems": true,
            "type": "array",
            "description": "List of issues to perform the bulk delete operation on.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "currentValue": {
            "description": "The value of properties to perform the bulk operation on."
          }
        },
        "additionalProperties": false,
        "description": "Bulk operation filter details."
      },
      "IssueEntityProperties": {
        "type": "object",
        "properties": {
          "entitiesIds": {
            "maxItems": 10000,
            "minItems": 1,
            "uniqueItems": true,
            "type": "array",
            "description": "A list of entity property IDs.",
            "items": {
              "type": "integer",
              "format": "int64"
            }
          },
          "properties": {
            "maxProperties": 10,
            "minProperties": 1,
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/JsonNode"
            },
            "description": "A list of entity property keys and values."
          }
        },
        "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."
      },
      "JsonNode": {
        "maxProperties": 10,
        "minProperties": 1,
        "type": "object",
        "properties": {
          "floatingPointNumber": {
            "type": "boolean"
          },
          "elements": {
            "type": "object"
          },
          "pojo": {
            "type": "boolean"
          },
          "number": {
            "type": "boolean"
          },
          "integralNumber": {
            "type": "boolean"
          },
          "int": {
            "type": "boolean"
          },
          "long": {
            "type": "boolean"
          },
          "double": {
            "type": "boolean"
          },
          "bigDecimal": {
            "type": "boolean"
          },
          "bigInteger": {
            "type": "boolean"
          },
          "textual": {
            "type": "boolean"
          },
          "boolean": {
            "type": "boolean"
          },
          "binary": {
            "type": "boolean"
          },
          "object": {
            "type": "boolean"
          },
          "containerNode": {
            "type": "boolean"
          },
          "missingNode": {
            "type": "boolean"
          },
          "valueNode": {
            "type": "boolean"
          },
          "numberValue": {
            "type": "number"
          },
          "numberType": {
            "type": "string",
            "enum": [
              "INT",
              "LONG",
              "BIG_INTEGER",
              "FLOAT",
              "DOUBLE",
              "BIG_DECIMAL"
            ]
          },
          "intValue": {
            "type": "integer",
            "format": "int32"
          },
          "longValue": {
            "type": "integer",
            "format": "int64"
          },
          "bigIntegerValue": {
            "type": "integer"
          },
          "doubleValue": {
            "type": "number",
            "format": "double"
          },
          "decimalValue": {
            "type": "number"
          },
          "booleanValue": {
            "type": "boolean"
          },
          "binaryValue": {
            "type": "array",
            "items": {
              "type": "string",
              "format": "byte"
            }
          },
          "valueAsInt": {
            "type": "integer",
            "format": "int32"
          },
          "valueAsLong": {
            "type": "integer",
            "format": "int64"
          },
          "valueAsDouble": {
            "type": "number",
            "format": "double"
          },
          "valueAsBoolean": {
            "type": "boolean"
          },
          "textValue": {
            "type": "string"
          },
          "valueAsText": {
            "type": "string"
          },
          "fieldNames": {
            "type": "object"
          },
          "array": {
            "type": "boolean"
          },
          "fields": {
            "type": "object"
          },
          "null": {
            "type": "boolean"
          }
        },
        "additionalProperties": false
      },
      "IssueEntityPropertiesForMultiUpdate": {
        "maxProperties": 100,
        "minProperties": 1,
        "type": "object",
        "properties": {
          "issueID": {
            "type": "integer",
            "description": "The ID of the issue.",
            "format": "int64"
          },
          "properties": {
            "maxProperties": 10,
            "minProperties": 1,
            "type": "object",
            "additionalProperties": {
              "$ref": "#/components/schemas/JsonNode"
            },
            "description": "Entity properties to set on the issue. The maximum length of an issue property value is 32768 characters."
          }
        },
        "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."
      },
      "MultiIssueEntityProperties": {
        "type": "object",
        "properties": {
          "issues": {
            "maxProperties": 100,
            "minProperties": 1,
            "type": "array",
            "description": "A list of issue IDs and their respective properties.",
            "items": {
              "$ref": "#/components/schemas/IssueEntityPropertiesForMultiUpdate"
            }
          }
        },
        "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."
      },
      "OperationMessage": {
        "required": [
          "message",
          "statusCode"
        ],
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "The human-readable message that describes the result."
          },
          "statusCode": {
            "type": "integer",
            "description": "The status code of the response."
          }
        },
        "additionalProperties": false,
        "example": {
          "message": "An example message.",
          "statusCode": 200
        }
      },
      "ErrorMessage": {
        "required": [
          "message"
        ],
        "type": "object",
        "properties": {
          "message": {
            "type": "string",
            "description": "The error message."
          }
        },
        "additionalProperties": false,
        "example": {
          "message": "The request is not from a Connect app."
        }
      },
      "ConnectModules": {
        "required": [
          "modules"
        ],
        "type": "object",
        "properties": {
          "modules": {
            "type": "array",
            "description": "A list of app modules in the same format as the `modules` property in the\n[app descriptor](https://developer.atlassian.com/cloud/jira/platform/app-descriptor/).",
            "items": {
              "$ref": "#/components/schemas/ConnectModule"
            }
          }
        },
        "example": {
          "jiraEntityProperties": [
            {
              "keyConfigurations": [
                {
                  "extractions": [
                    {
                      "objectName": "extension",
                      "type": "text",
                      "alias": "attachmentExtension"
                    }
                  ],
                  "propertyKey": "attachment"
                }
              ],
              "entityType": "issue",
              "name": {
                "value": "Attachment Index Document"
              },
              "key": "dynamic-attachment-entity-property"
            }
          ],
          "jiraIssueFields": [
            {
              "description": {
                "value": "A dynamically added single-select field"
              },
              "type": "single_select",
              "extractions": [
                {
                  "path": "category",
                  "type": "text",
                  "name": "categoryName"
                }
              ],
              "name": {
                "value": "Dynamic single select"
              },
              "key": "dynamic-select-field"
            }
          ]
        }
      },
      "ConnectModule": {
        "type": "object",
        "description": "A [Connect module](https://developer.atlassian.com/cloud/jira/platform/about-jira-modules/) in the same format as in the\n[app descriptor](https://developer.atlassian.com/cloud/jira/platform/app-descriptor/).",
        "example": {
          "description": {
            "value": "field with team"
          },
          "type": "single_select",
          "extractions": [
            {
              "path": "category",
              "type": "text",
              "name": "categoryName"
            }
          ],
          "name": {
            "value": "Team"
          },
          "key": "team-field"
        }
      },
      "WorkflowRulesSearch": {
        "required": [
          "ruleIds",
          "workflowEntityId"
        ],
        "type": "object",
        "properties": {
          "workflowEntityId": {
            "type": "string",
            "description": "The workflow ID.",
            "format": "uuid",
            "example": "a498d711-685d-428d-8c3e-bc03bb450ea7"
          },
          "ruleIds": {
            "maxItems": 10,
            "minItems": 1,
            "type": "array",
            "description": "The list of workflow rule IDs.",
            "items": {
              "type": "string",
              "description": "Workflow rule ID.",
              "format": "uuid",
              "example": "55d44f1d-c859-42e5-9c27-2c5ec3f340b1"
            }
          },
          "expand": {
            "type": "string",
            "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"
          }
        },
        "description": "Details of the workflow and its transition rules."
      },
      "WorkflowRulesSearchDetails": {
        "type": "object",
        "properties": {
          "workflowEntityId": {
            "type": "string",
            "description": "The workflow ID.",
            "format": "uuid",
            "example": "a498d711-685d-428d-8c3e-bc03bb450ea7"
          },
          "invalidRules": {
            "type": "array",
            "description": "List of workflow rule IDs that do not belong to the workflow or can not be found.",
            "items": {
              "type": "string",
              "description": "Workflow rule ID.",
              "format": "uuid",
              "example": "55d44f1d-c859-42e5-9c27-2c5ec3f340b1"
            }
          },
          "validRules": {
            "type": "array",
            "description": "List of valid workflow transition rules.",
            "items": {
              "$ref": "#/components/schemas/WorkflowTransitionRules"
            }
          }
        },
        "description": "Details of workflow transition rules."
      },
      "EntityPropertyDetails": {
        "required": [
          "entityId",
          "key",
          "value"
        ],
        "type": "object",
        "properties": {
          "entityId": {
            "type": "number",
            "description": "The entity property ID.",
            "example": 123
          },
          "key": {
            "type": "string",
            "description": "The entity property key.",
            "example": "mykey"
          },
          "value": {
            "type": "string",
            "description": "The new value of the entity property.",
            "example": "newValue"
          }
        }
      },
      "ConnectCustomFieldValue": {
        "required": [
          "_type",
          "fieldID",
          "issueID"
        ],
        "type": "object",
        "properties": {
          "_type": {
            "type": "string",
            "description": "The type of custom field.",
            "writeOnly": true,
            "enum": [
              "StringIssueField",
              "NumberIssueField",
              "RichTextIssueField",
              "SingleSelectIssueField",
              "MultiSelectIssueField",
              "TextIssueField"
            ]
          },
          "issueID": {
            "type": "integer",
            "description": "The issue ID.",
            "writeOnly": true
          },
          "fieldID": {
            "type": "integer",
            "description": "The custom field ID.",
            "writeOnly": true
          },
          "string": {
            "type": "string",
            "description": "The value of string type custom field when `_type` is `StringIssueField`."
          },
          "number": {
            "type": "number",
            "description": "The value of number type custom field when `_type` is `NumberIssueField`."
          },
          "richText": {
            "type": "string",
            "description": "The value of richText type custom field when `_type` is `RichTextIssueField`."
          },
          "optionID": {
            "type": "string",
            "description": "The value of single select and multiselect custom field type when `_type` is `SingleSelectIssueField` or `MultiSelectIssueField`."
          },
          "text": {
            "type": "string",
            "description": "The value of of text custom field type when `_type` is `TextIssueField`."
          }
        },
        "description": "A list of custom field details.",
        "writeOnly": true
      },
      "ConnectCustomFieldValues": {
        "type": "object",
        "properties": {
          "updateValueList": {
            "type": "array",
            "description": "The list of custom field update details.",
            "items": {
              "$ref": "#/components/schemas/ConnectCustomFieldValue"
            }
          }
        },
        "additionalProperties": false,
        "description": "Details of updates for a custom field.",
        "writeOnly": true
      }
    },
    "securitySchemes": {
      "basicAuth": {
        "type": "http",
        "description": "You can access this resource via basic auth.",
        "scheme": "basic"
      },
      "OAuth2": {
        "type": "oauth2",
        "description": "OAuth2 scopes for Jira",
        "flows": {
          "authorizationCode": {
            "authorizationUrl": "https://auth.atlassian.com/authorize",
            "tokenUrl": "https://auth.atlassian.com/oauth/token",
            "scopes": {
              "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).",
              "write:jira-work": "Create and edit issues in Jira, post comments, create worklogs, and delete issues.",
              "manage:jira-project": "Create and edit project settings and create new project-level objects, for example, versions, components.",
              "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-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:audit-log:jira": "View audit logs.",
              "read:avatar:jira": "View system and custom avatars.",
              "write:avatar:jira": "Create and update system and custom avatars.",
              "delete:avatar:jira": "Delete system and custom avatars.",
              "read:project.avatar:jira": "Read project avatars.",
              "write:project.avatar:jira": "Create and update project avatars.",
              "delete:project.avatar:jira": "Delete project avatars.",
              "read:dashboard:jira": "View dashboards.",
              "write:dashboard:jira": "Create and update dashboards.",
              "delete:dashboard:jira": "Delete dashboards.",
              "read:dashboard.property:jira": "View dashboard properties.",
              "write:dashboard.property:jira": "Create and update dashboard properties.",
              "delete:dashboard.property:jira": "Delete dashboard properties.",
              "read:filter:jira": "View filters.",
              "write:filter:jira": "Create and update filters.",
              "delete:filter:jira": "Delete filters.",
              "read:filter.column:jira": "View filter columns.",
              "write:filter.column:jira": "Create and update filter columns.",
              "delete:filter.column:jira": "Delete filter columns.",
              "read:filter.default-share-scope:jira": "View filter default share scopes.",
              "write:filter.default-share-scope:jira": "Create and update filter default share scopes.",
              "read:group:jira": "View user groups.",
              "write:group:jira": "Create and update user groups.",
              "delete:group:jira": "Delete user groups.",
              "read:license:jira": "View licenses.",
              "read:issue:jira": "View issues.",
              "write:issue:jira": "Create and update issues.",
              "delete:issue:jira": "Delete issues.",
              "read:issue-meta:jira": "View issue meta.",
              "send:notification:jira": "Send notifications.",
              "read:attachment:jira": "View issue attachments.",
              "write:attachment:jira": "Create and update issue attachments.",
              "delete:attachment:jira": "Delete issue attachments.",
              "read:comment:jira": "View issue comments.",
              "write:comment:jira": "Create and update issue comments.",
              "delete:comment:jira": "Delete issue comments.",
              "read:comment.property:jira": "View issue comment properties.",
              "write:comment.property:jira": "Create and update issue comment properties.",
              "delete:comment.property:jira": "Delete issue comment properties.",
              "read:field:jira": "View fields.",
              "write:field:jira": "Create and update fields.",
              "delete:field:jira": "Delete fields.",
              "read:field.default-value:jira": "View field default values.",
              "write:field.default-value:jira": "Create and update field default values.",
              "read:field.option:jira": "View field options.",
              "write:field.option:jira": "Create and update field options.",
              "delete:field.option:jira": "Delete field options.",
              "read:field-configuration-scheme:jira": "View field configuration schemes.",
              "write:field-configuration-scheme:jira": "Create and update field configuration schemes.",
              "delete:field-configuration-scheme:jira": "Delete field configuration schemes.",
              "read:custom-field-contextual-configuration:jira": "Read custom field contextual configurations.",
              "write:custom-field-contextual-configuration:jira": "Save custom field contextual configurations.",
              "read:field-configuration:jira": "Read field configurations.",
              "write:field-configuration:jira": "Save field configurations.",
              "delete:field-configuration:jira": "Delete field configurations.",
              "read:field.options:jira": "Read field options.",
              "read:issue-link:jira": "View issue links.",
              "write:issue-link:jira": "Create and update issue links.",
              "delete:issue-link:jira": "Delete issue links.",
              "read:issue-link-type:jira": "View issue link types.",
              "write:issue-link-type:jira": "Create and update issue link types.",
              "delete:issue-link-type:jira": "Delete issue link types.",
              "read:notification-scheme:jira": "View notification schemes.",
              "read:priority:jira": "View priorities.",
              "read:issue.property:jira": "View issue properties.",
              "write:issue.property:jira": "Create and update issue properties.",
              "delete:issue.property:jira": "Delete issue properties.",
              "read:issue.remote-link:jira": "View issue remote links.",
              "write:issue.remote-link:jira": "Create and update issue remote links.",
              "delete:issue.remote-link:jira": "Delete issue remote links.",
              "read:resolution:jira": "View resolutions.",
              "read:issue-details:jira": "View issue details.",
              "read:issue-security-scheme:jira": "View issue security schemes.",
              "read:issue-type:jira": "View issue types.",
              "write:issue-type:jira": "Create and update issue types.",
              "delete:issue-type:jira": "Delete issue types.",
              "read:issue-type-scheme:jira": "View issue type schemes.",
              "write:issue-type-scheme:jira": "Create and update issue type schemes.",
              "delete:issue-type-scheme:jira": "Delete issue type schemes.",
              "read:issue-type-screen-scheme:jira": "View issue type screen schemes.",
              "write:issue-type-screen-scheme:jira": "Create and update issue type screen schemes.",
              "delete:issue-type-screen-scheme:jira": "Delete issue type screen schemes.",
              "read:issue-type.property:jira": "View issue type properties.",
              "write:issue-type.property:jira": "Create and update issue type properties.",
              "delete:issue-type.property:jira": "Delete issue type properties.",
              "read:issue.watcher:jira": "View issue watchers.",
              "write:issue.watcher:jira": "Create and update issue watchers.",
              "read:issue-worklog:jira": "View issue worklogs.",
              "write:issue-worklog:jira": "Create and update issue worklogs.",
              "delete:issue-worklog:jira": "Delete issue worklogs.",
              "read:issue-worklog.property:jira": "View issue worklog properties.",
              "write:issue-worklog.property:jira": "Create and update issue worklog properties.",
              "delete:issue-worklog.property:jira": "Delete issue worklog properties.",
              "read:issue-field-values:jira": "View issue field valueses.",
              "read:issue-security-level:jira": "View issue security levels.",
              "read:issue-status:jira": "View issue statuses.",
              "read:issue-type-hierarchy:jira": "Read issue type hierarchies.",
              "read:issue.changelog:jira": "View issue changelogs.",
              "read:issue.transition:jira": "View issue transitions.",
              "read:issue.vote:jira": "View issue votes.",
              "write:issue.vote:jira": "Create and update issue votes.",
              "read:issue.votes:jira": "View issue voteses.",
              "read:issue-event:jira": "Read issue events.",
              "read:jira-expressions:jira": "View jira expressions.",
              "read:user:jira": "View users.",
              "read:user.columns:jira": "View user columnses.",
              "read:label:jira": "View labels.",
              "read:permission:jira": "View permissions.",
              "write:permission:jira": "Create and update permissions.",
              "delete:permission:jira": "Delete permissions.",
              "read:permission-scheme:jira": "View permission schemes.",
              "write:permission-scheme:jira": "Create and update permission schemes.",
              "delete:permission-scheme:jira": "Delete permission schemes.",
              "read:project:jira": "View projects.",
              "write:project:jira": "Create and update projects.",
              "delete:project:jira": "Delete projects and their details, such as issue types, project lead, and avatars.",
              "read:project-category:jira": "View project categories.",
              "write:project-category:jira": "Create and update project categories.",
              "delete:project-category:jira": "Delete project categories.",
              "read:project.component:jira": "View project components.",
              "write:project.component:jira": "Create and update project components.",
              "delete:project.component:jira": "Delete project components.",
              "read:project.property:jira": "View project properties.",
              "write:project.property:jira": "Create and update project properties.",
              "delete:project.property:jira": "Delete project properties.",
              "read:project-role:jira": "View project roles.",
              "write:project-role:jira": "Create and update project roles.",
              "delete:project-role:jira": "Delete project roles.",
              "read:project-version:jira": "View project versions.",
              "write:project-version:jira": "Create and update project versions.",
              "delete:project-version:jira": "Delete project versions.",
              "read:project.feature:jira": "Read project features.",
              "write:project.feature:jira": "Save project features.",
              "read:screen:jira": "View screens.",
              "write:screen:jira": "Create and update screens.",
              "delete:screen:jira": "Delete screens.",
              "read:screen-scheme:jira": "View screen schemes.",
              "write:screen-scheme:jira": "Create and update screen schemes.",
              "delete:screen-scheme:jira": "Delete screen schemes.",
              "read:screen-field:jira": "View screen fields.",
              "read:screen-tab:jira": "View screen tabs.",
              "write:screen-tab:jira": "Create and update screen tabs.",
              "delete:screen-tab:jira": "Delete screen tabs.",
              "read:screenable-field:jira": "View screenable fields.",
              "write:screenable-field:jira": "Create and update screenable fields.",
              "delete:screenable-field:jira": "Delete screenable fields.",
              "read:issue.time-tracking:jira": "View issue time trackings.",
              "write:issue.time-tracking:jira": "Create and update issue time trackings.",
              "read:user.property:jira": "View user properties.",
              "write:user.property:jira": "Create and update user properties.",
              "delete:user.property:jira": "Delete user properties.",
              "read:webhook:jira": "View webhooks.",
              "write:webhook:jira": "Create and update webhooks.",
              "delete:webhook:jira": "Delete webhooks.",
              "read:workflow:jira": "View workflows.",
              "write:workflow:jira": "Create and update workflows.",
              "delete:workflow:jira": "Delete workflows.",
              "read:workflow-scheme:jira": "View workflow schemes.",
              "write:workflow-scheme:jira": "Create and update workflow schemes.",
              "delete:workflow-scheme:jira": "Delete workflow schemes.",
              "read:status:jira": "View statuses.",
              "read:workflow.property:jira": "View workflow properties.",
              "write:workflow.property:jira": "Create and update workflow properties.",
              "delete:workflow.property:jira": "Delete workflow properties.",
              "delete:async-task:jira": "Delete asynchronous task.",
              "read:instance-configuration:jira": "View instance configurations.",
              "write:instance-configuration:jira": "Create and update instance configurations.",
              "read:jql:jira": "View JQL.",
              "validate:jql:jira": "Validate JQL.",
              "read:project-type:jira": "View project types.",
              "read:project.email:jira": "View project emails.",
              "write:project.email:jira": "Create and update project emails.",
              "read:role:jira": "View roles.",
              "read:user-configuration:jira": "View user configurations.",
              "write:user-configuration:jira": "Create and update user configurations.",
              "delete:user-configuration:jira": "Delete user configurations."
            }
          }
        }
      }
    }
  },
  "x-atlassian-narrative": {
    "documents": [
      {
        "title": "About",
        "anchor": "about",
        "body": "The Jira REST API enables you to interact with Jira programmatically. Use this API to \n[build apps](https://developer.atlassian.com/cloud/jira/platform/integrating-with-jira-cloud/), script interactions with \nJira, or develop any other type of integration. This page documents the REST resources available in Jira Cloud, including \nthe HTTP response codes and example requests and responses."
      },
      {
        "title": "Version",
        "anchor": "version",
        "body": "This documentation is for **version 3** of the Jira Cloud platform REST API, which is the latest version\nbut is in **beta**. [Version 2](https://developer.atlassian.com/cloud/jira/platform/rest/v2/) and \nversion 3 of the API offer the same collection of operations. However, version 3 provides support for \nthe [Atlassian Document Format](https://developer.atlassian.com/cloud/jira/platform/apis/document/structure/) \n(ADF) in: \n- `body` in comments, including where comments are used in issue, issue link, and transition resources.\n- `comment` in worklogs.\n- `description` and `environment` fields in issues.\n- `textarea` type custom fields (multi-line text fields) in issues. Single line custom fields \n  (`textfield`) accept a string and don't handle Atlassian Document Format content.\n\nHowever, these new features are under development and may change.\n"
      },
      {
        "title": "Authentication and authorization",
        "anchor": "authentication",
        "body": "### Forge apps\n\nFor Forge apps, [REST API scopes](https://developer.atlassian.com/cloud/jira/platform/scopes-for-oauth-2-3LO-and-forge-apps/) \nare 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.\n\nThe URIs for Forge app REST API calls have this structure:\n\n`/rest/api/3/`\n\nFor example, `/rest/api/3/issue/DEMO-1`\n\n### Connect apps\n\nFor Connect apps, authentication (JWT-based) is built into the Connect libraries. Authorization is implemented using either \nscopes (shown as _App scope required_ for operations on this page) or user impersonation. See \n[Security for Connect apps](https://developer.atlassian.com/cloud/jira/platform/security-for-connect-apps/) \nfor details.\n\nThe URIs for Connect app REST API calls have this structure:\n\n`https:///rest/api/3/`\n\nFor example, `https://your-domain.atlassian.net/rest/api/3/issue/DEMO-1`\n\n### Other integrations\n\nFor integrations that are not Forge or Connect apps, use OAuth 2.0 authorization code grants (3LO) for security \n(3LO scopes are shown as for operations _OAuth scopes required_). See \n[OAuth 2.0 (3LO) apps](https://developer.atlassian.com/cloud/jira/platform/oauth-2-3lo-apps/) \nfor details.\n\nThe URIs for OAuth 2.0 (3LO) app REST API calls have this structure:\n\n`https://api.atlassian.com/ex/jira/dd/rest/api/3/`\n\nFor example, `https://api.atlassian.com/ex/jira/35273b54-3f06-40d2-880f-dd28cf8daafa/rest/api/3/issue/DEMO-1`\n\n### Ad-hoc API calls\n\nFor 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. \n\nThe URIs for basic authentication REST API calls have this structure:\n\n`https:///rest/api/3/`\n\nFor example, `https://your-domain.atlassian.net/rest/api/3/issue/DEMO-1`\n"
      },
      {
        "title": "Permissions",
        "anchor": "permissions",
        "body": "### Operation permissions\n\nMost operations in this API require permissions. The calling user must have the required permissions for an operation to \nuse it. Note that for Connect apps, the app user must have the required permissions for the operation and the app must \nhave scopes that permit the operation.\n\nA 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. \nSee [Permissions overview](https://confluence.atlassian.com/x/FQiiLQ) for details. The most common permissions are:\n\n- **Administer the Cloud site**: Users in the _site-admins_ group have this \npermission. See [Manage groups](https://confluence.atlassian.com/x/24xjL) for details.\n- **Administer Jira**: Granted by the _Jira Administrators_ global permission. There is a default group for this permission. \nSee [Manage groups](https://confluence.atlassian.com/x/24xjL) and [Managing global permissions](https://confluence.atlassian.com/x/x4dKLg) for details.\n- **Administer a project in Jira**: Granted by the _Administer projects_ project permission for a project. This can be \ngranted to a user, a group, a project role, and more. \nSee [Managing project permissions](https://confluence.atlassian.com/x/yodKLg) for details.\n- **Access a project in Jira**: Granted by the _Browse projects_ project permission for a project. This can be \ngranted to a user, a group, a project role, and more. \nSee [Managing project permissions](https://confluence.atlassian.com/x/yodKLg) for details.\n- **Access Jira**: Granted by the _Jira Users_ global permission. Users in the default product access group (for example, \n_jira-software-users-acmesite_) have this permission. \nSee [Manage groups](https://confluence.atlassian.com/x/24xjL) and \n[Managing global permissions](https://confluence.atlassian.com/x/x4dKLg) for details.\n\n### Anonymous access\n\nSome operations provide support for anonymous access. However, anonymous access is only available if \nthe Jira permission needed to access the object or records returned by the operation is granted to \nthe _Public_ group. See [Allowing anonymous access to your project](https://confluence.atlassian.com/x/GDxxLg) \nfor details.\n\nIf an operation is called anonymously and anonymous access is not available, the operation will return \nan error. Note that not all operations that correspond to objects that can be given public access \nprovide for anonymous access.\n"
      },
      {
        "title": "Expansion, pagination, and ordering",
        "anchor": "expansion",
        "body": "### Expansion\n\nThe Jira REST API uses resource expansion, which means that some parts of a resource are not returned unless specified \nin the request. This simplifies responses and minimizes network traffic.\n\nTo expand part of a resource in a request, use the expand query parameter and specify the object(s) to be expanded. \nIf you need to expand nested objects, use the `.` dot notation. If you need to expand multiple objects, use a \ncomma-separated list. \n\nFor example, the following request expands the `names` and `renderedFields` properties for the _JRACLOUD-34423_ issue:\n\n`GET issue/JRACLOUD-34423?expand=names,renderedFields`\n\nTo discover which object can be expanded, refer to the `expand` property in the object. \nIn the JSON example below, the resource declares `widgets` as expandable.\n\n```json\n{\n  \"expand\": \"widgets\", \n  \"self\": \"https://your-domain.atlassian.net/rest/api/3/resource/KEY-1\", \n  \"widgets\": {\n    \"widgets\": [],\n    \"size\": 5\n   }\n}\n```\n\n### Pagination\n\nThe Jira REST API uses pagination to improve performance. Pagination is enforced for operations that could return a large \ncollection of items. When you make a request to a paginated resource, the response wraps the returned array of values in \na JSON object with paging metadata. For example:\n\n```json\n{\n    \"startAt\" : 0,\n    \"maxResults\" : 10,\n    \"total\": 200,\n    \"isLast\": false,\n    \"values\": [\n        { /* result 0 */ },\n        { /* result 1 */ },\n        { /* result 2 */ }\n    ]\n}\n```\n\n*   `startAt` is the index of the first item returned in the page.\n*   `maxResults` is the maximum number of items that a page can return. Each operation can have a different limit for\n    the number of items returned, and these limits may change without notice. To find the maximum number of items \n    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.\n*    `total` is the total number of items contained in all pages. This number **_may change_** as the client \nrequests the subsequent pages, therefore the client should always assume that the requested page can be empty. Note \nthat this property is not returned for all operations.\n*   `isLast` indicates whether the page returned is the last one. Note that this property is not returned for all operations.\n\n### Ordering\n\nSome operations support ordering the elements of a response by a field. Check the documentation for the operation to \nconfirm whether ordering of a response is supported and which fields can be used. Responses are listed in ascending order \nby default. You can change the order using the `orderby` query parameter with a `-` or `+` symbol. For example:\n\n*   `?orderBy=name` to order by `name` field ascending.\n*   `?orderBy=+name` to order by `name` field ascending.\n*   `?orderBy=-name` to order by `name` field descending.\n\n\n"
      },
      {
        "title": "Special headers",
        "anchor": "special-request-headers",
        "body": "The following request and response headers define important metadata for the Jira Cloud REST API resources.\n\n-   `X-Atlassian-Token` (request): Operations that accept multipart/form-data must include the `X-Atlassian-Token: no-check`\nheader in requests. Otherwise the request is blocked by cross-site request forgery (CSRF/XSRF) protection.\n-   `X-Force-Accept-Language` (request): controls how the standard HTTP `Accept-Language` header is processed.\nBy default `Accept-Language` is ignored and the response is in the language configured in the user's profile or,\nwhen no language is configured for the user, the default Jira instance language. For the response to recognize\n`Accept-Language` send `X-Force-Accept-Language = true` as well. If `Accept-Language` requests a language that Jira\ncan return the response is in that language, otherwise Jira returns the response in the default language. If\n`Accept-Language` is not specified the response is in the default language.\n-   `X-AAccountId` (response): This response header contains the Atlassian account ID of the authenticated user."
      },
      {
        "title": "Anonymous operations",
        "anchor": "anonymous-operations",
        "body": " 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. \n\n The operations that provide anonymous access are annotated \"This operation can be accessed anonymously.\""
      },
      {
        "title": "Asynchronous operations",
        "anchor": "async-operations",
        "body": "Some Jira REST API operations may trigger long-running or computationally expensive tasks. In these cases, the operation \nwill schedule an asynchronous task and return a `303 (See Other)` response, indicating the location of the queued task \nin the `Location` header. You can query this task to get progress updates.\n\nWhen the task finishes, the response object will contain the `result` field. The content of the field is specific to the \noperation that created the task. Refer to the operation’s documentation for more information.\n\nNote that asynchronous tasks are not guaranteed to be run in order. In other words, if you need your tasks to execute \nin a certain order, you should start a task only after the prerequisite task(s) have finished."
      },
      {
        "title": "Experimental features",
        "anchor": "experimental",
        "body": "Features and methods marked as experimental may change without notice. Feedback on experimental functionality is welcome. \nReport your suggestions and bugs in the [ACJIRA project](https://ecosystem.atlassian.net/projects/ACJIRA) (preferred) or use the \n**Give docs feedback** link at the top of this page. \n"
      },
      {
        "title": "Status codes",
        "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).\n\nOperations that return an error status code may also return a response body containing details of the error or errors. \nThe schema for the response body is shown below:\n\n\n```json\n{\n  \"id\": \"https://docs.atlassian.com/jira/REST/schema/error-collection#\",\n  \"title\": \"Error Collection\",\n  \"type\": \"object\",\n  \"properties\": {\n    \"errorMessages\": {\n      \"type\": \"array\",\n      \"items\": {\n        \"type\": \"string\"\n      }\n    },\n    \"errors\": {\n      \"type\": \"object\",\n      \"patternProperties\": {\n        \".+\": {\n          \"type\": \"string\"\n        }\n      },\n      \"additionalProperties\": false\n    },\n    \"status\": { \n      \"type\": \"integer\"\n    }\n  },\n  \"additionalProperties\": false\n}\n```"
      }
    ]
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy