
# 查询IPD项目工作项历史记录 - ShowIpdIssueHistory
#### 功能介绍
查询IPD工作项历史记录
#### 调用方法
请参见[如何调用API](https://support.huaweicloud.com/api-projectman/projectman_api_1002.html)。
#### 授权信息
账号根用户具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备如下身份策略权限，更多的权限说明请参见[权限和授权项](https://support.huaweicloud.com/api-projectman/projectman_03_Permission.html)。
| 授权项                      | 访问级别 | 资源类型（\*为必须） | 条件键                                                                                                                                                                                                                                                                                                                                                                 | 别名 | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| codeartsreq:workitem:get | Read | -           | - codeartsreq:Model   - codeartsreq:ProjectId    | -  | -      |
   
#### URI
GET /v1/ipdprojectservice/projects/{project_id}/issues/{issue_id}/history
表1路径参数 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| project_id | 是    | String | **参数解释**： 项目32位ID，项目唯一标识。通过[查询IPD项目列表](https://support.huaweicloud.com/api-projectman/ShowIpdProjectList.html)获取，响应消息体中的**id**字段的值就是项目ID。 **约束限制**： 不涉及。 **取值范围**： 32个字符，由英文字母和数字组成。 **默认取值**： 不涉及。                                                                               |
| issue_id   | 是    | String | **参数解释**： 工作项唯一ID。可以通过[查询工作项列表](https://support.huaweicloud.com/api-projectman/ListIpdProjectIssues.html)或者[查询树状工作项](https://support.huaweicloud.com/api-projectman/ShowIpdIssueTree.html)接口获取，响应消息体中的**id**字段的值就是工作项ID。 **约束限制**： 不涉及。 **取值范围**： 18\~19个字符的数字字符串。 **默认取值**： 不涉及。 |
   
表2Query参数 
| 参数            | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| limit         | 否    | Integer | **参数解释**： 每页返回的数据条数。 **约束限制**： 不涉及。 **取值范围**： 1\~200。 **默认取值**： 20。                   |
| offset        | 否    | Integer | **参数解释**： 分页起始位置，从0开始，需为limit的整数倍。 **约束限制**： 取值为limit的倍数。 **取值范围**： ≥ 0。 **默认取值**： 0。 |
| start_date    | 否    | Long    | **参数解释**： 开始日期时间戳，需要和end_date结合使用。 **约束限制**： 小于当前时间，最小单位为天。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                         |
| end_date      | 否    | Long    | **参数解释**： 结束日期时间戳，需要和start_date结合使用。 **约束限制**： 大于工作项创建当前时间，最小单位为天。 **取值范围**： 不涉及。 **默认取值**： 不涉及。                                                                                                                                                  |
| return_fields | 否    | String  | **参数解释**： 指定返回某个字段的操作记录。 **约束限制**： 0\~32个字符。 **取值范围** ： 对应字段的唯一code，可选值可以通过[查询字段模板列表](https://support.huaweicloud.com/api-projectman/ListIssueFields.html)接口获取，响应体中的**code**就是字段唯一标识。 **默认取值**： 不涉及。                                              |
   
#### 请求参数
无
#### 响应参数
**状态码：200**
表3响应Body参数 
| 参数      | 参数类型                                                                 | 描述                                                                               |
|:---|:---|:---|
| result  | [HistoryDataVO] object | **参数解释**： 历史记录结果集。 **取值范围**： 不涉及。         |
| status  | String                                                               | **参数解释**： 请求结果。 **取值范围**： success/failed。 |
| message | String                                                               | **参数解释**： 请求失败时的错误信息。 **取值范围**： 不涉及。      |
   
 表4HistoryDataVO 
| 参数    | 参数类型                                                                   | 描述                                                                            |
|:---|:---|:---|
| data  | Array of [HistoryVO] objects | **参数解释**： 历史记录对象数组 。 **取值范围**： 不涉及。    |
| page  | Integer                                                                | **参数解释**： 分页页码。 **取值范围**： 最小值1，最大值不限制。 |
| size  | Integer                                                                | **参数解释**： 分页大小。 **取值范围**： 不涉及。         |
| total | Integer                                                                | **参数解释**： 历史记录总条数。 **取值范围**： 不涉及。      |
   
 表5HistoryVO 
| 参数             | 参数类型                                                                           | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|
| batch          | String                                                                         | **参数解释**： 产生历史记录的批次。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| date           | String                                                                         | **参数解释**： 历史记录生成日期的时间戳。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| user           | String                                                                         | **参数解释**： 产生历史记录的用户ID。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| user_info      | [UserEntity] object                 | **参数解释**： 产生历史记录的用户对象。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| items          | Array of [HistoryItemVO] objects | **参数解释**： 历史记录操作项。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| issue_id       | String                                                                         | **参数解释**： 历史记录关联的工作项Id 。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| issue_category | String                                                                         | **参数解释**： 工作项类型。 **取值范围**： 支持多种工作项类型，使用英文逗号分隔。 - 系统设备类项目：RR、SF、IR、SR、AR、Task、Bug   - 独立软件类项目：RR、SF、IR、US、Task、Bug   - 云服务类项目：RR、Epic、FE、US、Task、Bug    |
   
 表6UserEntity 
| 参数        | 参数类型   | 描述                                                                                                                                                                                                                                                                  |
|:---|:---|:---|
| id        | String | **参数解释**： 用户ID，可通过[查询项目成员列表](https://support.huaweicloud.com/api-projectman/ListProjectUsers.html)接口获取，响应消息体中的**id**字段的值就是用户ID。 **取值范围**： 不涉及。 |
| name      | String | **参数解释**： 用户名称。 **取值范围**： 2\~64个字符。                                                                                                            |
| nick_name | String | **参数解释**： 用户昵称。 **取值范围**： 2\~30个字符。                                                                                                            |
   
 表7HistoryItemVO 
| 参数                | 参数类型                                                                       | 描述                                                                                |
|:---|:---|:---|
| operation         | String                                                                     | **参数解释**： 操作类型。 **取值范围**： 不涉及。             |
| display_operation | String                                                                     | **参数解释**： 操作类型的显示值，描述具体的操作。 **取值范围**： 不涉及。 |
| field_info        | [HistoryFieldInfo] object | **参数解释**： 操作的字段基本信息。 **取值范围**： 不涉及。        |
| current_value     | Object                                                                     | **参数解释**： 字段修改后的值。 **取值范围**： 不涉及。          |
| previous_value    | Object                                                                     | **参数解释**： 字段修改后的值。 **取值范围**： 不涉及。          |
   
 表8HistoryFieldInfo 
| 参数              | 参数类型   | 描述                                                                                                                                                                                            |
|:---|:---|:---|
| id              | String | **参数解释**： 历史记录中修改字段的ID。 **取值范围**： 不涉及。                                                                                                                 |
| display_name    | String | **参数解释**： 历史记录中修改字段的显示名。 **取值范围**： 不涉及。                                                                                                                |
| name            | String | **参数解释**： 历史记录中修改字段的code，作为字段的唯一标识使用。 **取值范围**： 不涉及。                                                                                                   |
| field_type_id   | String | **参数解释**： 历史记录中修改字段类型ID。 **取值范围**： 10001=单选列表，10002=多选列表，10003=日期，10004=日期时间，10005=整数，10006=小数，10007=单行文本，10008=多行文本，10009=单选用户，10010=多选用户，10011=层级字段。 |
| field_type_name | String | **参数解释**： 历史记录中修改字段类型名称。 **取值范围**： 单选列表，多选列表，日期，日期时间，整数，小数，单行文本，多行文本，单选用户，多选用户，层级字段。                                                                   |
   
**状态码：400**
表9响应Body参数 
| 参数         | 参数类型   | 描述                                                                                                                                                                   |
|:---|:---|:---|
| error_code | String | **参数解释**： 错误码。 **取值范围**： 不涉及。                   |
| error_msg  | String | **参数解释**： 错误描述，对error_code的补充解释。 **取值范围**： 不涉及。 |
   
#### 请求示例
```
GET https://{endpoint}/v1/ipdprojectservice/projects/{project_id}/issues/{issue_id}/history?return_fields=&offset=0&limit=20
```
#### 响应示例
**状态码：200**
历史记录响应
```
{
  "result" : {
    "data" : [ {
      "batch" : "33fedc760b0149d985ff135778101e21",
      "date" : "1744701473656",
      "user" : "a360371833bf4c558f796fd707b44daf",
      "user_info" : {
        "id" : "a360371833bf4c558f796fd707b44daf",
        "name" : "devcloud_devcloud_01",
        "nick_name" : "张三"
      },
      "items" : [ {
        "operation" : "ASSIGN",
        "display_operation" : "更新了状态",
        "field_info" : {
          "id" : "10005",
          "display_name" : "状态",
          "name" : "status",
          "field_type_id" : "10007",
          "field_type_name" : "单选列表"
        },
        "current_value" : [ {
          "id" : "1050710945722966043",
          "belonging" : "START",
          "display_value" : "提交",
          "code" : "Committed",
          "created_by" : "a360371833bf4c558f796fd707b44daf",
          "modified_by" : "a360371833bf4c558f796fd707b44daf",
          "modified_time" : "1728438610725"
        } ],
        "previous_value" : [ ]
      } ],
      "issue_id" : "1118922335965982721",
      "issue_category" : "RR"
    } ],
    "page" : 1,
    "size" : 20,
    "total" : 2
  },
  "status" : "success",
  "message" : null
}
```
**状态码：400**
请求失败的响应。例如无操作权限、项目不存在。
```
{
  "error_code" : "PM.02174103",
  "error_msg" : "无操作权限"
}
```
#### 状态码
| 状态码 | 描述                     |
|:---|:---|
| 200 | 历史记录响应                 |
| 400 | 请求失败的响应。例如无操作权限、项目不存在。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-projectman/ErrorCode.html)。
