openapi: 3.0.0 info: title: Jira Ticket API description: >- API for the JIRA Ticket System. If questions regarding to this API, the official documentation might help: - [JIRA API 7.6.1](https://docs.atlassian.com/software/jira/docs/api/REST/7.6.1/) version: 0.0.1 contact: {} servers: - url: /jira description: 'Development Stage' tags: - name: Jira issues description: 'Api für die JIRA Issues (Stories, Epics, Tasks, Subtasks, etc.)' externalDocs: description: This API ist developed with this API Documentation url: https://docs.atlassian.com/software/jira/docs/api/REST/7.6.1/ paths: /rest/api/2/mypermissions: description: 'Dies ist eine Testdescription für die ersten Schritte' summary: 'Dies ist eine Testsummary als Beispiel für eine Summary mit Deployment' get: tags: - permission parameters: - name: projectKey in: query schema: type: string description: '- key of project to scope returned permissions for.' required: false - name: projectId in: query schema: type: string description: '- id of project to scope returned permissions for.' required: false - name: issueKey in: query schema: type: string description: '- key of the issue to scope returned permissions for.' required: false - name: issueId in: query schema: type: string description: '- id of the issue to scope returned permissions for.' required: false responses: '200': description: 'Returns a list of all permissions in JIRA and whether the user has them.' content: application/json: schema: $ref: '#/components/schemas/permissions' '400': description: invalid '404': description: key not found /rest/api/2/permissions: description: 'Returns all permissions that are present in the JIRA instance - Global, Project and the global ones added by plugins' get: tags: - permission responses: '200': description: 'Returns a list of all permissions in JIRA.' content: application/json: schema: $ref: '#/components/schemas/permissions' '401': description: unauthenticated request content: application/json: schema: type: string '403': description: user without administer permissions content: application/json: schema: type: string /rest/api/2/application-properties: get: parameters: - name: key in: query required: true schema: type: string description: 'a String containing the property key' - name: permissionLevel in: query required: true schema: type: string description: 'when fetching a list specifies the permission level of all items in the list see {@link com.atlassian.jira.bc.admin.ApplicationPropertiesService.EditPermissionLevel}' - name: keyFilter in: query required: true schema: type: string description: 'when fetching a list allows the list to be filtered by the propertys start of key e.g. "jira.lf.*" whould fetch only those permissions that are editable and whose keys start with "jira.lf.". This is a regex.' responses: '200': description: 'Returned if the property exists and the currently authenticated user has permission to view it. Contains a full representation of the property.' content: 'application/json': schema: $ref: '#/components/schemas/property' '404': description: >- property does not exist or the currently authenticated user does not have permission to view it content: application/json: schema: type: string /rest/api/2/application-properties/{id}: put: parameters: - name: id in: path description: a String containing the property key required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/application-property' responses: '200': description: success content: 'application/json: ': schema: $ref: '#/components/schemas/property' '403': description: >- the currently authenticated user does not have permission to edit the property content: application/json: schema: type: string '404': description: >- the property does not exist or the currently authenticated user does not have permission to view it content: application/json: schema: type: string /rest/api/2/application-properties/advanced-settings: get: responses: '200': description: 'Returns all properties to display in the "General Configuration > Advanced Settings" page.' content: application/json: schema: $ref: '#/components/schemas/list-of-property' '401': description: 'the current user is not authenticated' content: application/json: schema: type: string '403': description: 'the current user is not an administrator' content: application/json: schema: type: string /rest/api/2/applicationrole: description: 'Provides REST access to JIRAs Application Roles.' put: parameters: - name: If-Match in: header schema: type: string description: '' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/list-of-application-role' responses: '200': description: 'Returns the updated ApplicationRole if the update was successful.' content: application/json: schema: $ref: '#/components/schemas/list-of-application-role' '401': description: 'Returned if the current user does not have permission to edit roles.' content: application/json: schema: type: string '403': description: the current user is not an administrator content: application/json: schema: type: string '404': description: the role does not exist content: application/json: schema: type: string '412': description: the current user does not have permission to edit roles content: application/json: schema: type: string get: description: 'Returns all ApplicationRoles in the system. Will also return an ETag header containing a version hash of the collection of ApplicationRoles.' requestBody: content: application/json: schema: $ref: '#/components/schemas/list-of-application-role' responses: '200': description: 'Returns all ApplicationRoles in the system' content: application/json: schema: $ref: '#/components/schemas/list-of-application-role' '401': description: the current user is not authenticated content: application/json: schema: type: string '403': description: the current user is not an administrator content: application/json: schema: type: string /rest/api/2/applicationrole/{key}: get: description: 'Returns the ApplicationRole with passed key if it exists.' parameters: - name: key in: path description: The application role id required: true schema: type: string responses: '200': description: success content: application/json: schema: $ref: '#/components/schemas/application-role' '401': description: 'the current user is not authenticated' content: application/json: schema: type: string '403': description: 'the current user is not an administrator' content: application/json: schema: type: string '404': description: 'the role does not exist' content: application/json: schema: type: string put: description: 'Updates the ApplicationRole with the passed data. Only the groups and default groups setting of the role may be updated. Requests to change the key or the name of the role will be silently ignored. Optional: If versionHash is passed through the If-Match header the request will be rejected if not the same as server' parameters: - name: key in: path description: The application role id required: true schema: type: string - name: If-Match in: header description: 'the hash of the version to update. Optional Param' required: false schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/application-role' responses: '200': description: 'Returns the updated ApplicationRole if the update was successful.' content: application/json: schema: $ref: '#/components/schemas/application-role' '401': description: the current user does not have permission to edit roles content: application/json: schema: type: string '403': description: the current user is not an administrator content: application/json: schema: type: string '404': description: the role does not exist content: application/json: schema: type: string '412': description: >- the If-Match header is not null and contains a different version to the server content: application/json: schema: type: string /rest/api/2/attachment/{id}: get: parameters: - name: id in: path description: The attachment id required: true schema: type: string responses: '200': description: 'JSON representation of the attachment meta-data. The representation does not contain the attachment itself, but contains a URI that can be used to download the actual attached file.' content: application/json: schema: $ref: '#/components/schemas/attachment' '403': description: The calling user is not permitted to view the requested attachment content: application/json: schema: type: string '404': description: >- there is no attachment with the requested id or attachments feature is disabled content: application/json: schema: type: string delete: parameters: - name: id in: path description: The attachment id required: true schema: type: string responses: '204': description: 'Removal was successful' content: application/json: schema: type: string '403': description: The calling user is not permitted to view the requested attachment content: application/json: schema: type: string '404': description: >- there is no attachment with the requested id or attachments feature is disabled content: application/json: schema: type: string /rest/api/2/attachment/meta: get: description: 'Returns the meta information for an attachments, specifically if they are enabled and the maximum upload size allowed.' responses: '200': description: 'JSON representation of the attachment capabilities. Consumers of this resource may also need to check if the logged in user has permission to upload or otherwise manipulate attachments using the {@link com.atlassian.jira.rest.v2.permission.PermissionsResource}.' content: application/json: schema: $ref: '#/components/schemas/attachment-meta' /rest/api/2/auditing/record: description: 'Resource representing the auditing records' get: description: 'Returns auditing records filtered using provided parameters' parameters: - name: offset in: query schema: type: integer description: 'the number of record from which search starts' - name: limit in: query schema: type: integer description: 'maximum number of returned results (if is limit is <= 0 or > 1000, it will be set do default value: 1000)' - name: filter in: query schema: type: string description: 'text query; each record that will be returned must contain the provided text in one of its fields' - name: from in: query schema: type: string description: 'timestamp in past; "from" must be less or equal "to", otherwise the result set will be empty only records that where created in the same moment or after the "from" timestamp will be provided in response' - name: to in: query schema: type: string description: 'timestamp in past; "from" must be less or equal "to", otherwise the result set will be empty only records that where created in the same moment or earlier than the "to" timestamp will be provided in response' - name: projectIds in: query schema: type: string description: 'list of project ids to look for' - name: userIds in: query schema: type: string description: 'list of user ids to look for' responses: '200': description: 'Returns a list auditing records filtered with request query parameters' content: 'application/json': schema: $ref: '#/components/schemas/audit-record' '400': content: application/json: schema: type: string description: 'In case of unhandled error while fetching auditing records' '403': content: application/json: schema: type: string description: 'Returned if the user does not have admin permission' post: description: 'Store a record in Audit Log' requestBody: content: application/json: schema: $ref: '#/components/schemas/audit-record' responses: '201': content: application/json: schema: type: string description: 'Returned if the record is successfully stored.' '400': content: application/json: schema: type: string description: 'In case of unhandled error while fetching auditing records' '403': content: application/json: schema: type: string description: 'Returned if the user does not have admin permission' /rest/api/2/avatar/{type}/system: get: description: 'Returns all system avatars of the given type.' parameters: - name: type in: path description: 'name of file being uploaded' required: true schema: type: string responses: '200': description: 'Returns a map containing a list of system avatars. A map is returned to be consistent with the shape of the project/KEY/avatars REST end point.' content: application/json: schema: $ref: '#/components/schemas/system-avatars' '500': content: application/json: schema: type: string description: 'Returned if an error occurs while retrieving the list of avatars.' /rest/api/2/avatar/{type}/temporary: post: description: 'Creates temporary avatar' parameters: - name: type in: path description: 'name of file being uploaded' required: true schema: type: string - name: filename in: query description: 'name of file being uploaded' required: true schema: type: string - name: size in: query description: 'size of file' required: true schema: type: number responses: '200': content: application/json: schema: $ref: '#/components/schemas/avatar-cropping' description: 'temporary avatar cropping instructions' '400': content: application/json: schema: type: string description: 'Valiation failed. For example filesize is beyond max attachment size.' '500': content: application/json: schema: type: string description: 'Returned if an error occurs while converting temporary avatar to real avatar' '403': content: application/json: schema: type: string description: 'Returned if the request does not conain a valid XSRF token' /rest/api/2/avatar/{type}/temporaryCrop: post: description: 'Updates the cropping instructions of the temporary avatar.' parameters: - name: type in: path description: 'name of file being uploaded' required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/avatar-cropping' responses: '200': content: application/json: schema: type: string description: '' '400': content: application/json: schema: type: string description: 'Returned if the cropping coordinates are invalid' '500': content: application/json: schema: type: string description: 'Returned if an error occurs while cropping the temporary avatar' /rest/api/2/component: post: description: 'Create a component via POST.' requestBody: content: application/json: schema: $ref: '#/components/schemas/component' responses: '201': content: application/json: schema: $ref: '#/components/schemas/component' description: 'Returned if the component is created successfully.' '401': content: application/json: schema: type: string description: 'Returned if the caller is not logged in and does not have permission to create components in the project.' '403': content: application/json: schema: type: string description: 'Returned if the caller is authenticated and does not have permission to create components in the project.' '404': content: application/json: schema: type: string description: 'Returned if the project does not exist or the currently authenticated user does not have permission to view it.' /rest/api/2/component/{id}: put: description: 'Modify a component via PUT. Any fields present in the PUT will override existing values. As a convenience, if a field is not present, it is silently ignored. If leadUserName is an empty string ("") the component lead will be removed.' parameters: - $ref: '#/components/parameters/componentId' requestBody: content: application/json: schema: $ref: '#/components/schemas/component' responses: '200': content: application/json: schema: type: string description: 'Returned if the component exists and the currently authenticated user has permission to edit it.' '403': content: application/json: schema: type: string description: 'Returned if the currently authenticated user does not have permission to edit the component.' '404': content: application/json: schema: type: string description: 'Returned if the component does not exist or the currently authenticated user does not have permission to view it.' get: description: 'Returns a project component.' parameters: - $ref: '#/components/parameters/componentId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/component' description: 'Returns a full JSON representation of a project component.' '404': content: application/json: schema: type: string description: 'Returned if there is no component with the given key, or if the calling user does not have permission to view the component.' delete: parameters: - $ref: '#/components/parameters/componentId' - name: moveIssuesTo in: query schema: type: string description: 'The new component applied to issues whose *id*" component will be deleted. If this value is null, then the *id* component is simply removed from the related isues.' responses: '204': content: application/json: schema: type: string description: 'Returned if the component is successfully deleted.' '403': content: application/json: schema: type: string description: 'Returned if the currently authenticated user does not have permission to delete the component.' '404': content: application/json: schema: type: string description: 'Returned if the component does not exist or the currently authenticated user does not have permission to view it.' /rest/api/2/component/{id}/relatedIssueCounts: get: description: 'Returns counts of issues related to this component.' parameters: - $ref: '#/components/parameters/componentId' responses: '200': content: application/json: schema: $ref: '#/components/schemas/component-issue-counts' description: 'Returned if the component exists and the currently authenticated user has permission to view it. Contains counts of issues related to this component.' '404': content: application/json: schema: type: string description: 'Returned if the component does not exist or the currently authenticated user does not have permission to view it.' /rest/api/2/configuration: get: description: 'Returns the information if the optional features in JIRA are enabled or disabled. If the time tracking is enabled, it also returns the detailed information about time tracking configuration.' responses: '200': content: application/json: schema: $ref: '#/components/schemas/configuration' description: 'Returned the configuration of optional features in JIRA' '401': content: application/json: schema: type: string description: 'Returned if the user is not logged in.' /rest/api/2/customFieldOption/{id}: get: parameters: - name: id in: path description: The customfield id required: true schema: type: string responses: '200': description: 'Returned if the Custom Field Option exists and is visible by the calling user.' content: application/json: schema: $ref: '#/components/schemas/custom-field-option' '404': description: >- Returned if the Custom Field Option does not exist, or is not visible to the calling user content: application/json: schema: type: string /rest/api/2/dashboard: get: parameters: - name: filter in: query description: 'an optional filter that is applied to the list of dashboards. Valid values include "favourite" for returning only favourite dashboards, and "my" for returning dashboards that are owned by the calling user.' schema: type: string - name: startAt in: query description: 'the index of the first dashboard to return (0-based). must be 0 or a multiple of maxResults' schema: type: integer - name: maxResults in: query description: 'a hint as to the the maximum number of dashboards to return in each call. Note that the JIRA server reserves the right to impose a maxResults limit that is lower than the value that a client provides, dues to lack or resources or any other condition. When this happens, your results will be truncated. Callers should always check the returned maxResults to determine the value that is effectively being used.' schema: type: integer responses: '200': content: application/json: schema: $ref: '#/components/schemas/dashboards' description: 'Returns a list of dashboards.' /rest/api/2/dashboard/{id}: get: parameters: - name: id in: path description: 'ID of the dashboard' schema: type: string required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/dashboard' description: 'Returns a single dashboard.' '404': content: application/json: schema: type: string description: 'Returned if there is no dashboard with the specified id, or if the user does not have permission to see it.' /rest/api/2/dashboard/{dashboardId}/items/{itemId}/properties: get: description: 'Returns the keys of all properties for the dashboard item identified by the id.' parameters: - name: dashboardId in: path description: 'Dashboard ID' schema: type: string required: true - name: itemId in: path description: 'Item ID' schema: type: string required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/entity-properties-key' description: 'Returned if the dashboard item was found.' '400': description: 'Returned if the dashboard item id is invalid.' '404': description: 'Returned if the dashboard item with given id does not exist or user does not have permissions to view it.' /rest/api/2/dashboard/{dashboardId}/items/{itemId}/properties/{propertyKey}: delete: description: 'Removes the property from the dashboard item identified by the key or by the id. Ths user removing the property is required to have permissions to administer the dashboard item.' parameters: - name: dashboardId in: path description: 'Dashboard ID' schema: type: string required: true - name: itemId in: path description: 'Item ID' schema: type: string required: true - name: propertyKey in: path description: 'property Key' schema: type: string required: true responses: '204': description: 'Returned if the dashboard item property was removed successfully.' '400': description: 'Returned if the dashboard item id is invalid.' '403': description: 'Returned if the dashboard item id is invalid.' '404': description: 'Returned if the dashboard item id is invalid.' put: description: 'Sets the value of the specified dashboard items property. You can use this resource to store a custom data against the dashboard item identified by the id. The user who stores the data is required to have permissions to administer the dashboard item.' parameters: - name: dashboardId in: path description: 'Dashboard ID' schema: type: string required: true - name: itemId in: path description: 'Item ID' schema: type: string required: true - name: propertyKey in: path description: 'property Key' schema: type: string required: true responses: '200': description: 'Returned if the dashboard item property is successfully updated.' '201': description: 'Returned if the dashboard item property is successfully created.' '400': description: 'Returned if the dashboard item id is invalid.' '403': description: 'Returned if the calling user does not have permission to administer the dashboard item.' '404': description: 'Returned if the dashboard item with given id does not exist or user does not have permissions to view it.' get: description: 'Returns the value of the property with a given key from the dashboard item identified by the id. The user who retrieves the property is required to have permissions to read the dashboard item.' parameters: - name: dashboardId in: path description: 'Dashboard ID' schema: type: string required: true - name: itemId in: path description: 'Item ID' schema: type: string required: true - name: propertyKey in: path description: 'property Key' schema: type: string required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/entity-property' description: 'Returned if the dashboard item property was found.' '400': description: 'Returned if the dashboard item id is invalid.' '404': description: 'Returned if the dashboard item with given id does not exist or user does not have permissions to view it.' /rest/api/2/field: post: description: 'Creates a custom field using a definition (object encapsulating custom field data)' requestBody: content: application/json: schema: $ref: '#/components/schemas/custom-field-definition' responses: '201': content: application/json: schema: $ref: '#/components/schemas/field' description: 'Returned if custom field was created.' '400': description: 'Returned if the input is invalid (e.g. invalid values).' '500': description: 'Returned if exception occured during custom field creation.' get: description: 'Returns a list of all fields, both System and Custom' responses: '200': content: application/json: schema: $ref: '#/components/schemas/list-of-field' description: 'Contains a full representation of all visible fields in JSON.' /rest/api/2/filter: post: description: 'Creates a new filter, and returns newly created filter. Currently sets permissions just using the users default sharing permissions' parameters: - name: expand in: query description: 'the parameters to expand' schema: type: string required: false responses: '200': content: application/json: schema: $ref: '#/components/schemas/filter' description: 'Returns a JSON representation of a filter' '400': description: 'Returned if the input is invalid (e.g. filter name was not provided).' /rest/api/2/filter/{id}: put: parameters: - name: id in: path description: 'filter id' schema: type: string required: true - name: expand in: query description: 'the parameters to expand' schema: type: string required: false responses: '200': content: application/json: schema: $ref: '#/components/schemas/filter' description: 'Returns a JSON representation of a filter' '400': description: 'Returned if there is a problem updating up the filter of the given id' delete: description: 'Delete a filter.' parameters: - name: id in: path description: 'filter id' schema: type: string required: true responses: '204': description: 'Returned if the filter was removed successfully' '400': description: 'Returned if an error occurs.' '401': description: 'Returned if the calling user is not authenticated.' get: description: 'Returns a filter given an id' parameters: - name: id in: path description: 'filter id' schema: type: string required: true - name: expand in: query description: 'the parameters to expand' schema: type: string required: false - name: enableSharedUsers in: query description: 'enable calculating shared users collection' schema: type: boolean default: true required: false responses: '200': content: application/json: schema: $ref: '#/components/schemas/filter' description: 'Returns a JSON representation of a filter' '400': description: 'Returned if there is a problem looking up the filter given the id' /rest/api/2/filter/{id}/columns: get: description: 'Returns the default columns for the given filter. Currently logged in user will be used as the user making such request.' parameters: - name: id in: path description: 'filter id' schema: type: string required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/list-of-column-layout-item' description: 'Returns a list of columns for configured for the given user' '404': description: 'Returned if the filter does not have any columns.' '500': description: 'Returned if an error occurs while retrieving the column configuration.' put: description: 'Sets the default columns for the given filter.' parameters: - name: id in: path description: 'filter id' schema: type: string required: true requestBody: content: application/json: schema: $ref: '#/components/schemas/list-of-column-layout-item' responses: '200': description: 'Returned when the columns are saved successfully' '500': description: 'Returned if an error occurs while retrieving the column configuration.' delete: description: 'Resets the columns for the given filter such that the filter no longer has its own column config.' parameters: - name: id in: path description: 'filter id' schema: type: string required: true responses: '204': description: 'Returned when the columns are reset/removed successfully' '500': description: 'Returned when the columns are reset/removed successfully' /rest/api/2/filter/{id}/permission: get: description: 'Returns all share permissions of the given filter.' parameters: - name: id in: path description: 'filter id' schema: type: string required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/list-of-filter-permission' description: 'Returned if successful.' '401': description: 'Returned if user is not logged in.' '404': description: 'Returned when filter with given id does not exist or when the user does not have permissions to view the filter. .' post: description: 'Adds a share permissions to the given filter. Adding a global permission removes all previous permissions from the filter.' parameters: - name: id in: path description: 'filter id' schema: type: string required: true requestBody: content: application/json: schema: $ref: '#/components/schemas/share-permission-input' responses: '200': content: application/json: schema: $ref: '#/components/schemas/list-of-filter-permission' description: 'Returned if successful.' '400': description: 'Returned given permission input bean is invalid or when user does not have the permission to share filters or when the user cannot edit the given filter.' '401': description: 'Returned if user is not logged in.' '404': description: 'Returned when filter with given id does not exist or when the user does not have permissions to view the filter. .' /rest/api/2/filter/{id}/permission/{permissionId}: get: description: 'Returns a single share permission of the given filter.' parameters: - name: id in: path description: 'filter id' schema: type: string required: true - name: permissionId in: path description: 'permission id' schema: type: string required: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/filter-permission' description: 'Returned if successful.' '401': description: 'Returned if user is not logged in.' '404': description: 'Returned when filter or permission with given id does not exist or when the user does not have permissions to view the filter.' delete: description: 'Removes a share permissions from the given filter.' parameters: - name: id in: path description: 'filter id' schema: type: string required: true - name: permissionId in: path description: 'permission id' schema: type: string required: true responses: '200': content: application/json: schema: type: string description: '' '204': description: 'Returned if successful.' '404': description: 'Returned when filter or permission with given id does not exist or when the user does not have permissions to view the filter.' /rest/api/2/filter/defaultShareScope: get: description: 'Returns the default share scope of the logged-in user.' responses: '200': content: application/json: schema: $ref: '#/components/schemas/default-share-scope' description: 'Returns the default share scope of the logged-in user.' '400': description: 'Returned if there is a problem looking up preferences for the logged-in user' put: description: 'Sets the default share scope of the logged-in user. Available values are GLOBAL and PRIVATE.' requestBody: content: application/json: schema: $ref: '#/components/schemas/default-share-scope' responses: '200': content: application/json: schema: $ref: '#/components/schemas/default-share-scope' description: 'Returns the new default share scope of the logged-in user.' '400': description: 'Returned if there is a problem setting the preferences for the logged-in user' /rest/api/2/filter/favourite: get: description: 'Returns the favourite filters of the logged-in user.' parameters: - name: expand in: query description: 'the parameters to expand' schema: type: string - name: enableSharedUsers in: query description: 'enable calculating shared users collection' schema: type: boolean default: true responses: '200': content: application/json: schema: $ref: '#/components/schemas/list-of-filter' description: 'Returns a JSON representation of a list of filters' /rest/api/2/groups/picker: description: 'REST endpoint for searching groups in a group picker' get: description: 'Returns groups with substrings matching a given query. This is mainly for use with the group picker, so the returned groups contain html to be used as picker suggestions. The groups are also wrapped in a single response object that also contains a header for use in the picker, specifically Showing X of Y matching groups. The number of groups returned is limited by the system property "jira.ajax.autocomplete.limit" The groups will be unique and sorted.' parameters: - name: query in: query description: 'a String to match groups agains' schema: type: string - name: exclude in: query description: '' schema: type: string - name: maxResults in: query description: '' schema: type: integer - name: userName in: query description: 'a String to match groups agains' schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/group-suggestions' description: 'Returned even if no groups match the given substring' /rest/api/2/groupuserpicker: get: description: 'Returns a list of users and groups matching query with highlighting. This resource cannot be accessed anonymously.' parameters: - name: query in: query description: 'A string used to search username, Name or e-mail address' schema: type: string - name: maxResults in: query description: 'the maximum number of users to return (defaults to 50). The maximum allowed value is 1000. If you specify a value that is higher than this number, your search results will be truncated.' schema: type: integer - name: showAvatar in: query description: '' schema: type: boolean - name: fieldId in: query description: 'The custom field id, if this request comes from a custom field, such as a user picker. Optional.' schema: type: string - name: projectId in: query description: 'The list of project ids to further restrict the search This parameter can occur multiple times to pass in multiple project ids. Comma separated value is not supported. This parameter is only used when fieldId is present.' schema: type: string - name: issueTypeId in: query description: 'The list of issue type ids to further restrict the search. This parameter can occur multiple times to pass in multiple issue type ids. Comma separated value is not supported. Special values such as -1 (all standard issue types), -2 (all subtask issue types) are supported. This parameter is only used when fieldId is present.' schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/users-and-groups' description: '' /rest/api/2/issue: post: tags: - issue description: >- Creates an issue or a sub-task from a JSON representation. The fields that can be set on create, in either the fields parameter or the update parameter can be determined using the /rest/api/2/issue/createmeta resource. If a field is not configured to appear on the create screen, then it will not be in the createmeta, and a field validation error will occur if it is submitted. Creating a sub-task is similar to creating a regular issue, with two important differences: the issueType field must correspond to a sub-task issue type (you can use /issue/createmeta to discover sub-task issue types), and you must provide a parent field in the issue create request containing the id or key of the parent issue. summary: Creates an issue or a sub-task from a JSON representation. responses: '200': description: Returns a link to the created issue. content: application/json: schema: type: string example: id: '10000' key: 'TST-24' self: 'http://www.example.com/jira/rest/api/2/issue/10000' '400': description: >- Returned if the input is invalid (e.g. missing required fields, invalid field values, and so forth) content: application/json: schema: type: string example: errorMessages: - 'Field "priority" is required' errors: {} /rest/api/2/issue/bulk: post: tags: - issue responses: '201': description: Returns a link to the created issues content: application/json: schema: type: string '400': description: >- Returned if the input is invalid (e.g. missing required fields, invalid field values, and so forth) content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}: get: tags: - issue description: >- Returns a full representation of the issue for the given issue key. An issue JSON consists of the issue key, a collection of fields, a link to the workflow transition sub-resource, and (optionally) the HTML rendered values of any fields that support it (e.g. if wiki syntax is enabled for the description or comments). The fields param (which can be specified multiple times) gives a comma-separated list of fields to include in the response. This can be used to retrieve a subset of fields. A particular field can be excluded by prefixing it with a minus. By default, all (*all) fields are returned in this get-issue resource. Note: the default is different when doing a jql search -- the default there is just navigable fields (*navigable). *all - include all fields *navigable - include just navigable fields summary,comment - include just the summary and comments -comment - include everything except comments (the default is *all for get-issue) *all,-comment - include everything except comments The {@code properties} param is similar to {@code fields} and specifies a comma-separated list of issue properties to include. Unlike {@code fields}, properties are not included by default. To include them all send {@code ?properties=*all}. You can also include only specified properties or exclude some properties with a minus (-) sign. {@code *all} - include all properties {@code *all, -prop1} - include all properties except {@code prop1} {@code prop1, prop1} - include {@code prop1} and {@code prop2} properties JIRA will attempt to identify the issue by the issueIdOrKey path parameter. This can be an issue id, or an issue key. If the issue cannot be found via an exact match, JIRA will also look for the issue in a case-insensitive way, or by looking to see if the issue was moved. In either of these cases, the request will proceed as normal (a 302 or other redirect will not be returned). The issue key contained in the response will indicate the current value of issues key. The expand param is used to include, hidden by default, parts of response. This can be used to include: renderedFields - field values in HTML format names - display name of each field schema - schema for each field which describes a type of the field transitions - all possible transitions for the given issue operations - all possibles operations which may be applied on issue editmeta - information about how each field may be edited. It contains fields schema as well. changelog - history of all changes of the given issue versionedRepresentations - REST representations of all fields. Some field may contain more recent versions. RESET representations are numbered. The greatest number always represents the most recent version. It is recommended that the most recent version is used. version for these fields which provide a more recent REST representation. After including versionedRepresentations "fields" field become hidden. parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: fields in: query description: >- the list of fields to return for the issue. By default, all fields are returned. schema: type: string - name: expand in: query schema: type: string - name: properties in: query description: >- the list of properties to return for the issue. By default no properties are returned. schema: type: string responses: '200': description: Returns a full representation of a JIRA issue in JSON format. content: application/json: schema: type: string '404': description: >- Returned if the requested issue is not found, or the user does not have permission to view it. content: application/json: schema: type: string put: tags: - issue description: >- Edits an issue from a JSON representation. The issue can either be updated by setting explicit the field value(s) or by using an operation to change the field value. The fields that can be updated, in either the fields parameter or the update parameter, can be determined using the /rest/api/2/issue/{issueIdOrKey}/editmeta resource. If a field is not configured to appear on the edit screen, then it will not be in the editmeta, and a field validation error will occur if it is submitted. Specifying a "field_id": field_value in the "fields" is a shorthand for a "set" operation in the "update" section. Field should appear either in "fields" or "update", not in both. parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: notifyUsers in: query description: >- send the email with notification that the issue was updated to users that watch it. Admin or project admin permissions are required to disable the notification. schema: type: boolean responses: '204': description: if the issue was updated successfully content: application/json: schema: type: string '400': description: if an error occurs content: application/json: schema: type: string '403': description: >- Returned if the user doesn`t have permissions to disable users notification content: application/json: schema: type: string delete: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: deleteSubtasks in: query description: >- a String of true or false indicating that any subtasks should also be deleted. If the issue has no subtasks this parameter is ignored. If the issue has subtasks and this parameter is missing or false, then the issue will not be deleted and an error will be returned. schema: type: string responses: '204': description: if the issue was removed successfully content: application/json: schema: type: string '400': description: if an error occurs content: application/json: schema: type: string '401': description: if the calling user is not authenticated content: application/json: schema: type: string '403': description: if the calling user does not have permission to delete the issue content: application/json: schema: type: string '404': description: if the issue does not exist content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/assignee: put: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '204': description: if the issue is successfully assigned content: application/json: schema: type: string '400': description: if there is a problem with the received user representation content: application/json: schema: type: string '401': description: if the calling user does not have permission to assign the issue content: application/json: schema: type: string '404': description: if either the issue or the user does not exist content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/comment: get: tags: - issue description: >- Returns all comments for an issue. Results can be ordered by the "created" field which means the date a comment was added. parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: startAt in: query description: the page offset, if not specified then defaults to 0 schema: type: number responses: '200': description: >- returns a collection of comments associated with the issue, with count and pagination information. content: application/json: schema: type: string '404': description: >- if the issue with the given id/key does not exist or if the currently authenticated user does not have permission to view it content: application/json: schema: type: string post: tags: - issue description: Adds a new comment to an issue. parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: expand in: query description: 'optional flags: renderedBody (provides body rendered in HTML)' schema: type: string responses: '201': description: Returned if add was successful content: application/json: schema: type: string '400': description: >- Returned if the input is invalid (e.g. missing required fields, invalid values, and so forth). content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/comment/{id}: get: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: id in: path description: The comment id required: true schema: type: string responses: '200': description: if request was successful content: application/json: schema: type: string '404': description: >- if the requested comment is not found, or the user does not have permission to view it content: application/json: schema: type: string put: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: id in: path description: The comment id required: true schema: type: string responses: '200': description: if update was successful content: application/json: schema: type: string '400': description: >- if the input is invalid (e.g. missing required fields, invalid values, and so forth) content: application/json: schema: type: string delete: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: id in: path description: The comment id required: true schema: type: string responses: '200': description: if delete was successful content: application/json: schema: type: string '400': description: >- if the input is invalid (e.g. missing required fields, invalid values, and so forth) content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/editmeta: get: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: if the issue is successfully assigned content: application/json: schema: type: string '404': description: >- if the requested issue is not found or the user does not have permission to view it content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/notify: post: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: if the issue is successfully assigned content: application/json: schema: type: string '400': description: >- if the input is invalid (e.g. missing required fields, invalid values, and so forth) content: application/json: schema: type: string '403': description: is outgoing emails are disabled OR no SMTP server is defined content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/remotelink: get: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: if the issue is successfully assigned content: application/json: schema: type: string '401': description: if the calling user is not authenticated content: application/json: schema: type: string '403': description: >- if the calling user does not have permission to view the remote issue links, or if issue linking is disabled content: application/json: schema: type: string '404': description: if the issue or remote issue link do not exist content: application/json: schema: type: string post: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: if the issue is successfully assigned content: application/json: schema: type: string '400': description: >- if the input is invalid (e.g. missing required fields, invalid values, and so forth) content: application/json: schema: type: string '401': description: if the calling user is not authenticated content: application/json: schema: type: string '403': description: >- if the calling user does not have permission to create/update the remote issue link, or if issue linking is disabled content: application/json: schema: type: string delete: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: if the issue is successfully assigned content: application/json: schema: type: string '401': description: if the calling user is not authenticated content: application/json: schema: type: string '403': description: >- if the calling user does not have permission to delete the remote issue link, or if issue linking is disabled content: application/json: schema: type: string '404': description: if the issue or remote issue link do not exist content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/remotelink/{linkId}: get: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: linkId in: path description: The link ID required: true schema: type: string responses: '200': description: if the issue is successfully assigned content: application/json: schema: type: string '400': description: >- if the linkId is not a valid number, or if the remote issue link with the given id does not belong to the given issue content: application/json: schema: type: string '401': description: if the calling user is not authenticated content: application/json: schema: type: string '403': description: >- if the calling user does not have permission to view the remote issue link, or if issue linking is disabled content: application/json: schema: type: string '404': description: if the issue or remote issue link do not exist content: application/json: schema: type: string put: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: linkId in: path description: The link ID required: true schema: type: integer format: int32 responses: '204': description: if the issue is successfully assigned content: application/json: schema: type: string '400': description: >- if the input is invalid (e.g. missing required fields, invalid values, and so forth) content: application/json: schema: type: string '401': description: if the calling user is not authenticated content: application/json: schema: type: string '403': description: >- if the calling user does not have permission to update the remote issue link, or if issue linking is disabled content: application/json: schema: type: string delete: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: linkId in: path description: The link ID required: true schema: type: integer format: int32 responses: '204': description: if the remote issue link was removed successfully content: application/json: schema: type: string '401': description: if the calling user is not authenticated content: application/json: schema: type: string '403': description: >- if the calling user does not have permission to update the remote issue link, or if issue linking is disabled content: application/json: schema: type: string '404': description: if the issue or remote issue link do not exist content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/transitions: get: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: if the transition was successful content: application/json: schema: type: string '404': description: >- The issue does not exist or the user does not have permission to view it content: application/json: schema: type: string post: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '204': description: if the transition was successful content: application/json: schema: type: string '400': description: If there is no transition specified content: application/json: schema: type: string '404': description: >- The issue does not exist or the user does not have permission to view it content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/votes: get: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: Information about voting on the current issue content: application/json: schema: type: string '404': description: >- Returned if the user cannot view the issue in question or voting is disabled content: application/json: schema: type: string post: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '204': description: Nothing is returned on success content: application/json: schema: type: string '404': description: >- Returned if the user cannot vote for any reason. (The user did not vote on the issue, the user is the reporter, voting is disabled, the issue does not exist, etc.) content: application/json: schema: type: string delete: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '204': description: Nothing is returned on success content: application/json: schema: type: string '404': description: >- Returned if the user cannot remove a vote for any reason. (The user did not vote on the issue, the user is the reporter, voting is disabled, the issue does not exist, etc.) content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/watchers: get: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: Returns the list of watchers for an issue content: application/json: schema: type: string '404': description: >- Returned if the requested issue is not found, or the user does not have permission to view it content: application/json: schema: type: string post: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '204': description: Returned if the watcher was added successfully content: application/json: schema: type: string '400': description: Returned if there is a problem with the received user representation content: application/json: schema: type: string '401': description: >- Returned if the calling user does not have permission to add the watcher to the issue's list of watchers content: application/json: schema: type: string '404': description: Returned if either the issue or the user does not exist content: application/json: schema: type: string delete: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: username in: query description: >- a String containing the name of the user to remove from the watcher list. Must not be null. required: true schema: type: string responses: '204': description: Returned if the watcher was removed successfully content: application/json: schema: type: string '400': description: Returned if a user name query parameter is not supplied content: application/json: schema: type: string '401': description: >- Returned if the calling user does not have permission to remove the watcher from the issue's list of watchers content: application/json: schema: type: string '404': description: Returned if either the issue or the user does not exist content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/worklog: get: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: Returned if the watcher was removed successfully content: application/json: schema: type: string '404': description: >- Returned if the issue with the given id/key does not exist or if the currently authenticated user does not have permission to view it content: application/json: schema: type: string post: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: adjustEstimate in: query description: >- (optional) allows you to provide specific instructions to update the remaining time estimate of the issue. Valid values are "new" - sets the estimate to a specific value "leave"- leaves the estimate as is "manual" - specify a specific amount to increase remaining estimate by "auto"- Default option. Will automatically adjust the value based on the new timeSpent specified on the worklog schema: type: string - name: newEstimate in: query description: >- (required when "new" is selected for adjustEstimate) the new value for the remaining estimate field. e.g. "2d" schema: type: string - name: reduceBy in: query description: >- (required when "manual" is selected for adjustEstimate) the amount to reduce the remaining estimate by e.g. "2d" schema: type: string responses: '201': description: Returned if add was successful content: application/json: schema: type: string '400': description: >- Returned if the input is invalid (e.g. missing required fields, invalid values, and so forth) content: application/json: schema: type: string '403': description: >- Returned if the calling user does not have permission to add the worklog content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/worklog/{id}: get: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: id in: path description: The issue ID or Key required: true schema: type: string responses: '200': description: >- Returned if the work log with the given id exists and the currently authenticated user has permission to view it. The returned response contains a full representation of the work log in JSON format. content: application/json: schema: type: string '404': description: >- Returned if the work log with the given id does not exist or if the currently authenticated user does not have permission to view it. content: application/json: schema: type: string put: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: id in: path description: The issue ID or Key required: true schema: type: string - name: adjustEstimate in: query description: >- (optional) allows you to provide specific instructions to update the remaining time estimate of the issue. Valid values are "new" - sets the estimate to a specific value "leave"- leaves the estimate as is "auto"- Default option. Will automatically adjust the value based on the new timeSpent specified on the worklog schema: type: string - name: newEstimate in: query description: >- (required when "new" is selected for adjustEstimate) the new value for the remaining estimate field. schema: type: string responses: '200': description: Returned if update was successful content: application/json: schema: type: string '400': description: >- Returned if the input is invalid (e.g. missing required fields, invalid values, and so forth). content: application/json: schema: type: string '403': description: >- Returned if the calling user does not have permission to update the worklog content: application/json: schema: type: string delete: tags: - issue parameters: - name: issueIdOrKey in: path description: The issue ID or Key required: true schema: type: string - name: id in: path description: The issue ID or Key required: true schema: type: string - name: adjustEstimate in: query description: >- (optional) allows you to provide specific instructions to update the remaining time estimate of the issue. Valid values are "new" - sets the estimate to a specific value "leave"- leaves the estimate as is "auto"- Default option. Will automatically adjust the value based on the new timeSpent specified on the worklog schema: type: string - name: newEstimate in: query description: >- (required when "new" is selected for adjustEstimate) the new value for the remaining estimate field. schema: type: string - name: increaseBy in: query description: >- (required when "manual" is selected for adjustEstimate) the amount to increase the remaining estimate by e.g. "2d" schema: type: string responses: '204': description: Returned if delete was successful content: application/json: schema: type: string '400': description: >- Returned if the input is invalid (e.g. missing required fields, invalid values, and so forth). content: application/json: schema: type: string '403': description: >- Returned if the calling user does not have permission to delete the worklog content: application/json: schema: type: string /rest/api/2/issue/createmeta: get: tags: - issue description: >- Returns the meta data for creating issues. This includes the available projects, issue types and fields, including field types and whether or not those fields are required. Projects will not be returned if the user does not have permission to create issues in that project. The fields in the createmeta correspond to the fields in the create screen for the project/issuetype. Fields not in the screen will not be in the createmeta. Fields will only be returned if expand=projects.issuetypes.fields. The results can be filtered by project and/or issue type, given by the query params. parameters: - name: projectIds in: query description: >- combined with the projectKeys param, lists the projects with which to filter the results. If absent, all projects are returned. This parameter can be specified multiple times, and/or be a comma-separated list. Specifiying a project that does not exist (or that you cannot create issues in) is not an error, but it will not be in the results. required: true schema: type: string - name: projectKeys in: query description: >- combined with the projectIds param, lists the projects with which to filter the results. If null, all projects are returned. This parameter can be specified multiple times, and/or be a comma-separated list. Specifiying a project that does not exist (or that you cannot create issues in) is not an error, but it will not be in the results. required: true schema: type: string - name: issuetypeIds in: query description: >- combinded with issuetypeNames, lists the issue types with which to filter the results. If null, all issue types are returned. This parameter can be specified multiple times, and/or be a comma-separated list. Specifiying an issue type that does not exist is not an error. schema: type: string - name: issuetypeNames in: query description: >- combinded with issuetypeIds, lists the issue types with which to filter the results. If null, all issue types are returned. This parameter can be specified multiple times, but is NOT interpreted as a comma-separated list. Specifiying an issue type that does not exist is not an error. schema: type: string responses: '200': description: Returns the meta data for creating issues. content: application/json: schema: type: string '403': description: >- Returned if the user does not have permission to view any of the requested projects. content: application/json: schema: type: string /rest/api/2/issue/picker: get: tags: - issue description: >- Returns suggested issues which match the auto-completion query for the user which executes this request. This REST method will check the users history and the users browsing context and select this issues, which match the query. parameters: - name: query in: query description: the query. schema: type: string - name: currentJQL in: query description: >- the JQL in context of which the request is executed. Only issues which match this JQL query will be included in results. schema: type: string - name: currentIssueKey in: query description: >- the key of the issue in context of which the request is executed. The issue which is in context will not be included in the auto-completion result, even if it matches the query. schema: type: string - name: currentProjectId in: query description: >- the id of the project in context of which the request is executed. Suggested issues will be only from this project. schema: type: string - name: showSubTasks in: query description: if set to false, subtasks will not be included in the list. schema: type: boolean - name: showSubTaskParent in: query description: >- if set to false and request is executed in context of a subtask, the parent issue will not be included in the auto-completion result, even if it matches the query. schema: type: boolean responses: '200': description: Returns a list of issues which match the picker parameters. content: application/json: schema: type: string /rest/api/2/issue/{issueIdOrKey}/attachments: summary: 'Add one or more attachments to an issue.' description: 'This resource expects a multipart post. The media-type multipart/form-data is defined in RFC 1867. Most client libraries have classes that make dealing with multipart posts simple. For instance, in Java the Apache HTTP Components library provides a MultiPartEntity that makes it simple to submit a multipart POST. In order to protect against XSRF attacks, because this method accepts multipart/form-data, it has XSRF protection on it. This means you must submit a header of X-Atlassian-Token: no-check with the request, otherwise it will be blocked. The name of the multipart/form-data parameter that contains attachments must be "file" A simple example to upload a file called "myfile.txt" to issue REST-123: curl -D- -u admin:admin -X POST -H "X-Atlassian-Token: no-check" -F "file=@myfile.txt" http://myhost/rest/api/2/issue/TEST-123/attachments' parameters: - $ref: '#/components/parameters/authorization-jira' post: tags: - issue parameters: - name: issueIdOrKey in: path schema: type: string required: true responses: '200': content: 'application/json: ': schema: type: string description: '' '403': content: 'application/json: ': schema: type: string description: 'Returned if attachments is disabled or if you dont have permission to add attachments to this issue.' '404': content: 'application/json: ': schema: type: string description: 'Returned if the requested issue is not found, the user does not have permission to view it, or if the attachments exceeds the maximum configured attachment size.' /rest/api/2/issue/{issueIdOrKey}/subtask: parameters: - $ref: '#/components/parameters/authorization-jira' get: tags: - issue summary: 'Returns an issues subtask list' parameters: - name: issueIdOrKey in: path schema: type: string required: true responses: '200': content: 'application/json: ': schema: type: string description: '' '403': content: 'application/json: ': schema: type: string description: 'Returned if the user is not allowed to edit the issue' '404': content: 'application/json: ': schema: type: string description: 'Returned if the issue doesnt exist' /rest/api/2/issue/{issueIdOrKey}/subtask/move: parameters: - $ref: '#/components/parameters/authorization-jira' get: tags: - issue description: 'Reorders an issues subtasks by moving the subtask at index "from" to index "to".' parameters: - name: issueIdOrKey in: path schema: type: string required: true summary: 'Can move sub task' responses: '200': content: 'application/json': schema: type: string description: '' '403': content: 'application/json': schema: type: string description: '' post: tags: - issue description: 'Reorders an issues subtasks by moving the subtask at index "from" to index "to".' summary: 'Can move sub task' parameters: - name: issueIdOrKey in: path schema: type: string required: true requestBody: content: application/json: schema: $ref: '#/components/schemas/ism-move-position' responses: '204': content: 'application/json': schema: type: string description: 'Returned if the request was successful' '400': content: 'application/json': schema: type: string description: 'Returned if the from or to parameters are out of bounds' '403': content: 'application/json': schema: type: string description: 'Returned if the user is not allowed to edit the issue' '404': content: 'application/json': schema: type: string description: 'Returned if the parent issue doesnt exist' /rest/api/2/issueLink: description: 'The Link Issue Resource provides functionality to manage issue links.' parameters: - $ref: '#/components/parameters/authorization-jira' post: tags: - issueLink description: 'Creates an issue link between two issues. The user requires the link issue permission for the issue which will be linked to another issue. The specified link type in the request is used to create the link and will create a link from the first issue to the second issue using the outward description. It also create a link from the second issue to the first issue using the inward description of the issue link type. It will add the supplied comment to the first issue. The comment can have a restriction who can view it. If group is specified, only users of this group can view this comment, if roleLevel is specified only users who have the specified role can view this comment. The user who creates the issue link needs to belong to the specified group or have the specified role.' requestBody: content: application/json: schema: $ref: '#/components/schemas/link-issue-request' responses: '201': description: 'if the issue link was created successfully.' content: application/json: schema: type: string '400': description: 'if it cant create the supplied comment. The response will contain an error message indicating why it failed to create the comment. No issue link will be created if it failed to create the comment.' content: application/json: schema: type: string '401': description: 'if the issue link was created successfully.' content: application/json: schema: type: string '500': description: 'if the user does not have the link issue permission for the issue, which will be linked to another issue.' content: application/json: schema: type: string '404': description: 'If issue linking is disabled or it failed to find one of the issues (issue might exist, but it is not visible for this user) or it failed to find the specified issue link type.' content: application/json: schema: type: string /rest/api/2/issueLink/{linkId}: parameters: - $ref: '#/components/parameters/authorization-jira' get: tags: - issueLink description: 'Returns an issue link with the specified id.' parameters: - name: linkId in: path schema: type: string required: true responses: '204': content: application/json: schema: $ref: '#/components/schemas/issue-ref' description: '' '400': content: application/json: schema: type: string description: 'If the specified issue link id is invalid.' '401': content: application/json: schema: type: string description: 'if the user does not have the link issue permission for the issue, which will be linked to another issue.' '404': content: application/json: schema: type: string description: 'If issue linking is disabled or it failed to find an issue link with the specified id. Either because none exists with this id, or the user doesnt have the permission to see one of the linked issues.' '500': content: application/json: schema: type: string description: 'if an error occurred when creating the issue link or the comment.' delete: tags: - issueLink description: 'Deletes an issue link with the specified id. To be able to delete an issue link you must be able to view both issues and must have the link issue permission for at least one of the issues.' responses: '204': content: application/json: schema: type: string description: 'If it successfully deleted the issue link.' '400': content: application/json: schema: type: string description: 'If the specified issue link id is invalid.' '401': content: application/json: schema: type: string description: 'if the user does not have the link issue permission for the source or destination issue of the issue link.' '404': content: application/json: schema: type: string description: 'If issue linking is disabled or it failed to find an issue link with the specified id. Either because none exists with this id, or the user doesnt have the permission to see one of the linked issues.' '500': content: application/json: schema: type: string description: 'if an error occurred when deleting the issue link or the comment.' /rest/api/2/issueLinkType: description: 'Rest resource to retrieve a list of issue link types.' parameters: - $ref: '#/components/parameters/authorization-jira' get: tags: - issueLink description: 'Returns a list of available issue link types, if issue linking is enabled. Each issue link type has an id, a name and a label for the outward and inward link relationship.' responses: '200': content: application/json: schema: $ref: '#/components/schemas/issue-link-type' description: 'Returns a list of all available issue link types.' '404': description: 'Returned if issue linking is disabled.' post: tags: - issueLink description: 'Create a new issue link type.' requestBody: content: application/json: schema: $ref: '#/components/schemas/issue-link-type' responses: '200': content: application/json: schema: $ref: '#/components/schemas/issue-link-type' description: 'The new issue link type has been created.' '404': description: 'Issue linking is disabled or you do not have permission to create issue link types.' /rest/api/2/issueLinkType/{issueLinkTypeId}: parameters: - $ref: '#/components/parameters/authorization-jira' get: tags: - issueLink description: 'Returns for a given issue link type id all information about this issue link type.' parameters: - name: issueLinkTypeId in: path required: true description: 'The issue link type id' schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/issue-link-type' description: 'Returns the issue link type with the given id.' '404': description: 'Returned if issue linking is disabled or no issue link type with the given id exists.' delete: description: 'Delete the specified issue link type.' responses: '204': description: 'deleted successfull' '404': description: 'Returned if issue linking is disabled or no issue link type with the given id exists.' put: description: 'Update the specified issue link type.' requestBody: content: application/json: schema: $ref: '#/components/schemas/issue-link-type' responses: '200': content: application/json: schema: $ref: '#/components/schemas/issue-link-type' description: 'updated' '400': description: 'Returned if the supplied id is not a number.' '404': description: 'Returned if issue linking is disabled or no issue link type with the given id exists.' /rest/api/2/issuetype: parameters: - $ref: '#/components/parameters/authorization-jira' get: description: 'Returns a list of all issue types visible to the user' responses: '200': content: application/json: schema: $ref: '#/components/schemas/list-of-issue-type' description: 'Returns a list of all issue types visible to the user' post: description: 'Creates an issue type from a JSON representation and adds the issue newly created issue type to the default issue type scheme.' requestBody: content: application/json: schema: $ref: '#/components/schemas/issue-type-create' responses: '200': content: application/json: schema: $ref: '#/components/schemas/issue-type' description: 'Returned if the issue type was successfully created.' '400': description: 'Returned if the request is invalid. This happens when the name is invalid or issue type is subtask on instance which has subtasks disabled.' '401': description: 'Returned if the calling user is not authenticated.' '403': description: 'Returned if the calling user does not have permission to administer JIRA.' '409': description: 'Returned if there already exists an issue type with the specified name.' /rest/api/2/issuetype/{id}: parameters: - $ref: '#/components/parameters/authorization-jira' get: description: 'Returns a full representation of the issue type that has the given id.' parameters: - name: id in: path required: true description: 'the issue type id' schema: type: 'string' responses: '200': content: application/json: schema: $ref: '#/components/schemas/issue-type' description: 'Returned if the issue type exists and is visible by the calling user.' delete: description: 'Deletes the specified issue type. If the issue type has any associated issues, these issues will be migrated to the alternative issue type specified in the parameter. You can determine the alternative issue types by calling the /rest/api/2/issuetype/{id}/alternatives resource.' parameters: - name: id in: path required: true description: 'the issue type id to delete' schema: type: 'string' - name: alternativeIssueTypeId in: query required: false description: 'the alternative issue type id to migrate the issues to' schema: type: 'string' responses: '200': content: application/json: schema: type: string description: 'Returned if the issue type was successfully removed.' '400': description: 'Returned if the request is invalid. It happens when there are associated issues with the issue type which is being removed, but it is impossible to migrate these issues to the alternative issue type.' '401': description: 'Returned if the calling user is not authenticated.' '403': description: 'Returned if the calling user does not have permission to administer JIRA.' '404': description: 'Returned if the issue type which is supposed to be removed does not exist or the alternative issue type does not exist.' put: description: 'Updates the specified issue type from a JSON representation.' parameters: - name: id in: path required: true description: 'The issue type id' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/issue-type-update' responses: '200': content: application/json: schema: $ref: '#/components/schemas/issue-type' description: 'Returned if the issue type was successfully updated.' '400': description: 'Returned if the request is invalid. This happens when the name is invalid or if the avatar with given id does not exist.' '401': description: 'Returned if the calling user is not authenticated.' '403': description: 'Returned if the calling user does not have permission to administer JIRA.' '404': description: 'Returned if the issue type to update does not exist.' '409': description: 'Returned if there already exists an issue type with the specified name.' /rest/api/2/issuetype/{id}/alternatives: parameters: - $ref: '#/components/parameters/authorization-jira' get: description: 'Returns a list of all alternative issue types for the given issue type id. The list will contain these issues types, to which issues assigned to the given issue type can be migrated. The suitable alternatives are issue types which are assigned to the same workflow, the same field configuration and the same screen scheme.' parameters: - name: id in: path required: true description: 'The alternative issue type id' schema: type: string responses: '200': content: application/json: schema: $ref: '#/components/schemas/list-of-issue-type' description: 'Returned if the issue type exists and is visible by the calling user.' '404': description: 'Returned if the issue type does not exist, or is not visible to the calling user.' /rest/api/2/issuetype/{id}/avatar: summary: 'Create avatar from temporary' parameters: - $ref: '#/components/parameters/authorization-jira' post: description: 'Converts temporary avatar into a real avatar' parameters: - name: id in: path required: true description: 'the temporary avatar id to convert into a real one' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/avatar-cropping' responses: '201': description: 'Returns created avatar' content: application/json: schema: $ref: '#/components/schemas/avatar' '400': description: 'Returned if the cropping coordinates are invalid' '403': description: 'Returned if the currently authenticated user does not have permission to pick avatar' '404': description: 'Returned if the currently authenticated user does not have EDIT PROJECT permission.' '500': description: 'Returned if an error occurs while converting temporary avatar to real avatar' /rest/api/2/issuetype/{id}/avatar/temporary#1: summary: 'Store temporary avatar' parameters: - $ref: '#/components/parameters/authorization-jira' post: description: |- Creates temporary avatar. Creating a temporary avatar is part of a 3-step process in uploading a new avatar for an issue type':' upload, crop, confirm. The following examples shows these three steps using curl. The cookies (session) need to be preserved between requests, hence the use of -b and -c. The id created in step 2 needs to be passed to step 3 (you can simply pass the whole response of step 2 as the request of step 3).
curl -c cookiejar.txt -X POST -u admin:admin -H "X-Atlassian-Token: no-check" \
-H "Content-Type: image/png" --data-binary @mynewavatar.png \
http://localhost:8090/jira/rest/api/2/issuetype/1/avatar/temporary?filename=mynewavatar.png
curl -b cookiejar.txt -X POST -u admin:admin -H "X-Atlassian-Token: no-check" \
-H "Content-Type: application/json" --data '{"cropperWidth": "65","cropperOffsetX": "10","cropperOffsetY": "16"}' \
-o tmpid.json http://localhost:8090/jira/rest/api/2/issuetype/1/avatar
curl -b cooki ejar.txt -X PUT -u admin:admin -H "X-Atlassian-Token: no-check" \
-H "Content-Type: application/json" --data-binary @tmpid.json \
http://localhost:8090/jira/rest/api/2/issuetype/1/avatar
parameters:
- name: id
in: path
required: true
description: 'the issuetype id for the temporary avatar'
schema:
type: string
- name: filename
in: query
required: true
description: 'the filename of file being uploaded'
schema:
type: string
- name: size
in: query
required: true
description: 'size of file'
schema:
type: number
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/avatar-cropping'
description: 'temporary avatar cropping instructions'
'401':
description: 'Returned if the calling user is not authenticated.'
'403':
description: 'Returned if the calling user does not have permission to administer JIRA.'
'404':
description: 'Returned if the issue type to update does not exist or if the request does not contain valid XSRF token.'
/rest/api/2/issuetype/{id}/avatar/temporary#2:
summary: 'Store temporary avatar using multi part'
parameters:
- $ref: '#/components/parameters/authorization-jira'
post:
description: |-
Creates temporary avatar using multipart. The response is sent back as JSON stored in a textarea. This is because the client uses remote iframing to submit avatars using multipart. So we must send them a valid HTML page back from which the client parses the JSON from.
Creating a temporary avatar is part of a 3-step process in uploading a new avatar for an issue type: upload, crop, confirm. This endpoint allows you to use a multipart upload instead of sending the image directly as the request body.
You *must* use "avatar" as the name of the upload parameter:
curl -c cookiejar.txt -X POST -u admin:admin -H "X-Atlassian-Token: no-check" \
-F "avatar=@mynewavatar.png;type=image/png" \
'http://localhost:8090/jira/rest/api/2/issuetype/1/avatar/temporary'
parameters:
- name: id
in: path
required: true
description: 'the issuetype id for the temporary avatar'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/avatar-cropping'
description: 'temporary avatar cropping instructions'
'401':
description: 'Returned if the calling user is not authenticated.'
'403':
description: 'Returned if the calling user does not have permission to administer JIRA.'
'404':
description: 'Returned if the issue type to update does not exist or if the request does not contain valid XSRF token.'
/rest/api/2/jql/autocompletedata:
summary: 'Resource for auto complete data for searches.'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns the auto complete data required for JQL searches.'
responses:
'200':
description: 'The auto complete data required for JQL searches.'
content:
application/json:
schema:
$ref: '#/components/schemas/auto-complete-response'
'401':
description: 'Returned if the calling user is not authenticated.'
'500':
description: 'Returned if an error occurs while generating the response.'
/rest/api/2/jql/autocompletedata/suggestions:
summary: 'Get field auto complete for query string'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns auto complete suggestions for JQL search.'
parameters:
- name: fieldName
in: query
required: false
description: 'the field name for which the suggestions are generated.'
schema:
type: string
- name: fieldValue
in: query
required: false
description: 'the portion of the field value that has already been provided by the user.'
schema:
type: string
- name: predicateName
in: query
required: false
description: 'the predicate for which the suggestions are generated. Suggestions are generated only for: "by", "from" and "to".'
schema:
type: string
- name: predicateValue
in: query
required: false
description: 'the portion of the predicate value that has already been provided by the user.'
schema:
type: string
responses:
'200':
description: 'The autocompletion suggestions for JQL search.'
content:
application/json:
schema:
$ref: '#/components/schemas/auto-complete-result-wrapper'
/rest/api/2/priority:
summary: 'Get priorities'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns a list of all issue priorities.'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-priority'
description: 'Returned if the priorities exists and the user has permission to view it. Contains a full representation of the priority in JSON format.'
/rest/api/2/priority/{id}:
summary: 'Get priority'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns an issue priority.'
parameters:
- name: id
in: path
required: true
description: 'the issue id to return the priority for'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/priority'
description: 'Returned if the issue priority exists and is visible by the calling user. Contains a full representation of the issue priority in JSON.'
'404':
description: 'Returned if the issue priority does not exist or is not visible to the calling user.'
/rest/api/2/project:
summary: 'Get all projects'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns all projects which are visible for the currently logged in user. If no user is logged in, it returns the list of projects that are visible when using anonymous access.'
parameters:
- name: expand
in: query
required: false
description: 'the parameters to expand'
schema:
type: string
- name: recent
in: query
required: false
description: 'if this parameter is set then only projects recently accessed by the current user (if not logged in then based on HTTP session) will be returned (maximum count limited to the specified number but no more than 20).'
schema:
type: integer
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-project'
description: 'Returns a list of projects for which the user has the BROWSE, ADMINISTER or PROJECT_ADMIN project permission.'
/rest/api/2/project/{projectIdOrKey}:
summary: 'Get project'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Contains a full representation of a project in JSON format.
All project keys associated with the project will only be returned if expand=projectKeys.'
parameters:
- name: projectIdOrKey
in: path
required: true
description: 'the project id or key'
schema:
type: string
- name: expand
in: query
required: false
description: 'the parameters to expand'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/project'
description: 'Returned if the project exists and the user has permission to view it. Contains a full representation of a project in JSON format.'
'404':
description: 'Returned if the project is not found, or the calling user does not have permission to view it.'
/rest/api/2/project/{projectIdOrKey}/avatars:
summary: 'Get all avatars'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns all avatars which are visible for the currently logged in user. The avatars are grouped into system and custom.'
parameters:
- name: projectIdOrKey
in: path
required: true
description: 'the project id or key'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/object-avatar'
description: 'Returns a map containing a list of avatars for both custom an system avatars, which the user has the BROWSE project permission.'
'404':
description: 'Returned if the currently authenticated user does not have VIEW PROJECT permission.'
/rest/api/2/project/{projectIdOrKey}/components:
summary: 'Get project components'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Contains a full representation of a the specified projects components.'
parameters:
- name: projectIdOrKey
in: path
required: true
description: 'the project id or key'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-component'
description: 'Returned if the project exists and the user has permission to view its components. Contains a full representation of the projects components in JSON format.'
'404':
description: 'Returned if the project is not found, or the calling user does not have permission to view it.'
/rest/api/2/project/{projectIdOrKey}/statuses:
summary: 'Get all statuses'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Get all issue types with valid status values for a project'
parameters:
- name: projectIdOrKey
in: path
required: true
description: 'the project id or key'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-issue-type-with-status'
description: 'Returned if the project exists and the user has permission to view its components. Contains a full representation of issue types with status values which are valid for each issue type'
'400':
description: 'Returned if the project is not found, or the calling user does not have permission to view it.'
/rest/api/2/project/{projectIdOrKey}/version:
summary: 'Get project versions paginated'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns all versions for the specified project. Results are [paginated](https://docs.atlassian.com/software/jira/docs/api/REST/7.6.1/#pagination).
Results can be ordered by the following fields:
- sequence
- name
- startDate
- releaseDate'
parameters:
- name: projectIdOrKey
in: path
required: true
description: 'the project id or key'
schema:
type: string
- name: startAt
in: query
required: false
description: 'the page offset, if not specified then defaults to 0'
schema:
type: number
default: 0
- name: maxResults
in: query
required: false
description: 'how many results on the page should be included. Defaults to 50.'
schema:
type: integer
default: 50
- name: orderBy
in: query
required: false
description: 'ordering of the results.'
schema:
type: string
- name: expand
in: query
required: false
description: 'the parameters to expand'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/page-of-version'
description: 'One page of versions for the project.'
'404':
description: 'Returned if the project is not found, or the calling user does not have permission to view it.'
/rest/api/2/project/{projectIdOrKey}/versions:
summary: 'Get project versions'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Contains a full representation of a the specified projects versions.'
parameters:
- name: projectIdOrKey
in: path
required: true
description: 'the project id or key'
schema:
type: string
- name: expand
in: query
required: false
description: 'the parameters to expand'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-version'
description: 'Returned if the project exists and the user has permission to view its versions. Contains a full representation of the projects versions in JSON format.'
/rest/api/2/project/{projectKeyOrId}/securitylevel:
summary: 'Provide security level information of the given project for the current user.'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns all security levels for the project that the current logged in user has access to. If the user does not have the Set Issue Security permission, the list will be empty.'
parameters:
- name: projectIdOrKey
in: path
required: true
description: 'the project id or key'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/security-list-level'
description: 'Returns a list of all security levels in a project for which the current user has access.'
'404':
description: 'Returned if the project is not found or the user does not have permissions to browse it.'
/rest/api/2/projectCategory:
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get all project categories'
description: 'Returns all project categories'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/project-category'
description: 'Returns a list of project categories.'
'500':
description: 'Returned if an error occurs while retrieving the list of projects.'
post:
summary: 'Create project category'
description: 'Create a project category via POST.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/project-category'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/project-category'
description: 'Returned if the project category is created successfully.'
'401':
description: 'Returned if the caller is not logged in so does not have permission to create project categories.'
'403':
description: 'Returned if the caller is authenticated and does not have permission to create project categories (is not global admin).'
'409':
description: 'Returned if a project category with the given name already exists.'
/rest/api/2/projectCategory/{id}:
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get project category by id'
description: 'Contains a representation of a project category in JSON format.'
parameters:
- name: id
in: path
required: true
description: 'the project category id'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/project-category'
description: 'Returned if the project category exists. Contains representation of a project category in JSON format.'
'404':
description: 'Returned if the project category does not exist or the currently authenticated user does not have permission to view it.'
delete:
summary: 'Remove project category'
description: 'Delete a project category.'
parameters:
- name: id
in: path
required: true
description: 'the project category id'
schema:
type: string
responses:
'204':
description: 'Returned if the project category is successfully deleted.'
'401':
description: 'Returned if the caller is not logged in so does not have permission to delete project categories.'
'403':
description: 'Returned if the caller is authenticated and does not have permission to delete project categories (is not global admin).'
'404':
description: 'Returned if the project category does not exist or the currently authenticated user does not have permission to view it.'
put:
summary: 'Update project category'
description: 'Modify a project category via PUT. Any fields present in the PUT will override existing values. As a convenience, if a field is not present, it is silently ignored.'
parameters:
- name: id
in: path
required: true
description: 'the project category id'
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/project-category'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/project-category'
description: 'Returned if the project category exists and the currently authenticated user has permission to edit it.'
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/project-category'
description: ''
'401':
description: 'Returned if the caller is not logged in so does not have permission to change project categories.'
'403':
description: 'Returned if the caller is authenticated and does not have permission to change project categories (is not global admin).'
'404':
description: 'Returned if the project category does not exist or the currently authenticated user does not have permission to view it.'
/rest/api/2/projectvalidate/key:
summary: 'Validates a project key.'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Validates a project key.'
parameters:
- name: key
in: query
required: true
description: 'the project key'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/error-collection'
description: 'Returns an ErrorCollection containing any validation errors for the project key.'
/rest/api/2/resolution:
summary: 'Get resolutions'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns a list of all resolutions.'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-resolution'
description: 'Returned if the resolutions exists and the user has permission to view them. Contains a full representation of the resolution in JSON format.'
/rest/api/2/resolution/{id}:
summary: 'Get resolution by id'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns a resolution.'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/resolution'
description: 'Returned if the resolution exists and the user has permission to view it. Contains a full representation of the resolution in JSON format.'
'404':
description: 'Returned if the resolution does not exist or the user does not have permission to view it.'
/rest/api/2/search:
summary: 'Resource for searches.'
parameters:
- $ref: '#/components/parameters/authorization-jira'
post:
summary: 'Search using search request'
description: 'Performs a search using JQL.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/search-request'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/search-results'
description: 'Returns a JSON representation of the search results.'
'400':
description: 'Returned if there is a problem with the JQL query.'
get:
summary: 'Search'
description: |-
Searches for issues using JQL.
Sorting the jql parameter is a full JQL expression, and includes an ORDER BY clause.
The fields param (which can be specified multiple times) gives a comma-separated list of fields to include in the response. This can be used to retrieve a subset of fields. A particular field can be excluded by prefixing it with a minus.
By default, only navigable (*navigable) fields are returned in this search resource. Note: the default is different in the get-issue resource -- the default there all fields (*all).
*all - include all fields
*navigable - include just navigable fields
summary,comment - include just the summary and comments
-description - include navigable fields except the description (the default is *navigable for search)
*all,-comment - include everything except comments
GET vs POST: If the JQL query is too large to be encoded as a query param you should instead POST to this resource.
Expanding Issues in the Search Result: It is possible to expand the issues returned by directly specifying the expansion on the expand parameter passed in to this resources.
For instance, to expand the "changelog" for all the issues on the search result, it is neccesary to specify "changelog" as one of the values to expand.
parameters:
- name: jql
in: query
required: true
description: 'a JQL query string'
schema:
type: string
- name: startAt
in: query
required: false
description: 'the index of the first issue to return (0-based)'
schema:
type: integer
- name: maxResults
in: query
required: false
description: 'the maximum number of issues to return (defaults to 50). The maximum allowable value is dictated by the JIRA property "jira.search.views.default.max". If you specify a value that is higher than this number, your search results will be truncated'
schema:
type: integer
- name: validateQuery
in: query
required: true
description: 'whether to validate the JQL query'
schema:
type: boolean
default: true
- name: fields
in: query
required: false
description: 'the list of fields to return for each issue. By default, all navigable fields are returned.'
schema:
type: string
- name: expand
in: query
required: false
description: 'A comma-separated list of the parameters to expand.'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/search-results'
description: 'Returns a JSON representation of the search results.'
'400':
description: 'Returned if there is a problem with the JQL query.'
/rest/api/2/securitylevel/{id}:
summary: 'Get issuesecuritylevel'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns a full representation of the security level that has the given id.'
parameters:
- name: id
in: path
required: true
description: 'the security level of the issue by id'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/security-level'
description: 'Returned if the issue type exists and is visible by the calling user.'
'404':
description: 'Returned if the issue type does not exist, or is not visible to the calling user.'
/rest/api/2/serverInfo:
summary: 'Get server info'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns general information about the current JIRA server.'
parameters:
- name: doHealthCheck
in: query
required: false
description: 'perform the healthcheck'
schema:
type: boolean
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/server-info'
description: 'Returns a full representation of the server info in JSON format'
/rest/api/2/status:
summary: 'Returns a list of all statuses'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns a list of all statuses'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-status'
description: 'Returns a list of all JIRA issue statuses in JSON format, that are visible to the user.'
'404':
description: 'Returned if the requested issue status is not found, or the user does not have permission to view it.'
/rest/api/2/status/{idOrName}:
summary: 'Returns a full representation of the Status having the given id or name.'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns a full representation of the Status having the given id or name.'
parameters:
- name: idOrName
in: path
required: true
description: 'id or name of status'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/status'
description: 'Returns a full representation of a JIRA issue status in JSON format.'
'404':
description: 'Returned if the requested issue status is not found, or the user does not have permission to view it.'
/rest/api/2/statuscategory:
summary: 'Returns a list of all status categories'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns a list of all status categories'
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-status-category'
description: 'Returns a list of all JIRA issue status categories in JSON format, that are visible to the user.'
/rest/api/2/statuscategory/{idOrKey}:
summary: 'Returns a full representation of the StatusCategory having the given id or key'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
description: 'Returns a full representation of the StatusCategory having the given id or key'
parameters:
- name: idOrKey
in: path
required: true
description: 'id or key of status category'
schema:
type: string
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/status-category'
description: 'Returns a full representation of a JIRA issue status category in JSON format.'
'404':
description: 'Returned if the requested issue status category is not found, or the user does not have permission to view it.'
/rest/api/2/version:
summary: 'Create version'
parameters:
- $ref: '#/components/parameters/authorization-jira'
post:
description: 'Create a version via POST.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/version'
responses:
'201':
description: 'Returned if the version is created successfully.'
content:
application/json:
schema:
$ref: '#/components/schemas/version'
'403':
description: 'Returned if the currently authenticated user does not have permission to edit the version.'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
/rest/api/2/version/{id}/move:
summary: 'Move version'
parameters:
- $ref: '#/components/parameters/authorization-jira'
post:
description: |-
Modify a version's sequence within a project.
The move version bean has 2 alternative field value pairs:
position
An absolute position, which may have a value of 'First', 'Last', 'Earlier' or 'Later'
after
A version to place this version after. The value should be the self link of another version
parameters:
- name: id
in: path
required: true
description: 'version id'
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/version-move'
responses:
'200':
description: 'Returned if the version exists and the currently authenticated user has permission to view it. Contains a full representation of the version moved.'
content:
application/json:
schema:
$ref: '#/components/schemas/version'
'404':
description: 'Returned if the version, or target of the version to move after does not exist or the currently authenticated user does not have permission to view it.'
/rest/api/2/version/{id}:
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get version'
description: 'Returns a project version.'
parameters:
- name: id
in: path
required: true
description: 'version id'
schema:
type: string
- name: expand
in: query
required: false
description: ''
schema:
type: string
responses:
'200':
description: 'Returned if the version exists and the currently authenticated user has permission to view it. Contains a full representation of the version.'
content:
application/json:
schema:
$ref: '#/components/schemas/version'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
put:
summary: 'Update version'
description: 'Modify a version via PUT. Any fields present in the PUT will override existing values. As a convenience, if a field is not present, it is silently ignored.'
parameters:
- name: id
in: path
required: true
description: 'version id'
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/version'
responses:
'200':
description: 'Returned if the version exists and the currently authenticated user has permission to edit it.'
content:
application/json:
schema:
$ref: '#/components/schemas/version'
'403':
description: 'Returned if the currently authenticated user does not have permission to edit the version.'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
delete:
summary: 'delete a version'
description: 'Delete a project version.'
parameters:
- name: id
in: path
required: true
description: 'version id'
schema:
type: string
- name: moveFixIssuesTo
in: query
required: false
description: 'The version to set fixVersion to on issues where the deleted version is the fix version, If null then the fixVersion is removed.'
schema:
type: string
- name: moveAffectedIssuesTo
in: query
required: false
description: 'The version to set affectedVersion to on issues where the deleted version is the affected version, If null then the affectedVersion is removed.'
schema:
type: string
responses:
'204':
description: 'Returned if the version is successfully deleted.'
'403':
description: 'Returned if the currently authenticated user does not have permission to delete the version.'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
/rest/api/2/version/{id}/mergeto/{moveIssuesTo}:
summary: 'Merge versions'
parameters:
- $ref: '#/components/parameters/authorization-jira'
put:
summary: 'Merge versions'
description: 'Merge versions'
parameters:
- name: id
in: path
required: true
description: 'version id'
schema:
type: string
- name: moveIssuesTo
in: path
required: true
description: ''
schema:
type: string
responses:
'204':
description: 'Returned if the version is successfully deleted.'
'403':
description: 'Returned if the currently authenticated user does not have permission to delete the version.'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
/rest/api/2/version/{id}/relatedIssueCounts:
summary: 'Get version related issues'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get version related issues'
description: 'Returns a bean containing the number of fixed in and affected issues for the given version.'
parameters:
- name: id
in: path
required: true
description: 'version id'
schema:
type: string
responses:
'200':
description: 'Returned if the version exists and the currently authenticated user has permission to view it. Contains counts of issues fixed in and affecting this version, custom fields connected to this version.'
content:
application/json:
schema:
$ref: '#/components/schemas/version-issue-counts'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
/rest/api/2/version/{id}/removeAndSwap:
summary: 'Delete a project version.'
parameters:
- $ref: '#/components/parameters/authorization-jira'
post:
summary: 'Delete a project version.'
parameters:
- name: id
in: path
required: true
description: 'version id'
schema:
type: string
requestBody:
content:
application/json:
schema:
type: string
responses:
'204':
description: 'Returned if the version is successfully deleted.'
'403':
description: 'Returned if the currently authenticated user does not have permission to delete the version.'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
/rest/api/2/version/{id}/unresolvedIssueCount:
summary: 'Get version unresolved issues'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get version unresolved issues'
description: 'Returns the number of unresolved issues for the given version'
parameters:
- name: id
in: path
required: true
description: 'version id'
schema:
type: string
responses:
'200':
description: 'Returned if the version exists and the currently authenticated user has permission to view it. Contains counts of issues unresolved in this version.'
content:
application/json:
schema:
$ref: '#/components/schemas/version-unresolved-issue-counts'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
/rest/api/2/version/{versionId}/remotelink:
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get remote version links by version id'
description: 'Returns the remote version links associated with the given version ID.'
parameters:
- name: versionId
in: path
required: true
description: 'version id'
schema:
type: string
responses:
'200':
description: 'Returned if the version exists and the currently authenticated user has permission to view it, which is restricted to those users with BROWSE permission for the project. Contains a full representation of the remote version links.'
content:
application/json:
schema:
$ref: '#/components/schemas/remote-entity-link'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
post:
summary: 'Create or update remote version link'
description: 'Create a remote version link via POST. The links global ID will be taken from the JSON payload if provided; otherwise, it will be generated.'
parameters:
- name: versionId
in: path
required: true
description: 'version id'
schema:
type: string
requestBody:
content:
application/json:
schema:
type: string
responses:
'200':
description: 'Returned if the version is created successfully. The document will has no content, and a {@code Location:} header contains the self-URI for the newly created link.'
'400':
description: 'Returned if the JSON payload is empty or malformed'
'403':
description: 'Returned if the currently authenticated user does not have permission to edit the version.'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.s'
delete:
summary: 'Delete remote version links by version id'
description: 'Delete all remote version links for a given version ID.'
parameters:
- name: versionId
in: path
required: true
description: 'version id'
schema:
type: string
responses:
'204':
description: 'Returned if the remote version links are successfully deleted.'
'403':
description: 'Returned if the currently authenticated user does not have administrative rights to the project and thereby cannot delete remote links to the version.'
'404':
description: 'Returned if the version does not exist, the currently authenticated user does not have permission to view it, or the version does not have any remote links to delete'
/rest/api/2/version/{versionId}/remotelink/{globalId}:
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get remote version link'
description: 'A REST sub-resource representing a remote version link'
parameters:
- name: versionId
in: path
required: true
description: 'version id'
schema:
type: string
- name: globalId
in: path
required: true
description: 'version id'
schema:
type: string
responses:
'200':
description: 'Information on the remote version link (or links)'
content:
application/json:
schema:
$ref: '#/components/schemas/remote-entity-link'
'404':
description: 'Returned if the version or remote version link does not exist or if the user does not have the BROWSE permission for the project that owns the specified version'
post:
summary: 'Create or update remote version link'
description: 'Create a remote version link via POST. The links global ID will be taken from the JSON payload if provided; otherwise, it will be generated.'
parameters:
- name: versionId
in: path
required: true
description: 'version id'
schema:
type: string
- name: globalId
in: path
required: true
description: 'version id'
schema:
type: string
requestBody:
content:
application/json:
schema:
type: string
responses:
'201':
description: 'Returned if the version is created successfully. The document will has no content, and a {@code Location:} header contains the self-URI for the newly created link.'
'400':
description: 'Returned if the JSON payload is empty or malformed'
'403':
description: 'Returned if the currently authenticated user does not have permission to edit the version.'
'404':
description: 'Returned if the version does not exist or the currently authenticated user does not have permission to view it.'
delete:
summary: 'Delete remote version link'
description: 'Delete a specific remote version link with the given version ID and global ID.'
parameters:
- name: versionId
in: path
required: true
description: 'version id'
schema:
type: string
- name: globalId
in: path
required: true
description: 'version id'
schema:
type: string
responses:
'204':
description: 'Returned if the remote version link is successfully deleted.'
'403':
description: 'Returned if the currently authenticated user does not have administrative rights to the project and thereby cannot delete remote links to the version.'
'404':
description: 'Returned if the version does not exist, the currently authenticated user does not have permission to view it, or the version does not have a link for the given global ID'
/rest/api/2/version/remotelink:
summary: 'Get remote version links'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get remote version links'
description: 'Returns the remote version links for a given global ID.'
parameters:
- name: globalId
in: query
required: true
description: 'global id'
schema:
type: string
responses:
'200':
description: 'Contains a list of remote version links. Any existing links that the user does not have permission to see will be filtered out. The user must have BROWSE permission for the project to see links to its versions.'
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-remote-entity-link'
/rest/api/2/worklog/deleted:
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get ids of worklogs deleted since'
description: 'Returns worklogs id and delete time of worklogs that was deleted since given time. The returns set of worklogs is limited to 1000 elements. This API will not return worklogs deleted during last minute.'
parameters:
- name: since
in: query
required: true
description: 'a date time in unix timestamp format since when deleted worklogs will be returned.'
schema:
type: number
default: 0
responses:
'200':
description: 'Returns a JSON representation of the worklog changes.'
content:
application/json:
schema:
$ref: '#/components/schemas/worklog-changed-since'
/rest/api/2/worklog/list:
summary: 'Get worklogs for ids'
parameters:
- $ref: '#/components/parameters/authorization-jira'
post:
summary: 'Get worklogs for ids'
description: 'Returns worklogs for given worklog ids. Only worklogs to which the calling user has permissions, will be included in the result. The returns set of worklogs is limited to 1000 elements.'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/worklog-ids-request'
responses:
'200':
description: 'Returns a JSON representation of the search results.'
content:
application/json:
schema:
$ref: '#/components/schemas/list-of-worklog'
'400':
description: 'Returned if the request contains more than 1000 ids or is null'
/rest/api/2/worklog/updated:
summary: 'Get ids of worklogs modified since'
parameters:
- $ref: '#/components/parameters/authorization-jira'
get:
summary: 'Get ids of worklogs modified since'
description: 'Returns worklogs id and update time of worklogs that was updated since given time. The returns set of worklogs is limited to 1000 elements. This API will not return worklogs updated during last minute.'
parameters:
- name: since
in: query
required: true
description: 'a date time in unix timestamp format since when updated worklogs will be returned.'
schema:
type: number
default: 0
responses:
'200':
description: 'Returns a JSON representation of the worklog changes.'
content:
application/json:
schema:
$ref: '#/components/schemas/worklog-changed-since'
components:
schemas:
list-of-worklog:
title: 'List of Worklog'
type: array
items:
$ref: '#/components/schemas/worklog'
worklog:
title: 'Worklog'
type: object
properties:
self:
type: string
author:
type: object
items:
$ref: '#/components/schemas/user'
updateAuthor:
type: object
items:
$ref: '#/components/schemas/user'
comment:
type: string
created:
type: string
updated:
type: string
visibility:
type: object
items:
$ref: '#/components/schemas/visibility'
started:
type: string
timeSpent:
type: string
timeSpendSeconds:
type: string
id:
type: string
issueId:
type: string
additionalProperties: false
worklog-ids-request:
title: 'Worklog Ids Request'
type: object
properties:
ids:
type: array
items:
type: integer
additionalProperties: false
worklog-changed-since:
title: 'Worklog Changed Since'
type: object
properties:
values:
type: array
items:
$ref: '#/components/schemas/worklog-change'
since:
type: integer
until:
type: integer
isLastPage:
type: boolean
self:
type: string
nextPage:
type: string
additionalProperties: false
required:
- isLastPage
worklog-change:
title: 'Worklog Change'
type: object
properties:
worklogId:
type: integer
updatedTime:
type: integer
additionalProperties: false
remote-entity-link:
title: 'Remote Entity Link'
type: object
properties:
self:
type: string
name:
type: string
link:
type: object
additionalProperties: false
version-unresolved-issue-counts:
title: 'Version Unresolved Issue Counts'
type: object
properties:
self:
type: string
issuesUnresolvedCount:
type: integer
additionalProperties: false
required:
- issuesUnresolvedCount
version-issue-counts:
title: 'Version Issue Counts'
type: object
properties:
self:
type: string
issuesFixedCount:
type: integer
issuesAffectedCount:
type: integer
issueCountWithCustomFieldsShowingVersion:
type: integer
customFielsUsage:
type: array
items:
$ref: '#/components/schemas/version-usage-in-custom-fields'
additionalProperties: false
required:
- issuesFixedCount
- issuesAffectedCount
- issueCountWithCustomFieldsShowingVersion
version-usage-in-custom-fields:
title: 'Version Usage In Custom Fields'
type: object
properties:
fieldName:
type: string
customFieldId:
type: integer
issueCountWithVersionInCustomField:
type: integer
additionalProperties: false
required:
- customFieldId
- issueCountWithVersionInCustomField
version-move:
title: 'Version Move'
type: object
properties:
after:
type: string
position:
type: string
enum:
- Earlier
- Later
- First
- Last
additionalProperties: false
ism-move-position:
title: 'Issue Sub Task Move Position'
type: object
properties:
current:
type: integer
example: 911
original:
type: integer
example: 42
required:
- current
- original
audit-record:
title: 'Audit Record'
type: object
properties:
id:
type: integer
example: 1
summary:
type: string
example: 'User created'
remoteAddress:
type: string
example: '192.168.1.1'
authorKey:
type: string
example: 'administrator'
created:
type: string
example: '2014-03-19T18:45:42.967+0000'
category:
type: string
example: 'user management'
eventSource:
type: string
example: 'JIRA Connect Plugin'
description:
type: string
example: 'Optional description'
objectItem:
type: object
items:
$ref: '#/components/schemas/associated-item'
changedValues:
type: array
items:
$ref: '#/components/schemas/changedValue'
associatedItems:
type: array
items:
$ref: '#/components/schemas/associated-item'
auto-complete-response:
title: 'Auto Complete Response'
type: object
properties:
visibleFieldNames:
type: array
items:
type: string
visibleFunctionsNames:
type: array
items:
type: string
jqlReservedWords:
type: array
items:
type: string
additionalProperties: false
auto-complete-result-wrapper:
title: 'Auto Complete Result Wrapper'
type: object
properties:
results:
type: array
items:
$ref: '#/components/schemas/auto-complete-result'
additionalProperties: false
auto-complete-result:
title: 'Auto Complete Result'
type: object
properties:
value:
type: string
example: 'ActiveObjects'
displayName:
type: string
example: 'ActiveObjects (AO)'
additionalProperties: false
associated-item:
title: 'Associated Item'
type: object
properties:
id:
type: string
example: 'jira-software-users'
name:
type: string
example: 'jira-software-users'
typeName:
type: string
example: 'GROUP'
parentId:
type: string
example: '1'
parentName:
type: string
example: 'JIRA Internal Directory'
additionalProperties: false
permissions:
title: Permissions
type: object
properties:
permissions:
type: object
properties:
.*:
type: object
items:
$ref: '#/components/schemas/permission'
permission:
type: object
properties:
id:
type: string
example: 12
key:
type: string
example: 'EDIT_ISSUES'
name:
type: string
example: 'Edit_Issues'
type:
type: string
enum:
- GLOBAL
- PROJECT
description:
type: string
example: 'Ability to edit issues.'
additionalProperties: false
list-of-remote-entity-link:
title: 'List of Remote Entity Link'
type: array
items:
$ref: '#/components/schemas/remote-entity-link'
additionalProperties: false
list-of-property:
title: 'List of Property'
type: object
items:
$ref: '#/components/schemas/property'
list-of-priority:
title: 'List of Priority'
type: array
items:
$ref: '#/components/schemas/priority'
list-of-application-role:
title: 'List of Application Role'
type: array
items:
$ref: '#/components/schemas/application-role'
list-of-field:
title: 'List of Field'
type: array
items:
$ref: '#/components/schemas/field'
list-of-filter-permission:
title: 'List of Filter Permission'
type: array
items:
$ref: '#/components/schemas/filter-permission'
additionalProperties: false
list-of-project:
title: 'List of Project'
type: array
items:
$ref: '#/components/schemas/project'
list-of-component:
title: 'List of Component'
type: array
items:
$ref: '#/components/schemas/component'
list-of-issue-type-with-status:
title: 'List of Issue Type With Status'
type: array
items:
$ref: '#/components/schemas/issue-type-with-status'
list-of-version:
title: 'List of Version'
type: array
items:
$ref: '#/components/schemas/version'
additionalProperties: false
list-of-project-category:
title: 'List of Project Category'
type: array
items:
$ref: '#/components/schemas/project-category'
list-of-resolution:
title: 'List of Resolution'
type: array
items:
$ref: '#/components/schemas/resolution'
list-of-status:
title: 'List of Status'
type: array
items:
$ref: '#/components/schemas/status'
additionalProperties: false
list-of-status-category:
title: 'List of Status Category'
type: array
items:
$ref: '#/components/schemas/status-category'
additionalProperties: false
resolution:
title: 'Resolution'
type: object
properties:
self:
type: string
description:
type: string
iconUrl:
type: string
name:
type: string
id:
type: string
additionalProperties: false
property:
title: properties
properties:
id:
type: string
example: 'jira.home'
key:
type: string
example: 'jira.home'
value:
type: string
example: '/var/jira/jira-home'
name:
type: string
example: 'jira.home'
desc:
type: string
example: 'JIRA home directory'
type:
type: string
example: 'string'
defaultValue:
type: string
example: 'CLONE -'
example:
type: string
example: '??'
allowedValues:
type: array
items:
type: string
additionalProperties: false
application-property:
title: Application Property
type: object
properties:
id:
type: string
example: 'jira.home'
value:
type: string
example: '/var/jira/jira-home'
additionalProperties: false
attachment:
title: 'Attachment'
type: object
properties:
self:
type: string
example: 'http://www.example.com/jira/rest/api/2.0/attachments/10000'
filename:
type: string
author:
type: object
items:
$ref: '#/components/schemas/user'
maxItems: 1
minItems: 0
created:
type: string
size:
type: integer
mimeType:
type: string
properties:
type: object
items: {}
additionalProperties: false
content:
type: string
thumbnail:
type: string
link-issue-request:
title: 'Link Issue Request'
type: object
properties:
type:
type: object
items:
$ref: '#/components/schemas/issue-link-type'
inwardIssue:
type: object
items:
$ref: '#/components/schemas/issue-ref'
outwardIssue:
type: object
items:
$ref: '#/components/schemas/issue-ref'
comment:
type: object
items:
$ref: '#/components/schemas/comment'
issue-link:
title: 'Issue Link'
type: object
properties:
id:
type: string
self:
type: string
type:
type: object
items:
$ref: '#/components/schemas/issue-link-type'
inwardIssue:
type: object
items:
$ref: '#/components/schemas/issue-ref'
outwardIssue:
type: object
items:
$ref: '#/components/schemas/issue-ref'
issue-link-type:
title: 'Issue Link Type'
type: object
properties:
id:
type: string
name:
type: string
inward:
type: string
outward:
type: string
additionalProperties: false
issue-ref:
title: 'Issue Ref'
type: object
properties:
id:
type: string
key:
type: string
fields:
type: object
items:
$ref: '#/components/schemas/fields'
additionalProperties: false
issue-type-create:
title: 'Issue Type Create'
type: object
properties:
name:
type: string
example: 'name'
description:
type: string
example: 'description'
type:
type: string
enum:
- subtask
- standard
additionalProperties: false
issue-type-update:
title: 'Issue Type Update'
type: object
properties:
name:
type: string
description:
type: string
avatarId:
type: integer
additionalProperties: false
comment:
title: 'Comment'
type: object
properties:
id:
type: string
author:
type: object
items:
$ref: '#/components/schemas/user'
minItems: 1
maxItems: 1
body:
type: string
renderedBody:
type: string
updateAuthor:
type: object
items:
$ref: '#/components/schemas/user'
minItems: 1
maxItems: 1
created:
type: string
updated:
type: string
visibility:
type: object
items:
$ref: '#/components/schemas/visibility'
properties:
type: array
items:
$ref: '#/components/schemas/entity-property'
additionalProperties: false
visibility:
title: 'Visibility'
type: object
properties:
type:
type: string
enum:
- group
- role
value:
type: string
additionalProperties: false
entity-property:
title: 'Entity Property'
type: object
properties:
key:
type: string
value:
type: object
nullable: true
additionalProperties: false
fields:
title: 'Fields'
type: object
properties:
summary:
type: string
status:
type: object
items:
$ref: '#/components/schemas/status'
issuetype:
type: object
items:
$ref: '#/components/schemas/issue-type'
priority:
type: object
items:
$ref: '#/components/schemas/priority'
status:
title: 'Status'
type: object
properties:
statusColor:
type: string
description:
type: string
iconUrl:
type: string
name:
type: string
id:
type: string
statusCategory:
type: object
items:
$ref: '#/components/schemas/status-category'
additionalProperties: false
status-category:
title: 'Status Category'
type: object
properties:
id:
type: integer
key:
type: string
colorName:
type: string
name:
type: string
additionalProperties: false
issue-type:
title: Issue Type
type: object
properties:
id:
type: string
description:
type: string
iconUrl:
type: string
name:
type: string
subtask:
type: boolean
avatarId:
type: integer
additionalProperties: false
required:
- subtask
priority:
title: Priority
type: object
properties:
statusColor:
type: string
description:
type: string
iconUrl:
type: string
name:
type: string
id:
type: string
additionalProperties: false
user:
title: 'User'
type: object
properties:
self:
type: string
key:
type: string
name:
type: string
emailAddress:
type: string
avatarUrls:
type: object
items:
$ref: '#/components/schemas/avatar-url'
displayName:
type: string
active:
type: boolean
timeZone:
type: string
locale:
type: string
groups:
type: object
items:
$ref: '#/components/schemas/simple-list-wrapper'
applicationRoles:
type: object
items:
$ref: '#/components/schemas/simple-list-wrapper'
expand:
type: string
required:
- active
avatar-url:
title: 'Avatar Url'
type: object
properties:
.+:
type: string
simple-list-wrapper:
title: 'Simple List Wrapper'
type: object
properties:
size:
type: integer
max-results:
type: integer
items:
type: array
items:
$ref: '#/components/schemas/group'
additionalProperties: false
required:
- size
group:
title: Group
type: object
properties:
name:
type: string
self:
type: string
additionalProperties: false
application-role:
title: 'Application Role'
type: object
properties:
key:
type: string
example: 'jira-software'
groups:
type: array
items:
type: string
example: ["jira-software-users","jira-testers"]
name:
type: string
example: 'JIRA Software'
defaultGroups:
type: array
items:
type: string
example: ["jira-software-users"]
selectedByDefault:
type: boolean
example: true
defined:
type: boolean
example: false
numberOfSeats:
type: integer
example: 10
remainingSeats:
type: integer
example: 5
userCount:
type: integer
example: 5
userCountDescription:
type: integer
example: '5 Developer'
hasUnlimitedSeats:
type: boolean
example: false
platform:
type: boolean
example: false
attachment-meta:
title: 'Attachment Meta'
type: object
properties:
enabled:
type: boolean
uploadLimit:
type: integer
additionalProperties: false
required:
- enabled
changedValue:
title: 'Changed Value'
type: object
properties:
fieldName:
type: string
example: 'email'
changedFrom:
type: string
example: 'user@atlassian.com'
changedTo:
type: string
example: 'newuser@atlassian.com'
additionalProperties: false
system-avatars:
title: 'System Avatars'
type: object
properties:
system:
type: array
items:
$ref: '#/components/schemas/avatar'
additionalProperties: false
avatar:
title: 'Avatar'
type: object
properties:
id:
type: string
example: '1000'
owner:
type: string
example: 'fred'
isSystemAvatar:
type: boolean
example: true
isSelected:
type: boolean
example: false
isDeletable:
type: boolean
example: false
urls:
type: object
items:
$ref: '#/components/schemas/avatar-url'
example:
'16x16':
value:
'16x16': 'http://localhost:8090/jira/secure/useravatar?size=xsmall&avatarId=10040'
'24x24':
value:
'24x24': 'http://localhost:8090/jira/secure/useravatar?size=small&avatarId=10040'
selected:
type: boolean
example: false
additionalProperties: false
required:
- isSystemAvatar
- isSelected
- isDeletable
- selected
avatar-cropping:
title: 'Avatar Cropping'
type: object
properties:
cropperWidth:
type: integer
example: 120
cropperOffsetX:
type: integer
example: 50
cropperOffsetY:
type: integer
example: 50
url:
type: string
example: 'http://example.com/jira/secure/temporaryavatar?cropped=true'
needsCropping:
type: boolean
example: true
additionalProperties: false
required:
- cropperWidth
- cropperOffsetX
- cropperOffsetY
- needsCropping
component:
title: 'Component'
type: object
properties:
self:
type: string
id:
type: string
example: 1000
name:
type: string
example: 'Component 1'
description:
type: string
example: 'This is a JIRA component'
lead:
$ref: '#/components/schemas/user'
leadUserName:
type: string
example: ''
assigneeType:
$ref: '#/components/schemas/enumAssigneeType'
assignee:
type: object
items:
$ref: '#/components/schemas/user'
realAssigneeType:
$ref: '#/components/schemas/enumAssigneeType'
realAssignee:
$ref: '#/components/schemas/user'
isAssigneeTypeValid:
type: boolean
example: false
project:
type: string
example: 'HSP'
projectId:
type: integer
example: 10000
additionalProperties: false
required:
- isAssigneeTypeValid
enumAssigneeType:
title: 'Enum AssigneeType'
type: string
enum:
- 'PROJECT_DEFAULT'
- 'COMPONENT_LEAD'
- 'PROJECT_LEAD'
- 'UNASSIGNED'
component-issue-counts:
title: 'Component Issue Counts'
type: object
properties:
self:
type: string
issueCount:
type: integer
additionalProperties: false
required:
- issueCount
configuration:
title: 'Configuration'
type: object
properties:
votingEnabled:
type: boolean
example: true
watchingEnabled:
type: boolean
example: true
unassignedIssuesAllowed:
type: boolean
example: false
subTasksEnabled:
type: boolean
example: false
issueLinkingEnabled:
type: boolean
example: false
timeTrackingEnabled:
type: boolean
example: false
attachmentsEnabled:
type: boolean
example: false
timeTrackingConfiguration:
type: object
items:
$ref: '#/components/schemas/timeTrackingConfiguration'
additionalProperties: false
required:
- votingEnabled
- watchingEnabled
- unassignedIssuesAllowed
- subTasksEnabled
- issueLinkingEnabled
- timeTrackingEnabled
- attachmentsEnabled
custom-field-option:
title: 'Custom Field Option'
type: object
properties:
self:
type: string
example: 'http://localhost:8090/jira/rest/api/2.0/customFieldOption/3'
value:
type: string
example: 'Blue'
timeTrackingConfiguration:
title: 'Time Tracking Configuration'
type: object
properties:
workingHoursPerDay:
type: number
example: 8
workingDaysPerWeek:
type: number
example: 5
timeFormat:
type: string
enum:
- pretty
- days
- hours
example: 'pretty'
defaultUnit:
type: string
enum:
- minute
- hour
- day
- week
example: day
additionalProperties: false
required:
- workingHoursPerDay
- workingDaysPerWeek
dashboard:
title: 'Dashboard'
type: object
properties:
id:
type: string
example: 10000
name:
type: string
example: 'System Dashboard'
self:
type: string
example: 'http://www.example.com/jira/rest/api/2/dashboard/10000'
view:
type: string
example: 'http://www.example.com/jira/secure/Dashboard.jspa?selectPageId=10000'
additionalProperties: false
dashboards:
title: 'Dashboards'
type: object
properties:
startAt:
type: integer
example: 10
maxResults:
type: integer
example: 10
total:
type: integer
example: 143
prev:
type: string
example: 'http://www.example.com/jira/rest/api/2/dashboard?startAt=0'
next:
type: string
example: 'http://www.example.com/jira/rest/api/2/dashboard?startAt=10'
dashboards:
type: array
items:
$ref: '#/components/schemas/dashboard'
additionalProperties: false
entity-properties-key:
title: 'Entity Properties Keys'
type: object
properties:
keys:
type: array
items:
$ref: '#/components/schemas/entity-property-key'
additionalProperties: false
entity-property-key:
title: 'Entity Property Key'
type: object
properties:
self:
type: string
example: 'http://www.example.com/jira/rest/api/2/issue/EX-2/properties/issue.support'
key:
type: string
example: 'issue.support'
additionalProperties: false
custom-field-definition:
title: 'Custom Field Definition'
type: object
properties:
name:
type: string
example: 'New custom field'
description:
type: string
example: 'Custom field for picking groups'
type:
type: string
example: 'com.atlassian.jira.plugin.system.customfieldtypes:grouppicker'
searchKey:
type: string
example: 'com.atlassian.jira.plugin.system.customfieldtypes:grouppickersearcher'
additionalProperties: false
field:
title: 'Field'
type: object
properties:
id:
type: string
example: 'customfield_10101'
name:
type: string
example: 'New custom field'
custom:
type: boolean
example: true
orderable:
type: boolean
example: true
navigable:
type: boolean
example: true
searchable:
type: boolean
example: true
clausesNames:
type: array
items:
type: string
example: ["cf[10101]", "New custom field"]
schema:
type: object
items:
$ref: '#/components/schemas/json-type'
additionalProperties: false
json-type:
title: 'Json Type'
type: object
properties:
type:
type: string
example: 'project'
items:
type: string
system:
type: string
custom:
type: string
example: 'com.atlassian.jira.plugin.system.customfieldtypes:project'
customId:
type: integer
example: 10101
additionalProperties: false
filter:
title: 'Filter'
type: object
properties:
id:
type: string
name:
type: string
example: 'All oben Bugs'
description:
type: string
example: 'Lists all open bugs'
owner:
$ref: '#/components/schemas/user'
jql:
type: string
example: 'type = Bug and resolution is empty'
viewUrl:
type: string
searchUrl:
type: string
favourite:
type: boolean
example: true
sharePermission:
type: array
items:
$ref: '#/components/schemas/filter-permission'
sharedUsers:
type: object
items:
$ref: '#/components/schemas/user-bean-list-wrapper'
subscriptions:
type: object
items:
$ref: '#/components/schemas/filter-subsciption-bean-list-wrapper'
version:
title: 'Version'
type: object
properties:
id:
type: string
description:
type: string
name:
type: string
archived:
type: boolean
released:
type: boolean
overdue:
type: boolean
userStartDate:
type: string
userReleaseDate:
type: string
project:
type: string
projectId:
type: integer
moveUnfixedIssuesTo:
type: string
operations:
type: array
items:
$ref: '#/components/schemas/simple-link'
remotelinks:
type: array
items:
$ref: '#/components/schemas/remote-entity-links'
additionalProperties: false
simple-link:
title: Simple Link
type: object
properties:
id:
type: string
styleClass:
type: string
iconClass:
type: string
label:
type: string
title:
type: string
href:
type: string
weight:
type: integer
additionalProperties: false
remote-entity-links:
title: Remote Entity Link
type: object
properties:
name:
type: string
link: { }
additionalProperties: false
filter-permission:
title: 'Filter Permission'
type: object
properties:
id:
type: integer
type:
type: string
project:
type: object
items:
$ref: '#/components/schemas/project'
role:
type: object
items:
$ref: '#/components/schemas/project-role'
group:
type: object
items:
$ref: '#/components/schemas/group'
additionalProperties: false
project-role:
title: 'Project Role'
type: object
properties:
name:
type: string
id:
type: integer
description:
type: string
actors:
type: array
items:
$ref: '#/components/schemas/role-actor'
role-actor:
title: Role Actor
type: object
properties:
id:
type: integer
displayName:
type: string
type:
type: string
name:
type: string
avatarUrl:
type: string
additionalProperties: false
project:
title: Project
type: object
properties:
id:
type: string
key:
type: string
description:
type: string
lead:
type: object
items:
$ref: '#/components/schemas/user'
components:
type: array
items:
$ref: '#/components/schemas/component'
issueTypes:
type: array
items:
$ref: '#/components/schemas/issue-type'
url:
type: string
email:
type: string
assigneeType:
type: string
enum:
- PROJECT_LEAD
- UNASSIGNED
versions:
type: array
items:
$ref: '#/components/schemas/version'
name:
type: string
roles:
type: object
properties:
.+:
type: string
avatarUrls:
type: object
items:
$ref: '#/components/schemas/avatar-url'
projectKeys:
type: array
items:
type: string
projectCategory:
type: object
items:
$ref: '#/components/schemas/project-category'
projectTypeKey:
type: string
additionalProperties: false
project-category:
title: 'Project Category'
type: object
properties:
id:
type: string
name:
type: string
description:
type: string
additionalProperties: false
filter-subscriptions:
title: 'Filter Subscription'
type: object
properties:
id:
type: integer
user:
type: object
items:
$ref: '#/components/schemas/user'
group:
type: object
items:
$ref: '#/components/schemas/group'
additionalProperties: false
filter-subsciption-bean-list-wrapper:
title: 'Filter Subscription Bean List Wrapper'
type: object
properties:
size:
type: integer
max-results:
type: integer
start-index:
type: integer
end-index:
type: integer
items:
type: array
items:
$ref: '#/components/schemas/filter-subscriptions'
additionalProperties: false
user-bean-list-wrapper:
title: 'User Bean List Wrapper'
type: object
properties:
size:
type: integer
max-results:
type: integer
start-index:
type: integer
end-index:
type: integer
items:
type: array
items:
$ref: '#/components/schemas/user'
additionalProperties: false
required:
- size
- max-results
- start-index
- end-index
list-of-column-layout-item:
title: 'List of Column Layout Item'
type: array
items:
$ref: '#/components/schemas/column-layout-item'
additionalProperties: false
required:
- position
column-layout-item:
title: 'Column Layout Item'
type: object
properties:
columnsHeadingKey:
type: string
id:
type: string
navigableField:
type: object
items:
$ref: '#/components/schemas/navigable-field'
positions:
type: integer
additionalProperties: false
required:
- position
navigable-field:
title: 'Navigable Field'
type: object
properties:
columnCssClass:
type: string
columnHeadingKey:
type: string
defaultSortOrder:
type: string
hiddenFieldId:
type: string
sortComparatorSource:
title: 'Field Comparator Source'
type: object
sorter:
type: object
items:
$ref: '#/components/schemas/lucene-field-sorter'
position:
type: integer
additionalProperties: false
required:
- position
lucene-field-sorter:
title: 'Lucene Field Sorter'
type: object
properties:
comparator:
type: object
documentConstant:
type: string
additionalProperties: false
share-permission-input:
title: 'Share Permission Input'
type: object
properties:
type:
type: string
projectId:
type: string
groupname:
type: string
projectRoleId:
type: string
additionalProperties: false
default-share-scope:
title: 'Default Share Scope'
type: object
properties:
scope:
type: string
enum:
- GLOBAL
- AUTHENTICATED
- PRIVATE
additionalProperties: false
list-of-filter:
title: 'List of Filter'
type: array
items:
$ref: '#/components/schemas/filter'
group-suggestions:
title: 'Group Suggestions'
type: object
properties:
header:
type: string
total:
type: integer
groups:
type: array
items:
$ref: '#/components/schemas/group-suggestion'
additionalProperties: false
group-suggestion:
title: 'Group Suggestion'
type: object
properties:
name:
type: string
html:
type: string
labels:
type: array
items:
$ref: '#/components/schemas/group-label'
additionalProperties: false
group-label:
title: 'Group Label'
type: object
properties:
text:
type: string
title:
type: string
type:
type: string
enum:
- ADMIN
- SINGLE
- MULTIPLE
additionalProperties: false
user-picker-results:
title: 'User Picker Results'
type: object
properties:
users:
type: object
items:
$ref: '#/components/schemas/user-picker-user'
groups:
type: object
items:
$ref: '#/components/schemas/group-suggestions'
additionalProperties: false
user-picker-user:
title: 'User Picker User'
type: object
properties:
name:
type: string
key:
type: string
html:
type: string
displayName:
type: string
avatarUrl:
type: string
additionalProperties: false
users-and-groups:
title: 'Users And Groups'
type: object
properties:
users:
type: array
items:
$ref: '#/components/schemas/user-picker-results'
additionalProperties: false
list-of-issue-type:
title: 'List of Issue Type'
type: array
items:
$ref: '#/components/schemas/issue-type'
object-avatar:
title: 'Object'
type: object
properties:
.*:
type: array
items:
$ref: '#/components/schemas/avatar'
issue-type-with-status:
title: 'Issue Type With Status'
type: object
properties:
self:
type: string
id:
type: string
name:
type: string
subtask:
type: boolean
statuses:
type: array
items:
$ref: '#/components/schemas/status'
required:
- subtask
page-of-version:
title: 'Page of Version'
type: object
properties:
self:
type: string
example: 'https://www.example.com/jira/rest/api/2/project/PR/version?startAt=0&maxResults=2'
nextPage:
type: string
example: 'https://www.example.com/jira/rest/api/2/project/PR/version?startAt=2&maxResults=2'
maxResults:
type: integer
example: 2
startAt:
type: integer
example: 0
total:
type: integer
example: 7
isLast:
type: boolean
example: false
values:
type: array
items:
$ref: '#/components/schemas/version'
additionalProperties: false
required:
- maxResults
- startAt
security-list-level:
title: 'Security List Level'
type: object
properties:
levels:
type: array
items:
$ref: '#/components/schemas/security-level'
security-level:
title: 'Security Level'
type: object
properties:
self:
type: string
id:
type: string
description:
type: string
name:
type: string
additionalProperties: false
error-collection:
title: 'Error Collection'
type: object
properties:
errorMessages:
type: array
items:
type: string
errors:
type: object
items:
$ref: '#/components/schemas/error'
status:
type: integer
additionalProperties: false
error:
title: 'Error'
type: object
properties:
.*:
type: string
additionalProperties: false
search-request:
title: 'Search Request'
type: object
properties:
jql:
type: string
startAt:
type: integer
maxResults:
type: integer
fields:
type: array
items:
type: string
validateQuery:
type: boolean
additionalProperties: false
search-results:
title: 'Search Results'
type: object
properties:
expand:
type: string
startAt:
type: integer
maxResults:
type: integer
total:
type: integer
issues:
type: array
items:
$ref: '#/components/schemas/issue'
warningMessages:
type: array
items:
type: string
names:
type: object
items:
$ref: '#/components/schemas/object'
schema:
type: object
items:
$ref: '#/components/schemas/json-type'
issue:
title: 'Issue'
type: object
properties:
expand:
type: string
id:
type: string
self:
type: string
key:
type: string
fields:
type: object
items:
$ref: '#/components/schemas/object'
renderedFields:
type: object
items:
$ref: '#/components/schemas/object'
properties:
type: object
items:
$ref: '#/components/schemas/object-string'
names:
type: object
items:
$ref: '#/components/schemas/object-string'
schema:
type: object
items:
$ref: '#/components/schemas/json-type'
transitions:
type: array
items:
$ref: '#/components/schemas/transition'
operations:
type: object
items:
$ref: '#/components/schemas/opsbar'
editmeta:
type: object
items:
$ref: '#/components/schemas/edit-meta'
changelog:
type: object
items:
$ref: '#/components/schemas/changelog'
versionedRepresentations:
type: object
items:
properties:
.*:
type: object
items:
$ref: '#/components/schemas/object'
additionalProperties: false
fieldsToInclude:
type: object
items:
$ref: '#/components/schemas/object'
additionalProperties: false
changelog:
title: 'Changelog'
type: object
properties:
startAt:
type: integer
maxResults:
type: integer
total:
type: integer
histories:
type: array
items:
$ref: '#/components/schemas/change-history'
additionalProperties: false
change-history:
title: 'Change History'
type: object
properties:
id:
type: string
author:
type: object
items:
$ref: '#/components/schemas/user'
created:
type: string
items:
type: array
items:
$ref: '#/components/schemas/change-item'
historyMetadata:
type: object
items:
$ref: '#/components/schemas/history-metadata'
history-metadata:
title: 'History Metadata'
type: object
properties:
type:
type: string
description:
type: string
descriptionKey:
type: string
activityDescription:
type: string
activityDescriptionKey:
type: string
emailDescription:
type: string
emailDescriptionKey:
type: string
actor:
type: object
items:
$ref: '#/components/schemas/history-metadata-participant'
generator:
type: object
items:
$ref: '#/components/schemas/history-metadata-participant'
cause:
type: object
items:
$ref: '#/components/schemas/history-metadata-participant'
extraData:
type: object
items:
$ref: '#/components/schemas/object-string'
additionalProperties: false
server-info:
title: 'Server Info'
type: object
properties:
baseUrl:
type: string
version:
type: string
versionNumbers:
type: array
items:
type: integer
deploymentType:
type: string
buildNumber:
type: integer
buildDate:
type: string
serverTime:
type: string
scmInfo:
type: string
buildPartnerName:
type: string
serverTitle:
type: string
healthChecks:
type: array
items:
$ref: '#/components/schemas/health-check-result'
additionalProperties: false
health-check-result:
title: 'Health Check Result'
type: object
properties:
name:
type: string
description:
type: string
passed:
type: boolean
additionalProperties: false
change-item:
title: 'Change Item'
type: object
properties:
field:
type: string
fieldtype:
type: string
from:
type: string
fromString:
type: string
to:
type: string
toString:
type: string
additionalProperties: false
edit-meta:
title: 'Edit Meta'
type: object
properties:
fields:
type: object
items:
properties:
.*:
$ref: '#/components/schemas/field-meta'
additionalProperties: false
opsbar:
title: 'Opsbar'
type: object
properties:
linkGroups:
type: array
items:
$ref: '#/components/schemas/link-group'
additionalProperties: false
transition:
title: 'Transition'
type: object
properties:
id:
type: string
name:
type: string
to:
type: object
items:
$ref: '#/components/schemas/status'
fields:
type: object
items:
$ref: '#/components/schemas/field-meta'
expand:
type: string
additionalProperties: false
field-meta:
title: 'Field Meta'
type: object
properties:
required:
type: boolean
schema:
type: object
items:
$ref: '#/components/schemas/json-type'
name:
type: string
autoCompleteUrl:
type: string
hasDefaultValue:
type: boolean
operations:
type: array
items:
type: string
allowedValues:
type: array
items:
$ref: '#/components/schemas/object'
additionalProperties: false
required:
- required
link-group:
title: 'Link Group'
type: object
properties:
id:
type: string
styleClass:
type: string
header:
type: object
items:
$ref: '#/components/schemas/simple-link'
weight:
type: integer
links:
type: array
items:
$ref: '#/components/schemas/simple-link'
groups:
type: array
items:
$ref: '#/components/schemas/link-group'
additionalProperties: false
history-metadata-participant:
title: 'History Metadata Participant'
type: object
properties:
id:
type: string
displayName:
type: string
displayNameKey:
type: string
type:
type: string
avatarUrl:
type: string
url:
type: string
additionalProperties: false
object:
title: 'Object'
type: object
properties:
.*:
type: object
additionalProperties: false
object-string:
title: 'Object'
type: object
properties:
.*:
type: string
additionalProperties: false
parameters:
authorization-jira:
name: Authorization-JIRA
in: header
required: true
description: 'The header to authenticate agains the JIRA (JIRA token)'
schema:
type: string
default: '{{authorization-jira}}'
componentId:
in: query
name: id
schema:
type: integer
description: 'Jira Component ID'
requestBodies:
ism-move-position:
description: 'Issue Sub Task Move Position'
content:
application/json:
schema:
$ref: '#/components/schemas/ism-move-position'
required: true
securitySchemes:
YOUR_SCHEMA_HERE:
type: oauth2
flows:
clientCredentials:
tokenUrl: https://yoururl.com/as/token.oauth2
scopes:
email: email
openid: openid
profile: profile