openapi: 3.1.0
info:
title: Atlassian Admin Account Issues API
description: The Atlassian Admin API provides programmatic access to manage Atlassian organizations, users, domains, policies, and events. It enables administrators to automate organization management tasks, integrate with identity providers, and ensure appropriate access to Atlassian products.
version: 1.0.0
contact:
name: Atlassian Developer
url: https://developer.atlassian.com/cloud/admin/
license:
name: Atlassian Developer Terms
url: https://developer.atlassian.com/platform/marketplace/atlassian-developer-terms/
x-logo:
url: https://wac-cdn.atlassian.com/assets/img/favicons/atlassian/favicon.png
servers:
- url: https://api.atlassian.com
description: Atlassian Cloud API
security:
- bearerAuth: []
- oauth2: []
tags:
- name: Issues
paths:
/repositories/{workspace}/{repo_slug}/components/{component_id}:
parameters:
- name: component_id
in: path
description: The component's id
required: true
schema:
type: integer
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: This API operation retrieves detailed information about a specific component within a Bitbucket repository's issue tracking system. By providing the workspace identifier, repository slug, and component ID in the endpoint path, users can fetch metadata and configuration details for that particular component, which is typically used to categorize and organize issues within the repository. Components help teams structure their issue tracking by grouping related issues together, such as by feature area, module, or subsystem, and this GET request returns the properties and settings associated with the specified component.
summary: Atlassian Get Component for Issues
responses:
'200':
description: The specified component object.
content:
application/json:
schema:
$ref: '#/components/schemas/component'
examples:
component:
$ref: '#/components/examples/component'
'404':
description: The specified repository or component does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: getComponentForIssues
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues:
parameters:
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: The List Issues operation retrieves all issues associated with a specific Bitbucket repository within a workspace. By making a GET request to this endpoint with the workspace ID and repository slug as path parameters, users can access a paginated list of issues including their metadata such as title, description, status, priority, assignee, and creation date. This endpoint supports various query parameters for filtering and sorting issues, making it useful for integrating issue tracking data into external applications, generating reports, or building custom dashboards that need to display repository issues programmatically.
summary: Atlassian List Issues
responses:
'200':
description: A paginated list of the issues matching any filter criteria that were provided.
content:
application/json:
schema:
$ref: '#/components/schemas/paginated_issues'
examples:
paginated-issues:
$ref: '#/components/examples/paginated-issues'
'404':
description: The specified repository does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: listIssues
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
tags:
- Issues
description: Creates a new issue in the specified Bitbucket repository within a workspace. This POST endpoint allows users to submit issue details such as title, description, priority, and other metadata to track bugs, tasks, or feature requests. The operation requires authentication and appropriate repository permissions, with the workspace and repository slug specified in the URL path to identify the target repository where the issue will be created.
summary: Atlassian Create an Issue
responses:
'201':
description: The newly created issue.
headers:
Location:
description: The (absolute) URL of the newly created issue.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/issue'
examples:
issue_2:
$ref: '#/components/examples/issue_2'
'401':
description: When the request wasn't authenticated.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'403':
description: When the authenticated user isn't authorized to create the issue.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: The specified repository does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/issue'
examples:
issue:
$ref: '#/components/examples/issue'
description: The new issue. The only required element is `title`. All other elements can be omitted from the body.
required: true
security:
- oauth2:
- issue:write
- basic: []
- api_key: []
operationId: createAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationRequestSchema: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/export:
parameters:
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
post:
tags:
- Issues
description: The Export Issues endpoint allows users to trigger an export of all issues from a specific repository in Bitbucket. This POST operation is accessed via the path /repositories/{workspace}/{repo_slug}/issues/export, where workspace identifies the Bitbucket workspace and repo_slug specifies the repository containing the issues to be exported. When invoked, this API initiates an asynchronous export process that generates a downloadable file containing issue data from the repository, which can be useful for backup purposes, migration to other systems, reporting, or offline analysis. The exported data typically includes issue details such as titles, descriptions, status, priority, assignees, comments, and other metadata associated with the repository's issue tracker.
summary: Atlassian Export Issues
responses:
'202':
description: The export job has been accepted
'401':
description: The request wasn't authenticated properly
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'403':
description: When the authenticated user does not have admin permission on the repo
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: The repo does not exist or does not have an issue tracker
content:
application/json:
schema:
$ref: '#/components/schemas/error'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/export_options'
examples:
export-options:
$ref: '#/components/examples/export-options'
description: The options to apply to the export. Available options include `project_key` and `project_name` which, if specified, are used as the project key and name in the exported Jira json format. Option `send_email` specifies whether an email should be sent upon export result. Option `include_attachments` specifies whether attachments are included in the export.
security:
- oauth2:
- issue
- repository:admin
- basic: []
- api_key: []
operationId: exportIssues
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationRequestSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/export/{repo_name}-issues-{task_id}.zip:
parameters:
- name: repo_name
in: path
description: The name of the repo
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: task_id
in: path
description: The ID of the export task
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: This GET operation checks the status of a previously initiated issue export request for a specific Bitbucket repository by polling the export endpoint using the provided task ID. When called, it queries the export job identified by the workspace, repository slug, repository name, and unique task identifier to determine whether the export process is still running, has completed successfully, or has failed. If the export is complete, the endpoint returns the ZIP file containing the exported issues data; otherwise, it provides status information about the ongoing export process. This allows users to monitor long-running export operations and retrieve the results once processing is finished without blocking or timing out during the initial export request.
summary: Atlassian Check Issue Export Status
responses:
'202':
description: Export job accepted
content:
application/json:
schema:
$ref: '#/components/schemas/issue_job_status'
examples:
response:
value:
type: issue_job_status
status: ACCEPTED
phase: Initializing
total: 0
count: 0
pct: 0
'401':
description: The request wasn't authenticated properly
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'403':
description: When the authenticated user does not have admin permission on the repo
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: No export job has begun
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue
- repository:admin
- basic: []
- api_key: []
operationId: checkIssueExportStatus
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/import:
parameters:
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: This API endpoint allows you to check the status of a bulk issue import operation for a specific Bitbucket repository. By making a GET request to `/repositories/{workspace}/{repo_slug}/issues/import`, you can retrieve information about a previously initiated issue import process, including whether it's still in progress, completed successfully, or encountered any errors. The endpoint requires you to specify both the workspace identifier and the repository slug in the URL path, and it returns details about the import job such as its current state, the number of issues processed, and any relevant metadata associated with the import operation.
summary: Atlassian Check Issue Import Status
responses:
'200':
description: Import job complete with either FAILURE or SUCCESS status
content:
application/json:
schema:
$ref: '#/components/schemas/issue_job_status'
examples:
issue-job-status:
$ref: '#/components/examples/issue-job-status'
'202':
description: Import job started
content:
application/json:
schema:
$ref: '#/components/schemas/issue_job_status'
examples:
response:
value:
type: issue_job_status
status: ACCEPTED
phase: Attachments
total: 15
count: 0
percent: 0
'401':
description: The request wasn't authenticated properly
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'403':
description: When the authenticated user does not have admin permission on the repo
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: No export job has begun
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue:write
- repository:admin
- basic: []
- api_key: []
operationId: checkIssueImportStatus
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
tags:
- Issues
description: This API endpoint allows users to import issues in bulk to a Bitbucket repository by sending a POST request to /repositories/{workspace}/{repo_slug}/issues/import. It requires specifying the workspace identifier and repository slug in the URL path, and is designed to facilitate the migration or mass creation of issues from external sources or other issue tracking systems into a Bitbucket repository's issue tracker. The endpoint accepts issue data in the request body and processes multiple issues in a single operation, making it efficient for transferring large sets of issues while maintaining their properties and metadata during the import process.
summary: Atlassian Import Issues
responses:
'202':
description: Import job accepted
content:
application/json:
schema:
$ref: '#/components/schemas/issue_job_status'
examples:
response:
value:
type: issue_job_status
status: ACCEPTED
phase: Attachments
total: 15
count: 0
percent: 0
'401':
description: The request wasn't authenticated properly
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'403':
description: When the authenticated user does not have admin permission on the repo
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: No export job has begun
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'409':
description: Import already running
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue:write
- repository:admin
- basic: []
- api_key: []
operationId: importIssues
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/{issue_id}:
parameters:
- name: issue_id
in: path
description: The issue id
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
delete:
tags:
- Issues
description: This API operation allows you to permanently delete a specific issue from a Bitbucket repository by sending a DELETE request to the endpoint with the workspace identifier, repository slug, and issue ID as path parameters. When executed successfully, it removes the issue and all associated data from the repository's issue tracker, making it an irreversible action that should be used with caution. The operation requires appropriate permissions within the workspace and repository to perform the deletion, and it's typically used for removing duplicate, spam, or mistakenly created issues from the project's issue tracking system.
summary: Atlassian Delete an Issue
responses:
'200':
description: The issue object.
content:
application/json:
schema:
$ref: '#/components/schemas/issue'
'403':
description: When the authenticated user isn't authorized to delete the issue.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue:write
- basic: []
- api_key: []
operationId: deleteAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
get:
tags:
- Issues
description: This GET operation retrieves detailed information about a specific issue from a Bitbucket repository by providing the workspace identifier, repository slug, and issue ID as path parameters. It returns comprehensive data about the requested issue including its title, description, status, priority, assignee, reporter, creation and update timestamps, comments, and other metadata associated with the issue. This endpoint is useful for developers and project managers who need to fetch complete details of a particular issue for display in dashboards, integration with third-party tools, or programmatic issue tracking and management within the Atlassian Bitbucket ecosystem.
summary: Atlassian Get an Issue
responses:
'200':
description: The issue object.
content:
application/json:
schema:
$ref: '#/components/schemas/issue'
examples:
issue_2:
$ref: '#/components/examples/issue_2'
'403':
description: When the authenticated user isn't authorized to access the issue.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'410':
description: The specified issue is unavailable.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: getAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/{issue_id}/attachments:
parameters:
- name: issue_id
in: path
description: The issue id
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: Returns all attachments for the specified issue in a Bitbucket repository. This GET endpoint accepts a workspace identifier, repository slug, and issue ID as path parameters to retrieve metadata and download URLs for all files that have been attached to that particular issue. The response includes details such as attachment names, sizes, content types, and links to access each file, making it useful for displaying or downloading issue-related documents, images, or other supporting files programmatively.
summary: Atlassian List Attachments for an Issue
responses:
'200':
description: A paginated list of all attachments for this issue.
content:
application/json:
schema:
$ref: '#/components/schemas/paginated_issue_attachments'
examples:
paginated-issue-attachment:
$ref: '#/components/examples/paginated-issue-attachment'
'401':
description: If the issue tracker is private and the request was not authenticated.
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: listAttachmentsForAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
tags:
- Issues
description: This API endpoint allows users to upload file attachments to a specific issue within a Bitbucket repository by making a POST request to the path /repositories/{workspace}/{repo_slug}/issues/{issue_id}/attachments, where {workspace} represents the Bitbucket workspace identifier, {repo_slug} is the repository's unique identifier, and {issue_id} is the specific issue number to which the attachment will be added. The operation requires the file to be sent as multipart/form-data in the request body, and upon successful execution, it attaches the uploaded file to the designated issue, making it accessible to other users viewing that issue. This functionality is commonly used to provide additional context, documentation, screenshots, or logs related to the issue being tracked.
summary: Atlassian Upload an Attachment to an Issue
responses:
'201':
description: An empty response document.
headers:
Location:
description: The URL to the issue's collection of attachments.
schema:
type: string
'400':
description: If no files were uploaded, or if the wrong `Content-Type` was used.
'401':
description: If the issue tracker is private and the request was not authenticated.
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue:write
- basic: []
- api_key: []
operationId: uploadAnAttachmentToAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/{issue_id}/attachments/{path}:
parameters:
- name: issue_id
in: path
description: The issue id
required: true
schema:
type: string
- name: path
in: path
description: Path to the file.
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
delete:
tags:
- Issues
description: This API operation allows you to delete a specific attachment from an issue in a Bitbucket repository by providing the workspace identifier, repository slug, issue ID, and the path or filename of the attachment you wish to remove. When executed, it permanently removes the designated file attachment that was previously uploaded to the specified issue, helping to manage and maintain issue-related documentation and files within your Bitbucket workspace. The operation requires appropriate permissions to modify issue attachments in the target repository.
summary: Atlassian Delete an Attachment for an Issue
responses:
'204':
description: Indicates that the deletion was successful
'401':
description: If the issue tracker is private and the request was not authenticated.
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue:write
- basic: []
- api_key: []
operationId: deleteAnAttachmentForAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
get:
tags:
- Issues
description: This API operation retrieves a specific attachment file associated with an issue in a Bitbucket repository by providing the workspace identifier, repository slug, issue ID, and the path to the attachment file. When called, it returns the binary content of the requested attachment, allowing users to download or access files that have been previously uploaded to an issue, such as screenshots, logs, or other supporting documentation that help describe or troubleshoot the reported issue.
summary: Atlassian Get Attachment for an Issue
responses:
'302':
description: A redirect to the file's contents
headers:
Location:
schema:
type: string
'401':
description: If the issue tracker is private and the request was not authenticated.
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: getAttachmentForAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/{issue_id}/changes:
parameters:
- name: issue_id
in: path
description: The issue id
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: Returns all the issue changes that were made on the specified issue. This endpoint retrieves the complete change history for a particular issue in a Bitbucket repository, allowing you to track modifications such as status updates, assignee changes, priority adjustments, and other field modifications over time. The response includes details about who made each change, when it occurred, and what specifically was altered, providing full audit trail capabilities for issue tracking and management within the workspace's repository.
summary: Atlassian List Changes on an Issue
responses:
'200':
description: Returns all the issue changes that were made on the specified issue.
content:
application/json:
schema:
$ref: '#/components/schemas/paginated_log_entries'
examples:
paginated-log-entries:
$ref: '#/components/examples/paginated-log-entries'
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
parameters:
- name: q
in: query
description: '
Query string to narrow down the response. See
[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering) for details.'
required: false
schema:
type: string
- name: sort
in: query
description: '
Name of a response property to sort results. See
[filtering and sorting](/cloud/bitbucket/rest/intro/#sorting-query-results)
for details.
'
required: false
schema:
type: string
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: listChangesOnAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
tags:
- Issues
description: 'This POST operation allows you to modify the state of a specific issue within a Bitbucket repository by submitting change requests to the issue''s change log. The endpoint requires three path parameters: the workspace identifier, the repository slug, and the issue ID you want to update. When called, it creates a new change entry that can update various issue properties such as status, priority, assignee, or other configurable fields depending on your repository''s issue tracker settings. This operation is particularly useful for programmatically managing issue workflows, automating state transitions, or integrating external tools with Bitbucket''s issue tracking system. The API expects the change data in the request body and returns the updated change record upon successful execution, making it essential for teams that want to maintain issue histories and track modifications across their development lifecycle.'
summary: Atlassian Modify the State of an Issue
responses:
'201':
description: The newly created issue change.
headers:
Location:
description: The (absolute) URL of the newly created issue change.
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/issue_change'
examples:
issue-change_2:
$ref: '#/components/examples/issue-change_2'
'401':
description: When the request wasn't authenticated.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'403':
description: When the authenticated user isn't authorized to modify the issue.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/issue_change'
examples:
issue-change:
$ref: '#/components/examples/issue-change'
description: The new issue state change. The only required elements are `changes.[].new`. All other elements can be omitted from the body.
required: true
security:
- oauth2:
- issue:write
- basic: []
- api_key: []
operationId: modifyTheStateOfAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationRequestSchema: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/{issue_id}/changes/{change_id}:
parameters:
- name: change_id
in: path
description: The issue change id
required: true
schema:
type: string
- name: issue_id
in: path
description: The issue id
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: This GET endpoint retrieves a specific change object associated with an issue in a Bitbucket repository, allowing users to examine the detailed history of modifications made to a particular issue. By providing the workspace identifier, repository slug, issue ID, and change ID in the URL path, the API returns comprehensive information about a single change event, including what was modified, when the change occurred, and who made the modification. This is particularly useful for tracking issue evolution, auditing purposes, or understanding the context of specific updates made to issues within the repository's issue tracking system.
summary: Atlassian Get Issue Change Object
responses:
'200':
description: The specified issue change object.
content:
application/json:
schema:
$ref: '#/components/schemas/issue_change'
examples:
issue-change_2:
$ref: '#/components/examples/issue-change_2'
'404':
description: The specified repository or issue change does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: getIssueChangeObject
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/{issue_id}/comments:
parameters:
- name: issue_id
in: path
description: The issue id
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: This GET operation retrieves all comments associated with a specific issue in a Bitbucket repository. By providing the workspace identifier, repository slug, and issue ID as path parameters, the endpoint returns a paginated list of comments that have been posted on that particular issue. The response includes comment metadata such as the comment content, author information, creation and update timestamps, and any related links. This is useful for developers and project managers who need to review discussions, feedback, or troubleshooting information related to a specific issue within their repository's issue tracking system.
summary: Atlassian List Comments on an Issue
responses:
'200':
description: A paginated list of issue comments.
content:
application/json:
schema:
$ref: '#/components/schemas/paginated_issue_comments'
examples:
paginated-issue-comments:
$ref: '#/components/examples/paginated-issue-comments'
parameters:
- name: q
in: query
description: '
Query string to narrow down the response as per
[filtering and sorting](/cloud/bitbucket/rest/intro/#filtering).'
required: false
schema:
type: string
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: listCommentsOnAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
tags:
- Issues
description: Creates a new comment on the specified issue in a Bitbucket repository. This POST endpoint requires authentication and targets a specific issue within a repository by providing the workspace identifier, repository slug, and issue ID in the URL path. The request body should contain the comment content and any additional metadata according to Bitbucket's comment schema. Upon successful execution, the API returns the newly created comment object including its unique identifier, author information, timestamp, and content. This operation is commonly used for adding feedback, updates, or discussions to existing issues in a repository's issue tracker, enabling team collaboration and communication around specific problems or feature requests.
summary: Atlassian Create Comment on an Issue
responses:
'201':
description: The newly created comment.
headers:
Location:
description: The location of the newly issue comment.
schema:
type: string
'400':
description: 'If the input was invalid, or if the comment being created is detected as spam '
content:
application/json:
schema:
$ref: '#/components/schemas/error'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/issue_comment'
examples:
issue-comment:
$ref: '#/components/examples/issue-comment'
description: The new issue comment object.
required: true
security:
- oauth2:
- issue:write
- basic: []
- api_key: []
operationId: createCommentOnAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationRequestSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/{issue_id}/comments/{comment_id}:
parameters:
- name: comment_id
in: path
description: The id of the comment.
required: true
schema:
type: integer
- name: issue_id
in: path
description: The issue id
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
delete:
tags:
- Issues
description: This API operation allows you to delete a specific comment from an issue in a Bitbucket repository. By sending a DELETE request to the endpoint with the workspace ID, repository slug, issue ID, and comment ID, you can permanently remove a comment that was previously added to an issue. This is useful for removing outdated, incorrect, or inappropriate comments from issue discussions. The authenticated user must have appropriate permissions to delete the comment, typically requiring either ownership of the comment or administrative access to the repository. Once deleted, the comment cannot be recovered and will be removed from the issue's comment thread.
summary: Atlassian Delete Comment on an Issue
responses:
'204':
description: Indicates successful deletion.
security:
- oauth2:
- issue:write
- basic: []
- api_key: []
operationId: deleteCommentOnAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
get:
tags:
- Issues
description: This API operation retrieves a specific comment from an issue within a Bitbucket repository by providing the workspace identifier, repository slug, issue ID, and comment ID in the endpoint path. It returns detailed information about the comment including its content, author, creation date, modification history, and any associated metadata. This GET request is useful for accessing individual comment details without fetching all comments on an issue, enabling efficient retrieval of specific discussion threads or responses within the repository's issue tracking system.
summary: Atlassian Get Comment on an Issue
responses:
'200':
description: The issue comment.
content:
application/json:
schema:
$ref: '#/components/schemas/issue_comment'
examples:
issue-comment_2:
$ref: '#/components/examples/issue-comment_2'
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: getCommentOnAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
put:
tags:
- Issues
description: This PUT operation updates an existing comment on a specific issue within a Bitbucket repository. By providing the workspace identifier, repository slug, issue ID, and comment ID in the URL path, users can modify the content of a previously posted comment. The request requires authentication and appropriate permissions to edit the comment, typically limited to the comment's original author or users with administrative privileges. The operation accepts updated comment data in the request body and returns the modified comment object with updated metadata such as timestamps. This endpoint is commonly used to correct typos, add additional information, or revise feedback on repository issues while maintaining the comment's history and context within the issue discussion thread.
summary: Atlassian Update Comment on an Issue
responses:
'200':
description: The updated issue comment.
content:
application/json:
schema:
$ref: '#/components/schemas/issue_comment'
examples:
issue-comment_2:
$ref: '#/components/examples/issue-comment_2'
'400':
description: 'If the input was invalid, or if the update to the comment is detected as spam '
content:
application/json:
schema:
$ref: '#/components/schemas/error'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/issue_comment'
examples:
issue-comment_2:
$ref: '#/components/examples/issue-comment_2'
description: The updated comment.
required: true
security:
- oauth2:
- issue:write
- basic: []
- api_key: []
operationId: updateCommentOnAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationRequestSchema: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/{issue_id}/vote:
parameters:
- name: issue_id
in: path
description: The issue id
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
delete:
tags:
- Issues
description: This API operation allows you to remove your vote from a specific issue in a Bitbucket repository. By sending a DELETE request to the endpoint with the workspace identifier, repository slug, and issue ID, you can retract a previously cast vote on that issue. This is useful when you no longer wish to express support or priority for a particular issue, effectively decreasing its vote count and potentially affecting its perceived importance or ranking within the project's issue tracker.
summary: Atlassian Remove Vote for an Issue
responses:
default:
description: Unexpected error.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- account:write
- issue:write
- basic: []
- api_key: []
operationId: removeVoteForAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
get:
tags:
- Issues
description: This GET endpoint checks whether the currently authenticated user has voted for a specific issue in a Bitbucket repository. By providing the workspace identifier, repository slug, and issue ID in the URL path, the API returns the voting status of the authenticated user for that particular issue. This operation is useful for applications that need to display voting state or manage user interactions with repository issues, allowing developers to determine if a user has already cast their vote before presenting voting options or updating the UI accordingly.
summary: Atlassian Check if Current User Voted for an Issue
responses:
'204':
description: If the authenticated user has not voted for this issue.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'401':
description: When the request wasn't authenticated.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: If the authenticated user has not voted for this issue, or when the repo does not exist, or does not have an issue tracker.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- account
- issue
- basic: []
- api_key: []
operationId: checkIfCurrentUserVotedForAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
put:
tags:
- Issues
description: This API endpoint allows authenticated users to cast a vote in support of a specific issue within a Bitbucket repository. By sending a PUT request to this endpoint with the appropriate workspace identifier, repository slug, and issue ID, users can register their interest or priority for a particular issue, helping repository maintainers understand which issues are most important to the community. The voting mechanism is commonly used to gauge user sentiment and prioritize bug fixes or feature requests, with the PUT method being idempotent, meaning multiple identical requests will have the same effect as a single request.
summary: Atlassian Vote for an Issue
responses:
'204':
description: Indicating the authenticated user has cast their vote successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'401':
description: When the request wasn't authenticated.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- account:write
- issue
- basic: []
- api_key: []
operationId: voteForAnIssue
x-api-evangelist-processing:
ChooseTags: true
WriteDescription: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/issues/{issue_id}/watch:
parameters:
- name: issue_id
in: path
description: The issue id
required: true
schema:
type: string
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
delete:
tags:
- Issues
description: Removes the authenticated user's watch status from a specific issue in a Bitbucket repository. This endpoint allows users to unsubscribe from notifications and updates related to a particular issue they were previously watching. By sending a DELETE request to this endpoint with the workspace identifier, repository slug, and issue ID, the user will no longer receive notifications when the issue is updated, commented on, or changes status. This is useful for managing notification preferences and reducing alert fatigue when an issue is no longer relevant to the user's work or interests.
summary: Atlassian Stop Watching an Issue
responses:
'204':
description: Indicates that the authenticated user successfully stopped watching this issue.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'401':
description: When the request wasn't authenticated.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: The specified repository or issue does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- account:write
- issue:write
- basic: []
- api_key: []
operationId: stopWatchingAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
get:
tags:
- Issues
description: This GET endpoint allows you to check whether the currently authenticated user is watching a specific issue in a Bitbucket repository. By making a request to this endpoint with the workspace ID, repository slug, and issue ID, you'll receive a response indicating the watch status of the authenticated user for that particular issue. This is useful for applications that need to determine if a user has subscribed to receive notifications about updates, comments, or changes to a specific issue, enabling features like watch/unwatch toggles or displaying watch status indicators in the user interface.
summary: Atlassian Check if Current User Is Watching Issue
responses:
'204':
description: If the authenticated user is watching this issue.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'401':
description: When the request wasn't authenticated.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: If the authenticated user is not watching this issue, or when the repo does not exist, or does not have an issue tracker.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- account
- issue
- basic: []
- api_key: []
operationId: checkIfCurrentUserIsWatchingIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
put:
tags:
- Issues
description: This API endpoint allows authenticated users to start watching a specific issue in a Bitbucket repository by sending a PUT request to the specified path with the workspace identifier, repository slug, and issue ID. When executed successfully, the user will receive notifications about subsequent changes, comments, and updates to that particular issue. This is useful for staying informed about issues that are relevant to a user's work or interests without needing to manually check for updates. The operation requires appropriate authentication and the user must have at least read access to the repository containing the issue. The endpoint returns a successful response once the watch has been established for the authenticated user on the specified issue.
summary: Atlassian Watch an Issue
responses:
'204':
description: Indicates that the authenticated user successfully started watching this issue.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'401':
description: When the request wasn't authenticated.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
'404':
description: If the authenticated user is not watching this issue, or when the repo does not exist, or does not have an issue tracker.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- account:write
- issue
- basic: []
- api_key: []
operationId: watchAnIssue
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/versions:
parameters:
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: 'This API endpoint retrieves a paginated list of all defined versions associated with a specific repository in Bitbucket. By making a GET request to /repositories/{workspace}/{repo_slug}/versions, users can access version information that is typically used for issue tracking and release management within the repository. The endpoint requires two path parameters: the workspace identifier and the repository slug, which together uniquely identify the target repository. The response returns version objects that may include details such as version names, identifiers, and metadata that teams use to categorize and track issues across different releases or milestones of their software project.'
summary: Atlassian List Defined Versions for Issues
responses:
'200':
description: The versions that have been defined in the issue tracker.
content:
application/json:
schema:
$ref: '#/components/schemas/paginated_versions'
examples:
paginated-versions:
$ref: '#/components/examples/paginated-versions'
'404':
description: The specified repository does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: listDefinedVersionsForIssues
x-api-evangelist-processing:
ChooseTags: true
WriteDescription: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/repositories/{workspace}/{repo_slug}/versions/{version_id}:
parameters:
- name: repo_slug
in: path
description: 'This can either be the repository slug or the UUID of the repository,
surrounded by curly-braces, for example: `{repository UUID}`.
'
required: true
schema:
type: string
- name: version_id
in: path
description: The version's id
required: true
schema:
type: integer
- name: workspace
in: path
description: 'This can either be the workspace ID (slug) or the workspace UUID
surrounded by curly-braces, for example: `{workspace UUID}`.
'
required: true
schema:
type: string
get:
tags:
- Issues
description: 'This GET operation retrieves a specific defined version for issues within a Bitbucket repository by accessing the endpoint /repositories/{workspace}/{repo_slug}/versions/{version_id}. It requires three path parameters: the workspace identifier, the repository slug (a URL-friendly repository name), and the version_id of the specific version you want to retrieve. This endpoint is useful for fetching detailed information about a particular version or milestone that has been configured for issue tracking within a Bitbucket repository, allowing developers and project managers to access version-specific metadata, release information, and associated issue tracking details programmatically.'
summary: Atlassian Get Defined Version for Issues
responses:
'200':
description: The specified version object.
content:
application/json:
schema:
$ref: '#/components/schemas/version'
examples:
version:
$ref: '#/components/examples/version'
'404':
description: The specified repository or version does not exist or does not have the issue tracker enabled.
content:
application/json:
schema:
$ref: '#/components/schemas/error'
security:
- oauth2:
- issue
- basic: []
- api_key: []
operationId: getDefinedVersionForIssues
x-api-evangelist-processing:
WriteDescription: true
ChooseTags: true
GenerateExampleFromOperationResponseSchema: true
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/rest/api/3/issue/archive:
post:
deprecated: false
description: 'Enables admins to archive up to 100,000 issues in a single request using JQL, returning the URL to check the status of the submitted request.
You can use the [get task](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-tasks/#api-rest-api-3-task-taskid-get) and [cancel task](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-tasks/#api-rest-api-3-task-taskid-cancel-post) APIs to manage the request.
**Note that:**
* you can''t archive subtasks directly, only through their parent issues
* you can only archive issues from software, service management, and business projects
**[Permissions](#permissions) required:** Jira admin or site admin: [global permission](https://confluence.atlassian.com/x/x4dKLg)
**License required:** Premium or Enterprise
**Signed-in users only:** This API can''t be accessed anonymously.
**Rate limiting:** Only a single request per jira instance can be active at any given time.
'
operationId: atlassianArchiveissuesasync
parameters: []
requestBody:
content:
application/json:
example:
jql: project = FOO AND updated < -2y
schema:
$ref: '#/components/schemas/ArchiveIssueAsyncRequest'
description: A JQL query specifying the issues to archive. Note that subtasks can only be archived through their parent issues.
required: true
responses:
'202':
content:
application/json:
example: '"https://your-domain.atlassian.net/rest/api/3/task/1010"'
schema:
type: string
description: Returns the URL to check the status of the submitted request.
'400':
content:
application/json:
example: '{"errorMessages":["Invalid JQL. Bad request."],"errors":{}}'
description: Returned if no issues were archived due to a bad request, for example an invalid JQL query.
'401':
content:
application/json:
example: '{"errorMessages":["User is not logged in."],"errors":{}}'
description: Returned if no issues were archived because the provided authentication credentials are either missing or invalid.
'403':
content:
application/json:
example: '{"errorMessages":["Archiving issues is only available for premium editions of Jira."],"errors":{}}'
description: Returned if no issues were archived because the user lacks the required Jira admin or site admin permissions.
'412':
content:
application/json:
example: '{"errorMessages":["An issue archival task is already running with ID 1010. To start a new one, cancel the task or wait for it to finish."],"errors":{}}'
description: Returned if a request to archive issue(s) is already running.
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Archive Issue S By Jql
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- write:issue:jira
state: Beta
x-experimental: true
x-atlassian-connect-scope: WRITE
put:
deprecated: false
description: 'Enables admins to archive up to 1000 issues in a single request using issue ID/key, returning details of the issue(s) archived in the process and the errors encountered, if any.
**Note that:**
* you can''t archive subtasks directly, only through their parent issues
* you can only archive issues from software, service management, and business projects
**[Permissions](#permissions) required:** Jira admin or site admin: [global permission](https://confluence.atlassian.com/x/x4dKLg)
**License required:** Premium or Enterprise
**Signed-in users only:** This API can''t be accessed anonymously.
'
operationId: atlassianArchiveissues
parameters: []
requestBody:
content:
application/json:
example:
issueIdsOrKeys:
- PR-1
- '1001'
- PROJECT-2
schema:
$ref: '#/components/schemas/IssueArchivalSyncRequest'
description: Contains a list of issue keys or IDs to be archived.
required: true
responses:
'200':
content:
application/json:
example: '{"errors":{"issueIsSubtask":{"count":3,"issueIdsOrKeys":["ST-1","ST-2","ST-3"],"message":"Issue is subtask."},"issuesInArchivedProjects":{"count":2,"issueIdsOrKeys":["AR-1","AR-2"],"message":"Issue exists in archived project."},"issuesInUnlicensedProjects":{"count":3,"issueIdsOrKeys":["UL-1","UL-2","UL-3"],"message":"Issues with these IDs are in unlicensed projects."},"issuesNotFound":{"count":3,"issueIdsOrKeys":["PR-1","PR-2","PR-3"],"message":"Issue not found."}},"numberOfIssuesUpdated":10}'
schema:
$ref: '#/components/schemas/IssueArchivalSyncResponse'
description: Returned if there is at least one valid issue to archive in the request. The return message will include the count of archived issues and subtasks, as well as error details for issues which failed to get archived.
'400':
content:
application/json:
example: '{"errorMessages":["No valid issue to archive or unarchive. Bad request."],"errors":{}}'
description: "Returned if none of the issues in the request can be archived. Possible reasons:\n\n * the issues weren't found\n * the issues are subtasks\n * the issues belong to unlicensed projects\n * the issues belong to archived projects"
'401':
content:
application/json:
example: '{"errorMessages":["User is not logged in."],"errors":{}}'
description: Returned if no issues were archived because the provided authentication credentials are either missing or invalid.
'403':
content:
application/json:
example: '{"errorMessages":["Only admins can archive or unarchive issues. Access denied."],"errors":{}}'
description: Returned if no issues were archived because the user lacks the required Jira admin or site admin permissions.
'412':
content:
application/json:
example: '{"errorMessages":["The number of issues to archive or unarchive exceeds the hard limit of 1000. Precondition failed."],"errors":{}}'
description: Returned if one or more issues were successfully archived, but the operation was incomplete because the number of issue IDs or keys provided exceeds 1000.
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Archive Issue S By Issue Id Key
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- write:issue:jira
state: Beta
x-experimental: true
x-atlassian-connect-scope: WRITE
/rest/api/3/issue/bulk:
post:
deprecated: false
description: Creates upto **50** issues and, where the option to create subtasks is enabled in Jira, subtasks. Transitions may be applied, to move the issues or subtasks to a workflow step other than the default start step, and issue properties set.
The content of each issue or subtask is defined using `update` and `fields`. The fields that can be set in the issue or subtask are determined using the [ Get create issue metadata](#api-rest-api-3-issue-createmeta-get). These are the same fields that appear on the issues' create screens. Note that the `description`, `environment`, and any `textarea` type custom fields (multi-line text fields) take Atlassian Document Format content. Single line custom fields (`textfield`) accept a string and don't handle Atlassian Document Format content.
Creating a subtask differs from creating an issue as follows:
* `issueType` must be set to a subtask issue type (use [ Get create issue metadata](#api-rest-api-3-issue-createmeta-get) to find subtask issue types).
* `parent` the must contain the ID or key of the parent issue.
**[Permissions](#permissions) required:** *Browse projects* and *Create issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project in which each issue or subtask is created.
operationId: atlassianCreateissues
parameters: []
requestBody:
content:
application/json:
example:
issueUpdates:
- fields:
assignee:
id: 5b109f2e9729b51b54dc274d
components:
- id: '10000'
customfield_10000: 09/Jun/19
customfield_20000: 06/Jul/19 3:25 PM
customfield_30000:
- '10000'
- '10002'
customfield_40000:
content:
- content:
- text: Occurs on all orders
type: text
type: paragraph
type: doc
version: 1
customfield_50000:
content:
- content:
- text: Could impact day-to-day work.
type: text
type: paragraph
type: doc
version: 1
customfield_60000: jira-software-users
customfield_70000:
- jira-administrators
- jira-software-users
customfield_80000:
value: red
description:
content:
- content:
- text: Order entry fails when selecting supplier.
type: text
type: paragraph
type: doc
version: 1
duedate: '2011-03-11'
environment:
content:
- content:
- text: UAT
type: text
type: paragraph
type: doc
version: 1
fixVersions:
- id: '10001'
issuetype:
id: '10000'
labels:
- bugfix
- blitz_test
priority:
id: '20000'
project:
id: '10000'
reporter:
id: 5b10a2844c20165700ede21g
security:
id: '10000'
summary: Main order flow broken
timetracking:
originalEstimate: '10'
remainingEstimate: '5'
versions:
- id: '10000'
update:
worklog:
- add:
started: 2019-07-05T11:05:00.000+0000
timeSpent: 60m
- fields:
assignee:
id: 5b109f2e9729b51b54dc274d
components:
- id: '10000'
customfield_10000: 09/Jun/19
customfield_20000: 06/Jul/19 3:25 PM
customfield_30000:
- '10000'
- '10002'
customfield_40000:
content:
- content:
- text: Occurs on all orders
type: text
type: paragraph
type: doc
version: 1
customfield_50000:
content:
- content:
- text: Could impact day-to-day work.
type: text
type: paragraph
type: doc
version: 1
customfield_60000: jira-software-users
customfield_70000:
- jira-administrators
- jira-software-users
customfield_80000:
value: red
description:
content:
- content:
- text: Order remains pending after approved.
type: text
type: paragraph
type: doc
version: 1
duedate: '2019-04-16'
environment:
content:
- content:
- text: UAT
type: text
type: paragraph
type: doc
version: 1
fixVersions:
- id: '10001'
issuetype:
id: '10000'
labels:
- new_release
priority:
id: '20000'
project:
id: '1000'
reporter:
id: 5b10a2844c20165700ede21g
security:
id: '10000'
summary: Order stuck in pending
timetracking:
originalEstimate: '15'
remainingEstimate: '5'
versions:
- id: '10000'
update: {}
schema:
$ref: '#/components/schemas/IssuesUpdateBean'
required: true
responses:
'201':
content:
application/json:
example: '{"issues":[{"id":"10000","key":"ED-24","self":"https://your-domain.atlassian.net/rest/api/3/issue/10000","transition":{"status":200,"errorCollection":{"errorMessages":[],"errors":{}}}},{"id":"10001","key":"ED-25","self":"https://your-domain.atlassian.net/rest/api/3/issue/10001"}],"errors":[]}'
schema:
$ref: '#/components/schemas/CreatedIssues'
description: "Returned if any of the issue or subtask creation requests were successful. A request may be unsuccessful when it:\n\n * is missing required fields.\n * contains invalid field values.\n * contains fields that cannot be set for the issue type.\n * is by a user who does not have the necessary permission.\n * is to create a subtype in a project different that of the parent issue.\n * is for a subtask when the option to create subtasks is disabled.\n * is invalid for any other reason."
'400':
content:
application/json:
example: '{"issues":[],"errors":[{"elementErrors":{"errorMessages":[],"errors":{"issuetype":"The issue type selected is invalid.","project":"Sub-tasks must be created in the same project as the parent."}},"failedElementNumber":0,"status":400},{"elementErrors":{"errorMessages":[],"errors":{"issuetype":"The issue type selected is invalid.","project":"Sub-tasks must be created in the same project as the parent."}},"failedElementNumber":1,"status":400}]}'
schema:
$ref: '#/components/schemas/CreatedIssues'
description: "Returned if all requests are invalid. Requests may be unsuccessful when they:\n\n * are missing required fields.\n * contain invalid field values.\n * contain fields that cannot be set for the issue type.\n * are by a user who does not have the necessary permission.\n * are to create a subtype in a project different that of the parent issue.\n * is for a subtask when the option to create subtasks is disabled.\n * are invalid for any other reason."
'401':
description: Returned if the authentication credentials are incorrect or missing.
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Bulk Create Issue
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- write:issue:jira
- write:comment:jira
- write:comment.property:jira
- write:attachment:jira
- read:issue:jira
state: Beta
x-atlassian-connect-scope: WRITE
/rest/api/3/issue/createmeta:
get:
deprecated: true
description: Returns details of projects, issue types within projects, and, when requested, the create screen fields for each issue type for the user. Use the information to populate the requests in [ Create issue](#api-rest-api-3-issue-post) and [Create issues](#api-rest-api-3-issue-bulk-post).
The request can be restricted to specific projects or issue types using the query parameters. The response will contain information for the valid projects, issue types, or project and issue type combinations requested. Note that invalid project, issue type, or project and issue type combinations do not generate errors.
This operation can be accessed anonymously.
**[Permissions](#permissions) required:** *Create issues* [project permission](https://confluence.atlassian.com/x/yodKLg) in the requested projects.
operationId: atlassianGetcreateissuemeta
parameters:
- description: List of project IDs. This parameter accepts a comma-separated list. Multiple project IDs can also be provided using an ampersand-separated list. For example, `projectIds=10000,10001&projectIds=10020,10021`. This parameter may be provided with `projectKeys`.
in: query
name: projectIds
schema:
items:
type: string
type: array
- description: List of project keys. This parameter accepts a comma-separated list. Multiple project keys can also be provided using an ampersand-separated list. For example, `projectKeys=proj1,proj2&projectKeys=proj3`. This parameter may be provided with `projectIds`.
in: query
name: projectKeys
schema:
items:
type: string
type: array
- description: List of issue type IDs. This parameter accepts a comma-separated list. Multiple issue type IDs can also be provided using an ampersand-separated list. For example, `issuetypeIds=10000,10001&issuetypeIds=10020,10021`. This parameter may be provided with `issuetypeNames`.
in: query
name: issuetypeIds
schema:
items:
type: string
type: array
- description: List of issue type names. This parameter accepts a comma-separated list. Multiple issue type names can also be provided using an ampersand-separated list. For example, `issuetypeNames=name1,name2&issuetypeNames=name3`. This parameter may be provided with `issuetypeIds`.
in: query
name: issuetypeNames
schema:
items:
type: string
type: array
- description: Use [expand](#expansion) to include additional information about issue metadata in the response. This parameter accepts `projects.issuetypes.fields`, which returns information about the fields in the issue creation screen for each issue type. Fields hidden from the screen are not returned. Use the information to populate the `fields` and `update` fields in [Create issue](#api-rest-api-3-issue-post) and [Create issues](#api-rest-api-3-issue-bulk-post).
in: query
name: expand
schema:
type: string
responses:
'200':
content:
application/json:
example: '{"projects":[{"avatarUrls":{"16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000&avatarId=10011","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000&avatarId=10011","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000&avatarId=10011","48x48":"https://your-domain.atlassian.net/secure/projectavatar?pid=10000&avatarId=10011"},"id":"10000","issuetypes":[{"description":"An error in the code","fields":{"issuetype":{"allowedValues":["set"],"autoCompleteUrl":"issuetype","hasDefaultValue":false,"key":"issuetype","name":"Issue Type","required":true}},"iconUrl":"https://your-domain.atlassian.net/images/icons/issuetypes/bug.png","id":"1","name":"Bug","self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","subtask":false}],"key":"ED","name":"Edison Project","self":"https://your-domain.atlassian.net/rest/api/3/project/ED"}]}'
schema:
$ref: '#/components/schemas/IssueCreateMetadata'
description: Returned if the request is successful.
'401':
description: Returned if the authentication credentials are incorrect or missing.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Atlassian Get Create Issue Metadata
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:issue-meta:jira
- read:avatar:jira
- read:field-configuration:jira
state: Beta
x-changes:
- announced: '2023-12-11'
details: https://developer.atlassian.com/cloud/jira/platform/changelog/#CHANGE-1304
effective: '2024-06-03'
type: removed
x-atlassian-connect-scope: READ
/rest/api/3/issue/createmeta/{projectIdOrKey}/issuetypes:
get:
deprecated: false
description: Returns a page of issue type metadata for a specified project. Use the information to populate the requests in [ Create issue](#api-rest-api-3-issue-post) and [Create issues](#api-rest-api-3-issue-bulk-post).
This operation can be accessed anonymously.
**[Permissions](#permissions) required:** *Create issues* [project permission](https://confluence.atlassian.com/x/yodKLg) in the requested projects.
operationId: atlassianGetcreateissuemetaissuetypes
parameters:
- description: The ID or key of the project.
in: path
name: projectIdOrKey
required: true
schema:
type: string
- description: The index of the first item to return in a page of results (page offset).
in: query
name: startAt
schema:
default: 0
format: int32
type: integer
- description: The maximum number of items to return per page.
in: query
name: maxResults
schema:
default: 50
format: int32
maximum: 200
type: integer
responses:
'200':
content:
application/json:
example: '{"issueTypes":[{"description":"An error in the code","iconUrl":"https://your-domain.atlassian.net/images/icons/issuetypes/bug.png","id":"1","name":"Bug","self":"https://your-domain.atlassian.net/rest/api/3/issueType/1","subtask":false}],"maxResults":1,"startAt":0,"total":1}'
schema:
$ref: '#/components/schemas/PageOfCreateMetaIssueTypes'
description: Returned if the request is successful.
'400':
content:
application/json:
example: '{"errorMessages":["Parameter ''maxResults'' must not exceed the limit ''200''"],"errors":{},"httpStatusCode":{"empty":false,"present":true}}'
description: Returned if the request is invalid.
'401':
description: Returned if the authentication credentials are incorrect or missing.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Atlassian Get Create Metadata Issue Types For A Project
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:issue-meta:jira
- read:avatar:jira
- read:field-configuration:jira
state: Beta
x-atlassian-connect-scope: READ
/rest/api/3/issue/createmeta/{projectIdOrKey}/issuetypes/{issueTypeId}:
get:
deprecated: false
description: Returns a page of field metadata for a specified project and issuetype id. Use the information to populate the requests in [ Create issue](#api-rest-api-3-issue-post) and [Create issues](#api-rest-api-3-issue-bulk-post).
This operation can be accessed anonymously.
**[Permissions](#permissions) required:** *Create issues* [project permission](https://confluence.atlassian.com/x/yodKLg) in the requested projects.
operationId: atlassianGetcreateissuemetaissuetypeid
parameters:
- description: The ID or key of the project.
in: path
name: projectIdOrKey
required: true
schema:
type: string
- description: The issuetype ID.
in: path
name: issueTypeId
required: true
schema:
type: string
- description: The index of the first item to return in a page of results (page offset).
in: query
name: startAt
schema:
default: 0
format: int32
type: integer
- description: The maximum number of items to return per page.
in: query
name: maxResults
schema:
default: 50
format: int32
maximum: 200
type: integer
responses:
'200':
content:
application/json:
example: '{"fields":[{"fieldId":"assignee","hasDefaultValue":false,"key":"assignee","name":"Assignee","operations":["set"],"required":true}],"maxResults":1,"startAt":0,"total":1}'
schema:
$ref: '#/components/schemas/PageOfCreateMetaIssueTypeWithField'
description: Returned if the request is successful.
'400':
content:
application/json:
example: '{"errorMessages":["Parameter ''maxResults'' must not exceed the limit ''200''"],"errors":{},"httpStatusCode":{"empty":false,"present":true}}'
description: Returned if the request is invalid.
'401':
description: Returned if the authentication credentials are incorrect or missing.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Atlassian Get Create Field Metadata For A Project And Issue Type Id
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:issue-meta:jira
- read:avatar:jira
- read:field-configuration:jira
state: Beta
x-atlassian-connect-scope: READ
/rest/api/3/issue/unarchive:
put:
deprecated: false
description: 'Enables admins to unarchive up to 1000 issues in a single request using issue ID/key, returning details of the issue(s) unarchived in the process and the errors encountered, if any.
**Note that:**
* you can''t unarchive subtasks directly, only through their parent issues
* you can only unarchive issues from software, service management, and business projects
**[Permissions](#permissions) required:** Jira admin or site admin: [global permission](https://confluence.atlassian.com/x/x4dKLg)
**License required:** Premium or Enterprise
**Signed-in users only:** This API can''t be accessed anonymously.
'
operationId: atlassianUnarchiveissues
parameters: []
requestBody:
content:
application/json:
example:
issueIdsOrKeys:
- PR-1
- '1001'
- PROJECT-2
schema:
$ref: '#/components/schemas/IssueArchivalSyncRequest'
description: Contains a list of issue keys or IDs to be unarchived.
required: true
responses:
'200':
content:
application/json:
example: '{"errors":{"issueIsSubtask":{"count":3,"issueIdsOrKeys":["ST-1","ST-2","ST-3"],"message":"Issue is subtask."},"issuesInArchivedProjects":{"count":2,"issueIdsOrKeys":["AR-1","AR-2"],"message":"Issue exists in archived project."},"issuesNotFound":{"count":3,"issueIdsOrKeys":["PR-1","PR-2","PR-3"],"message":"Issue not found."}},"numberOfIssuesUpdated":10}'
schema:
$ref: '#/components/schemas/IssueArchivalSyncResponse'
description: Returned if there is at least one valid issue to unarchive in the request. It will return the count of unarchived issues, which also includes the count of the subtasks unarchived, and it will show the detailed errors for those issues which are not unarchived.
'400':
content:
application/json:
example: '{"errorMessages":["No valid issue to archive or unarchive. Bad request."],"errors":{}}'
description: "Returned if none of the issues in the request are eligible to be unarchived. Possible reasons:\n\n * the issues weren't found\n * the issues are subtasks\n * the issues belong to archived projects"
'401':
content:
application/json:
example: '{"errorMessages":["User is not logged in."],"errors":{}}'
description: Returned if no issues were unarchived because the provided authentication credentials are either missing or invalid.
'403':
content:
application/json:
example: '{"errorMessages":["Only admins can archive or unarchive issues. Access denied."],"errors":{}}'
description: Returned if no issues were unarchived because the user lacks the required Jira admin or site admin permissions.
'412':
content:
application/json:
example: '{"errorMessages":["The number of issues to archive or unarchive exceeds the hard limit of 1000. Precondition failed."],"errors":{}}'
description: Returned if one or more issues were successfully unarchived, but the operation was incomplete because the number of issue IDs or keys provided exceeds 1000.
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Unarchive Issue S By Issue Keys Id
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- write:issue:jira
state: Beta
x-experimental: true
x-atlassian-connect-scope: WRITE
/rest/api/3/issue/{issueIdOrKey}:
delete:
deprecated: false
description: Deletes an issue.
An issue cannot be deleted if it has one or more subtasks. To delete an issue with subtasks, set `deleteSubtasks`. This causes the issue's subtasks to be deleted with the issue.
This operation can be accessed anonymously.
**[Permissions](#permissions) required:**
* *Browse projects* and *Delete issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project containing the issue.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
operationId: atlassianDeleteissue
parameters:
- description: The ID or key of the issue.
in: path
name: issueIdOrKey
required: true
schema:
type: string
- description: Whether the issue's subtasks are deleted when the issue is deleted.
in: query
name: deleteSubtasks
schema:
default: 'false'
enum:
- 'true'
- 'false'
type: string
responses:
'204':
description: Returned if the request is successful.
'400':
description: Returned if the issue has subtasks and `deleteSubtasks` is not set to *true*.
'401':
description: Returned if the authentication credentials are incorrect.
'403':
description: Returned if the user does not have permission to delete the issue.
'404':
description: Returned if the issue is not found or the user does not have permission to view the issue.
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Delete Issue
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- delete:issue:jira
state: Beta
x-atlassian-connect-scope: DELETE
get:
deprecated: false
description: Returns the details for an issue.
The issue is identified by its ID or key, however, if the identifier doesn't match an issue, a case-insensitive search and check for moved issues is performed. If a matching issue is found its details are returned, a 302 or other redirect is **not** returned. The issue key returned in the response is the key of the issue found.
This operation can be accessed anonymously.
**[Permissions](#permissions) required:**
* *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
operationId: atlassianGetissue
parameters:
- description: The ID or key of the issue.
in: path
name: issueIdOrKey
required: true
schema:
type: string
- description: "A list of fields to return for the issue. This parameter accepts a comma-separated list. Use it to retrieve a subset of fields. Allowed values:\n\n * `*all` Returns all fields.\n * `*navigable` Returns navigable fields.\n * Any issue field, prefixed with a minus to exclude.\n\nExamples:\n\n * `summary,comment` Returns only the summary and comments fields.\n * `-description` Returns all (default) fields except description.\n * `*navigable,-comment` Returns all navigable fields except comment.\n\nThis parameter may be specified multiple times. For example, `fields=field1,field2& fields=field3`.\n\nNote: All fields are returned by default. This differs from [Search for issues using JQL (GET)](#api-rest-api-3-search-get) and [Search for issues using JQL (POST)](#api-rest-api-3-search-post) where the default is all navigable fields."
in: query
name: fields
schema:
items:
default: '*all'
type: string
type: array
- description: Whether fields in `fields` are referenced by keys rather than IDs. This parameter is useful where fields have been added by a connect app and a field's key may differ from its ID.
in: query
name: fieldsByKeys
schema:
default: false
type: boolean
- description: "Use [expand](#expansion) to include additional information about the issues in the response. This parameter accepts a comma-separated list. Expand options include:\n\n * `renderedFields` Returns field values rendered in HTML format.\n * `names` Returns the display name of each field.\n * `schema` Returns the schema describing a field type.\n * `transitions` Returns all possible transitions for the issue.\n * `editmeta` Returns information about how each field can be edited.\n * `changelog` Returns a list of recent updates to an issue, sorted by date, starting from the most recent.\n * `versionedRepresentations` Returns a JSON array for each version of a field's value, with the highest number representing the most recent version. Note: When included in the request, the `fields` parameter is ignored."
in: query
name: expand
schema:
type: string
- description: "A list of issue properties to return for the issue. This parameter accepts a comma-separated list. Allowed values:\n\n * `*all` Returns all issue properties.\n * Any issue property key, prefixed with a minus to exclude.\n\nExamples:\n\n * `*all` Returns all properties.\n * `*all,-prop1` Returns all properties except `prop1`.\n * `prop1,prop2` Returns `prop1` and `prop2` properties.\n\nThis parameter may be specified multiple times. For example, `properties=prop1,prop2& properties=prop3`."
in: query
name: properties
schema:
items:
default: 'null'
type: string
type: array
- description: Whether the project in which the issue is created is added to the user's **Recently viewed** project list, as shown under **Projects** in Jira. This also populates the [JQL issues search](#api-rest-api-3-search-get) `lastViewed` field.
in: query
name: updateHistory
schema:
default: false
type: boolean
responses:
'200':
content:
application/json:
example: '{"fields":{"watcher":{"isWatching":false,"self":"https://your-domain.atlassian.net/rest/api/3/issue/EX-1/watchers","watchCount":1,"watchers":[{"accountId":"5b10a2844c20165700ede21g","active":false,"displayName":"Mia Krystof","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g"}]},"attachment":[{"author":{"accountId":"5b10a2844c20165700ede21g","accountType":"atlassian","active":false,"avatarUrls":{"16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32","48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48"},"displayName":"Mia Krystof","key":"","name":"","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g"},"content":"https://your-domain.atlassian.net/jira/rest/api/3/attachment/content/10000","created":"2022-10-06T07:32:47.000+0000","filename":"picture.jpg","id":10000,"mimeType":"image/jpeg","self":"https://your-domain.atlassian.net/rest/api/3/attachments/10000","size":23123,"thumbnail":"https://your-domain.atlassian.net/jira/rest/api/3/attachment/thumbnail/10000"}],"sub-tasks":[{"id":"10000","outwardIssue":{"fields":{"status":{"iconUrl":"https://your-domain.atlassian.net/images/icons/statuses/open.png","name":"Open"}},"id":"10003","key":"ED-2","self":"https://your-domain.atlassian.net/rest/api/3/issue/ED-2"},"type":{"id":"10000","inward":"Parent","name":"","outward":"Sub-task"}}],"description":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Main order flow broken"}]}]},"project":{"avatarUrls":{"16x16":"https://your-domain.atlassian.net/secure/projectavatar?size=xsmall&pid=10000","24x24":"https://your-domain.atlassian.net/secure/projectavatar?size=small&pid=10000","32x32":"https://your-domain.atlassian.net/secure/projectavatar?size=medium&pid=10000","48x48":"https://your-domain.atlassian.net/secure/projectavatar?size=large&pid=10000"},"id":"10000","insight":{"lastIssueUpdateTime":"2021-04-22T05:37:05.000+0000","totalIssueCount":100},"key":"EX","name":"Example","projectCategory":{"description":"First Project Category","id":"10000","name":"FIRST","self":"https://your-domain.atlassian.net/rest/api/3/projectCategory/10000"},"self":"https://your-domain.atlassian.net/rest/api/3/project/EX","simplified":false,"style":"classic"},"comment":[{"author":{"accountId":"5b10a2844c20165700ede21g","active":false,"displayName":"Mia Krystof","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g"},"body":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque eget venenatis elit. Duis eu justo eget augue iaculis fermentum. Sed semper quam laoreet nisi egestas at posuere augue semper."}]}]},"created":"2021-01-17T12:34:00.000+0000","id":"10000","self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/comment/10000","updateAuthor":{"accountId":"5b10a2844c20165700ede21g","active":false,"displayName":"Mia Krystof","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g"},"updated":"2021-01-18T23:45:00.000+0000","visibility":{"identifier":"Administrators","type":"role","value":"Administrators"}}],"issuelinks":[{"id":"10001","outwardIssue":{"fields":{"status":{"iconUrl":"https://your-domain.atlassian.net/images/icons/statuses/open.png","name":"Open"}},"id":"10004L","key":"PR-2","self":"https://your-domain.atlassian.net/rest/api/3/issue/PR-2"},"type":{"id":"10000","inward":"depends on","name":"Dependent","outward":"is depended by"}},{"id":"10002","inwardIssue":{"fields":{"status":{"iconUrl":"https://your-domain.atlassian.net/images/icons/statuses/open.png","name":"Open"}},"id":"10004","key":"PR-3","self":"https://your-domain.atlassian.net/rest/api/3/issue/PR-3"},"type":{"id":"10000","inward":"depends on","name":"Dependent","outward":"is depended by"}}],"worklog":[{"author":{"accountId":"5b10a2844c20165700ede21g","active":false,"displayName":"Mia Krystof","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g"},"comment":{"type":"doc","version":1,"content":[{"type":"paragraph","content":[{"type":"text","text":"I did some work here."}]}]},"id":"100028","issueId":"10002","self":"https://your-domain.atlassian.net/rest/api/3/issue/10010/worklog/10000","started":"2021-01-17T12:34:00.000+0000","timeSpent":"3h 20m","timeSpentSeconds":12000,"updateAuthor":{"accountId":"5b10a2844c20165700ede21g","active":false,"displayName":"Mia Krystof","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g"},"updated":"2021-01-18T23:45:00.000+0000","visibility":{"identifier":"276f955c-63d7-42c8-9520-92d01dca0625","type":"group","value":"jira-developers"}}],"updated":1,"timetracking":{"originalEstimate":"10m","originalEstimateSeconds":600,"remainingEstimate":"3m","remainingEstimateSeconds":200,"timeSpent":"6m","timeSpentSeconds":400}},"id":"10002","key":"ED-1","self":"https://your-domain.atlassian.net/rest/api/3/issue/10002"}'
schema:
$ref: '#/components/schemas/IssueBean'
description: Returned if the request is successful.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'404':
description: Returned if the issue is not found or the user does not have permission to view it.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Atlassian Get Issue
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:issue-meta:jira
- read:issue-security-level:jira
- read:issue.vote:jira
- read:issue.changelog:jira
- read:avatar:jira
- read:issue:jira
- read:status:jira
- read:user:jira
- read:field-configuration:jira
state: Beta
x-atlassian-connect-scope: READ
put:
deprecated: false
description: Edits an issue. A transition may be applied and issue properties updated as part of the edit.
The edits to the issue's fields are defined using `update` and `fields`. The fields that can be edited are determined using [ Get edit issue metadata](#api-rest-api-3-issue-issueIdOrKey-editmeta-get).
The parent field may be set by key or ID. For standard issue types, the parent may be removed by setting `update.parent.set.none` to *true*. Note that the `description`, `environment`, and any `textarea` type custom fields (multi-line text fields) take Atlassian Document Format content. Single line custom fields (`textfield`) accept a string and don't handle Atlassian Document Format content.
Connect apps having an app user with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), can override the screen security configuration using `overrideScreenSecurity` and `overrideEditableFlag`.
This operation can be accessed anonymously.
**[Permissions](#permissions) required:**
* *Browse projects* and *Edit issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
operationId: atlassianEditissue
parameters:
- description: The ID or key of the issue.
in: path
name: issueIdOrKey
required: true
schema:
type: string
- description: Whether a notification email about the issue update is sent to all watchers. To disable the notification, administer Jira or administer project permissions are required. If the user doesn't have the necessary permission the request is ignored.
in: query
name: notifyUsers
schema:
default: true
type: boolean
- description: Whether screen security is overridden to enable hidden fields to be edited. Available to Connect app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).
in: query
name: overrideScreenSecurity
schema:
default: false
type: boolean
- description: Whether screen security is overridden to enable uneditable fields to be edited. Available to Connect app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).
in: query
name: overrideEditableFlag
schema:
default: false
type: boolean
- description: Whether the response should contain the issue with fields edited in this request. The returned issue will have the same format as in the [Get issue API](#api-rest-api-3-issue-issueidorkey-get).
in: query
name: returnIssue
schema:
default: false
type: boolean
- description: The Get issue API expand parameter to use in the response if the `returnIssue` parameter is `true`.
in: query
name: expand
schema:
default: ''
type: string
requestBody:
content:
application/json:
example:
fields:
customfield_10000:
content:
- content:
- text: Investigation underway
type: text
type: paragraph
type: doc
version: 1
customfield_10010: 1
summary: Completed orders still displaying in pending
historyMetadata:
activityDescription: Complete order processing
actor:
avatarUrl: http://mysystem/avatar/tony.jpg
displayName: Tony
id: tony
type: mysystem-user
url: http://mysystem/users/tony
cause:
id: myevent
type: mysystem-event
description: From the order testing process
extraData:
Iteration: 10a
Step: '4'
generator:
id: mysystem-1
type: mysystem-application
type: myplugin:type
properties:
- key: key1
value: Order number 10784
- key: key2
value: Order number 10923
update:
components:
- set: ''
labels:
- add: triaged
- remove: blocker
summary:
- set: Bug in business logic
timetracking:
- edit:
originalEstimate: 1w 1d
remainingEstimate: 4d
schema:
$ref: '#/components/schemas/IssueUpdateDetails'
required: true
responses:
'200':
content:
application/json:
schema: {}
description: Returned if the request is successful and the `returnIssue` parameter is `true`
'204':
content:
application/json:
schema: {}
description: Returned if the request is successful.
'400':
description: "Returned if:\n\n * the request body is missing.\n * the user does not have the necessary permission to edit one or more fields.\n * the request includes one or more fields that are not found or are not associated with the issue's edit screen.\n * the request includes an invalid transition."
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the user uses `overrideScreenSecurity` or `overrideEditableFlag` but doesn't have the necessary permission.
'404':
description: Returned if the issue is not found or the user does not have permission to view it.
'409':
description: Returned if the issue could not be updated due to a conflicting update. (refer to the [changelog](https://developer.atlassian.com/changelog/#CHANGE-1364) *for more details.*
'422':
description: Returned if a configuration problem prevents the issue being updated. (refer to the [changelog](https://developer.atlassian.com/changelog/#CHANGE-1364) *for more details.*
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Edit Issue
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- write:issue:jira
state: Beta
x-atlassian-connect-scope: WRITE
/rest/api/3/issue/{issueIdOrKey}/assignee:
put:
deprecated: false
description: Assigns an issue to a user. Use this operation when the calling user does not have the *Edit Issues* permission but has the *Assign issue* permission for the project that the issue is in.
If `name` or `accountId` is set to:
* `"-1"`, the issue is assigned to the default assignee for the project.
* `null`, the issue is set to unassigned.
This operation can be accessed anonymously.
**[Permissions](#permissions) required:**
* *Browse Projects* and *Assign Issues* [ project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
operationId: atlassianAssignissue
parameters:
- description: The ID or key of the issue to be assigned.
in: path
name: issueIdOrKey
required: true
schema:
type: string
requestBody:
content:
application/json:
example:
accountId: 5b10ac8d82e05b22cc7d4ef5
schema:
$ref: '#/components/schemas/User'
description: The request object with the user that the issue is assigned to.
required: true
responses:
'204':
content:
application/json:
schema: {}
description: Returned if the request is successful.
'400':
description: "Returned if:\n\n * the user is not found.\n * `name`, `key`, or `accountId` is missing.\n * more than one of `name`, `key`, and `accountId` are provided."
'403':
description: Returned if the user does not have the necessary permission.
'404':
description: Returned if the issue is not found.
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Assign Issue
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- write:issue:jira
state: Beta
x-atlassian-connect-scope: WRITE
/rest/api/3/issue/{issueIdOrKey}/changelog:
get:
deprecated: false
description: Returns a [paginated](#pagination) list of all changelogs for an issue sorted by date, starting from the oldest.
This operation can be accessed anonymously.
**[Permissions](#permissions) required:**
* *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
operationId: atlassianGetchangelogs
parameters:
- description: The ID or key of the issue.
in: path
name: issueIdOrKey
required: true
schema:
type: string
- description: The index of the first item to return in a page of results (page offset).
in: query
name: startAt
schema:
default: 0
format: int32
type: integer
- description: The maximum number of items to return per page.
in: query
name: maxResults
schema:
default: 100
format: int32
type: integer
responses:
'200':
content:
application/json:
example: '{"isLast":false,"maxResults":2,"nextPage":"https://your-domain.atlassian.net/rest/api/3/issue/TT-1/changelog?&startAt=4&maxResults=2","self":"https://your-domain.atlassian.net/rest/api/3/issue/TT-1/changelog?startAt=2&maxResults=2","startAt":2,"total":5,"values":[{"author":{"accountId":"5b10a2844c20165700ede21g","active":true,"avatarUrls":{"16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32","48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48"},"displayName":"Mia Krystof","emailAddress":"mia@example.com","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","timeZone":"Australia/Sydney"},"created":"1970-01-18T06:27:50.429+0000","id":"10001","items":[{"field":"fields","fieldtype":"jira","fieldId":"fieldId","from":null,"fromString":"","to":null,"toString":"label-1"}]},{"author":{"accountId":"5b10a2844c20165700ede21g","active":true,"avatarUrls":{"16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32","48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48"},"displayName":"Mia Krystof","emailAddress":"mia@example.com","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","timeZone":"Australia/Sydney"},"created":"1970-01-18T06:27:51.429+0000","id":"10002","items":[{"field":"fields","fieldtype":"jira","fieldId":"fieldId","from":null,"fromString":"label-1","to":null,"toString":"label-1 label-2"}]}]}'
schema:
$ref: '#/components/schemas/PageBeanChangelog'
description: Returned if the request is successful.
'404':
description: Returned if the issue is not found or the user does not have permission to view it.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Atlassian Get Changelogs
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:issue-meta:jira
- read:avatar:jira
- read:issue.changelog:jira
state: Beta
x-atlassian-connect-scope: READ
/rest/api/3/issue/{issueIdOrKey}/changelog/list:
post:
deprecated: false
description: Returns changelogs for an issue specified by a list of changelog IDs.
This operation can be accessed anonymously.
**[Permissions](#permissions) required:**
* *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
operationId: atlassianGetchangelogsbyids
parameters:
- description: The ID or key of the issue.
in: path
name: issueIdOrKey
required: true
schema:
type: string
requestBody:
content:
application/json:
example:
changelogIds:
- 10001
- 10002
schema:
$ref: '#/components/schemas/IssueChangelogIds'
required: true
responses:
'200':
content:
application/json:
example: '{"histories":[{"author":{"accountId":"5b10a2844c20165700ede21g","active":true,"avatarUrls":{"16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32","48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48"},"displayName":"Mia Krystof","emailAddress":"mia@example.com","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","timeZone":"Australia/Sydney"},"created":"1970-01-18T06:27:50.429+0000","id":"10001","items":[{"field":"fields","fieldtype":"jira","fieldId":"fieldId","from":null,"fromString":"","to":null,"toString":"label-1"}]},{"author":{"accountId":"5b10a2844c20165700ede21g","active":true,"avatarUrls":{"16x16":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=16&s=16","24x24":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=24&s=24","32x32":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=32&s=32","48x48":"https://avatar-management--avatars.server-location.prod.public.atl-paas.net/initials/MK-5.png?size=48&s=48"},"displayName":"Mia Krystof","emailAddress":"mia@example.com","self":"https://your-domain.atlassian.net/rest/api/3/user?accountId=5b10a2844c20165700ede21g","timeZone":"Australia/Sydney"},"created":"1970-01-18T06:27:51.429+0000","id":"10002","items":[{"field":"fields","fieldtype":"jira","fieldId":"fieldId","from":null,"fromString":"label-1","to":null,"toString":"label-1 label-2"}]}],"maxResults":2,"startAt":0,"total":2}'
schema:
$ref: '#/components/schemas/PageOfChangelogs'
description: Returned if the request is successful.
'400':
description: Returned if the request is not valid.
'404':
description: Returned if the issue is not found or the user does not have the necessary permission.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Atlassian Get Changelogs By Ids
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:issue-meta:jira
- read:avatar:jira
- read:issue.changelog:jira
state: Beta
x-atlassian-connect-scope: WRITE
/rest/api/3/issue/{issueIdOrKey}/editmeta:
get:
deprecated: false
description: 'Returns the edit screen fields for an issue that are visible to and editable by the user. Use the information to populate the requests in [Edit issue](#api-rest-api-3-issue-issueIdOrKey-put).
This endpoint will check for these conditions:
1. Field is available on a field screen - through screen, screen scheme, issue type screen scheme, and issue type scheme configuration. `overrideScreenSecurity=true` skips this condition.
2. Field is visible in the [field configuration](https://support.atlassian.com/jira-cloud-administration/docs/change-a-field-configuration/). `overrideScreenSecurity=true` skips this condition.
3. Field is shown on the issue: each field has different conditions here. For example: Attachment field only shows if attachments are enabled. Assignee only shows if user has permissions to assign the issue.
4. If a field is custom then it must have valid custom field context, applicable for its project and issue type. All system fields are assumed to have context in all projects and all issue types.
5. Issue has a project, issue type, and status defined.
6. Issue is assigned to a valid workflow, and the current status has assigned a workflow step. `overrideEditableFlag=true` skips this condition.
7. The current workflow step is editable. This is true by default, but [can be disabled by setting](https://support.atlassian.com/jira-cloud-administration/docs/use-workflow-properties/) the `jira.issue.editable` property to `false`. `overrideEditableFlag=true` skips this condition.
8. User has [Edit issues permission](https://support.atlassian.com/jira-cloud-administration/docs/permissions-for-company-managed-projects/).
9. Workflow permissions allow editing a field. This is true by default but [can be modified](https://support.atlassian.com/jira-cloud-administration/docs/use-workflow-properties/) using `jira.permission.*` workflow properties.
Fields hidden using [Issue layout settings page](https://support.atlassian.com/jira-software-cloud/docs/configure-field-layout-in-the-issue-view/) remain editable.
Connect apps having an app user with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg), can return additional details using:
* `overrideScreenSecurity` When this flag is `true`, then this endpoint skips checking if fields are available through screens, and field configuration (conditions 1. and 2. from the list above).
* `overrideEditableFlag` When this flag is `true`, then this endpoint skips checking if workflow is present and if the current step is editable (conditions 6. and 7. from the list above).
This operation can be accessed anonymously.
**[Permissions](#permissions) required:**
* *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
Note: For any fields to be editable the user must have the *Edit issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the issue.'
operationId: atlassianGeteditissuemeta
parameters:
- description: The ID or key of the issue.
in: path
name: issueIdOrKey
required: true
schema:
type: string
- description: Whether hidden fields are returned. Available to Connect app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).
in: query
name: overrideScreenSecurity
schema:
default: false
type: boolean
- description: Whether non-editable fields are returned. Available to Connect app users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg) and Forge apps acting on behalf of users with *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).
in: query
name: overrideEditableFlag
schema:
default: false
type: boolean
responses:
'200':
content:
application/json:
example: '{"fields":{"summary":{"allowedValues":["red","blue"],"defaultValue":"red","hasDefaultValue":false,"key":"field_key","name":"My Multi Select","operations":["set","add"],"required":false,"schema":{"custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiselect","customId":10001,"items":"option","type":"array"}}}}'
schema:
$ref: '#/components/schemas/IssueUpdateMetadata'
description: Returned if the request is successful.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the user uses an override parameter but doesn't have permission to do so.
'404':
description: Returned if the issue is not found or the user does not have permission to view it.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Atlassian Get Edit Issue Metadata
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:issue-meta:jira
- read:field-configuration:jira
state: Beta
x-atlassian-connect-scope: READ
/rest/api/3/issue/{issueIdOrKey}/notify:
post:
deprecated: false
description: Creates an email notification for an issue and adds it to the mail queue.
**[Permissions](#permissions) required:**
* *Browse Projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
operationId: atlassianNotify
parameters:
- description: ID or key of the issue that the notification is sent for.
in: path
name: issueIdOrKey
required: true
schema:
type: string
requestBody:
content:
application/json:
example:
htmlBody: The latest test results for this ticket are now available.
restrict:
groupIds: []
groups:
- name: notification-group
permissions:
- key: BROWSE
subject: Latest test results
textBody: The latest test results for this ticket are now available.
to:
assignee: false
groupIds: []
groups:
- name: notification-group
reporter: false
users:
- accountId: 5b10a2844c20165700ede21g
active: false
voters: true
watchers: true
schema:
$ref: '#/components/schemas/Notification'
description: The request object for the notification and recipients.
required: true
responses:
'204':
content:
application/json:
schema: {}
description: Returned if the email is queued for sending.
'400':
description: "Returned if:\n\n * the recipient is the same as the calling user.\n * the recipient is invalid. For example, the recipient is set to the assignee, but the issue is unassigned.\n * the request is invalid. For example, required fields are missing or have invalid values."
'403':
description: "Returned if:\n\n * outgoing emails are disabled.\n * no SMTP server is configured."
'404':
description: Returned if the issue is not found.
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Send Notification For Issue
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- send:notification:jira
state: Beta
x-atlassian-connect-scope: WRITE
/rest/api/3/issue/{issueIdOrKey}/transitions:
get:
deprecated: false
description: 'Returns either all transitions or a transition that can be performed by the user on an issue, based on the issue''s status.
Note, if a request is made for a transition that does not exist or cannot be performed on the issue, given its status, the response will return any empty transitions list.
This operation can be accessed anonymously.
**[Permissions](#permissions) required: A list or transition is returned only when the user has:**
* *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
However, if the user does not have the *Transition issues* [ project permission](https://confluence.atlassian.com/x/yodKLg) the response will not list any transitions.'
operationId: atlassianGettransitions
parameters:
- description: The ID or key of the issue.
in: path
name: issueIdOrKey
required: true
schema:
type: string
- description: Use [expand](#expansion) to include additional information about transitions in the response. This parameter accepts `transitions.fields`, which returns information about the fields in the transition screen for each transition. Fields hidden from the screen are not returned. Use this information to populate the `fields` and `update` fields in [Transition issue](#api-rest-api-3-issue-issueIdOrKey-transitions-post).
in: query
name: expand
schema:
type: string
- description: The ID of the transition.
in: query
name: transitionId
schema:
type: string
- description: Whether transitions with the condition *Hide From User Condition* are included in the response.
in: query
name: skipRemoteOnlyCondition
schema:
default: false
type: boolean
- description: Whether details of transitions that fail a condition are included in the response
in: query
name: includeUnavailableTransitions
schema:
default: false
type: boolean
- description: Whether the transitions are sorted by ops-bar sequence value first then category order (Todo, In Progress, Done) or only by ops-bar sequence value.
in: query
name: sortByOpsBarAndStatus
schema:
default: false
type: boolean
responses:
'200':
content:
application/json:
example: '{"transitions":[{"fields":{"summary":{"allowedValues":["red","blue"],"defaultValue":"red","hasDefaultValue":false,"key":"field_key","name":"My Multi Select","operations":["set","add"],"required":false,"schema":{"custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiselect","customId":10001,"items":"option","type":"array"}}},"hasScreen":false,"id":"2","isAvailable":true,"isConditional":false,"isGlobal":false,"isInitial":false,"name":"Close Issue","to":{"description":"The issue is currently being worked on.","iconUrl":"https://your-domain.atlassian.net/images/icons/progress.gif","id":"10000","name":"In Progress","self":"https://your-domain.atlassian.net/rest/api/3/status/10000","statusCategory":{"colorName":"yellow","id":1,"key":"in-flight","name":"In Progress","self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/1"}}},{"fields":{"summary":{"allowedValues":["red","blue"],"defaultValue":"red","hasDefaultValue":false,"key":"field_key","name":"My Multi Select","operations":["set","add"],"required":false,"schema":{"custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiselect","customId":10001,"items":"option","type":"array"}},"colour":{"allowedValues":["red","blue"],"defaultValue":"red","hasDefaultValue":false,"key":"field_key","name":"My Multi Select","operations":["set","add"],"required":false,"schema":{"custom":"com.atlassian.jira.plugin.system.customfieldtypes:multiselect","customId":10001,"items":"option","type":"array"}}},"hasScreen":true,"id":"711","name":"QA Review","to":{"description":"The issue is closed.","iconUrl":"https://your-domain.atlassian.net/images/icons/closed.gif","id":"5","name":"Closed","self":"https://your-domain.atlassian.net/rest/api/3/status/5","statusCategory":{"colorName":"green","id":9,"key":"completed","self":"https://your-domain.atlassian.net/rest/api/3/statuscategory/9"}}}]}'
schema:
$ref: '#/components/schemas/Transitions'
description: Returned if the request is successful.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'404':
description: Returned if the issue is not found or the user does not have permission to view it.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
- {}
summary: Atlassian Get Transitions
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:issue.transition:jira
- read:status:jira
- read:field-configuration:jira
state: Beta
x-atlassian-connect-scope: READ
post:
deprecated: false
description: Performs an issue transition and, if the transition has a screen, updates the fields from the transition screen.
sortByCategory To update the fields on the transition screen, specify the fields in the `fields` or `update` parameters in the request body. Get details about the fields using [ Get transitions](#api-rest-api-3-issue-issueIdOrKey-transitions-get) with the `transitions.fields` expand.
This operation can be accessed anonymously.
**[Permissions](#permissions) required:**
* *Browse projects* and *Transition issues* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project that the issue is in.
* If [issue-level security](https://confluence.atlassian.com/x/J4lKLg) is configured, issue-level security permission to view the issue.
operationId: atlassianDotransition
parameters:
- description: The ID or key of the issue.
in: path
name: issueIdOrKey
required: true
schema:
type: string
requestBody:
content:
application/json:
example:
fields:
assignee:
name: bob
resolution:
name: Fixed
historyMetadata:
activityDescription: Complete order processing
actor:
avatarUrl: http://mysystem/avatar/tony.jpg
displayName: Tony
id: tony
type: mysystem-user
url: http://mysystem/users/tony
cause:
id: myevent
type: mysystem-event
description: From the order testing process
extraData:
Iteration: 10a
Step: '4'
generator:
id: mysystem-1
type: mysystem-application
type: myplugin:type
transition:
id: '5'
update:
comment:
- add:
body:
content:
- content:
- text: Bug has been fixed
type: text
type: paragraph
type: doc
version: 1
schema:
$ref: '#/components/schemas/IssueUpdateDetails'
required: true
responses:
'204':
content:
application/json:
schema: {}
description: Returned if the request is successful.
'400':
description: "Returned if:\n\n * no transition is specified.\n * the user does not have permission to transition the issue.\n * a field that isn't included on the transition screen is defined in `fields` or `update`.\n * a field is specified in both `fields` and `update`.\n * the request is invalid for any other reason."
'401':
description: Returned if the authentication credentials are incorrect or missing.
'404':
description: Returned if the issue is not found or the user does not have permission to view it.
'409':
description: Returned if the issue could not be updated due to a conflicting update. (refer to the [changelog](https://developer.atlassian.com/changelog/#CHANGE-1364) *for more details.*
'422':
description: Returned if a configuration problem prevents the creation of the issue. (refer to the [changelog](https://developer.atlassian.com/changelog/#CHANGE-1364) *for more details.*
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Transition Issue
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- write:issue:jira
- write:issue.property:jira
state: Beta
x-atlassian-connect-scope: WRITE
/rest/api/3/issues/archive/export:
put:
deprecated: false
description: 'Enables admins to retrieve details of all archived issues. Upon a successful request, the admin who submitted it will receive an email with a link to download a CSV file with the issue details.
Note that this API only exports the values of system fields and archival-specific fields (`ArchivedBy` and `ArchivedDate`). Custom fields aren''t supported.
**[Permissions](#permissions) required:** Jira admin or site admin: [global permission](https://confluence.atlassian.com/x/x4dKLg)
**License required:** Premium or Enterprise
**Signed-in users only:** This API can''t be accessed anonymously.
**Rate limiting:** Only a single request can be active at any given time.
'
operationId: atlassianExportarchivedissues
parameters: []
requestBody:
content:
application/json:
example:
archivedBy:
- uuid-rep-001
- uuid-rep-002
archivedDate:
dateAfter: '2023-01-01'
dateBefore: '2023-01-12'
archivedDateRange:
dateAfter: '2023-01-01'
dateBefore: '2023-01-12'
issueTypes:
- '10001'
- '10002'
projects:
- FOO
- BAR
reporters:
- uuid-rep-001
- uuid-rep-002
schema:
$ref: '#/components/schemas/ArchivedIssuesFilterRequest'
description: You can filter the issues in your request by the `projects`, `archivedBy`, `archivedDate`, `issueTypes`, and `reporters` fields. All filters are optional. If you don't provide any filters, you'll get a list of up to one million archived issues.
required: true
responses:
'202':
content:
application/json:
example: '{"payload":"{projects=[FOO, BAR], reporters=[uuid-rep-001, uuid-rep-002], issueTypes=[10001, 10002], archivedDate={dateAfterInstant=2023-01-01, dateBeforeInstant=2023-01-12}, archivedBy=[uuid-rep-001, uuid-rep-002]}","progress":0,"status":"ENQUEUED","submittedTime":1623230887000,"taskId":"10990"}'
schema:
$ref: '#/components/schemas/ExportArchivedIssuesTaskProgressResponse'
description: Returns the details of your export task. You can use the [get task](https://developer.atlassian.com/cloud/jira/platform/rest/v3/api-group-tasks/#api-rest-api-3-task-taskid-get) API to view the progress of your request.
'400':
content:
application/json:
example: '["Your filter contains invalid values {errorMessage}"]'
description: "Returned when:\n\n * The request is invalid, or the filters provided are incorrect\n * You requested too many issues for export. The limit is one million issues per request"
'401':
content:
application/json:
example: '{"errorMessages":["User is not logged in."],"errors":{}}'
description: Returned if no issues were unarchived because the provided authentication credentials are either missing or invalid.
'403':
content:
application/json:
example: '{"errorMessages":["User is not an admin."],"errors":{}}'
description: Returned if no issues were unarchived because the user lacks the required Jira admin or site admin permissions.
'412':
content:
application/json:
example: '{"errorMessages":["An issue archival task is already running with ID 1010. To start a new one, cancel the task or wait for it to finish."],"errors":{}}'
description: Returned if a request to export archived issues is already running.
security:
- basicAuth: []
- OAuth2:
- read:jira-work
summary: Atlassian Export Archived Issue S
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- read:jira-work
state: Current
- scheme: OAuth2
scopes:
- read:issue:jira
state: Beta
x-experimental: true
x-atlassian-connect-scope: READ
/rest/api/3/events:
get:
deprecated: false
description: Returns all issue events.
**[Permissions](#permissions) required:** *Administer Jira* [global permission](https://confluence.atlassian.com/x/x4dKLg).
operationId: atlassianGetevents
parameters: []
responses:
'200':
content:
application/json:
example: '[{"id":1,"name":"Issue Created"},{"id":2,"name":"Issue Updated"}]'
schema:
items:
$ref: '#/components/schemas/IssueEvent'
type: array
description: Returned if the request is successful.
'401':
description: Returned if the authentication credentials are incorrect or missing.
'403':
description: Returned if the user does not have permission to complete this request.
security:
- basicAuth: []
- OAuth2:
- manage:jira-configuration
summary: Atlassian Get Events
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: true
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- manage:jira-configuration
state: Current
- scheme: OAuth2
scopes:
- read:issue-event:jira
state: Beta
x-experimental: true
x-atlassian-connect-scope: ADMIN
/rest/api/3/issue:
post:
deprecated: false
description: Creates an issue or, where the option to create subtasks is enabled in Jira, a subtask. A transition may be applied, to move the issue or subtask to a workflow step other than the default start step, and issue properties set.
The content of the issue or subtask is defined using `update` and `fields`. The fields that can be set in the issue or subtask are determined using the [ Get create issue metadata](#api-rest-api-3-issue-createmeta-get). These are the same fields that appear on the issue's create screen. Note that the `description`, `environment`, and any `textarea` type custom fields (multi-line text fields) take Atlassian Document Format content. Single line custom fields (`textfield`) accept a string and don't handle Atlassian Document Format content.
Creating a subtask differs from creating an issue as follows:
* `issueType` must be set to a subtask issue type (use [ Get create issue metadata](#api-rest-api-3-issue-createmeta-get) to find subtask issue types).
* `parent` must contain the ID or key of the parent issue.
In a next-gen project any issue may be made a child providing that the parent and child are members of the same project.
**[Permissions](#permissions) required:** *Browse projects* and *Create issues* [project permissions](https://confluence.atlassian.com/x/yodKLg) for the project in which the issue or subtask is created.
operationId: atlassianCreateissue
parameters:
- description: Whether the project in which the issue is created is added to the user's **Recently viewed** project list, as shown under **Projects** in Jira. When provided, the issue type and request type are added to the user's history for a project. These values are then used to provide defaults on the issue create screen.
in: query
name: updateHistory
schema:
default: false
type: boolean
requestBody:
content:
application/json:
example:
fields:
assignee:
id: 5b109f2e9729b51b54dc274d
components:
- id: '10000'
customfield_10000: 09/Jun/19
customfield_20000: 06/Jul/19 3:25 PM
customfield_30000:
- '10000'
- '10002'
customfield_40000:
content:
- content:
- text: Occurs on all orders
type: text
type: paragraph
type: doc
version: 1
customfield_50000:
content:
- content:
- text: Could impact day-to-day work.
type: text
type: paragraph
type: doc
version: 1
customfield_60000: jira-software-users
customfield_70000:
- jira-administrators
- jira-software-users
customfield_80000:
value: red
description:
content:
- content:
- text: Order entry fails when selecting supplier.
type: text
type: paragraph
type: doc
version: 1
duedate: '2019-05-11'
environment:
content:
- content:
- text: UAT
type: text
type: paragraph
type: doc
version: 1
fixVersions:
- id: '10001'
issuetype:
id: '10000'
labels:
- bugfix
- blitz_test
parent:
key: PROJ-123
priority:
id: '20000'
project:
id: '10000'
reporter:
id: 5b10a2844c20165700ede21g
security:
id: '10000'
summary: Main order flow broken
timetracking:
originalEstimate: '10'
remainingEstimate: '5'
versions:
- id: '10000'
update: {}
schema:
$ref: '#/components/schemas/IssueUpdateDetails'
required: true
responses:
'201':
content:
application/json:
example: '{"id":"10000","key":"ED-24","self":"https://your-domain.atlassian.net/rest/api/3/issue/10000","transition":{"status":200,"errorCollection":{"errorMessages":[],"errors":{}}}}'
schema:
$ref: '#/components/schemas/CreatedIssue'
description: Returned if the request is successful.
'400':
content:
application/json:
example: '{"errorMessages":["Field ''priority'' is required"],"errors":{}}'
schema:
$ref: '#/components/schemas/ErrorCollection'
description: "Returned if the request:\n\n * is missing required fields.\n * contains invalid field values.\n * contains fields that cannot be set for the issue type.\n * is by a user who does not have the necessary permission.\n * is to create a subtype in a project different that of the parent issue.\n * is for a subtask when the option to create subtasks is disabled.\n * is invalid for any other reason."
'401':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorCollection'
description: Returned if the authentication credentials are incorrect or missing.
'403':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorCollection'
description: Returned if the user does not have the necessary permission.
'422':
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorCollection'
description: Returned if a configuration problem prevents the creation of the issue. (refer to the [changelog](https://developer.atlassian.com/changelog/#CHANGE-1364) *for more details.*
security:
- basicAuth: []
- OAuth2:
- write:jira-work
- {}
summary: Atlassian Create Issue
tags:
- Issues
x-atlassian-data-security-policy:
- app-access-rule-exempt: false
x-atlassian-oauth2-scopes:
- scheme: OAuth2
scopes:
- write:jira-work
state: Current
- scheme: OAuth2
scopes:
- write:issue:jira
- write:comment:jira
- write:comment.property:jira
- write:attachment:jira
- read:issue:jira
state: Beta
x-atlassian-connect-scope: WRITE
components:
examples:
paginated-log-entries:
size: 42
page: 1
pagelen: 10
next: https://api.example.com/logs?page=2
previous: https://api.example.com/logs?page=0
values: []
issue-job-status:
type: export
status: RUNNING
phase: Processing issues
total: 1000
count: 450
pct: 45
version:
links:
self:
href: https://api.example.com/versions/123
name: v1.0.0
name: v1.0.0
id: 123
export-options:
type: pdf
project_key: PROJ-123
project_name: Sample Project
send_email: true
include_attachments: false
issue-change_2:
type: issue_change
links:
self:
href: https://api.bitbucket.org/2.0/repositories/example/repo/issues/42/changes/1
name: 'Issue Change #1'
issue:
href: https://api.bitbucket.org/2.0/repositories/example/repo/issues/42
name: 'Issue #42'
name: Status update
created_on: '2024-01-15T10:30:00Z'
user:
type: user
uuid: '{abc123}'
display_name: John Doe
username: johndoe
issue:
type: issue
id: 42
title: Example issue title
changes:
state:
old: new
new: open
assignee:
old: janedoe
new: johndoe
priority:
old: minor
new: major
message:
raw: Changed priority and assigned to myself
markup: markdown
html:
Changed priority and assigned to myself
issue-comment: issue: id: 1 title: Example issue status: open comment: This is an example comment on the issue author: user123 timestamp: '2024-01-15T10:30:00Z' paginated-issues: size: 42 page: 1 pagelen: 10 next: https://api.bitbucket.org/2.0/repositories/example/repo/issues?page=2 previous: https://api.bitbucket.org/2.0/repositories/example/repo/issues?page=0 values: links: self: href: https://api.bitbucket.org/2.0/repositories/example/repo/issues/123 name: 'Issue #123' html: href: https://bitbucket.org/example/repo/issues/123 name: View Issue comments: href: https://api.bitbucket.org/2.0/repositories/example/repo/issues/123/comments name: Comments attachments: href: https://api.bitbucket.org/2.0/repositories/example/repo/issues/123/attachments name: Attachments watch: href: https://api.bitbucket.org/2.0/repositories/example/repo/issues/123/watch name: Watch vote: href: https://api.bitbucket.org/2.0/repositories/example/repo/issues/123/vote name: Vote id: 123 title: Fix login button not responding on mobile devices created_on: '2023-10-15T14:30:00Z' updated_on: '2023-10-16T09:45:00Z' edited_on: '2023-10-16T09:45:00Z' state: open kind: bug priority: major votes: 5 content: raw: The login button does not respond to touch events on iOS devices. markup: markdown html:The login button does not respond to touch events on iOS devices.
issue-change: type: issue_change links: self: href: https://api.bitbucket.org/2.0/repositories/myworkspace/myrepo/issues/123/changes/456 name: 'Issue Change #456' issue: href: https://api.bitbucket.org/2.0/repositories/myworkspace/myrepo/issues/123 name: 'Issue #123' name: State changed to resolved created_on: '2023-11-15T14:30:00Z' user: type: user uuid: '{a1b2c3d4-e5f6-7890-abcd-ef1234567890}' username: john_doe display_name: John Doe issue: type: issue id: 123 title: Bug in authentication module changes: state: old: open new: resolved assignee: old: jane_smith new: john_doe priority: old: minor new: major message: raw: Fixed the authentication bug and updated tests. markup: markdown html:Fixed the authentication bug and updated tests.
issue-comment_2: issue: id: 1 title: Bug in login functionality description: Users cannot log in with valid credentials status: open created_at: '2024-01-15T10:30:00Z' id: 101 author: john.doe comment: I can confirm this issue. It happens on Chrome browser. created_at: '2024-01-15T14:45:00Z' component: links: self: href: https://api.example.com/repositories/my-repo/components/123 name: bug-fixes name: Authentication id: 123 paginated-issue-comments: size: 42 page: 1 pagelen: 10 next: https://api.example.com/issues/comments?page=2 previous: https://api.example.com/issues/comments?page=0 values: issue: {} issue: links: self: href: https://api.example.com/repositories/myrepo/issues/123 name: 'Issue #123' html: href: https://example.com/myrepo/issues/123 name: View Issue comments: href: https://api.example.com/repositories/myrepo/issues/123/comments name: Comments attachments: href: https://api.example.com/repositories/myrepo/issues/123/attachments name: Attachments watch: href: https://api.example.com/repositories/myrepo/issues/123/watch name: Watch vote: href: https://api.example.com/repositories/myrepo/issues/123/vote name: Vote id: 123 repository: {} title: Fix login bug on mobile devices reporter: {} assignee: {} created_on: '2024-01-15T10:30:00Z' updated_on: '2024-01-16T14:22:00Z' edited_on: '2024-01-16T14:22:00Z' state: open kind: bug priority: major milestone: {} version: {} component: {} votes: 5 content: raw: Users are unable to log in when using mobile browsers. markup: markdown html:Users are unable to log in when using mobile browsers.
paginated-versions: size: 42 page: 1 pagelen: 10 next: https://api.example.com/versions?page=2 previous: https://api.example.com/versions?page=0 values: links: self: href: https://api.example.com/versions/123 name: self name: Version 1.0 id: 123 paginated-issue-attachment: size: 42 page: 1 pagelen: 10 next: https://api.example.com/issues/attachments?page=2 previous: https://api.example.com/issues/attachments?page=0 values: links: self: href: https://api.example.com/issues/123/attachments/456 name: attachment-link name: screenshot.png issue_2: links: self: href: https://api.example.com/repositories/myrepo/issues/123 name: 'Issue #123' html: href: https://example.com/myrepo/issues/123 name: View Issue comments: href: https://api.example.com/repositories/myrepo/issues/123/comments name: Comments attachments: href: https://api.example.com/repositories/myrepo/issues/123/attachments name: Attachments watch: href: https://api.example.com/repositories/myrepo/issues/123/watch name: Watch vote: href: https://api.example.com/repositories/myrepo/issues/123/vote name: Vote id: 123 repository: {} title: Fix login bug on mobile devices reporter: {} assignee: {} created_on: '2023-10-15T14:30:00Z' updated_on: '2023-10-16T09:15:00Z' edited_on: '2023-10-16T09:15:00Z' state: open kind: bug priority: major milestone: {} version: {} component: {} votes: 5 content: raw: 'Users are unable to login on mobile devices. Steps to reproduce: 1. Open app on mobile 2. Enter credentials 3. Click login' markup: markdown html: 'Users are unable to login on mobile devices. Steps to reproduce: