# 工单状态修改 - UpdateTicket
#### 功能介绍
变更单状态修改，请求路径中的ticket_type为固定值change，且ticket_id传递变更单单号。此接口可操作变更开始、变更结束、变更取消和添加变更结果操作。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/COC/doc?api=UpdateTicket)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-coc/coc_api_06.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项               | 访问级别  | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | coc:ticket:update | Write | -           | -   | -  | -      |
     
  
 
#### URI
PUT /v1/{ticket_type}/tickets/{ticket_id}
表1路径参数 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| ticket_type | 是    | String | **参数解释：** 需要修改的工单类型，此处需传递固定值change，表示更新变更单状态。 **约束限制：** 不涉及 **取值范围：** change **默认取值：** 不涉及 |
| ticket_id   | 是    | String | **参数解释：** 变更单工单单号。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及                               |
   
#### 请求参数
表2请求Body参数 
| 参数           | 是否必选 | 参数类型                                                                                            | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| ticket_info  | 否    | [ticket_info] object           | **参数解释：** 变更主单信息，当对变更子单进行操作时，变更主单信息不需要传递。当变更单进行审批、撤销等操作时，需要传递主单信息。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及   |
| sub_tickets  | 否    | Array of [sub_tickets] objects | **参数解释：** 变更子单信息，变更单的每一个变更region都有对应的一个变更子单，每个变更子单可进行变更开始，变更取消，变更结果回填等操作。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及 |
| history_info | 否    | [history_info] object         | **参数解释：** 传递本次更新操作对应的操作Action。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及                                       |
   
 表3ticket_info 
| 参数               | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| phase            | 否    | String | **参数解释：** 工单操作的类型，枚举值。 **约束限制：** 不涉及 **取值范围：** 枚举值 - phase_change_end：完成  - phase_change_cancel：撤销  - phase_change_draft：草稿  - phase_change_implemente：变更实施和验证  - phase_change_apply：申请人确认  - phase_change_approve：审批中  - phase_change_close：关闭   **默认取值：** 不涉及 |
| work_flow_status | 否    | String | **参数解释：** 工单状态。 **约束限制：** 不涉及 **取值范围** 不涉及 **默认取值：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
   
 表4sub_tickets 
| 参数                         | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|:---|
| ticket_id                  | 否    | String  | **参数解释：** 子单ID。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及          |
| change_result              | 否    | String  | **参数解释：** 变更结果。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及       |
| is_verified_in_change_time | 否    | Boolean | **参数解释：** 在时间窗内是否可验证。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及       |
| verified_docs              | 否    | String  | **参数解释：** 验证文档ID。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及   |
| comment                    | 否    | String  | **参数解释：** 变更失败原因描述。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及 |
| change_fail_type           | 否    | String  | **参数解释：** 变更失败类型。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及        |
| rollback_start_time        | 否    | Long    | **参数解释：** 回退开始时间。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及        |
| rollback_end_time          | 否    | Long    | **参数解释：** 回退结束时间。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及  |
| is_rollback_success        | 否    | Boolean | **参数解释：** 是否回退成功。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及     |
| is_monitor_found           | 否    | Boolean | **参数解释：** 是否被监控发现。 **约束限制：** 不涉及 **取值范围：** 不涉及 **默认取值：** 不涉及        |
   
 表5history_info 
| 参数     | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|:---|
| action | 否    | String | **参数解释：** 操作类型。 **约束限制：** 不涉及 **取值范围：** - change_start_change_success：变更开始  - change_end_change_success：变更结束  - change_set_change_result_success：变更成功添加变更结果  - change_result_failed：变更失败添加变更结果  - change_cancel_change_success：变更取消   **默认取值：** 不涉及 |
   
#### 响应参数
**状态码：200**
表6响应Body参数 
| 参数            | 参数类型                                                                     | 描述                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|
| provider_code | String                                                                   | **参数解释：** 服务标识。 **取值范围：** 不涉及 **默认取值：** 049                                      |
| error_code    | String                                                                   | **参数解释：** 请求响应代码。 **取值范围：** GOM.00000000\~GOM.00009999999 **默认取值：** GOM.00000000 |
| error_msg     | String                                                                   | **参数解释：** 请求响应描述。 **取值范围：** 不涉及                                                                                                                                                                            |
| data          | [data] object | **参数解释：** 变更单状态更新后返回的数据信息。 **取值范围：** 不涉及                                                                                                                                                                   |
   
 表7data 
| 参数                     | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
|:---|:---|:---|
| is_start_process_async | Boolean | **参数解释：** 是否异步启动流程，该值固定值true，表示后台创建工单为异步流程。 **取值范围：** true **默认取值：** true                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| is_update_null         | Boolean | **参数解释：** 是否重新提交空字段。 **取值范围：** false **默认取值：** false                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| is_return_full_info    | Boolean | **参数解释：** 是否返回全部字段。 **取值范围：** false **默认取值：** false                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| is_start_process       | Boolean | **参数解释：** 是否启动流程 - 当此值为false时，创建出来的工单为草稿状态   - 此值默认为true，创建出来的工单状态为未受理状态    **取值范围：** false **默认取值：** false |
| ticket_id              | String  | **参数解释：** 被更新的变更单单号。 **取值范围：** 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
   
**状态码：400**
表8响应Body参数 
| 参数            | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                |
|:---|:---|:---|
| provider_code | String | **参数解释：** 服务标识。 **取值范围：** 不涉及 **默认取值：** 049                                      |
| error_code    | String | **参数解释：** 请求响应代码。 **取值范围：** GOM.00000000\~GOM.00009999999 **默认取值：** GOM.00000000 |
| error_msg     | String | **参数解释：** 请求响应描述。 **取值范围：** 不涉及                                                                                                                                                                            |
   
#### 请求示例
- 变更开始。
  ```
  PUT https://{Endpoint}/v1/change/tickets/CM202506261919380164485133
  {
    "history_info" : {
      "action" : "change_start_change_success"
    },
    "sub_tickets" : [ {
      "ticket_id" : "e72f9b49-2294-4c58-bc57-4a0c6903c5e1"
    } ]
  }
  ```
  
- 变更结束。
  ```
  PUT https://{Endpoint}/v1/change/tickets/CM202506261919380164485133
  {
    "history_info" : {
      "action" : "change_end_change_success"
    },
    "sub_tickets" : [ {
      "ticket_id" : "e72f9b49-2294-4c58-bc57-4a0c6903c5e1"
    } ]
  }
  ```
  
- 变更成功填写变更结果。
  ```
  PUT https://{Endpoint}/v1/change/tickets/CM202506261919380164485133
  {
    "sub_tickets" : [ {
      "ticket_id" : "e72f9b49-2294-4c58-bc57-4a0c6903c5e1",
      "change_result" : "change_result_success",
      "is_verified_in_change_time" : true,
      "verified_docs" : null,
      "comment" : "变更成功"
    } ],
    "history_info" : {
      "action" : "change_set_change_result_success"
    }
  }
  ```
  
- 变更失败填写变更结果。
  ```
  PUT https://{Endpoint}/v1/change/tickets/CM202506261919380164485133
  {
    "sub_tickets" : [ {
      "ticket_id" : "80f198c6-14c0-4541-8e2d-1808bfcedf48",
      "change_result" : "change_result_failed",
      "verified_docs" : null,
      "comment" : "变更失败了",
      "change_fail_type" : "fr_dependent_service_issue",
      "rollback_start_time" : null,
      "rollback_end_time" : null,
      "is_rollback_success" : true,
      "is_monitor_found" : false
    } ],
    "history_info" : {
      "action" : "change_set_change_result_success"
    }
  }
  ```
  
- 变更取消。
  ```
  PUT https://{Endpoint}/v1/change/tickets/CM202506261919380164485133
  {
    "history_info" : {
      "action" : "change_cancel_change_success"
    },
    "sub_tickets" : [ {
      "ticket_id" : "b0a966fa-5be7-40e4-bad0-a0749d6fac9c",
      "change_result" : "change_result_cancel",
      "comment" : "取消变更"
    } ]
  }
  ```
  
 
#### 响应示例
**状态码：200**
请求成功。
更多状态码请参考[状态码](https://support.huaweicloud.com/api-coc/coc_api_05_03.html)。
```
{
  "error_code" : "GOM.00000000",
  "error_msg" : null,
  "provider_code" : 4,
  "data" : {
    "is_start_process_async" : true,
    "is_update_null" : true,
    "is_return_full_info" : false,
    "is_start_process" : true,
    "ticket_id" : "CM202506241152560174680890"
  }
}
```
#### 状态码
| 状态码 | 描述                                                                                                                                                 |
|:---|:---|
| 200 | 请求成功。 更多状态码请参考[状态码](https://support.huaweicloud.com/api-coc/coc_api_05_03.html)。      |
| 400 | 服务器未能处理请求。 更多状态码请参考[状态码](https://support.huaweicloud.com/api-coc/coc_api_05_03.html)。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-coc/ErrorCode.html)。
