G41_TAPD_BUG_SYNC/TAPD接口文档.md

2720 lines
116 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

**文档内地址为tapd-api.bilibili.co/tapd请修改为公司地址 https://tapd-api.bilibili.co/tapd/**
# 过滤器FilterSpec
### FilterSpec
**示例**
```json
{
"conjunction": "CONJUNCTION_AND",
"conditions": [
]
}
```
**参数说明**
| 参数名 | 类型 | 描述 |
| ----------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| conjunction | string | 多个conditions之间是以and(`CONJUNCTION_AND`)还是or(`CONJUNCTION_OR`)进行组合 |
| conditions | object[]([Condition](https://developer.work.weixin.qq.com/document/path/101155#condition)) | 判断条件 |
### Condition
**注:不同字段类型支持的筛选不同,需要根据智能表格不同字段类型实际支持的筛选条件进行组合**
**示例1**
过滤`FIELDID1`字段包含文本`hello world`的记录
```json
{
"field_id": "FIELDID1",
"field_type": "FIELD_TYPE_TEXT",
"operator": "OPERATOR_CONTAINS",
"string_value": {
"value": [
"hello world"
]
}
}
```
**示例2**
过滤`FIELDID2`字段为用户`USERID1`的记录
```json
{
"field_id": "FIELDID2",
"field_type": "FIELD_TYPE_USER",
"operator": "OPERATOR_IS",
"user_value": {
"value": ["USERID1"]
}
}
```
**示例3**
过滤`FIELDID3`字段为日期`2025年5月14日`的记录
```json
{
"field_id": "FIELDID3",
"field_type": "FIELD_TYPE_DATE_TIME",
"operator": "OPERATOR_IS",
"date_time_value": {
"type": "DATE_TIME_TYPE_DETAIL_DATE",
"value": [
"1747152000000"
]
}
}
```
**参数说明**
| 参数名 | 类型 | 描述 |
| ------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| field_id | string | 字段ID |
| field_type | string | 字段类型。见[FieldType](https://developer.work.weixin.qq.com/document/path/101155#fieldtype) |
| operator | string | 判断类型。见[Operator](https://developer.work.weixin.qq.com/document/path/101155#operator) |
| string_value.value | string[] | 文本、网址、电话、邮箱、地理位置、单选、多选等列类型使用。选项列为选项ID其它为文本值 |
| number_value.value | double | 数字、进度列类型使用 |
| bool_value.value | bool | 复选框列类型使用 |
| user_value.value | string[] | 人员、创建人、最后编辑人列类型使用值为成员ID |
| date_time_value | object([FilterDataTimeValue](https://developer.work.weixin.qq.com/document/path/101155#filterdatetimevalue)) | 日期、创建时间、最后编辑时间列类型使用 |
### FieldType
| 字段类型 | 说明 |
| ------------------------ | ------------ |
| FIELD_TYPE_TEXT | 文本 |
| FIELD_TYPE_NUMBER | 数字 |
| FIELD_TYPE_CHECKBOX | 复选框 |
| FIELD_TYPE_DATE_TIME | 日期 |
| FIELD_TYPE_IMAGE | 图片 |
| FIELD_TYPE_ATTACHMENT | 文件 |
| FIELD_TYPE_USER | 人员 |
| FIELD_TYPE_URL | 链接 |
| FIELD_TYPE_SELECT | 多选 |
| FIELD_TYPE_CREATED_USER | 创建人 |
| FIELD_TYPE_MODIFIED_USER | 最后编辑人 |
| FIELD_TYPE_CREATED_TIME | 创建时间 |
| FIELD_TYPE_MODIFIED_TIME | 最后编辑时间 |
| FIELD_TYPE_PROGRESS | 进度 |
| FIELD_TYPE_PHONE_NUMBER | 电话 |
| FIELD_TYPE_EMAIL | 邮箱 |
| FIELD_TYPE_SINGLE_SELECT | 单选 |
| FIELD_TYPE_LOCATION | 地理位置 |
### Operator
| 筛选值判断操作类型 | 说明 |
| ---------------------------- | ---------- |
| OPERATOR_UNKNOWN | 未知 |
| OPERATOR_IS | 等于 |
| OPERATOR_IS_NOT | 不等于 |
| OPERATOR_CONTAINS | 包含 |
| OPERATOR_DOES_NOT_CONTAIN | 不包含 |
| OPERATOR_IS_GREATER | 大于 |
| OPERATOR_IS_GREATER_OR_EQUAL | 大于或等于 |
| OPERATOR_IS_LESS | 小于 |
| OPERATOR_IS_LESS_OR_EQUAL | 小于或等于 |
| OPERATOR_IS_EMPTY | 为空 |
| OPERATOR_IS_NOT_EMPTY | 不为空 |
### FilterDataTimeValue
| 参数名 | 类型 | 描述 | |
| ------ | -------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| type | string | 日期类型。见[DateTimeType](https://developer.work.weixin.qq.com/document/path/101155#datetimetype) | |
| value | string[] | 是 | 具体日期值type为具体日期(`DATE_TIME_TYPE_DETAIL_DATE`)时必填 |
### DateTimeType
| 日期值类型 | 说明 |
| ------------------------------- | -------------- |
| DATE_TIME_TYPE_DETAIL_DATE | 具体时间 |
| DATE_TIME_TYPE_TODAY | 今天 |
| DATE_TIME_TYPE_TOMORROW | 明天 |
| DATE_TIME_TYPE_YESTERDAY | 昨天 |
| DATE_TIME_TYPE_CURRENT_WEEK | 本周 |
| DATE_TIME_TYPE_LAST_WEEK | 上周 |
| DATE_TIME_TYPE_CURRENT_MONTH | 本月 |
| DATE_TIME_TYPE_THE_PAST_7_DAYS | 过去 7 天内 |
| DATE_TIME_TYPE_THE_NEXT_7_DAYS | 接下来 7 天内 |
| DATE_TIME_TYPE_LAST_MONTH | 上月 |
| DATE_TIME_TYPE_THE_PAST_30_DAYS | 过去 30 天内 |
| DATE_TIME_TYPE_THE_NEXT_30_DAYS | 接下来 30 天内 |
# 需求
# 需求(story)字段说明
## [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/story.html#需求重要字段说明)需求重要字段说明
| 字段 | 说明 |
| :-----------------: | :----------------------------------------------------------: |
| 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_* | 自定义字段参数,具体字段名通过接口 [获取需求自定义字段配置](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/get_story_custom_fields_settings.html) 获取 |
| custom_plan_field_* | 自定义计划应用参数,具体字段名通过接口 [获取自定义计划应用](https://open.tapd.cn/document/api-doc/API文档/api_reference/iteration/get_plan_apps.html) 获取 |
## [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/story.html#需求优先级-priority-取值字段说明)需求优先级(priority)取值字段说明
为了兼容自定义优先级,`请使用 priority_label 字段`,详情参考:[如何兼容自定义优先级](https://open.tapd.cn/document/api-doc/API文档/subject/custom_priority/) 。
## [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/story.html#其他字段)其他字段
status(状态)/ module(模块)/ iteration_id(迭代) 等字段可选值跟当前项目有关,属于动态可选值, 需要通过接口 [获取需求所有字段及候选值](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/get_story_fields_info.html)获取.
## 创建需求
### url
```
https://tapd-api.bilibili.co/tapd/stories
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/add_story.html#支持格式)支持格式
JSON/XML默认JSON格式
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/add_story.html#http请求方式)HTTP请求方式
POST
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/add_story.html#请求数限制)请求数限制
一次插入一条数据
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/add_story.html#请求参数)请求参数
| 字段名 | 必选 | 类型及范围 | 说明 |
| :-----------------------------: | :--: | :---------------: | :----------------------------------------------------------: |
| workspace_id | `是` | integer | 项目ID |
| name | `是` | string | 标题 |
| priority | 否 | string | 优先级。为了兼容自定义优先级,`请使用 priority_label 字段`,详情参考:[如何兼容自定义优先级](https://open.tapd.cn/document/api-doc/API文档/subject/custom_priority/) |
| 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 | 自定义字段参数,具体字段名通过接口 [获取需求自定义字段配置](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/get_story_custom_fields_settings.html) 获取 |
| custom_plan_field_* | 否 | string或者integer | 自定义计划应用参数,具体字段名通过接口 [获取自定义计划应用](https://open.tapd.cn/document/api-doc/API文档/api_reference/iteration/get_plan_apps.html) 获取 |
| is_apply_template_default_value | 否 | integer | 是否从模板继承默认值、保密设置(传值=1继承模板默认值 |
| apply_template | 否 | string | 模版选项,支持多个选项传入,使用','隔开 如: "option1,option2" 当前支持参数:preset_stories(支持创建需求模板预设子需求),preset_tasks(支持创建需求模板预设子任务) |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/add_story.html#调用示例及返回结果)调用示例及返回结果
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/add_story.html#在项目下创建需求)在项目下创建需求
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/add_story.html#curl-使用-basic-auth-鉴权调用示例)curl 使用 Basic Auth 鉴权调用示例
```
curl -u 'api_user:api_password' -d 'name=story_created_by_api&workspace_id=10158231&cus_自定义字段的名称=custom_field_value' 'https://tapd-api.bilibili.co/tapd/stories'
```
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/story/add_story.html#返回结果)返回结果
```json
{
"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"
}
```
# 缺陷
## 获取缺陷所有字段及候选值
### 说明
返回缺陷所有字段及候选值(枚举值),即通常理解的字段的 "英文Key" 和 "中文值".
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#url)url
```
https://tapd-api.bilibili.co/bugs/get_fields_info
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#支持格式)支持格式
JSON/XML默认JSON格式
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#http请求方式)HTTP请求方式
GET
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#请求数限制)请求数限制
默认返回所有数据
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#请求参数)请求参数
| 字段名 | 必选 | 类型及范围 | 说明 | 特殊规则 |
| :----------: | :--: | :--------: | :----------------------------------------------------------: | :------: |
| workspace_id | `是` | integer | 项目ID | |
| all_options | 否 | integer | 是否也返回已关闭的选项。all_options=1 则返回。默认是 0不返回与TAPD界面对齐 | |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#调用示例及返回结果)调用示例及返回结果
## [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#获取项目下的缺陷字段)获取项目下的缺陷字段
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#curl-使用-basic-auth-鉴权调用示例)curl 使用 Basic Auth 鉴权调用示例
```
curl -u 'api_user:api_password' 'https://tapd-api.bilibili.co/bugs/get_fields_info?workspace_id=10104801'
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#返回结果)返回结果
```json
{
"status": 1,
"data": {
"id": {
"name": "id",
"label": "ID",
"options": [],
"pure_options": [],
"html_type": "input",
"memo": ""
},
"title": {
"name": "title",
"label": "标题",
"options": [],
"pure_options": [],
"html_type": "input",
"memo": ""
},
"description": {
"name": "description",
"label": "详细描述",
"options": [],
"pure_options": [],
"html_type": "rich_edit",
"memo": ""
},
"module": {
"name": "module",
"label": "模块",
"options": {
"333": "333",
"创建模块": "创建模块"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"feature": {
"name": "feature",
"label": "特性",
"options": {
"tx1": "tx1"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"reporter": {
"name": "reporter",
"label": "创建人",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"deadline": {
"name": "deadline",
"label": "解决期限",
"options": [],
"pure_options": [],
"html_type": "dateinput",
"memo": ""
},
"created": {
"name": "created",
"label": "创建时间",
"options": [],
"pure_options": [],
"html_type": "datetime",
"memo": ""
},
"reopen_time": {
"name": "reopen_time",
"label": "重新打开时间",
"options": [],
"pure_options": [],
"html_type": "datetime",
"memo": ""
},
"closed": {
"name": "closed",
"label": "关闭时间",
"options": [],
"pure_options": [],
"html_type": "datetime",
"memo": ""
},
"modified": {
"name": "modified",
"label": "最后修改时间",
"options": [],
"pure_options": [],
"html_type": "datetime",
"memo": ""
},
"lastmodify": {
"name": "lastmodify",
"label": "最后修改人",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"de": {
"name": "de",
"label": "开发人员",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"te": {
"name": "te",
"label": "测试人员",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"auditer": {
"name": "auditer",
"label": "审核人",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"confirmer": {
"name": "confirmer",
"label": "验证人",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"current_owner": {
"name": "current_owner",
"label": "处理人",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"status": {
"name": "status",
"label": "状态",
"options": {
"new": "新",
"in_progress": "接受/处理",
"assigned": "已分配",
"verified": "已验证",
"postponed": "延期",
"reopened": "重新打开",
"resolved": "已解决",
"rejected": "已拒绝",
"closed": "已关闭x",
"unconfirmed": "待确认的",
"planning": "计划中",
"feedback": "需要再次说明",
"acknowledged": "已了解",
"suspended": "挂起",
"TM_audited": "TM审核",
"PMM_audited": "PMM审核",
"PM_audited": "PM审核",
"QA_audited": "QA审核"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"resolution": {
"name": "resolution",
"label": "解决方法",
"options": {
"ignore": "无需解决",
"fixed": "已修改",
"fix later": "延期解决",
"failed to recur": "无法重现",
"external reason": "外部原因",
"duplicated": "重复",
"intentional design": "设计如此",
"unclear description ": "问题描述不准确",
"feature change": "需求变更",
"transferred to story": "已转需求",
"hold": "挂起"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"priority": {
"name": "priority",
"label": "优先级",
"color_options": [
{
"value": "urgent",
"label": "紧急",
"color": "#FF6770"
},
{
"value": "high",
"label": "高",
"color": "#FF6770"
},
{
"value": "medium",
"label": "中",
"color": "#28AB80"
},
{
"value": "low",
"label": "低",
"color": "#7C8597"
},
{
"value": "insignificant",
"label": "无关紧要",
"color": "#7C8597"
}
],
"pure_options": [],
"html_type": "select",
"memo": "",
"options": {
"urgent": "紧急",
"high": "高",
"medium": "中",
"low": "低",
"insignificant": "无关紧要"
}
},
"severity": {
"name": "severity",
"label": "严重程度",
"options": {
"fatal": "致命",
"serious": "严重",
"normal": "一般",
"prompt": "提示",
"advice": "建议"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"platform": {
"name": "platform",
"label": "软件平台",
"options": {
"PC": "PC",
"其他": "其他"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"os": {
"name": "os",
"label": "操作系统",
"options": {
"All": "All",
"Windows XP": "Windows XP",
"Windows 2000": "Windows 2000",
"Windows NT": "Windows NT",
"Linux": "Linux",
"Unix": "Unix"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"testmode": {
"name": "testmode",
"label": "测试方式",
"options": {
"手工测试": "手工测试",
"自动化测试": "自动化测试"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"testtype": {
"name": "testtype",
"label": "测试类型",
"options": {
"功能测试": "功能测试",
"性能测试": "性能测试",
"界面测试": "界面测试"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"testphase": {
"name": "testphase",
"label": "测试阶段",
"options": {
"单元测试": "单元测试",
"集成测试": "集成测试",
"系统测试": "系统测试",
"运营测试": "运营测试"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"source": {
"name": "source",
"label": "缺陷根源",
"options": {
"需求": "需求",
"设计": "设计",
"编码": "编码",
"其它": "其它"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"frequency": {
"name": "frequency",
"label": "重现规律",
"options": {
"可重现": "可重现",
"随机重现": "随机重现",
"不可重现": "不可重现"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"cc": {
"name": "cc",
"label": "抄送人",
"options": [],
"pure_options": [],
"html_type": "mix_chooser",
"memo": ""
},
"fixer": {
"name": "fixer",
"label": "修复人",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"closer": {
"name": "closer",
"label": "关闭人",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"participator": {
"name": "participator",
"label": "参与人",
"options": [],
"pure_options": [],
"html_type": "user_chooser",
"memo": ""
},
"version_report": {
"name": "version_report",
"label": "发现版本",
"options": {
"ver1.1": "ver1.1",
"[v1.16.1]计费下单支付-支持渠道物品信息反查": "[v1.16.1]计费下单支付-支持渠道物品信息反查",
"测试": "测试"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"version_test": {
"name": "version_test",
"label": "验证版本",
"options": {
"ver1.1": "ver1.1",
"[v1.16.1]计费下单支付-支持渠道物品信息反查": "[v1.16.1]计费下单支付-支持渠道物品信息反查",
"测试": "测试"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"version_fix": {
"name": "version_fix",
"label": "合入版本",
"options": {
"ver1.1": "ver1.1",
"[v1.16.1]计费下单支付-支持渠道物品信息反查": "[v1.16.1]计费下单支付-支持渠道物品信息反查",
"测试": "测试"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"version_close": {
"name": "version_close",
"label": "关闭版本",
"options": {
"ver1.1": "ver1.1",
"[v1.16.1]计费下单支付-支持渠道物品信息反查": "[v1.16.1]计费下单支付-支持渠道物品信息反查",
"测试": "测试"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"baseline_find": {
"name": "baseline_find",
"label": "发现基线",
"options": [],
"pure_options": [],
"html_type": "select",
"memo": ""
},
"baseline_join": {
"name": "baseline_join",
"label": "合入基线",
"options": [],
"pure_options": [],
"html_type": "select",
"memo": ""
},
"baseline_close": {
"name": "baseline_close",
"label": "关闭基线",
"options": [],
"pure_options": [],
"html_type": "select",
"memo": ""
},
"baseline_test": {
"name": "baseline_test",
"label": "验证基线",
"options": [],
"pure_options": [],
"html_type": "select",
"memo": ""
},
"originphase": {
"name": "originphase",
"label": "发现阶段",
"options": {
"需求阶段": "需求阶段",
"架构阶段": "架构阶段",
"设计阶段": "设计阶段",
"编码阶段": "编码阶段",
"测试阶段": "测试阶段",
"上线阶段": "上线阶段"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"sourcephase": {
"name": "sourcephase",
"label": "引入阶段",
"options": {
"需求阶段": "需求阶段",
"架构阶段": "架构阶段",
"设计阶段": "设计阶段",
"编码阶段": "编码阶段",
"测试阶段": "测试阶段",
"集成阶段": "集成阶段"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"bugtype": {
"name": "bugtype",
"label": "缺陷类型",
"options": {
"SQL注入": "SQL注入",
"XSS": "XSS",
"CSRF": "CSRF",
"访问控制": "访问控制",
"权限控制": "权限控制",
"其它": "其它"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"reject_time": {
"name": "reject_time",
"label": "拒绝时间",
"options": [],
"pure_options": [],
"html_type": "datetime",
"memo": ""
},
"in_progress_time": {
"name": "in_progress_time",
"label": "接受处理时间",
"options": [],
"pure_options": [],
"html_type": "datetime",
"memo": ""
},
"resolved": {
"name": "resolved",
"label": "解决时间",
"options": [],
"pure_options": [],
"html_type": "datetime",
"memo": ""
},
"verify_time": {
"name": "verify_time",
"label": "验证时间",
"options": [],
"pure_options": [],
"html_type": "datetime",
"memo": ""
},
"assigned_time": {
"name": "assigned_time",
"label": "分配时间",
"options": [],
"pure_options": [],
"html_type": "datetime",
"memo": ""
},
"iteration_id": {
"name": "iteration_id",
"label": "迭代",
"options": {
"1010104801001787437": "测试自定义字段",
"1010104801001662155": "fromAPI",
"1010104801001641399": "create by api",
"1010104801001641397": "页面新迭代",
"1010104801001595935": "锁定的迭代",
"1010104801001179909": "aaaassssss",
"1020419374001202991": "adra",
"1010104801001179887": "cjdd",
"1010104801001103985": "对对对",
"1010104801001112221": "myI",
"1010104801001080913": "【Word】191001常规发布",
"1010104801001171067": "oyctest20190911xxx1111",
"1010104801001169803": "oyctest20190911xxx1111",
"1010104801001105965": "oyctest20190911xxx1111",
"1010104801001105193": "oyctest20190911xxx1111",
"1010104801001082017": "日常发布",
"1010104801001082013": "日常发布",
"1010104801001081899": "oyctest20190917ABC2",
"1010104801001080783": "日常发布",
"1010104801001123207": "oyctest20190911",
"1010104801000507689": "i1",
"1010104801000423181": "迭代1",
"1010104801001733159": "测试创建迭代2",
"1010104801001628193": "API创建测试",
"1010104801001628057": "测试创建迭代2",
"1010104801001628055": "测试创建迭代"
},
"pure_options": [
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299600000",
"value": "1010104801001787437",
"label": "测试自定义字段",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299500000",
"value": "1010104801001662155",
"label": "fromAPI",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299400000",
"value": "1010104801001641399",
"label": "create by api",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299300000",
"value": "1010104801001641397",
"label": "页面新迭代",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299200000",
"value": "1010104801001595935",
"label": "锁定的迭代",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "117990900000",
"value": "1010104801001179909",
"label": "aaaassssss",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299100000",
"value": "1020419374001202991",
"label": "adra",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "117988700000",
"value": "1010104801001179887",
"label": "cjdd",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "110398500000",
"value": "1010104801001103985",
"label": "对对对",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "111222100000",
"value": "1010104801001112221",
"label": "myI",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "108091300000",
"value": "1010104801001080913",
"label": "【Word】191001常规发布",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "117106700000",
"value": "1010104801001171067",
"label": "oyctest20190911xxx1111",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "116980300000",
"value": "1010104801001169803",
"label": "oyctest20190911xxx1111",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "110596500000",
"value": "1010104801001105965",
"label": "oyctest20190911xxx1111",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "110519300000",
"value": "1010104801001105193",
"label": "oyctest20190911xxx1111",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "108201700000",
"value": "1010104801001082017",
"label": "日常发布",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "108201300000",
"value": "1010104801001082013",
"label": "日常发布",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "108189900000",
"value": "1010104801001081899",
"label": "oyctest20190917ABC2",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "108078300000",
"value": "1010104801001080783",
"label": "日常发布",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "112320700000",
"value": "1010104801001123207",
"label": "oyctest20190911",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "50768900000",
"value": "1010104801000507689",
"label": "i1",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "42318100000",
"value": "1010104801000423181",
"label": "迭代1",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "0",
"value": "1010104801001733159",
"label": "测试创建迭代2",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "0",
"value": "1010104801001628193",
"label": "API创建测试",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "0",
"value": "1010104801001628057",
"label": "测试创建迭代2",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "0",
"value": "1010104801001628055",
"label": "测试创建迭代",
"panel": 0
}
],
"html_type": "select",
"lock_info": [],
"memo": ""
},
"project_id": {
"name": "project_id",
"label": "所属项目",
"options": {
"10104801": "TAPD 乌云"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"begin": {
"name": "begin",
"label": "预计开始",
"options": [],
"pure_options": [],
"html_type": "dateinput",
"memo": ""
},
"due": {
"name": "due",
"label": "预计结束",
"options": [],
"pure_options": [],
"html_type": "dateinput",
"memo": ""
},
"label": {
"name": "label",
"label": "标签",
"options": {
"三方依赖": "三方依赖",
"待讨论": "待讨论",
"提高优先级": "提高优先级",
"管理层关注": "管理层关注",
"紧急需求": "紧急需求",
"非常棒": "非常棒",
"阻塞": "阻塞",
"开发受阻": "开发受阻",
"有风险": "有风险",
"等待设计走查": "等待设计走查",
"方案已沟通": "方案已沟通",
"等待转测": "等待转测"
},
"pure_options": [],
"html_type": "multi_select",
"memo": ""
},
"size": {
"name": "size",
"label": "规模",
"options": [],
"pure_options": [],
"html_type": "integer",
"memo": ""
},
"effort": {
"name": "effort",
"label": "预估工时",
"options": [],
"pure_options": [],
"html_type": "float",
"memo": ""
},
"effort_completed": {
"name": "effort_completed",
"label": "完成工时",
"options": [],
"pure_options": [],
"html_type": "float",
"memo": ""
},
"remain": {
"name": "remain",
"label": "剩余工时",
"options": [],
"pure_options": [],
"html_type": "float",
"memo": ""
},
"exceed": {
"name": "exceed",
"label": "超出工时",
"options": [],
"pure_options": [],
"html_type": "float",
"memo": ""
},
"progress": {
"name": "progress",
"label": "进度",
"options": [],
"pure_options": [],
"html_type": "input",
"memo": ""
},
"estimate": {
"name": "estimate",
"label": "预计解决时间",
"options": [],
"pure_options": [],
"html_type": "int",
"memo": ""
},
"custom_field_four": {
"name": "custom_field_four",
"label": "文本的",
"options": [],
"pure_options": [],
"html_type": "text",
"memo": ""
},
"custom_field_one": {
"name": "custom_field_one",
"label": "测试下拉",
"options": {
"xxx": "xxx",
"qqq": "qqq"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"custom_field_two": {
"name": "custom_field_two",
"label": "测试字段",
"options": [],
"pure_options": [],
"html_type": "text",
"memo": ""
},
"custom_field_three": {
"name": "custom_field_three",
"label": "123",
"options": [],
"pure_options": [],
"html_type": "text",
"memo": ""
},
"custom_plan_field_1": {
"name": "custom_plan_field_1",
"label": "超级迭代",
"options": {
"1010104801001754573": "快速迭代1"
},
"pure_options": [
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299600000",
"plan_app_id": "1010104801000000397",
"value": "1010104801001754573",
"label": "快速迭代1",
"panel": 0
}
],
"html_type": "select",
"memo": ""
},
"custom_plan_field_2": {
"name": "custom_plan_field_2",
"label": "发布计划",
"options": {
"1010104801001934461": "v2test",
"1010104801001934459": "test",
"1010104801001934457": "发布",
"1010104801001934455": "4324"
},
"pure_options": [
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299700000",
"plan_app_id": "1010104801000085167",
"value": "1010104801001934461",
"label": "v2test",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299700000",
"plan_app_id": "1010104801000085167",
"value": "1010104801001934459",
"label": "test",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299700000",
"plan_app_id": "1010104801000085167",
"value": "1010104801001934457",
"label": "发布",
"panel": 0
},
{
"parent_id": "0",
"workspace_id": "10104801",
"sort": "120299700000",
"plan_app_id": "1010104801000085167",
"value": "1010104801001934455",
"label": "4324",
"panel": 0
}
],
"html_type": "select",
"memo": ""
},
"priority_label": {
"name": "priority_label",
"label": "优先级",
"color_options": [
{
"value": "urgent",
"label": "紧急",
"color": "#FF6770"
},
{
"value": "high",
"label": "高",
"color": "#FF6770"
},
{
"value": "medium",
"label": "中",
"color": "#28AB80"
},
{
"value": "low",
"label": "低",
"color": "#7C8597"
},
{
"value": "insignificant",
"label": "无关紧要",
"color": "#7C8597"
}
],
"options": {
"urgent": "紧急",
"high": "高",
"medium": "中",
"low": "低",
"insignificant": "无关紧要"
},
"pure_options": [],
"html_type": "select",
"memo": ""
},
"release_id": {
"name": "release_id",
"label": "发布计划",
"options": {
"1010104801000069739": "v2test",
"1010104801000068721": "test",
"1010104801000068405": "发布",
"1010104801000058771": "4324"
},
"pure_options": [],
"html_type": "select",
"memo": ""
}
},
"info": "success"
}
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#返回格式说明)返回格式说明
| 字段 | 说明 |
| :-------: | :------: |
| name | name |
| options | 候选值 |
| html_type | 类型 |
| label | 中文名称 |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#返回候选值内容)返回候选值内容
| 缺陷字段 | 说明 |
| :------------: | :----------------------: |
| priority | 优先级 |
| severity | 严重程度 |
| status | 状态 枚举值 (可选值) |
| iteration_id | 迭代 枚举值 (可选值) |
| module | 模块 枚举值 (可选值) |
| release_id | 发布计划 枚举值 (可选值) |
| version_report | 发现版本 枚举值 (可选值) |
| version_test | 验证版本 枚举值 (可选值) |
| version_fix | 合入版本 枚举值 (可选值) |
| version_close | 关闭版本 枚举值 (可选值) |
| baseline_find | 发现基线 枚举值 (可选值) |
| baseline_join | 合入基线 枚举值 (可选值) |
| baseline_test | 验证基线 枚举值 (可选值) |
| baseline_close | 关闭基线 枚举值 (可选值) |
| os | 操作系统 枚举值 (可选值) |
| platform | 软件平台 枚举值 (可选值) |
| testmode | 测试方式 枚举值 (可选值) |
| testphase | 测试阶段 枚举值 (可选值) |
| testtype | 测试类型 枚举值 (可选值) |
| source | 缺陷根源 枚举值 (可选值) |
| bugtype | 缺陷类型 枚举值 (可选值) |
| frequency | 重现规律 枚举值 (可选值) |
| originphase | 发现阶段 枚举值 (可选值) |
| sourcephase | 引入阶段 枚举值 (可选值) |
| resolution | 解决方法 枚举值 (可选值) |
| custom_field_* | 解决方法 枚举值 (可选值) |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#缺陷状态-status-可选值说明)缺陷状态(status)可选值说明
status状态是支持每个项目单独配置的,所以状态(status)没有固定的中英文映射, 只能通过该接口获取.
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#缺陷优先级-priority-取值字段说明)缺陷优先级(priority)取值字段说明
为了兼容自定义优先级,`请使用 priority_label 字段`,详情参考:[如何兼容自定义优先级](https://open.tapd.cn/document/api-doc/API文档/subject/custom_priority/) 。
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#缺陷严重程度-severity-可选值说明)缺陷严重程度(severity)可选值说明
| 取值 | 字面值 |
| :-----: | :----: |
| fatal | 致命 |
| serious | 严重 |
| normal | 一般 |
| prompt | 提示 |
| advice | 建议 |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html#缺陷解决方法-resolution-可选值说明)缺陷解决方法(resolution)可选值说明
| 取值 | 字面值 |
| :------------------: | :------------: |
| ignore | 无需解决 |
| fix | 延期解决 |
| failed | 无法重现 |
| external | 外部原因 |
| duplicated | 重复 |
| intentional | 设计如此 |
| unclear | 问题描述不准确 |
| hold | 挂起 |
| feature | 需求变更 |
| fixed | 已解决 |
| transferred to story | 已转需求 |
## 缺陷重要字段说明
| 字段 | 说明 |
| :--------------: | :----------: |
| 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 | 超出工时 |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/bug.html#常用字段候选值映射)常用字段候选值映射
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/bug.html#缺陷优先级-priority-字段说明)缺陷优先级(priority)字段说明
为了兼容自定义优先级,`请使用 priority_label 字段`,详情参考:[如何兼容自定义优先级](https://open.tapd.cn/document/api-doc/API文档/subject/custom_priority/) 。`下面取值将不再使用`
| 取值 | 字面值 |
| :-----------: | :------: |
| urgent | 紧急 |
| high | 高 |
| medium | 中 |
| low | 低 |
| insignificant | 无关紧要 |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/bug.html#缺陷严重程度-severity-字段说明)缺陷严重程度(severity)字段说明
| 取值 | 字面值 |
| :-----: | :----: |
| fatal | 致命 |
| serious | 严重 |
| normal | 一般 |
| prompt | 提示 |
| advice | 建议 |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/bug.html#缺陷解决方法-resolution-字段说明)缺陷解决方法(resolution)字段说明
| 取值 | 字面值 |
| :------------------: | :------------: |
| ignore | 无需解决 |
| fix | 延期解决 |
| failed | 无法重现 |
| external | 外部原因 |
| duplicated | 重复 |
| intentional | 设计如此 |
| unclear | 问题描述不准确 |
| hold | 挂起 |
| feature | 需求变更 |
| fixed | 已解决 |
| transferred to story | 已转需求 |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/bug.html#其他字段)其他字段
status(状态)/ module(模块)/ iteration_id(迭代) 等字段可选值跟当前项目有关,属于动态可选值, 需要通过接口 [获取缺陷所有字段及候选值](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_fields_info.html)获取.
## 创建缺陷bug
### url
```
https://tapd-api.bilibili.co/tapd/bugs
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#支持格式)支持格式
JSON/XML默认JSON格式
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#http请求方式)HTTP请求方式
POST
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#请求数限制)请求数限制
一次插入一条数据
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#请求参数)请求参数
| 字段名 | 必选 | 类型及范围 | 说明 |
| :-----------------------------: | :--: | :---------------: | :----------------------------------------------------------: |
| workspace_id | `是` | integer | 项目ID |
| title | `是` | string | 缺陷标题 |
| priority | 否 | string | 优先级。为了兼容自定义优先级,`请使用 priority_label 字段`,详情参考:[如何兼容自定义优先级](https://open.tapd.cn/document/api-doc/API文档/subject/custom_priority/) |
| 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 | 缺陷自定义字段参数,具体字段名通过接口 [获取缺陷自定义字段配置](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_custom_fields_settings.html) 获取 |
| custom_plan_field_* | 否 | string或者integer | 自定义计划应用参数,具体字段名通过接口 [获取自定义计划应用](https://open.tapd.cn/document/api-doc/API文档/api_reference/iteration/get_plan_apps.html) 获取 |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#调用示例及返回结果)调用示例及返回结果
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#在项目下创建缺陷)在项目下创建缺陷
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#curl-使用-basic-auth-鉴权调用示例)curl 使用 Basic Auth 鉴权调用示例
```
curl -u 'api_user:api_password' -d 'title=bug_created_by_api&workspace_id=10158231&cus_自定义字段的名称=custom_field_value' 'https://tapd-api.bilibili.co/tapd/bugs'
```
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#返回结果)返回结果
```json
{
"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"
}
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#在项目下创建一张带-tapd-cn-logo-、优先级为高的缺陷)在项目下创建一张带 tapd.cn logo 、优先级为高的缺陷
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#curl-使用-basic-auth-鉴权调用示例-2)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://tapd-api.bilibili.co/tapd/bugs'
```
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/add_bug.html#返回结果-2)返回结果
```json
{
"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条
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bugs.html#url)url
```
https://tapd-api.bilibili.co/tapd/bugs
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bugs.html#支持格式)支持格式
JSON/XML默认JSON格式
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bugs.html#http请求方式)HTTP请求方式
GET
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bugs.html#请求数限制)请求数限制
默认返回 30 条。可通过传 limit 参数设置,最大取 200。也可以传 page 参数翻页
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bugs.html#请求参数)请求参数
| 字段名 | 必选 | 类型及范围 | 说明 | 特殊规则 |
| :-----------------: | :--: | :---------------: | :----------------------------------------------------------: | :------------------------------------: |
| id | 否 | integer | ID | 支持多ID查询 |
| title | 否 | string | 标题 | 支持模糊匹配 |
| priority | 否 | string | 优先级。为了兼容自定义优先级,`请使用 priority_label 字段`,详情参考:[如何兼容自定义优先级](https://open.tapd.cn/document/api-doc/API文档/subject/custom_priority/) | |
| 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 | 自定义字段参数,具体字段名通过接口 [获取缺陷自定义字段配置](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bug_custom_fields_settings.html) 获取 | 支持枚举查询 |
| custom_plan_field_* | 否 | string或者integer | 自定义计划应用参数,具体字段名通过接口 [获取自定义计划应用](https://open.tapd.cn/document/api-doc/API文档/api_reference/iteration/get_plan_apps.html) 获取 | |
| limit | 否 | integer | 设置返回数量限制默认为30 | |
| page | 否 | integer | 返回当前数量限制下第N页的数据默认为1第一页 | |
| order | 否 | string | 排序规则,规则:字段名 ASC或者DESC然后 urlencode | 如按创建时间逆序order=created%20desc |
| fields | 否 | string | 设置获取的字段,多个字段间以','逗号隔开 | |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bugs.html#调用示例及返回结果)调用示例及返回结果
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bugs.html#获取项目下的缺陷数据)获取项目下的缺陷数据
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bugs.html#curl-使用-basic-auth-鉴权调用示例)curl 使用 Basic Auth 鉴权调用示例
```
curl -u 'api_user:api_password' 'https://tapd-api.bilibili.co/tapd/bugs?workspace_id=10158231&limit=2'
```
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/bug/get_bugs.html#返回结果)返回结果
```json
{
"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"
}
```
# 附件
## 获取附件
### 说明
返回符合查询条件的所有的附件
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#url)url
```
https://tapd-api.bilibili.co/tapd/attachments
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#支持格式)支持格式
JSON/XML默认JSON格式
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#http请求方式)HTTP请求方式
GET
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#请求数限制)请求数限制
默认返回 30 条。可通过传 limit 参数设置,最大取 200。也可以传 page 参数翻页
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#请求参数)请求参数
| 字段名 | 必选 | 类型及范围 | 说明 | 特殊规则 |
| :----------: | :--: | :--------: | :--------: | :------: |
| workspace_id | `是` | integer | 项目ID | |
| id | 否 | integer | ID | |
| type | 否 | string | 类型 | |
| entry_id | 否 | integer | 依赖对象ID | |
| filename | 否 | integer | 附件名称 | |
| owner | 否 | string | 上传人 | |
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#调用示例及返回结果)调用示例及返回结果
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#curl-使用-basic-auth-鉴权调用示例)curl 使用 Basic Auth 鉴权调用示例
```
curl -u 'api_user:api_password' 'https://api.tapd.cn/attachments?workspace_id=10104801'
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#返回结果)返回结果
```json
{
"status": 1,
"data": [
{
"Attachment": {
"id": "1210104801000028203",
"type": "wiki_description",
"entry_id": "6100014242115511668",
"filename": "OneDrive.mp4",
"content_type": "video/mp4",
"created": "2021-04-08 15:51:27",
"workspace_id": "10104801",
"owner": "anyechen"
}
},
{
"Attachment": {
"id": "1210104801000002153",
"type": "wiki",
"entry_id": "1210104801000017645",
"filename": "raingeek.jpg",
"content_type": "image/jpeg",
"created": "2017-11-23 17:01:36",
"workspace_id": "10104801",
"owner": "anyechen"
}
}
],
"info": "success"
}
```
### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#附件字段说明)附件字段说明
#### [#](https://open.tapd.cn/document/api-doc/API文档/api_reference/attachment/get_attachments.html#附件重要字段说明)附件重要字段说明
| 字段 | 说明 |
| :----------: | :--------: |
| id | 附件ID |
| type | 类型 |
| entry_id | 依赖对象ID |
| created | 创建时间 |
| filename | 附件名称 |
| content_type | 内容类型 |
| workspace_id | 项目ID |
| owner | 上传人 |
.
## 上传附件
### 接口概览
- **API 地址**: `https://tapd-api.bilibili.co/tapd/files/upload_attachment`
- **请求方式**: `POST`
- **Content-Type**: `multipart/form-data`
### **请求参数**
| 字段名 | 是否必填 | 类型及范围 | 说明 |
| ------------ | -------- | ---------- | ---------------- |
| workspace_id | 是 | integer | 项目ID |
| file | 是 | 文件 | 文件 |
| type | 是 | string | story/bug/task |
| entry_id | 是 | integer | 需求/缺陷/任务ID |
| owner | 否 | string | 附件创建人昵称 |
| overwrite | 否 | bool | 同名文件是否覆盖 |
### **调用示例及返回结果**
#### **把本地的 uu.jpg 上传到项目 755**
### **curl 使用 Basic Auth 鉴权调用示例**
```
curl -u 'api_user:api_password' -F 'workspace_id=755' -F 'type=task' -F 'entry_id=1000000755859140551' -F 'file=@uu.jpg' 'api.tapd.cn/files/upload_attachment'
```
### **curl 使用 OAuth Access Token 鉴权调用示例**
```
curl -H 'Authorization: Bearer ACCESS_TOKEN' -F 'workspace_id=755' -F 'type=task' -F 'entry_id=1000000755859140551' -F 'file=@uu.jpg' 'api.tapd.cn/files/upload_attachment'
```
### **返回结果**
```
{
"status": 1,
"data": {
"Attachment": {
"id": "1000000755503455439",
"type": "task",
"entry_id": 1000000755859140551,
"filename": "uu.jpg",
"description": "",
"content_type": "image/jpeg",
"created": "2021-09-07 21:36:08",
"workspace_id": 755,
"owner": ""
}
},
"info": "success"
}
```
### **字段说明**
#### **返回字段说明**
| 字段 | 说明 |
| ------------ | ---------------------------- |
| type | 业务对象类型stroy/bug/task |
| entry_id | 业务对象ID |
| filename | 文件名 |
| description | 附件描述 |
| content_type | 文件类型 |
| created | 创建时间 |
| workspace_id | 项目ID |
| owner | 附件上传人 |