---
title: "Bulk fetch issues"
method: POST
path: "/rest/api/3/issue/bulkfetch"
tags: ["Issues"]
---

# Bulk fetch issues

`POST /rest/api/3/issue/bulkfetch`

Returns the details for a set of requested issues. You can request up to 100 issues.

Each 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.

Issues will be returned in ascending `id` order. If there are errors, Jira will return a list of issues which couldn't be fetched along with error messages.

This operation can be accessed anonymously.

**[Permissions](#permissions) required:** Issues are included in the response where the user has:

 *  *Browse projects* [project permission](https://confluence.atlassian.com/x/yodKLg) for the project 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.

## Request body

- BulkFetchIssueRequestBean
  - `expand` string[] — Use [expand](#expansion) to include additional information about issues in the response. Note that, unlike the majority of instances where `expand` is specified, `expand` is defined as a list of values. The expand options are: * `renderedFields` Returns field values rendered in HTML format. * `names` Returns the display name of each field. * `schema` Returns the schema describing a field type. * `transitions` Returns all possible transitions for the issue. * `operations` Returns all possible operations for the issue. * `editmeta` Returns information about how each field can be edited. * `changelog` Returns a list of recent updates to an issue, sorted by date, starting from the most recent. This returns a maximum of 40 changelogs. If you require more, please refer to [Bulk fetch changelogs](#api-rest-api-3-changelog-bulkfetch-post). * `versionedRepresentations` Instead of `fields`, returns `versionedRepresentations` a JSON array containing each version of a field's value, with the highest numbered item representing the most recent version.
  - `fields` string[] — A list of fields to return for each issue, use it to retrieve a subset of fields. This parameter accepts a comma-separated list. Expand options include: * `*all` Returns all fields. * `*navigable` Returns navigable fields. * Any issue field, prefixed with a minus to exclude. The default is `*navigable`. Examples: * `summary,comment` Returns the summary and comments fields only. * `-description` Returns all navigable (default) fields except description. * `*all,-comment` Returns all fields except comments. Multiple `fields` parameters can be included in a request. Note: All navigable fields are returned by default. This differs from [GET issue](#api-rest-api-3-issue-issueIdOrKey-get) where the default is all fields.
  - `fieldsByKeys` boolean — Reference fields by their key (rather than ID). The default is `false`.
  - `issueIdsOrKeys` string[], required — An array of issue IDs or issue keys to fetch. You can mix issue IDs and keys in the same query.
  - `properties` string[] — A list of issue property keys of issue properties to be included in the results. A maximum of 5 issue property keys can be specified.

## Response `200`

Returned if the request is successful. A response may contain both successful issues and issue errors.

- BulkIssueResults — The list of requested issues & fields.
  - `issueErrors` IssueError[] — When Jira can't return an issue enumerated in a request due to a retriable error or payload constraint, we'll return the respective issue ID with a corresponding error message. This list is empty when there are no errors Issues which aren't found or that the user doesn't have permission to view won't be returned in this list.
    - `errorMessage` string — The error that occurred when fetching this issue.
    - `id` string — The ID of the issue.
  - `issues` IssueBean[] — The list of issues.
    - `changelog` PageOfChangelogs — A page of changelogs.
      - `histories` Changelog[] — The list of changelogs.
        - `author` UserDetails — User details permitted by the user's Atlassian Account privacy settings. However, be aware of these exceptions: * User record deleted from Atlassian: This occurs as the result of a right to be forgotten request. In this case, `displayName` provides an indication and other parameters have default values or are blank (for example, email is blank). * User record corrupted: This occurs as a results of events such as a server import and can only happen to deleted users. In this case, `accountId` returns *unknown* and all other parameters have fallback values. * User record unavailable: This usually occurs due to an internal service outage. In this case, all parameters have fallback values.
          - `accountId` string — The account ID of the user, which uniquely identifies the user across all Atlassian products. For example, *5b10ac8d82e05b22cc7d4ef5*.
          - `accountType` string — The type of account represented by this user. This will be one of 'atlassian' (normal users), 'app' (application user) or 'customer' (Jira Service Desk customer user)
          - `active` boolean — Whether the user is active.
          - `avatarUrls` AvatarUrlsBean
            - `16x16` string, uri — The URL of the item's 16x16 pixel avatar.
            - `24x24` string, uri — The URL of the item's 24x24 pixel avatar.
            - `32x32` string, uri — The URL of the item's 32x32 pixel avatar.
            - `48x48` string, uri — The URL of the item's 48x48 pixel avatar.
          - `displayName` string — The display name of the user. Depending on the user’s privacy settings, this may return an alternative value.
          - `emailAddress` string — The email address of the user. Depending on the user’s privacy settings, this may be returned as null.
          - `key` string — This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details.
          - `name` string — This property is no longer available and will be removed from the documentation soon. See the [deprecation notice](https://developer.atlassian.com/cloud/jira/platform/deprecation-notice-user-privacy-api-migration-guide/) for details.
          - `self` string — The URL of the user.
          - `timeZone` string — The time zone specified in the user's profile. Depending on the user’s privacy settings, this may be returned as null.
        - `created` string, date-time — The date on which the change took place.
        - `historyMetadata` HistoryMetadata — Details of issue history metadata.
          - `activityDescription` string — The activity described in the history record.
          - `activityDescriptionKey` string — The key of the activity described in the history record.
          - `actor` HistoryMetadataParticipant — Details of user or system associated with a issue history metadata item.
            - `avatarUrl` string — The URL to an avatar for the user or system associated with a history record.
            - `displayName` string — The display name of the user or system associated with a history record.
            - `displayNameKey` string — The key of the display name of the user or system associated with a history record.
            - `id` string — The ID of the user or system associated with a history record.
            - `type` string — The type of the user or system associated with a history record.
            - `url` string — The URL of the user or system associated with a history record.
          - `cause` HistoryMetadataParticipant — Details of user or system associated with a issue history metadata item.
            - `avatarUrl` string — The URL to an avatar for the user or system associated with a history record.
            - `displayName` string — The display name of the user or system associated with a history record.
            - `displayNameKey` string — The key of the display name of the user or system associated with a history record.
            - `id` string — The ID of the user or system associated with a history record.
            - `type` string — The type of the user or system associated with a history record.
            - `url` string — The URL of the user or system associated with a history record.
          - `description` string — The description of the history record.
          - `descriptionKey` string — The description key of the history record.
          - `emailDescription` string — The description of the email address associated the history record.
          - `emailDescriptionKey` string — The description key of the email address associated the history record.
          - `extraData` object — Additional arbitrary information about the history record.
          - `generator` HistoryMetadataParticipant — Details of user or system associated with a issue history metadata item.
            - `avatarUrl` string — The URL to an avatar for the user or system associated with a history record.
            - `displayName` string — The display name of the user or system associated with a history record.
            - `displayNameKey` string — The key of the display name of the user or system associated with a history record.
            - `id` string — The ID of the user or system associated with a history record.
            - `type` string — The type of the user or system associated with a history record.
            - `url` string — The URL of the user or system associated with a history record.
          - `type` string — The type of the history record.
        - `id` string — The ID of the changelog.
        - `items` ChangeDetails[] — The list of items changed.
          - `field` string — The name of the field changed.
          - `fieldId` string — The ID of the field changed.
          - `fieldtype` string — The type of the field changed.
          - `from` string — The details of the original value.
          - `fromString` string — The details of the original value as a string.
          - `to` string — The details of the new value.
          - `toString` string — The details of the new value as a string.
      - `maxResults` integer — The maximum number of results that could be on the page.
      - `startAt` integer — The index of the first item returned on the page.
      - `total` integer — The number of results on the page.
    - `editmeta` IssueUpdateMetadata — A list of editable field details.
      - `fields` object
    - `expand` string — Expand options that include additional issue details in the response.
    - `fields` object
    - `fieldsToInclude` IncludedFields
      - `actuallyIncluded` string[]
      - `excluded` string[]
      - `included` string[]
    - `id` string — The ID of the issue.
    - `key` string — The key of the issue.
    - `names` object — The ID and name of each field present on the issue.
    - `operations` Operations — Details of the operations that can be performed on the issue.
      - `linkGroups` LinkGroup[] — Details of the link groups defining issue operations.
        - `groups` LinkGroup[]
        - `header` SimpleLink — Details about the operations available in this version.
          - `href` string
          - `iconClass` string
          - `id` string
          - `label` string
          - `styleClass` string
          - `title` string
          - `weight` integer
        - `id` string
        - `links` SimpleLink[]
          - `href` string
          - `iconClass` string
          - `id` string
          - `label` string
          - `styleClass` string
          - `title` string
          - `weight` integer
        - `styleClass` string
        - `weight` integer
    - `properties` object — Details of the issue properties identified in the request.
    - `renderedFields` object — The rendered value of each field present on the issue.
    - `schema` object — The schema describing each field present on the issue.
    - `self` string, uri — The URL of the issue details.
    - `transitions` IssueTransition[] — The transitions that can be performed on the issue.
      - `expand` string — Expand options that include additional transition details in the response.
      - `fields` object — Details of the fields associated with the issue transition screen. Use this information to populate `fields` and `update` in a transition request.
      - `hasScreen` boolean — Whether there is a screen associated with the issue transition.
      - `id` string — The ID of the issue transition. Required when specifying a transition to undertake.
      - `isAvailable` boolean — Whether the transition is available to be performed.
      - `isConditional` boolean — Whether the issue has to meet criteria before the issue transition is applied.
      - `isGlobal` boolean — Whether the issue transition is global, that is, the transition is applied to issues regardless of their status.
      - `isInitial` boolean — Whether this is the initial issue transition for the workflow.
      - `looped` boolean
      - `name` string — The name of the issue transition.
      - `to` StatusDetails — A status.
        - `description` string — The description of the status.
        - `iconUrl` string — The URL of the icon used to represent the status.
        - `id` string — The ID of the status.
        - `name` string — The name of the status.
        - `scope` Scope — The projects the item is associated with. Indicated for items associated with [next-gen projects](https://confluence.atlassian.com/x/loMyO).
          - `project` ProjectDetails — Details about a project.
            - `avatarUrls` AvatarUrlsBean
              - …
            - `id` string — The ID of the project.
            - `key` string — The key of the project.
            - `name` string — The name of the project.
            - `projectCategory` UpdatedProjectCategory — A project category.
              - …
            - `projectTypeKey` 'software' | 'service_desk' | 'business' — The [project type](https://confluence.atlassian.com/x/GwiiLQ#Jiraapplicationsoverview-Productfeaturesandprojecttypes) of the project.
            - `self` string — The URL of the project details.
            - `simplified` boolean — Whether or not the project is simplified.
          - `type` 'PROJECT' | 'TEMPLATE' — The type of scope.
        - `self` string — The URL of the status.
        - `statusCategory` StatusCategory — A status category.
          - `colorName` string — The name of the color used to represent the status category.
          - `id` integer — The ID of the status category.
          - `key` string — The key of the status category.
          - `name` string — The name of the status category.
          - `self` string — The URL of the status category.
    - `versionedRepresentations` object — The versions of each field on the issue.

## Other responses

- `400` — Returned if no issue IDs/keys were present, or more than 100 issue IDs/keys were requested.
- `401` — Returned if the authentication credentials are incorrect or missing.

---

[API](https://skmtc.net/atlassian/apis/the-jira-cloud-platform-rest-api-2.md) · [All operations](https://skmtc.net/atlassian/apis/the-jira-cloud-platform-rest-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/atlassian/the-jira-cloud-platform-rest-api-2/versions/5a51740d7ab3/schema)
