触发任务(工作流)

最近更新时间:2024-11-07 09:42:12

我的收藏

功能描述

通过工作流触发批量数据处理任务。


授权说明

授权策略中 action 设置为 ci:TriggerMediaWorkflow 。查看所有 action

服务开通

使用该功能需提前开通数据万象,并绑定存储桶。详情请参见 绑定存储桶

使用限制

使用该接口时,请先确认相关限制条件。详情请参见 使用限制

请求

请求示例

POST /inventorytriggerjob HTTP/1.1
Host: <BucketName-APPID>.ci.<Region>.myqcloud.com
Date: <GMT Date>
Authorization: <Auth String>
Content-Length: <length>
Content-Type: application/xml

<body>
说明
Authorization: Auth String(详情请参见 请求签名 文档)。
通过子账号使用时,需要授予相关的权限,详情请参见 授权粒度详情 文档。

请求头

此接口仅使用公共请求头部,详情请参见 公共请求头部 文档。

请求体

该请求操作的实现需要有如下请求体。
<Request>
<Name>demo</Name>
<Type>Workflow</Type>
<Input>
<Prefix>input</Prefix>
</Input>
<Operation>
<TimeInterval>
<Start>2022-02-01T12:00:00+0800</Start>
<End>2022-05-01T12:00:00+0800</End>
</TimeInterval>
<WorkflowIds>w7476ff3564ee45b7b490d64bccaba6cc</WorkflowIds>
</Operation>
</Request>
具体的数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Request
保存请求的容器
Container
Container 类型 Request 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Name
Request
批量触发任务名称,支持中文、英文、数字、—和_,长度限制128字符
String
Type
Request
批量处理任务类型: Workflow
String
Input
Request
待操作的媒体信息
Container
Operation
Request
操作规则
Container
Container 类型 Input 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Manifest
Request.Input
COS 清单列表文件名,COS 清单生成的 manifest.json 文件
String
UrlFile
Request.Input
URL 文件名,文件中每行的 URL 为一个 COS 中对象的访问地址
String
Prefix
Request.Input
Object 前缀
String
Object
Request.Input
媒体文件名
String
Container 类型 Operation 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
WorkflowIds
Request.Operation
触发的工作流 ID
String
TimeInterval
Request.Operation
按时间过滤的触发范围
Container
Container 类型 TimeInterval 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
默认值
限制
Start
Request.TimeInterval
开始时间
String
0
扫描对象的上传时间
%Y-%m-%dT%H:%m:%S%z
End
Request.TimeInterval
结束时间
String
当前时间
扫描对象的上传时间
%Y-%m-%dT%H:%m:%S%z

响应

响应头

此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。

响应体

该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:
<Response>
<JobsDetail>
<Code>Success</Code>
<Message/>
<Type>Workflow</Type>
<Name>demo</Name>
<JobId>b3deffea2f84911ec9cb15254008618d9</JobId>
<State>Running</State>
<CreationTime>2022-06-27T15:23:10+0800</CreationTime>
<StartTime>-</StartTime>
<EndTime>-</EndTime>
<Input>
<Prefix>input</Prefix>
</Input>
<Operation>
<TimeInterval>
<Start>2022-02-01T12:00:00+0800</Start>
<End>2022-05-01T12:00:00+0800</End>
</TimeInterval>
<WorkflowIds>w7476ff3564ee45b7b490d64bccaba6cc</WorkflowIds>
</Operation>
</JobsDetail>
</Response>
具体的数据内容如下:
节点名称(关键字)
父节点
描述
类型
Response
保存结果的容器
Container
Container 节点 Response 的内容:
节点名称(关键字)
父节点
描述
类型
RequestId
Response
请求的唯一 ID
String
JobsDetail
Response
任务的详细信息
Container


Container 节点 JobsDetail 的内容:

节点名称(关键字)
父节点
描述
类型
Code
Response.JobsDetail
错误码,只有 State 为 Failed 时有意义
String
Message
Response.JobsDetail
错误描述,只有 State 为 Failed 时有意义
String
Type
Response.JobsDetail
批量处理任务类型
String
Name
Response.JobsDetail
新创建任务的名称
String
JobId
Response.JobsDetail
新创建任务的 ID
String
State
Response.JobsDetail
任务的状态,为 Submitted、Running、Success、Failed、Pause、Cancel 其中一个
String
CreationTime
Response.JobsDetail
任务的创建时间
String
StartTime
Response.JobsDetail
任务的开始时间
String
EndTime
Response.JobsDetail
任务的结束时间
String
Input
Response.JobsDetail
同请求中的 Request.Input
Container
Operation
Response.JobsDetail
同请求中的 Request.Operation
Container

错误码

该请求操作无特殊错误信息,常见的错误信息请参见 错误码 文档。

实际案例

请求

POST /inventorytriggerjob HTTP/1.1
Authorization:q-sign-algorithm=sha1&q-ak=******************************************&q-sign-time=1497530202;1497610202&q-key-time=1497530202;1497610202&q-header-list=&q-url-param-list=&q-signature=*************************************************
Host:bucket-1250000000.ci.ap-beijing.myqcloud.com
Content-Length: 166
Content-Type: application/xml

<Request>
<Name>demo</Name>
<Type>Workflow</Name>
<Input>
<Prefix>input</Prefix>
</Input>
<Operation>
<TimeInterval>
<Start>2022-02-01T12:00:00+0800</Start>
<End>2022-05-01T12:00:00+0800</End>
</TimeInterval>
<WorkflowIds>w7476ff3564ee45b7b490d64bccaba6cc</WorkflowIds>
</Operation>
</Request>

响应

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 230
Connection: keep-alive
Date: Mon, 28 Jun 2022 15:23:12 GMT
Server: tencent-ci
x-ci-request-id: NTk0MjdmODlfMjQ4OGY3XzYzYzh****=

<Response>
<JobsDetail>
<Code>Success</Code>
<Type>Workflow</Type>
<Message/>
<Name>demo</Name>
<JobId>b3deffea2f84911ec9cb15254008618d9</JobId>
<State>Running</State>
<CreationTime>2022-06-27T15:23:10+0800</CreationTime>
<StartTime>-</StartTime>
<EndTime>-</EndTime>
<Input>
<Prefix>input</Prefix>
</Input>
<Operation>
<TimeInterval>
<Start>2022-02-01T12:00:00+0800</Start>
<End>2022-05-01T12:00:00+0800</End>
</TimeInterval>
<WorkflowIds>w7476ff3564ee45b7b490d64bccaba6cc</WorkflowIds>
</Operation>
</JobsDetail>
</Response>