64 KiB
64 KiB
文档内地址为api.tapd.cn请修改为公司地址 https://tapd-api.bilibili.co/tapd
需求
需求(story)字段说明
#需求重要字段说明
| 字段 | 说明 |
|---|---|
| id | ID |
| name | 标题 |
| priority | 优先级 |
| priority_label | 优先级 |
| business_value | 业务价值 |
| status | 状态 |
| version | 版本 |
| module | 模块 |
| test_focus | 测试重点 |
| size | 规模 |
| owner | 处理人 |
| cc | 抄送人 |
| creator | 创建人 |
| developer | 开发人员 |
| begin | 预计开始 |
| due | 预计结束 |
| created | 创建时间 |
| modified | 最后修改时间 |
| completed | 完成时间 |
| iteration_id | 迭代 |
| effort | 预估工时 |
| effort_completed | 完成工时 |
| remain | 剩余工时 |
| exceed | 超出工时 |
| category_id | 需求分类 |
| workitem_type_id | 需求类别 |
| release_id | 发布计划 |
| source | 来源 |
| type | 类型 |
| bug_id | 关联的bugID |
| parent_id | 父需求 |
| children_id | 子需求 |
| ancestor_id | 祖先ID |
| description | 详细描述 |
| workspace_id | 项目ID |
| created_from | 创建来源 |
| step | 流程节点 |
| path | 需求位置(到根需求的直系父需求ID组成) |
| level | 需求层级(到根需求的直系父需求数量) |
| templated_id | 模板ID |
| feature | 特性 |
| label | 标签 |
| progress | 进度 |
| is_archived | 是否归档 |
| tech_risk | 技术风险 |
| business_value | 业务价值 |
| flows | 状态流转步骤快照 |
| secret_root_id | 需求保密根节点 |
| progress_manual | 进度(可忽略,已废弃) |
| priority_label | 自定义计划应用名称 |
| custom_field_* | 自定义字段参数,具体字段名通过接口 获取需求自定义字段配置 获取 |
| custom_plan_field_* | 自定义计划应用参数,具体字段名通过接口 获取自定义计划应用 获取 |
#需求优先级(priority)取值字段说明
为了兼容自定义优先级,请使用 priority_label 字段,详情参考:如何兼容自定义优先级 。
#其他字段
status(状态)/ module(模块)/ iteration_id(迭代) 等字段可选值跟当前项目有关,属于动态可选值, 需要通过接口 获取需求所有字段及候选值获取.
创建需求
url
https://api.tapd.cn/stories
#支持格式
JSON/XML(默认JSON格式)
#HTTP请求方式
POST
#请求数限制
一次插入一条数据
#请求参数
| 字段名 | 必选 | 类型及范围 | 说明 |
|---|---|---|---|
| workspace_id | 是 |
integer | 项目ID |
| name | 是 |
string | 标题 |
| priority | 否 | string | 优先级。为了兼容自定义优先级,请使用 priority_label 字段,详情参考:如何兼容自定义优先级 |
| priority_label | 否 | string | 优先级。推荐使用这个字段 |
| business_value | 否 | integer | 业务价值 |
| version | 否 | string | 版本 |
| module | 否 | string | 模块 |
| test_focus | 否 | string | 测试重点 |
| size | 否 | integer | 规模 |
| owner | 否 | string | 处理人 |
| cc | 否 | string | 抄送人 |
| creator | 否 | string | 创建人 |
| developer | 否 | string | 开发人员 |
| begin | 否 | date | 预计开始 |
| due | 否 | date | 预计结束 |
| iteration_id | 否 | string | 迭代ID |
| templated_id | 否 | integer | 模板ID |
| parent_id | 否 | integer | 父需求ID |
| effort | 否 | string | 预估工时 |
| effort_completed | 否 | string | 完成工时 |
| remain | 否 | float | 剩余工时 |
| exceed | 否 | float | 超出工时 |
| category_id | 否 | integer | 需求分类 |
| workitem_type_id | 否 | integer | 需求类别 |
| release_id | 否 | integer | 发布计划 |
| source | 否 | string | 来源 |
| type | 否 | string | 类型 |
| feature | 否 | string | 特性 |
| tech_risk | 否 | string | 技术风险 |
| business_value | 否 | string | 业务价值 |
| description | 否 | string | 详细描述 |
| label | 否 | string | 标签,标签不存在时将自动创建,多个以英文坚线分格 |
| cus_{$自定义字段别名} | 否 | string | 自定义字段值,参数名会由后台自动转义为custom_field_*,如:cus_自定义字段的名称 |
| custom_field_* | 否 | string或者integer | 自定义字段参数,具体字段名通过接口 获取需求自定义字段配置 获取 |
| custom_plan_field_* | 否 | string或者integer | 自定义计划应用参数,具体字段名通过接口 获取自定义计划应用 获取 |
| is_apply_template_default_value | 否 | integer | 是否从模板继承默认值、保密设置(传值=1继承模板默认值) |
| apply_template | 否 | string | 模版选项,支持多个选项传入,使用','隔开 如: "option1,option2" 当前支持参数:preset_stories(支持创建需求模板预设子需求),preset_tasks(支持创建需求模板预设子任务) |
#调用示例及返回结果
#在项目下创建需求
#curl 使用 Basic Auth 鉴权调用示例
curl -u 'api_user:api_password' -d 'name=story_created_by_api&workspace_id=10158231&cus_自定义字段的名称=custom_field_value' 'https://api.tapd.cn/stories'
#返回结果
{
"status": 1,
"data": {
"Story": {
"id": "1010104801124922063",
"workitem_type_id": "1010104801000022091",
"name": "story_created_by_api",
"description": null,
"workspace_id": "10104801",
"creator": "v_xuanfang",
"created": "2025-06-16 14:42:59",
"modified": "2025-06-16 14:42:59",
"status": "planning",
"step": "",
"owner": "",
"cc": "",
"begin": null,
"due": null,
"size": null,
"priority": "",
"developer": "",
"iteration_id": "0",
"test_focus": "",
"type": "",
"source": "",
"module": "",
"version": "",
"completed": null,
"category_id": "-1",
"path": "1010104801124922063:",
"parent_id": "0",
"children_id": "|",
"ancestor_id": "1010104801124922063",
"level": "0",
"business_value": null,
"effort": null,
"effort_completed": "0",
"exceed": "0",
"remain": "0",
"release_id": "0",
"bug_id": null,
"templated_id": null,
"created_from": "api",
"feature": "",
"label": "",
"progress": "0",
"is_archived": "0",
"tech_risk": null,
"flows": null,
"custom_field_one": "",
"custom_field_two": "",
"custom_field_three": "",
"custom_field_four": "",
"custom_field_five": "",
"custom_field_six": "",
"custom_field_seven": "",
"custom_field_eight": "",
"secret_root_id": "0",
"progress_manual": "0",
"custom_field_9": "",
"custom_field_10": "",
"custom_field_11": "",
"custom_field_12": "",
"custom_field_13": "",
"custom_field_14": "",
"custom_field_15": "",
"custom_field_16": "",
"custom_field_17": "",
"custom_field_18": "",
"custom_field_19": "",
"custom_field_20": "",
"custom_field_21": "",
"custom_field_22": "",
"custom_field_23": "",
"custom_field_24": "",
"custom_field_25": "",
"custom_field_26": "",
"custom_field_27": "",
"custom_field_28": "",
"custom_field_29": "",
"custom_field_30": "",
"custom_field_31": "",
"custom_field_32": "",
"custom_field_33": "",
"custom_field_34": "",
"custom_field_35": "",
"custom_field_36": "",
"custom_field_37": "",
"custom_field_38": "",
"custom_field_39": "",
"custom_field_40": "",
"custom_field_41": "",
"custom_field_42": "",
"custom_field_43": "",
"custom_field_44": "",
"custom_field_45": "",
"custom_field_46": "",
"custom_field_47": "",
"custom_field_48": "",
"custom_field_49": "",
"custom_field_50": "",
"custom_field_51": "",
"custom_field_52": "",
"custom_field_53": "",
"custom_field_54": "",
"custom_field_55": "",
"custom_field_56": "",
"custom_field_57": "",
"custom_field_58": "",
"custom_field_59": "",
"custom_field_60": "",
"custom_field_61": "",
"custom_field_62": "",
"custom_field_63": "",
"custom_field_64": "",
"custom_field_65": "",
"custom_field_66": "",
"custom_field_67": "",
"custom_field_68": "",
"custom_field_69": "",
"custom_field_70": "",
"custom_field_71": "",
"custom_field_72": "",
"custom_field_73": "",
"custom_field_74": "",
"custom_field_75": "",
"custom_field_76": "",
"custom_field_77": "",
"custom_field_78": "",
"custom_field_79": "",
"custom_field_80": "",
"custom_field_81": "",
"custom_field_82": "",
"custom_field_83": "",
"custom_field_84": "",
"custom_field_85": "",
"custom_field_86": "",
"custom_field_87": "",
"custom_field_88": "",
"custom_field_89": "",
"custom_field_90": "",
"custom_field_91": "",
"custom_field_92": "",
"custom_field_93": "",
"custom_field_94": "",
"custom_field_95": "",
"custom_field_96": "",
"custom_field_97": "",
"custom_field_98": "",
"custom_field_99": "",
"custom_field_100": "",
"custom_field_101": "",
"custom_field_102": "",
"custom_field_103": "",
"custom_field_104": "",
"custom_field_105": "",
"custom_field_106": "",
"custom_field_107": "",
"custom_field_108": "",
"custom_field_109": "",
"custom_field_110": "",
"custom_field_111": "",
"custom_field_112": "",
"custom_field_113": "",
"custom_field_114": "",
"custom_field_115": "",
"custom_field_116": "",
"custom_field_117": "",
"custom_field_118": "",
"custom_field_119": "",
"custom_field_120": "",
"custom_field_121": "",
"custom_field_122": "",
"custom_field_123": "",
"custom_field_124": "",
"custom_field_125": "",
"custom_field_126": "",
"custom_field_127": "",
"custom_field_128": "",
"custom_field_129": "",
"custom_field_130": "",
"custom_field_131": "",
"custom_field_132": "",
"custom_field_133": "",
"custom_field_134": "",
"custom_field_135": "",
"custom_field_136": "",
"custom_field_137": "",
"custom_field_138": "",
"custom_field_139": "",
"custom_field_140": "",
"custom_field_141": "",
"custom_field_142": "",
"custom_field_143": "",
"custom_field_144": "",
"custom_field_145": "",
"custom_field_146": "",
"custom_field_147": "",
"custom_field_148": "",
"custom_field_149": "",
"custom_field_150": "",
"custom_field_151": "",
"custom_field_152": "",
"custom_field_153": "",
"custom_field_154": "",
"custom_field_155": "",
"custom_field_156": "",
"custom_field_157": "",
"custom_field_158": "",
"custom_field_159": "",
"custom_field_160": "",
"custom_field_161": "",
"custom_field_162": "",
"custom_field_163": "",
"custom_field_164": "",
"custom_field_165": "",
"custom_field_166": "",
"custom_field_167": "",
"custom_field_168": "",
"custom_field_169": "",
"custom_field_170": "",
"custom_field_171": "",
"custom_field_172": "",
"custom_field_173": "",
"custom_field_174": "",
"custom_field_175": "",
"custom_field_176": "",
"custom_field_177": "",
"custom_field_178": "",
"custom_field_179": "",
"custom_field_180": "",
"custom_field_181": "",
"custom_field_182": "",
"custom_field_183": "",
"custom_field_184": "",
"custom_field_185": "",
"custom_field_186": "",
"custom_field_187": "",
"custom_field_188": "",
"custom_field_189": "",
"custom_field_190": "",
"custom_field_191": "",
"custom_field_192": "",
"custom_field_193": "",
"custom_field_194": "",
"custom_field_195": "",
"custom_field_196": "",
"custom_field_197": "",
"custom_field_198": "",
"custom_field_199": "",
"custom_field_200": "",
"custom_plan_field_1": "0",
"custom_plan_field_2": "0",
"custom_plan_field_3": "0",
"custom_plan_field_4": "0",
"custom_plan_field_5": "0",
"custom_plan_field_6": "0",
"custom_plan_field_7": "0",
"custom_plan_field_8": "0",
"custom_plan_field_9": "0",
"custom_plan_field_10": "0",
"priority_label": ""
}
},
"info": "success"
}
缺陷
缺陷重要字段说明
| 字段 | 说明 |
|---|---|
| id | ID |
| title | 标题 |
| priority | 优先级 |
| priority_label | 优先级 |
| severity | 严重程度 |
| status | 状态 |
| iteration_id | 迭代 |
| module | 模块 |
| feature | 特性 |
| release_id | 发布计划 |
| version_report | 发现版本 |
| version_test | 验证版本 |
| version_fix | 合入版本 |
| version_close | 关闭版本 |
| baseline_find | 发现基线 |
| baseline_join | 合入基线 |
| baseline_test | 验证基线 |
| baseline_close | 关闭基线 |
| current_owner | 处理人 |
| cc | 抄送人 |
| reporter | 创建人 |
| participator | 参与人 |
| te | 测试人员 |
| de | 开发人员 |
| auditer | 审核人 |
| confirmer | 验证人 |
| fixer | 修复人 |
| closer | 关闭人 |
| lastmodify | 最后修改人 |
| size | 规模 |
| created | 创建时间 |
| in_progress_time | 接受处理时间 |
| resolved | 解决时间 |
| verify_time | 验证时间 |
| closed | 关闭时间 |
| reject_time | 拒绝时间 |
| modified | 最后修改时间 |
| begin | 预计开始 |
| due | 预计结束 |
| deadline | 解决期限 |
| os | 操作系统 |
| platform | 软件平台 |
| testmode | 测试方式 |
| testphase | 测试阶段 |
| testtype | 测试类型 |
| source | 缺陷根源 |
| bugtype | 缺陷类型 |
| issue_id | 问题ID |
| frequency | 重现规律 |
| originphase | 发现阶段 |
| sourcephase | 引入阶段 |
| resolution | 解决方法 |
| estimate | 预计解决时间 |
| description | 详细描述 |
| workspace_id | 项目ID |
| effort | 预估工时 |
| effort_completed | 完成工时 |
| remain | 剩余工时 |
| exceed | 超出工时 |
#常用字段候选值映射
#缺陷优先级(priority)字段说明
为了兼容自定义优先级,请使用 priority_label 字段,详情参考:如何兼容自定义优先级 。下面取值将不再使用。
| 取值 | 字面值 |
|---|---|
| urgent | 紧急 |
| high | 高 |
| medium | 中 |
| low | 低 |
| insignificant | 无关紧要 |
#缺陷严重程度(severity)字段说明
| 取值 | 字面值 |
|---|---|
| fatal | 致命 |
| serious | 严重 |
| normal | 一般 |
| prompt | 提示 |
| advice | 建议 |
#缺陷解决方法(resolution)字段说明
| 取值 | 字面值 |
|---|---|
| ignore | 无需解决 |
| fix | 延期解决 |
| failed | 无法重现 |
| external | 外部原因 |
| duplicated | 重复 |
| intentional | 设计如此 |
| unclear | 问题描述不准确 |
| hold | 挂起 |
| feature | 需求变更 |
| fixed | 已解决 |
| transferred to story | 已转需求 |
#其他字段
status(状态)/ module(模块)/ iteration_id(迭代) 等字段可选值跟当前项目有关,属于动态可选值, 需要通过接口 获取缺陷所有字段及候选值获取.
创建缺陷(bug)
url
https://api.tapd.cn/bugs
#支持格式
JSON/XML(默认JSON格式)
#HTTP请求方式
POST
#请求数限制
一次插入一条数据
#请求参数
| 字段名 | 必选 | 类型及范围 | 说明 |
|---|---|---|---|
| workspace_id | 是 |
integer | 项目ID |
| title | 是 |
string | 缺陷标题 |
| priority | 否 | string | 优先级。为了兼容自定义优先级,请使用 priority_label 字段,详情参考:如何兼容自定义优先级 |
| priority_label | 否 | string | 优先级。推荐使用这个字段 |
| severity | 否 | string | 严重程度 |
| module | 否 | string | 模块 |
| feature | 否 | string | 特性 |
| release_id | 否 | integer | 发布计划 |
| version_report | 否 | string | 发现版本 |
| version_test | 否 | string | 验证版本 |
| version_fix | 否 | string | 合入版本 |
| version_close | 否 | string | 关闭版本 |
| baseline_find | 否 | string | 发现基线 |
| baseline_join | 否 | string | 合入基线 |
| baseline_test | 否 | string | 验证基线 |
| baseline_close | 否 | string | 关闭基线 |
| current_owner | 否 | string | 处理人 |
| template_id | 否 | integer | 模板ID |
| cc | 否 | string | 抄送人 |
| reporter | 否 | string | 创建人 |
| participator | 否 | string | 参与人 |
| te | 否 | string | 测试人员 |
| de | 否 | string | 开发人员 |
| auditer | 否 | string | 审核人 |
| confirmer | 否 | string | 验证人 |
| fixer | 否 | string | 修复人 |
| closer | 否 | string | 关闭人 |
| lastmodify | 否 | string | 最后修改人 |
| in_progress_time | 否 | datetime | 接受处理时间 |
| verify_time | 否 | datetime | 验证时间 |
| reject_time | 否 | datetime | 拒绝时间 |
| begin | 否 | date | 预计开始 |
| due | 否 | date | 预计结束 |
| deadline | 否 | date | 解决期限 |
| iteration_id | 否 | string | 迭代ID |
| size | 否 | string | 规模 |
| os | 否 | string | 操作系统 |
| platform | 否 | string | 软件平台 |
| testmode | 否 | string | 测试方式 |
| testphase | 否 | string | 测试阶段 |
| testtype | 否 | string | 测试类型 |
| source | 否 | string | 缺陷根源 |
| bugtype | 否 | string | 缺陷类型 |
| frequency | 否 | string | 重现规律 |
| originphase | 否 | string | 发现阶段 |
| sourcephase | 否 | string | 引入阶段 |
| resolution | 否 | string | 解决方法 |
| estimate | 否 | integer | 预计解决时间 |
| description | 否 | string | 详细描述 |
| label | 否 | string | 标签,标签不存在时将自动创建,多个以英文坚线分格 |
| effort | 否 | integer | 预估工时 |
| is_apply_template_default_value | 否 | integer | 是否从模板继承默认值(传值=1继承模板默认值) |
| cus_{$自定义字段别名} | 否 | string | 缺陷自定义字段值,参数名会由后台自动转义为custom_field_*,如:cus_自定义字段的名称 |
| custom_field_* | 否 | string或者integer | 缺陷自定义字段参数,具体字段名通过接口 获取缺陷自定义字段配置 获取 |
| custom_plan_field_* | 否 | string或者integer | 自定义计划应用参数,具体字段名通过接口 获取自定义计划应用 获取 |
#调用示例及返回结果
#在项目下创建缺陷
#curl 使用 Basic Auth 鉴权调用示例
curl -u 'api_user:api_password' -d 'title=bug_created_by_api&workspace_id=10158231&cus_自定义字段的名称=custom_field_value' 'https://api.tapd.cn/bugs'
#返回结果
{
"status": 1,
"data": {
"Bug": {
"id": "1010158231500643487",
"title": "bug_created_by_api",
"description": null,
"priority": "",
"severity": "",
"module": null,
"status": "new",
"reporter": "api_doc_oauth",
"deadline": null,
"created": "2019-06-27 14:19:47",
"bugtype": "",
"resolved": null,
"closed": null,
"modified": "2019-06-27 14:19:47",
"lastmodify": "api_doc_oauth",
"auditer": null,
"de": null,
"fixer": null,
"version_test": "",
"version_report": "",
"version_close": "",
"version_fix": "",
"baseline_find": "",
"baseline_join": "",
"baseline_close": "",
"baseline_test": "",
"sourcephase": "",
"te": null,
"current_owner": null,
"iteration_id": "0",
"resolution": "",
"source": "",
"originphase": "",
"confirmer": null,
"milestone": null,
"participator": null,
"closer": null,
"platform": "",
"os": "",
"testtype": "",
"testphase": "",
"frequency": "",
"cc": null,
"regression_number": "0",
"flows": "new",
"feature": null,
"testmode": "",
"estimate": null,
"issue_id": null,
"created_from": "api",
"in_progress_time": null,
"verify_time": null,
"reject_time": null,
"reopen_time": null,
"audit_time": null,
"suspend_time": null,
"due": null,
"begin": null,
"release_id": null,
"label": "阻塞|延期",
"effort": null,
"effort_completed": "0",
"exceed": "0",
"remain": "0",
"cus_自定义字段的名称": "custom_field_value",
"custom_field_one": "",
"custom_field_two": "",
"custom_field_three": "",
"custom_field_four": "",
"custom_field_five": "",
"custom_field_6": "",
"custom_field_7": "",
"custom_field_8": "",
"custom_field_9": "",
"custom_field_10": "",
"custom_field_11": "",
"custom_field_12": "",
"custom_field_13": "",
"custom_field_14": "",
"custom_field_15": "",
"custom_field_16": "",
"custom_field_17": "",
"custom_field_18": "",
"custom_field_19": "",
"custom_field_20": "",
"custom_field_21": "",
"custom_field_22": "",
"custom_field_23": "",
"custom_field_24": "",
"custom_field_25": "",
"custom_field_26": "",
"custom_field_27": "",
"custom_field_28": "",
"custom_field_29": "",
"custom_field_30": "",
"custom_field_31": "",
"custom_field_32": "",
"custom_field_33": "",
"custom_field_34": "",
"custom_field_35": "",
"custom_field_36": "",
"custom_field_37": "",
"custom_field_38": "",
"custom_field_39": "",
"custom_field_40": "",
"custom_field_41": "",
"custom_field_42": "",
"custom_field_43": "",
"custom_field_44": "",
"custom_field_45": "",
"custom_field_46": "",
"custom_field_47": "",
"custom_field_48": "",
"custom_field_49": "",
"custom_field_50": "",
"workspace_id": "10158231"
}
},
"info": "success"
}
#在项目下创建一张带 tapd.cn logo 、优先级为高的缺陷
#curl 使用 Basic Auth 鉴权调用示例
curl -u 'api_user:api_password' -d 'title=tapd_logo&description=<img src="https://file.tapd.cn/img/tapd_logo_svg_fix_new.png"/>&priority=high&workspace_id=10158231' 'https://api.tapd.cn/bugs'
#返回结果
{
"status": 1,
"data": {
"Bug": {
"id": "1010158231500643491",
"title": "tapd_logo",
"description": "<img src=\"https:\/\/file.tapd.cn\/img\/tapd_logo_svg_fix_new.png\" \/>",
"priority": "high",
"severity": "",
"module": null,
"status": "new",
"reporter": "api_doc_oauth",
"deadline": null,
"created": "2019-06-27 14:19:48",
"bugtype": "",
"resolved": null,
"closed": null,
"modified": "2019-06-27 14:19:48",
"lastmodify": "api_doc_oauth",
"auditer": null,
"de": null,
"fixer": null,
"version_test": "",
"version_report": "",
"version_close": "",
"version_fix": "",
"baseline_find": "",
"baseline_join": "",
"baseline_close": "",
"baseline_test": "",
"sourcephase": "",
"te": null,
"current_owner": null,
"iteration_id": "0",
"resolution": "",
"source": "",
"originphase": "",
"confirmer": null,
"milestone": null,
"participator": null,
"closer": null,
"platform": "",
"os": "",
"testtype": "",
"testphase": "",
"frequency": "",
"cc": null,
"regression_number": "0",
"flows": "new",
"feature": null,
"testmode": "",
"estimate": null,
"issue_id": null,
"created_from": "api",
"in_progress_time": null,
"verify_time": null,
"reject_time": null,
"reopen_time": null,
"audit_time": null,
"suspend_time": null,
"due": null,
"begin": null,
"release_id": null,
"custom_field_one": "",
"custom_field_two": "",
"custom_field_three": "",
"custom_field_four": "",
"custom_field_five": "",
"custom_field_6": "",
"custom_field_7": "",
"custom_field_8": "",
"custom_field_9": "",
"custom_field_10": "",
"custom_field_11": "",
"custom_field_12": "",
"custom_field_13": "",
"custom_field_14": "",
"custom_field_15": "",
"custom_field_16": "",
"custom_field_17": "",
"custom_field_18": "",
"custom_field_19": "",
"custom_field_20": "",
"custom_field_21": "",
"custom_field_22": "",
"custom_field_23": "",
"custom_field_24": "",
"custom_field_25": "",
"custom_field_26": "",
"custom_field_27": "",
"custom_field_28": "",
"custom_field_29": "",
"custom_field_30": "",
"custom_field_31": "",
"custom_field_32": "",
"custom_field_33": "",
"custom_field_34": "",
"custom_field_35": "",
"custom_field_36": "",
"custom_field_37": "",
"custom_field_38": "",
"custom_field_39": "",
"custom_field_40": "",
"custom_field_41": "",
"custom_field_42": "",
"custom_field_43": "",
"custom_field_44": "",
"custom_field_45": "",
"custom_field_46": "",
"custom_field_47": "",
"custom_field_48": "",
"custom_field_49": "",
"custom_field_50": "",
"workspace_id": "10158231"
}
},
"info": "success"
}
获取缺陷
说明
返回符合查询条件的所有缺陷(分页显示,默认一页30条)
#url
https://api.tapd.cn/bugs
#支持格式
JSON/XML(默认JSON格式)
#HTTP请求方式
GET
#请求数限制
默认返回 30 条。可通过传 limit 参数设置,最大取 200。也可以传 page 参数翻页
#请求参数
| 字段名 | 必选 | 类型及范围 | 说明 | 特殊规则 |
|---|---|---|---|---|
| id | 否 | integer | ID | 支持多ID查询 |
| title | 否 | string | 标题 | 支持模糊匹配 |
| priority | 否 | string | 优先级。为了兼容自定义优先级,请使用 priority_label 字段,详情参考:如何兼容自定义优先级 |
|
| priority_label | 否 | string | 优先级。推荐使用这个字段 | |
| severity | 否 | string | 严重程度 | 支持枚举查询 |
| status | 否 | string | 状态 | 支持不等于查询、枚举查询 |
| v_status | 否 | string | 状态(支持传入中文状态名称) | |
| label | 否 | string | 标签查询 | 支持枚举查询 |
| iteration_id | 否 | string | 迭代 | 支持枚举查询 |
| module | 否 | string | 模块 | 支持枚举查询 |
| release_id | 否 | integer | 发布计划 | |
| version_report | 否 | string | 发现版本 | 枚举查询 |
| version_test | 否 | string | 验证版本 | |
| version_fix | 否 | string | 合入版本 | |
| version_close | 否 | string | 关闭版本 | |
| baseline_find | 否 | string | 发现基线 | |
| baseline_join | 否 | string | 合入基线 | |
| baseline_test | 否 | string | 验证基线 | |
| baseline_close | 否 | string | 关闭基线 | |
| feature | 否 | string | 特性 | |
| current_owner | 否 | string | 处理人 | 支持模糊匹配 |
| cc | 否 | string | 抄送人 | |
| reporter | 否 | string | 创建人 | 支持多人员查询 |
| participator | 否 | string | 参与人 | 支持多人员查询 |
| te | 否 | string | 测试人员 | 支持模糊匹配 |
| de | 否 | string | 开发人员 | 支持模糊匹配 |
| auditer | 否 | string | 审核人 | |
| confirmer | 否 | string | 验证人 | |
| fixer | 否 | string | 修复人 | |
| closer | 否 | string | 关闭人 | |
| lastmodify | 否 | string | 最后修改人 | |
| created | 否 | datetime | 创建时间 | 支持时间查询 |
| in_progress_time | 否 | datetime | 接受处理时间 | 支持时间查询 |
| resolved | 否 | datetime | 解决时间 | 支持时间查询 |
| verify_time | 否 | datetime | 验证时间 | 支持时间查询 |
| closed | 否 | datetime | 关闭时间 | 支持时间查询 |
| reject_time | 否 | datetime | 拒绝时间 | 支持时间查询 |
| modified | 否 | datetime | 最后修改时间 | 支持时间查询 |
| begin | 否 | date | 预计开始 | |
| due | 否 | date | 预计结束 | |
| deadline | 否 | date | 解决期限 | |
| os | 否 | string | 操作系统 | |
| size | 否 | string | 规模 | |
| platform | 否 | string | 软件平台 | |
| testmode | 否 | string | 测试方式 | |
| testphase | 否 | string | 测试阶段 | |
| testtype | 否 | string | 测试类型 | |
| source | 否 | string | 缺陷根源 | 支持枚举查询 |
| bugtype | 否 | string | 缺陷类型 | |
| frequency | 否 | string | 重现规律 | 支持枚举查询 |
| originphase | 否 | string | 发现阶段 | |
| sourcephase | 否 | string | 引入阶段 | |
| resolution | 否 | string | 解决方法 | 支持枚举查询 |
| estimate | 否 | integer | 预计解决时间 | |
| description | 否 | string | 详细描述 | 支持模糊匹配 |
| workspace_id | 是 |
integer | 项目ID | |
| custom_field_* | 否 | string或者integer | 自定义字段参数,具体字段名通过接口 获取缺陷自定义字段配置 获取 | 支持枚举查询 |
| custom_plan_field_* | 否 | string或者integer | 自定义计划应用参数,具体字段名通过接口 获取自定义计划应用 获取 | |
| limit | 否 | integer | 设置返回数量限制,默认为30 | |
| page | 否 | integer | 返回当前数量限制下第N页的数据,默认为1(第一页) | |
| order | 否 | string | 排序规则,规则:字段名 ASC或者DESC,然后 urlencode | 如按创建时间逆序:order=created%20desc |
| fields | 否 | string | 设置获取的字段,多个字段间以','逗号隔开 |
#调用示例及返回结果
#获取项目下的缺陷数据
#curl 使用 Basic Auth 鉴权调用示例
curl -u 'api_user:api_password' 'https://api.tapd.cn/bugs?workspace_id=10158231&limit=2'
#返回结果
{
"status": 1,
"data": [
{
"Bug": {
"id": "1010158231500628817",
"title": "【示例】新官网Chrome浏览器兼容性bug",
"description": null,
"priority": "high",
"severity": "prompt",
"module": null,
"status": "in_progress",
"reporter": "anyechen",
"deadline": null,
"created": "2017-06-20 16:49:19",
"bugtype": "",
"resolved": null,
"closed": null,
"modified": "2018-01-12 14:45:27",
"lastmodify": "anyechen",
"auditer": null,
"de": null,
"fixer": null,
"version_test": "",
"version_report": "版本1",
"version_close": "",
"version_fix": "",
"baseline_find": "",
"baseline_join": "",
"baseline_close": "",
"baseline_test": "",
"sourcephase": "",
"te": null,
"current_owner": null,
"iteration_id": "0",
"resolution": "",
"source": "",
"originphase": "",
"confirmer": null,
"milestone": null,
"participator": null,
"closer": null,
"platform": "",
"os": "",
"testtype": "",
"testphase": "",
"frequency": "",
"cc": null,
"regression_number": "0",
"flows": "new",
"feature": null,
"testmode": "",
"estimate": null,
"issue_id": null,
"created_from": null,
"in_progress_time": null,
"verify_time": null,
"reject_time": null,
"reopen_time": null,
"audit_time": null,
"suspend_time": null,
"due": null,
"begin": null,
"release_id": null,
"label": "阻塞|重点关注",
"custom_field_one": "",
"custom_field_two": "",
"custom_field_three": "",
"custom_field_four": "",
"custom_field_five": "",
"custom_field_6": "",
"custom_field_7": "",
"custom_field_8": "",
"custom_field_9": "",
"custom_field_10": "",
"custom_field_11": "",
"custom_field_12": "",
"custom_field_13": "",
"custom_field_14": "",
"custom_field_15": "",
"custom_field_16": "",
"custom_field_17": "",
"custom_field_18": "",
"custom_field_19": "",
"custom_field_20": "",
"custom_field_21": "",
"custom_field_22": "",
"custom_field_23": "",
"custom_field_24": "",
"custom_field_25": "",
"custom_field_26": "",
"custom_field_27": "",
"custom_field_28": "",
"custom_field_29": "",
"custom_field_30": "",
"custom_field_31": "",
"custom_field_32": "",
"custom_field_33": "",
"custom_field_34": "",
"custom_field_35": "",
"custom_field_36": "",
"custom_field_37": "",
"custom_field_38": "",
"custom_field_39": "",
"custom_field_40": "",
"custom_field_41": "",
"custom_field_42": "",
"custom_field_43": "",
"custom_field_44": "",
"custom_field_45": "",
"custom_field_46": "",
"custom_field_47": "",
"custom_field_48": "",
"custom_field_49": "",
"custom_field_50": "",
"workspace_id": "10158231"
}
},
{
"Bug": {
"id": "1010158231500628815",
"title": "【示例】新官网页面宽度自适应bug",
"description": null,
"priority": "medium",
"severity": "normal",
"module": null,
"status": "new",
"reporter": "anyechen",
"deadline": null,
"created": "2017-06-20 16:49:19",
"bugtype": "",
"resolved": null,
"closed": null,
"modified": "2017-06-20 16:49:19",
"lastmodify": "ruirayli",
"auditer": null,
"de": null,
"fixer": null,
"version_test": "",
"version_report": "版本1",
"version_close": "",
"version_fix": "",
"baseline_find": "",
"baseline_join": "",
"baseline_close": "",
"baseline_test": "",
"sourcephase": "",
"te": null,
"current_owner": null,
"iteration_id": "0",
"resolution": "",
"source": "",
"originphase": "",
"confirmer": null,
"milestone": null,
"participator": null,
"closer": null,
"platform": "",
"os": "",
"testtype": "",
"testphase": "",
"frequency": "",
"cc": null,
"regression_number": "0",
"flows": "new",
"feature": null,
"testmode": "",
"estimate": null,
"issue_id": null,
"created_from": null,
"in_progress_time": null,
"verify_time": null,
"reject_time": null,
"reopen_time": null,
"audit_time": null,
"suspend_time": null,
"due": null,
"begin": null,
"release_id": null,
"custom_field_one": "",
"custom_field_two": "",
"custom_field_three": "",
"custom_field_four": "",
"custom_field_five": "",
"custom_field_6": "",
"custom_field_7": "",
"custom_field_8": "",
"custom_field_9": "",
"custom_field_10": "",
"custom_field_11": "",
"custom_field_12": "",
"custom_field_13": "",
"custom_field_14": "",
"custom_field_15": "",
"custom_field_16": "",
"custom_field_17": "",
"custom_field_18": "",
"custom_field_19": "",
"custom_field_20": "",
"custom_field_21": "",
"custom_field_22": "",
"custom_field_23": "",
"custom_field_24": "",
"custom_field_25": "",
"custom_field_26": "",
"custom_field_27": "",
"custom_field_28": "",
"custom_field_29": "",
"custom_field_30": "",
"custom_field_31": "",
"custom_field_32": "",
"custom_field_33": "",
"custom_field_34": "",
"custom_field_35": "",
"custom_field_36": "",
"custom_field_37": "",
"custom_field_38": "",
"custom_field_39": "",
"custom_field_40": "",
"custom_field_41": "",
"custom_field_42": "",
"custom_field_43": "",
"custom_field_44": "",
"custom_field_45": "",
"custom_field_46": "",
"custom_field_47": "",
"custom_field_48": "",
"custom_field_49": "",
"custom_field_50": "",
"workspace_id": "10158231"
}
}
],
"info": "success"
}