Jira REST API获取父工单时无法返回子工单求助
解决Jira REST API获取父工单子工单的问题
首先明确Jira里的两种"父子工单"逻辑,对应不同的API获取方式:
1. 子任务类型的子工单(Issue Type为Sub-task)
如果你的子工单是子任务类型(界面里工单类型会标注"Sub-task"),那你之前用错了扩展参数:
- 正确的API调用应该使用
expand=subtasks,而非children:
调用后返回的JSON中,https://jira.mydomain.de/rest/api/2/issue/CANVAS15-219?expand=subtaskssubtasks字段会列出所有关联的子任务。
2. 普通工单通过Parent Link关联的子工单
如果界面显示的子工单是普通类型工单(不是Sub-task),只是通过"Parent"链接关系绑定的,那subtasks字段不会返回内容,需要用以下方式获取:
方法一:JQL搜索
直接调用搜索API,用JQL语句筛选父工单为目标工单的所有子工单:
curl -X GET "https://jira.mydomain.de/rest/api/2/search?jql=parent%20%3D%20CANVAS15-219" -H "Authorization: Bearer YOUR_TOKEN" -H "Content-Type: application/json"
返回的issues数组就是所有关联的子工单。
方法二:查看工单链接字段
调用工单详情API并展开links,可以在fields.issuelinks中找到关系为"Parent"的条目,对应的outwardIssue就是子工单:
https://jira.mydomain.de/rest/api/2/issue/CANVAS15-219?expand=links
为什么expand=children无效?
children扩展参数是专门针对Epic工单的,用来获取Epic下关联的所有工单,不适用于普通父工单的子工单关联场景。
内容的提问来源于stack exchange,提问作者Andreas Kuhl
相关产品推荐
相关产品推荐

