Atlassian: Bulk fetch issues
Atlassian issues.bulkFetchIssues: arguments, response, policy and SDK examples.
← Issues operations · Get started
Operation atlassian.bulkfetchissues
Provider route: POST /{cloudId}/rest/api/3/issue/bulkfetch. Alter supplies the connection’s credentials and routing.
Call through Alter
Section titled “Call through Alter”Install @alter-ai/sdk @alter-ai/atlassian with npm, or alter-sdk-atlassian with pip. Supply your connected customer’s grant ID and the arguments described below.
import { App } from "@alter-ai/sdk";import { AtlassianIntegration } from "@alter-ai/atlassian";
async function execute(input: Parameters<AtlassianIntegration["issues"]["bulkFetchIssues"]>[0]) { const app = new App({ apiKey: process.env.ALTER_API_KEY! }); try { const provider = new AtlassianIntegration(app, { grantId: process.env.PROVIDER_GRANT_ID! }); const call = await provider.issues.bulkFetchIssues(input); const result = await call.wait(); return result.bodyJson(); } finally { await app.close(); }}import osfrom alter_sdk import Appfrom alter_sdk_atlassian import AtlassianIntegration
async def execute(arguments): async with App(api_key=os.environ["ALTER_API_KEY"]) as app: provider = AtlassianIntegration(app, {"grant_id": os.environ["PROVIDER_GRANT_ID"]}) call = await provider.issues.bulk_fetch_issues(arguments) result = await call.wait() return result.body_json()| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Additional keys: not allowed |
path | object | Required within parent | Additional keys: not allowed |
path.cloudId | string | Required within parent | Pattern: ^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$ |
body | Model | Required within parent | Expand Bulk fetch issues — request body — body |
Referenced models: Bulk fetch issues — request body — body
Response
Section titled “Response”Response media type: application/json. The table describes the pinned successful response. Referenced models link to their complete fields.
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | Model | Root | Expand Bulk fetch issues — response body |
Referenced models: Bulk fetch issues — response body
Schemas
Section titled “Schemas”21 more schemas are linked from the tables above, on the schema pages.
Bulk fetch issues — request body — body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Additional keys: not allowed |
expand | array | Optional | 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. To request up to 1000 issues in a single call, do not include `changelog`, `editmeta`, `operations`, `renderedFields`, `transitions`, or `versionedRepresentations` in `expand`. Requests that include any of these can include at most 100 issues; larger requests are rejected with a 400 error. |
expand[] | string | Each item | |
fields | array | Optional | 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. To request up to 1000 issues in a single call, explicitly list the fields you need: at least one field must be a positive include (a request containing only exclusions is not eligible), the `*all` and `*navigable` wildcards and the default navigable field set are not eligible for the higher limit, no more than 100 fields may be listed, and none of the included fields returns multiple values (for example `comment`, `worklog`, or `attachment`). Requests that do not meet these conditions can include at most 100 issues; larger requests are rejected with a 400 error. |
fields[] | string | Each item | |
fieldsByKeys | boolean | Optional | Reference fields by their key (rather than ID). The default is `false`. |
issueIdsOrKeys | array | Required within parent | An array of issue IDs or issue keys to fetch. You can mix issue IDs and keys in the same query. You can request up to 100 issues per call. Requests can include up to 1000 issues per call when they meet all of the conditions described for the `fields` and `expand` parameters. Requests that exceed the applicable limit are rejected with a 400 error. |
issueIdsOrKeys[] | string | Each item | |
properties | array | Optional | 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. |
properties[] | string | Each item |
Bulk fetch issues — response body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | The list of requested issues & fields. |
issueErrors | JSON | Optional | |
issueErrors (anyOf 1) | array | Alternative | 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. Read only: true |
issueErrors (anyOf 1)[] | Model | Each item | Expand Bulk fetch issues — response body — issue Errors array item |
issueErrors (anyOf 2) | null | Alternative | |
issues | JSON | Optional | |
issues (anyOf 1) | array | Alternative | The list of issues. Read only: true |
issues (anyOf 1)[] | Model | Each item | Expand Get issue — response body |
issues (anyOf 2) | null | Alternative |
Referenced models: Get issue — response body, Bulk fetch issues — response body — issue Errors array item
Get issue — response body
| Field | Type | Presence | Description and constraints |
|---|---|---|---|
$ | object | Root | Details about an issue. |
changelog | JSON | Optional | |
changelog (anyOf 1) | Model | Alternative | Expand Get changelogs by I Ds — response body Details of changelogs associated with the issue. Read only: true |
changelog (anyOf 2) | null | Alternative | |
editmeta | JSON | Optional | |
editmeta (anyOf 1) | Model | Alternative | Expand Get edit issue metadata — response body The metadata for the fields on the issue that can be amended. Read only: true |
editmeta (anyOf 2) | null | Alternative | |
expand | JSON | Optional | |
expand (anyOf 1) | string | Alternative | Expand options that include additional issue details in the response. Read only: true |
expand (anyOf 2) | null | Alternative | |
fields | JSON | Optional | |
fields (anyOf 1) | object | Alternative | Additional keys: see wildcard field |
fields (anyOf 1).* | JSON | Additional keys | |
fields (anyOf 2) | null | Alternative | |
fieldsToInclude | JSON | Optional | |
fieldsToInclude (anyOf 1) | Model | Alternative | Expand Get issue — response body — fields To Include actually Included, excluded, included |
fieldsToInclude (anyOf 2) | null | Alternative | |
id | JSON | Optional | |
id (anyOf 1) | string | Alternative | The ID of the issue. Read only: true |
id (anyOf 2) | null | Alternative | |
key | JSON | Optional | |
key (anyOf 1) | string | Alternative | The key of the issue. Read only: true |
key (anyOf 2) | null | Alternative | |
names | JSON | Optional | |
names (anyOf 1) | object | Alternative | The ID and name of each field present on the issue. Read only: true Additional keys: see wildcard field |
names (anyOf 1).* | string | Additional keys | Read only: true |
names (anyOf 2) | null | Alternative | |
operations | JSON | Optional | |
operations (anyOf 1) | Model | Alternative | Expand Get issue — response body — operations link Groups The operations that can be performed on the issue. Read only: true |
operations (anyOf 2) | null | Alternative | |
properties | JSON | Optional | |
properties (anyOf 1) | object | Alternative | Details of the issue properties identified in the request. Read only: true Additional keys: see wildcard field |
properties (anyOf 1).* | JSON | Additional keys | Read only: true |
properties (anyOf 2) | null | Alternative | |
renderedFields | JSON | Optional | |
renderedFields (anyOf 1) | object | Alternative | The rendered value of each field present on the issue. Read only: true Additional keys: see wildcard field |
renderedFields (anyOf 1).* | JSON | Additional keys | Read only: true |
renderedFields (anyOf 2) | null | Alternative | |
schema | JSON | Optional | |
schema (anyOf 1) | object | Alternative | The schema describing each field present on the issue. Read only: true Additional keys: see wildcard field |
schema (anyOf 1).* | Model | Additional keys | Expand Create custom field — response body — schema The schema of a field |
schema (anyOf 2) | null | Alternative | |
self | JSON | Optional | |
self (anyOf 1) | string | Alternative | The URL of the issue details. Format: uri Read only: true |
self (anyOf 2) | null | Alternative | |
transitions | JSON | Optional | |
transitions (anyOf 1) | array | Alternative | The transitions that can be performed on the issue. Read only: true |
transitions (anyOf 1)[] | Model | Each item | Expand Get transitions — response body — transitions List of issue transitions item |
transitions (anyOf 2) | null | Alternative | |
versionedRepresentations | JSON | Optional | |
versionedRepresentations (anyOf 1) | object | Alternative | The versions of each field on the issue. Read only: true Additional keys: see wildcard field |
versionedRepresentations (anyOf 1).* | object | Additional keys | Read only: true Additional keys: see wildcard field |
versionedRepresentations (anyOf 1).*.* | JSON | Additional keys | Read only: true |
versionedRepresentations (anyOf 2) | null | Alternative |
Referenced models: Get issue — response body — fields To Include actually Included, excluded, included, Get transitions — response body — transitions List of issue transitions item, Get edit issue metadata — response body, Create custom field — response body — schema The schema of a field, Get issue — response body — operations link Groups, Get changelogs by I Ds — response body
Policy, approvals and errors
Section titled “Policy, approvals and errors”SDK function policy ID: atlassian.bulkfetchissues. Catalog operation: bulkfetchissues. Rules can name either ID; function rules distinguish managed calls and conservatively cover raw calls sharing the route. Existing grant permissions and policy rules apply. wait() returns an immediate result or waits for a required approval; it never approves the request itself. Persist the approval ID to resume after a restart.
Provider errors retain their response; JSON decoding raises ProviderAPIError for provider failures. ManagedOperationError identifies contract/input/retention errors. See error handling and provider-specific behavior. Sensitive input may be refused before approval storage. A decoding error never resubmits a write.
Required provider scopes: ["read:jira-work"]