# 创建工作流定时调度 - CreateWorkflowSchedule
#### 功能介绍
创建工作流定时调度接口用于为指定的工作流设置定时调度任务。
该接口适用于以下场景：当用户希望定期执行某个工作流，例如数据处理、模型训练等任务时，可以通过此接口配置定时调度。使用该接口的前提条件是用户已登录并具有对目标工作流的管理权限，且目标工作流已存在。创建操作完成后，将根据配置的调度规则自动执行工作流。若工作流不存在或用户无权限操作，接口将返回相应的错误信息。
#### 接口约束
无
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/ModelArts/doc?api=CreateWorkflowSchedule)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### 授权信息
账号具备所有API的调用权限，如果使用账号下的IAM用户调用当前API，该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权，具体权限要求请参见[权限和授权项](https://support.huaweicloud.com/api-modelarts/modelarts_03_0138.html)。
- 如果使用身份策略授权，需具备如下身份策略权限。
  
  | 授权项                       | 访问级别  | 资源类型（\*为必须） | 条件键 | 别名 | 依赖的授权项 |
  |:---|:---|:---|:---|:---|:---|
  | modelarts:workflow:update | Write | workflow \* | -   | -  | -      |
     
  
 
#### URI
POST /v2/{project_id}/workflows/{workflow_id}/schedules
表1路径参数 
| 参数          | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|:---|
| project_id  | 是    | String | **参数解释** ：用户项目ID。获取方法请参见[获取项目ID和名称](https://support.huaweicloud.com/api-modelarts/modelarts_03_0147.html)。 **约束限制**：1 - 64字符，字母、数字和中划线。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
| workflow_id | 是    | String | **参数解释**：工作流的ID。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                          |
   
#### 请求参数
表2请求Body参数 
| 参数          | 是否必选 | 参数类型                                                                                                                            | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| type        | 否    | String                                                                                                                          | **参数解释**：类型，仅支持time（时间）。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| content     | 否    | Map\<String,Object\>                                                                                                            | **参数解释**：内容。 **约束限制**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| action      | 否    | String                                                                                                                          | **参数解释**：动作，仅支持run。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| workflow_id | 否    | String                                                                                                                          | **参数解释**：Workflow工作流ID。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| user_id     | 否    | String                                                                                                                          | **参数解释**：用户ID。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| enable      | 否    | Boolean                                                                                                                         | **参数解释**：定时调度信息，使能标记。 **约束限制**：不涉及。 **取值范围**： - true：生效   - false：不生效    **默认取值**：不涉及。 |
| uuid        | 否    | String                                                                                                                          | **参数解释**：ID标记。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| policies    | 否    | [WorkflowSchedulePolicies] object | **参数解释**：调度策略。 **约束限制**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| created_at  | 否    | String                                                                                                                          | **参数解释**：创建时间。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   
 表3WorkflowSchedulePolicies 
| 参数         | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                               |
|:---|:---|:---|:---|
| on_failure | 否    | String | **参数解释**：定时调度策略中的标记，失败时触发。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。      |
| on_running | 否    | String | **参数解释**：定时调度策略中的标记，running时触发。 **约束限制**：不涉及。 **取值范围**：不涉及。 **默认取值**：不涉及。 |
   
#### 响应参数
**状态码：201**
表4响应Body参数 
| 参数          | 参数类型                                                                                                                                     | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
|:---|:---|:---|
| type        | String                                                                                                                                   | **参数解释**：类型，仅支持time（时间）。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| content     | Map\<String,String\>                                                                                                                     | **参数解释**：内容。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| action      | String                                                                                                                                   | **参数解释**：动作，仅支持run。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| workflow_id | String                                                                                                                                   | **参数解释**：Workflow工作流ID。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| user_id     | String                                                                                                                                   | **参数解释**：用户ID。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| enable      | Boolean                                                                                                                                  | **参数解释**：定时调度信息，使能标记。 **取值范围**： - true：生效   - false：不生效    |
| uuid        | String                                                                                                                                   | **参数解释**：ID标记。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| policies    | [WorkflowSchedulePoliciesResp] object | **参数解释**：调度策略。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| created_at  | String                                                                                                                                   | **参数解释**：创建时间。 **取值范围**：不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
   
 表5WorkflowSchedulePoliciesResp 
| 参数         | 参数类型   | 描述                                                                                                                         |
|:---|:---|:---|
| on_failure | String | **参数解释**：定时调度策略中的标记，失败时触发。 **取值范围**：不涉及。      |
| on_running | String | **参数解释**：定时调度策略中的标记，running时触发。 **取值范围**：不涉及。 |
   
#### 请求示例
创建Workflow定时调度。设置类型为"time"，动作为"run"，调度策略on_failure为"retry"、on_running为"cancel"。
```
POST https://{endpoint}/v2/{project_id}/workflows/{workflow_id}/schedules
{
  "type" : "time",
  "action" : "run",
  "content" : {
    "cron" : "0 0 0 * * Thu",
    "method" : "fixed"
  },
  "policies" : {
    "on_failure" : "retry",
    "on_running" : "cancel"
  }
}
```
#### 响应示例
**状态码：201**
```
{
  "created_at" : "2022-11-02T09:40:52.714656752+08:00",
  "uuid" : "fa4ac58e-088b-4fd7-ae8c-b36fee50f884",
  "type" : "time",
  "content" : {
    "cron" : "0 0 0 * * Thu",
    "method" : "fixed"
  },
  "action" : "run",
  "policies" : {
    "on_failure" : "retry",
    "on_running" : "cancel"
  },
  "workflow_id" : "f1642618-43eb-4ab1-a0b1-9cc584182c60",
  "user_id" : "********",
  "enable" : true
}
```
#### 状态码
| 状态码 | 描述      |
|:---|:---|
| 201 | 定时调度信息。 |
   
#### 错误码
请参见[错误码](https://support.huaweicloud.com/api-modelarts/modelarts_03_0095.html)。
