Product
Jira Cloud
Jira Software – REST / Agile APIs
Description
We are consuming Jira Cloud REST APIs to fetch stories for backend processing. We are seeing a mismatch between Jira UI behavior and API responses for certain issues.
Problem Statement
Some Jira stories:
Cannot be opened via Jira UI link
“Issue does not exist or you do not have permission to see it”
Do not appear in JQL search results
But are still returned in REST / Agile API responses with full issue details
This behavior strongly suggests the issues are archived, not deleted. However, the issue API response does not include any flag or metadata to identify whether an issue is archived.
What We Observed
/rest/api/2/issue/{issueId} returns full issue payload
Agile APIs sometimes return these issues as well
Jira UI hides the issue completely
JQL search (issuekey = XYZ) returns no results
No archived, isArchived, or equivalent field exists in the API response
Impact
Because archive state is not exposed:
Backend systems cannot reliably exclude archived stories
UI and API data become inconsistent
Additional workaround logic is required, which is not officially documented
Questions
Is there any REST API field or metadata that indicates an issue is archived?
Is the current behavior (archived issues returned by some APIs) expected?
What is the recommended and supported approach to exclude archived issues programmatically?
Should archived issues be automatically excluded from all REST and Agile APIs?
Expected Behavior
Either:
Archived issues should include an explicit archive indicator in the API response
OR
Archived issues should be consistently excluded from all REST/Agile APIs
Current Workaround
We are considering excluding issues that:
Are returned by issue APIs
But do not appear in JQL search results
However, this feels like an unsupported workaround.
Request
Looking for guidance or best practices from Jira team or community on how to reliably detect and exclude archived issues via REST APIs.