
# 修改定时启停规则 - UpdateTimerRule
#### 功能介绍
修改定时启停规则。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CAE/doc?api=UpdateTimerRule)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-cae/cae_06_0016.html)。
- 如果使用身份策略授权，当前API调用无需身份策略权限。
#### URI
PUT /v1/{project_id}/cae/timer-rules/{timer_rule_id}
表1路径参数 
| 参数            | 是否必选 | 参数类型   | 描述                                                                                |
|:---|:---|:---|:---|
| project_id    | 是    | String | 项目ID，获取项目ID请参见[获取项目ID](https://support.huaweicloud.com/api-cae/cae_06_0021.html)。 |
| timer_rule_id | 是    | String | 定时启停规则ID。                                                                         |
#### 请求参数
表2请求Header参数 
| 参数                      | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                             |
|:---|:---|:---|:---|
| X-Auth-Token            | 是    | String | 用户Token。 - 获取Token，请参考《[统一身份认证服务API参考](https://support.huaweicloud.com/api-iam/iam_30_0001.html)》的"获取用户Token"章节。 - 请求响应成功后在响应消息头中包含的"X-Subject-Token"的值即为Token值。                                                               |
| X-Enterprise-Project-ID | 否    | String | 企业项目ID。 - 创建环境时，环境会绑定企业项目ID。 - 最大长度36字节，带"-"连字符的UUID格式，或者是字符串"0"。 - 该字段不传（或传为字符串"0"）时，则查询默认企业项目下的资源。 说明： 关于企业项目ID的获取及企业项目特性的详细信息，请参见《[企业管理服务用户指南](https://support.huaweicloud.com/usermanual-em/zh-cn_topic_0126101490.html)》。 |
| X-Environment-ID        | 是    | String | 环境ID。 - 获取环境ID，通过[获取环境列表](https://support.huaweicloud.com/api-cae/ListEnvironments.html)来获取环境信息。 - 请求响应成功后在响应体的items数组中的一个元素即为一个环境的信息，其中id字段即是环境ID。                                                                            |
   
表3请求Body参数 
| 参数          | 是否必选 | 参数类型                                                                              | 描述                           |
|:---|:---|:---|:---|
| api_version | 是    | String                                                                            | API版本，固定值"v1"，该值不可修改。        |
| kind        | 是    | String                                                                            | API类型，固定值"TimerRule"，该值不可修改。 |
| spec        | 是    | [UpdateTimerRuleDetails] object | 修改启停规则规格信息                   |
   
 表4UpdateTimerRuleDetails 
| 参数               | 是否必选 | 参数类型                                                                      | 描述                                                                                |
|:---|:---|:---|:---|
| name             | 是    | String                                                                    | 定时启停规则名称。                                                                         |
| type             | 是    | String                                                                    | **参数解释：** 定时启停规则的类型：stop/start。 **取值范围：** - stop：停止策略 - start：启动策略 **默认取值：** 不涉及。 |
| status           | 是    | String                                                                    | **参数解释：** 定时启停规则状态（是否开启）：on/off。 **取值范围：** - on：开启 - off：关闭 **默认取值：** 不涉及。        |
| apps             | 否    | Array of [AppInfo] objects             | 定时启停规则所包含的所有应用，只在生效范围为application的时候需要填写。                                         |
| components       | 否    | Array of [ComponentInfo] objects | 在定时启停规则所包含的所有组件，只在生效范围为component的时候需要填写。                                          |
| cron             | 是    | String                                                                    | cron表达式。                                                                          |
| effective_range  | 是    | String                                                                    | 定时启停规则生效范围: component/application/environment。                                    |
| effective_policy | 是    | String                                                                    | 定时启停规则的定时类别: onetime/periodic。                                                    |
| timezone_offset  | 是    | String                                                                    | 定时启停规则中的时区偏移量，例如北京时间为+8                                                           |
   
 表5AppInfo 
| 参数       | 是否必选 | 参数类型   | 描述    |
|:---|:---|:---|:---|
| app_id   | 否    | String | 应用ID。 |
| app_name | 否    | String | 应用名称。 |
   
 表6ComponentInfo 
| 参数             | 是否必选 | 参数类型   | 描述    |
|:---|:---|:---|:---|
| component_id   | 否    | String | 组件ID。 |
| component_name | 否    | String | 组件名称。 |
   
#### 响应参数
**状态码：204**
请求成功。
无
#### 请求示例
修改定时启停规则，修改策略名称为"test"，是一个启动策略，生效组件范围涉及部分组件，触发策略为"执行一次"。
```
PUT https://{endpoint}/v1/{project_id}/cae/timer-rules/{rule_id}
{
  "api_version" : "v1",
  "kind" : "TimerRule",
  "spec" : {
    "name" : "test",
    "type" : "start",
    "cron" : "0 55 16 22 2 ? 2023",
    "status" : "on",
    "env_id" : "c41a8e9f-5447-406a-8783-85885f3870a3",
    "effective_range" : "component",
    "effective_policy" : "onetime",
    "components" : [ {
      "component_id" : "10f7b6be-5dc2-4fb7-b62c-e8f362dfdabf",
      "component_name" : "addd"
    }, {
      "component_id" : "3f3041f9-5063-40c9-94ee-8473517b3956",
      "component_name" : "demo-frontend-1676360408"
    } ]
  }
}
```
#### 响应示例
无
#### 状态码
| 状态码 | 描述    |
|:---|:---|
| 204 | 请求成功。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-cae/ErrorCode.html)。
