# 查询实例大版本升级历史（PostgreSQL） - ListUpgradeHistories
#### 功能介绍
查询实例大版本升级历史。
- 调用接口前，您需要了解API[认证鉴权](https://support.huaweicloud.com/api-rds/rds_03_0001.html)。
- 调用接口前，您需要了解[请求Header参数说明](https://support.huaweicloud.com/api-rds/rds_03_0005.html#rds_03_0005__section479119143310)。
 
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/RDS/doc?api=ListUpgradeHistories)中调试该接口。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-rds/rds_10_0005.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
 
| 授权项                   | 访问级别  | 资源类型（\*为必须） | 条件键 | 别名             | 依赖的授权项 |
|:---|:---|:---|:---|:---|:---|
| rds:instance:listAll | read | -           | -  | rds:instance:list | -      |
   
#### 接口约束
- 该接口仅支持PostgreSQL引擎。
- 实例在创建、变更规格、修改端口、冻结、异常等状态下不能执行该操作。
 
#### URI
- URI格式 GET /v3/{project_id}/instances/{instance_id}/major-version/upgrade-histories?offset={offset}\&limit={limit}\&order={order}\&sort_field={sort_field}
  
- 参数说明
  表1参数说明 
  | 名称         | 参数类型    | 是否必选 | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
  |:---|:---|:---|:---|
  | project_id | String   | 是    | **参数解释：** 租户在某一region下的project ID。 获取方法请参见[获取项目ID](https://support.huaweicloud.com/api-rds/rds_03_0002.html)。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                |
  | instance_id | String | 是       | **参数解释：** 实例ID。 可调用[查询数据库实例列表](https://support.huaweicloud.com/api-rds/rds_01_0004.html)接口，通过[表4](https://support.huaweicloud.com/api-rds/rds_01_0004.html#rds_01_0004__table2058713718267)中的"id"获取。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
  | offset    | Integer | 否       | **参数解释**： 索引位置，偏移量。表示从第一条数据偏移offset条数据后开始查询。 **约束限制**： 不涉及。 **取值范围**： 大于等于0的整数。 **默认取值：** 默认为0，表示偏移0条数据，即从第一条数据开始查询。                                                                                                                                                                                                                                                                                                                                                                                                                             |
  | limit       | Integer | 否      | **参数解释**： 查询记录数。 **约束限制：** 不涉及。 **取值范围：** \[1, 100\] **默认取值：** 10                                                                                                                                                                                                                                                                                                                                                                                                                                          |
  | order      | String   | 否     | **参数解释**： 排序方式。 **约束限制：** 不涉及。 **取值范围：** - DESC：降序。  - ASC：升序。   **默认取值：** DESC                                                                                                                                                                            |
  | sort_field | String   | 否      | **参数解释**： 排序字段。 **约束限制：** 不涉及。 **取值范围：** - start_time：开始时间。  - end_time：结束时间。   **默认取值：** start_time                                                                                                                                                   |
     
  
 
#### 请求消息
- 请求参数 无。
  
- URI样例
  ```
  https://{Endpoint}/v3/0483b6b16e954cb88930a360d2c4e663/instances/3aa441c4c98a4b36b100a7e3e87d17cein03/major-version/upgrade-histories?offset=0&limit=10
  ```
  
 
#### 响应消息
- 正常响应要素说明
  表2参数说明 
  | 名称              | 参数类型         | 说明                                                                                                                                                                                   |
  |:---|:---|:---|
  | total_count    | Integer        | **参数解释**： 总记录数。 **取值范围：** 不涉及。                                                               |
  | upgrade_reports | Array of objects | **参数解释**： 升级报告信息。 详情请参见[表3]。 |
     
   表3upgrade_report字段数据结构说明 
  | 名称                          | 参数类型       | 说明                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
  |:---|:---|:---|
  | id                           | String  | **参数解释**： 升级报告ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
  | start_time                   | String  | **参数解释**： 升级开始时间，格式为"yyyy-mm-ddThh:mm:ssZ"。 其中，T指某个时间的开始；Z指时区偏移量，例如偏移1个小时显示为+0100。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                   |
  | end_time                     | String   | **参数解释**： 升级结束时间，格式为"yyyy-mm-ddThh:mm:ssZ"。 其中，T指某个时间的开始；Z指时区偏移量，例如偏移1个小时显示为+0100。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                         |
  | src_instance_id              | String | **参数解释**： 原实例ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
  | src_database_version       | String  | **参数解释**： 原数据库版本。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
  | dst_instance_id            | String    | **参数解释**： 目标实例ID。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
  | dst_database_version         | String   | **参数解释**： 目标数据库版本。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
  | result                      | String   | **参数解释**： 升级结果。 **取值范围：** - success：表示成功。  - failed：表示失败。  - running：表示升级中。   |
  | is_private_ip_changed       | Boolean  | **参数解释**： 是否将实例内网IP切换到目标大版本实例。 **取值范围：** - true：表示切换。  - false：表示不切换。                                                                                                                                          |
  | private_ip_change_time    | String   | **参数解释**： 实例内网IP修改时间，格式为"yyyy-mm-ddThh:mm:ssZ"。 其中，T指某个时间的开始；Z指时区偏移量，例如偏移1个小时显示为+0100。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                 |
  | statistics_collection_mode | String    | **参数解释**： 统计信息收集模式。 **取值范围：** - before_change_private_ip：修改实例内网IP前收集。  - after_change_private_ip：修改实例内网IP后收集。                                                                                        |
  | detail                     | String    | **参数解释**： 升级报告详情。 **取值范围：** 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
     
  

- 正常响应样例
  ```
  {
           "total_count": 1,
           "upgrade_reports": [
                    {
                              "id": "1a8fda5a-17a6-ebc4-bf1f-97ae837f432b",
                              "start_time": "2023-03-06T02:45:49+0800",
                              "end_time": "2023-03-06T02:50:49+0800",
                              "src_instance_id": "dccacebb7b884ee18bc5c02c918ef2b0in03",
                              "src_database_version": "13.9",
                              "dst_instance_id": "6b5750504be1403191c4f00e4ffaee5ein03",
                              "dst_database_version": "14.6",
                              "result": "success",
                              "is_private_ip_changed": true,
                              "private_ip_change_time": "2023-03-06T03:10:49+0800",
                              "statistics_collection_mode": "before_change_private_ip",
                              "detail": "2023-03-06 18:33:26 --- pg_upgrade upgrade task                         begin"
                    }
           ]
  }
  ```
  

- 异常响应 请参见[异常响应结果](https://support.huaweicloud.com/api-rds/rds_01_0010.html)。
  
 
#### 状态码
- 正常 200
  
- 异常 请参见[状态码](https://support.huaweicloud.com/api-rds/rds_10_0200.html)。
  
 
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-rds/rds_10_0201.html)。
