Jira API创建子任务报需指定有效项目ID/Key400错误如何解决?
问题排查与解决方案
核心错误触发原因
Jira返回的400错误提示项目key无效,实际是以下3个常见问题导致的:
- payload结构不符合Jira REST API v3的规范要求:所有issue字段必须嵌套在
fields外层字段下,你当前的代码将project、parent等字段直接放在data顶层,Jira无法正常识别项目配置 - description字段格式错误:Jira v3 API不支持直接传入字符串作为描述内容,必须使用ADF(Atlassian文档格式)结构
muteHttpExceptions参数配置位置错误:该参数是Google Apps Script的UrlFetchApp配置项,不属于请求头,放错位置会导致请求参数异常- 存在小概率的项目key拼写/大小写不匹配、子任务项目与父任务项目不一致的问题
具体修复方法
1. 修正payload数据结构
将你的data变量替换为以下结构,注意替换为你实际的项目key、父任务编号:
var data = { "fields": { "project": {"key": "PROJECTID"}, // 替换为实际Jira项目key,区分大小写 "parent": {"key": "PROJECTID-XXX"}, // 替换为实际要关联的父Story编号 "summary": summary, "description": { "type": "doc", "version": 1, "content": [ { "type": "paragraph", "content": [ { "type": "text", "text": description } ] } ] }, "issuetype": {"name":"Sub-task"} } };
2. 修正请求配置参数
将muteHttpExceptions从headers移到options中:
var headers = { "Accept": "application/json", "Content-Type": "application/json", "Authorization": userCreds }; var options = { "method": "POST", "headers": headers, "payload": payload, "muteHttpExceptions": true }
3. 校验项目配置正确性
- 登录Jira进入项目设置,确认项目key的实际值与代码中填写的完全一致,注意大小写敏感
- 确认要关联的父Story编号的前缀与项目key完全相同,子任务必须和父任务属于同一个项目
内容的提问来源于stack exchange,提问作者Logan
相关产品推荐
相关产品推荐

