Guide · Jira Cloud

JQL: find the subtasks of issues in a filter on Jira Cloud

You have a filter of tasks and want their subtasks. Jira's parent field takes keys, not a query. Here is the workaround with plain JQL, measured on a test site, and how a JQL function does it in one line.

Published 2026-10-17 · Facts checked 2026-10-17 · By ArtUp Labs, the maker of ArtUp Query

Short answer. Jira's parent field accepts work item keys or IDs, not a query: parent in (ABC-1, ABC-2) works, parent in (filter = 10001) is a syntax error. Without an app, run the filter, copy the keys and paste them into parent in (…). With a JQL function app you can write the query itself, for example issue in subtasksOf("filter = 10001") with our ArtUp Query.

1. What Jira's own JQL can do

Subtasks of one work item:

parent = ABC-123

Subtasks of several work items you name:

parent in (ABC-2, ABC-4, ABC-6)

All subtasks of a project, whatever their parent:

project = ABC AND issuetype in subTaskIssueTypes()

The parent field supports =, !=, in and not in, takes keys or IDs, and works in team-managed and company-managed projects. It accepts no function. Source: Atlassian, JQL fields, checked 2026-10-17. None of the built-in functions in Atlassian's reference takes a query as its argument; linkedIssues(), for example, takes one key. (JQL functions)

Subtasks of the issues in a filter, without an app

  1. Run the filter, for example project = ABC AND issuetype = Task AND sprint in openSprints().
  2. Copy the keys of the results (from the list view, or export the list).
  3. Search for parent in (KEY-1, KEY-2, …) with those keys.

Measured On our test site on 2026-10-17: a query for the six tasks of project JQLT, pasted as parent in (JQLT-2, JQLT-4, JQLT-6, JQLT-9, JQLT-11, JQLT-13), returned all 7 subtasks. Writing the query inside parent in (…) instead — parent in (project = JQLT AND issuetype = Task) — failed with Jira's error Expecting ',' or ')' but got '='.

The limits of the copy-paste method: the list is a snapshot, so a task added to the filter later is missing until you rebuild the list; a saved filter or a board built on it does not update on its own; and long lists of keys are hard to maintain.

2. A query as the argument: subtasksOf

Marketplace apps can add JQL functions that take a query. In ArtUp Query, our app for Jira Cloud, the function is subtasksOf:

issue in subtasksOf("filter = 10001")
issue in subtasksOf("project = ABC AND issuetype = Task AND sprint in openSprints()")
issue in subtasksOf("key in (ABC-2, ABC-4)") AND status != Done
  • The argument is any JQL, a saved filter (filter = 10001) or a list of keys. Quotes inside it are escaped with a backslash.
  • It works in the ordinary Jira search, in saved filters, on boards and dashboards, and with not in.
  • Related functions: parentsOf (the other direction), childIssuesOf (all descendants, with an optional depth), issuesInEpics and epicsOf.
  • The result is complete, or the function answers with an error that names the limit — never a cut-off list. See nested JQL queries and the 1,000-value limit.

Measured On the same test project on 2026-10-17, issue in subtasksOf("project = JQLT AND issuetype = Task") returned the same 7 subtasks as the pasted list. Results follow Jira's change events within Jira's API allowance for apps: on our test site a changed link showed in the result in about 15 seconds while the hour's allowance had room; with about 100 functions in use the 90th percentile was about 277 seconds. Bulk edits beyond the hour's allowance wait for the next half hour or hour.

Coming from ScriptRunner? Function names and arguments are the same; write issue in instead of issueFunction in. The differences are listed in the ArtUp Query documentation.

Video: ArtUp Query demo, 2:24, with captions, recorded on our test site in October 2026: the function reference, three searches with functions, an error message in the JQL editor and the admin settings.

JQL functions in the ordinary Jira search

ArtUp Query adds 24 JQL functions for subtasks, links, sprint history, comments, attachments and field comparison. It only reads your work items and never writes to them.

ArtUp Query is on the Atlassian Marketplace. Sites with up to 10 users use it free.