简介
本文档提供关于批量触发存量任务的 API 概览和 SDK 示例代码。
API | 操作描述 |
---|---|
手动触发工作流 | 用于手动触发工作流。 |
触发批量存量任务 | 用于提交一个存量触发工作流任务。 |
批量拉取存量任务 | 用于拉取符合条件的任务。 |
查询存量任务 | 用于查询指定存量触发工作流的任务。 |
取消存量任务 | 用于取消一个存量触发工作流任务。 |
手动触发工作流
功能说明
用于手动触发工作流。
方法原型
public Guzzle\Service\Resource\Model triggerWorkflow(array $args = array());
请求示例
<?php
require dirname(__FILE__) . '/../vendor/autoload.php';
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\Cos\Client(
array(
'region' => $region,
'schema' => 'https', // 默认http
'credentials' => array(
'secretId' => $secretId,
'secretKey' => $secretKey)));
try {
// https://cloud.tencent.com/document/product/436/54641 手动触发工作流
$result = $cosClient->triggerWorkflow(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'workflowId' => 'w9938ed4b1435448783xxxxxxxxxxxxxx',
'object' => 'test01.png',
// 'name' => 'xxx',
));
// 请求成功
print_r($result);
} catch (\Exception $e) {
// 请求失败
echo($e);
}
参数说明
Request 中的具体数据描述如下:
名称 | 描述 | 类型 | 是否必选 |
---|---|---|---|
workflowId | 需要触发的工作流 ID | String | 是 |
object | 需要进行工作流处理的对象名称 | String | 是 |
name | 存量触发任务名称,支持中文、英文、数字、—和_,长度限制128字符,默认为空 | String | 否 |
返回结果示例
GuzzleHttp\Command\Result Object
(
[RequestId] => NjJhN2ZkYmZfNzgwYAASDKJAPODJMPFNFM=
[ContentType] => application/xml
[ContentLength] => 188
[InstanceId] => i7fb6e17cebds8v7x897cv89x7v98d6f
[Bucket] => examplebucket-125000000
[Location] => examplebucket-125000000.ci.ap-guangzhou.myqcloud.com/triggerworkflow
)
触发批量存量任务
功能说明
用于提交一个存量触发工作流任务。
方法原型
public Guzzle\Service\Resource\Model createInventoryTriggerJob(array $args = array());
请求示例
<?php
require dirname(__FILE__) . '/../vendor/autoload.php';
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\Cos\Client(
array(
'region' => $region,
'schema' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// https://cloud.tencent.com/document/product/436/71516 触发批量存量任务
$result = $cosClient->createInventoryTriggerJob(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Name' => '存量触发任务名称',
'Input' => array(
// 'Manifest' => '',
// 'UrlFile' => '',
// 'Prefix' => '',
'Object' => 'test01.png',
),
'Operation' => array(
'WorkflowIds' => 'w9938ed4b1435448783xxxxxxxxxxxxx',
// 'TimeInterval' => array(
// 'Start' => '',
// 'End' => '',
// ),
),
));
// 请求成功
print_r($result);
} catch (\Exception $e) {
// 请求失败
echo($e);
}
参数说明
Request 中的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
---|---|---|---|---|
Name | Request | 存量触发任务名称,支持中文、英文、数字、—和_,长度限制128字符 | String | 是 |
Input | Request | 待操作的媒体信息 | Container | 是 |
Operation | Request | 操作规则 | Container | 是 |
Container 类型 Input 的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 是否必选 |
---|---|---|---|---|
Manifest | Request.Input | COS 清单列表文件名 | String | 否 |
UrlFile | Request.Input | URL 文件名 | 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 |
返回结果示例
GuzzleHttp\Command\Result Object
(
[Body] => GuzzleHttp\Psr7\Stream Object
(
[stream:GuzzleHttp\Psr7\Stream:private] => Resource id #88
[size:GuzzleHttp\Psr7\Stream:private] =>
[seekable:GuzzleHttp\Psr7\Stream:private] => 1
[readable:GuzzleHttp\Psr7\Stream:private] => 1
[writable:GuzzleHttp\Psr7\Stream:private] => 1
[uri:GuzzleHttp\Psr7\Stream:private] => php://temp
[customMetadata:GuzzleHttp\Psr7\Stream:private] => Array
(
)
)
[RequestId] => NjJhOTg3ODNfZmNjYTNiOHAODISHOdlMmI=
[ContentType] => application/xml
[ContentLength] => 576
[Bucket] => examplebucket-125000000
[Location] => examplebucket-125000000.ci.ap-guangzhou.myqcloud.com/inventorytriggerjob
[Response] => Array
(
[JobsDetail] => Array
(
[Code] => Success
[CreationTime] => 1-01-01T08:05:43+0805
[EndTime] => -
[Input] => Array
(
[Object] => test01.png
)
[JobId] => b33872336ec7b11ecas0d80asd30d6f
[Name] => 存量触发任务名称
[Operation] => Array
(
[TimeInterval] => Array
(
[End] => 2022-06-15T15:17:23+08:00
)
)
[StartTime] => 1-01-01T08:05:43+0805
[State] => Running
[WorkflowIds] => w9938ed4b14aas890d8as09ddd
)
)
)
批量拉取存量任务
功能说明
用于拉取符合条件的任务。
方法原型
public Guzzle\Service\Resource\Model describeInventoryTriggerJobs(array $args = array());
请求示例
<?php
require dirname(__FILE__) . '/../vendor/autoload.php';
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\Cos\Client(
array(
'region' => $region,
'schema' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// https://cloud.tencent.com/document/product/436/71518 批量拉取存量任务
$result = $cosClient->describeInventoryTriggerJobs(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
// 'NextToken' => '',
// 'Size' => '',
// 'OrderByTime' => '',
// 'States' => '',
// 'StartCreationTime' => '',
// 'EndCreationTime' => '',
// 'WorkflowId' => '',
// 'JobId' => '',
// 'Name' => '',
));
// 请求成功
print_r($result);
} catch (\Exception $e) {
// 请求失败
echo($e);
}
参数说明
Request 中的具体数据描述如下:
节点名称(关键字) | 父节点 | 描述 | 类型 | 必选 |
---|---|---|---|---|
NextToken | 无 | 请求的上下文,用于翻页。上次返回的值 | String | 否 |
Size | 无 | 拉取的最大任务数。默认为10。最大为100 | Integer | 否 |
OrderByTime | 无 | Desc 或者 Asc。默认为 Desc | string | 否 |
States | 无 | 拉取该状态的任务,以,分割支持多状态 All,Submitted,Running,Success,Failed,Pause,Cancel。默认为 All | String | 否 |
StartCreationTime | 无 | 拉取创建时间大于等于该时间的任务。格式为:%Y-%m-%dT%H:%m:%S%z |
String | 否 |
EndCreationTime | 无 | 拉取创建时间小于等于该时间的任务。格式为:%Y-%m-%dT%H:%m:%S%z |
String | 否 |
WorkflowId | 无 | 工作流 ID | string | 否 |
JobId | 无 | 存量触发任务 ID | string | 否 |
Name | 无 | 存量触发任务名称 | string | 否 |
返回结果示例
GuzzleHttp\Command\Result Object
(
[Body] => GuzzleHttp\Psr7\Stream Object
(
[stream:GuzzleHttp\Psr7\Stream:private] => Resource id #88
[size:GuzzleHttp\Psr7\Stream:private] =>
[seekable:GuzzleHttp\Psr7\Stream:private] => 1
[readable:GuzzleHttp\Psr7\Stream:private] => 1
[writable:GuzzleHttp\Psr7\Stream:private] => 1
[uri:GuzzleHttp\Psr7\Stream:private] => php://temp
[customMetadata:GuzzleHttp\Psr7\Stream:private] => Array
(
)
)
[RequestId] => NjJhOTg4YzRfZmNjAIODUOIDUxNWU0OTM=
[ContentType] => application/xml
[ContentLength] => 3808
[Bucket] => examplebucket-125000000
[Location] => examplebucket-125000000.ci.ap-guangzhou.myqcloud.com/inventorytriggerjob
[Response] => Array
(
[JobsDetail] => Array
(
[0] => Array
(
[Code] => Success
[CreationTime] => 2022-06-15T15:17:23+0800
[EndTime] => 2022-06-15T15:21:17+0800
[Input] => Array
(
[Object] => test01.png
)
[JobId] => b33872336ec7b11ecas8d90as8d09ad6f
[Name] => 存量触发任务名称
[Operation] => Array
(
[TimeInterval] => Array
(
[End] => 2022-06-15T15:17:23+08:00
)
)
[StartTime] => 2022-06-15T15:17:23+0800
[State] => Success
[WorkflowIds] => w9938edb1asd80a9s8d09asddebdd
)
[1] => Array
(
[Code] => Success
[CreationTime] => 2022-06-14T11:17:19+0800
[EndTime] => 1-01-01T08:05:43+0805
[Input] => Array
(
[Object] => test01.png
)
[JobId] => b7fca9011ec9e215a09s8d09as8d6f
[Name] => 存量触发任务名称-5
[Operation] => Array
(
[TimeInterval] =>
)
[StartTime] => 2022-06-14T11:17:19+0800
[State] => Success
[WorkflowIds] => w993asd81as98d09a8d762bddebdd
)
[2] => Array
(
[Code] => Success
[CreationTime] => 2022-05-31T17:01:43+0800
[EndTime] => -
[Input] => Array
(
[Object] => test01.png
)
[JobId] => w993asd81as98d09a8d762bddebdd
[Name] => 存量触发任务名称-3
[Operation] => Array
(
[TimeInterval] => Array
(
[End] => 2022-05-31T17:01:43+08:00
)
)
[StartTime] => 2022-05-31T17:01:43+0800
[State] => Cancel
[WorkflowIds] => w993asd81as98d09a8d76as890d0debdd
)
)
[NextToken] => 1930
[RequestId] => NjJhOTg4YzRfZmNjYTNAOISUDOIASUDWU0OTM=
)
)
查询存量任务
功能说明
用于查询指定存量触发工作流的任务。
方法原型
public Guzzle\Service\Resource\Model describeInventoryTriggerJob(array $args = array());
请求示例
<?php
require dirname(__FILE__) . '/../vendor/autoload.php';
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\Cos\Client(
array(
'region' => $region,
'schema' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// https://cloud.tencent.com/document/product/436/71517 查询存量任务
$result = $cosClient->describeInventoryTriggerJob(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Key' => '', // jobId
));
// 请求成功
print_r($result);
} catch (\Exception $e) {
// 请求失败
echo($e);
}
参数说明
Request 中的具体数据描述如下:
参数名称 | 类型 | 描述 | 是否必填 |
---|---|---|---|
Bucket | String | 存储桶名称,格式:BucketName-APPID | 是 |
Key | String | 需要查询的任务 ID | 是 |
返回结果示例
GuzzleHttp\Command\Result Object
(
[Body] => GuzzleHttp\Psr7\Stream Object
(
[stream:GuzzleHttp\Psr7\Stream:private] => Resource id #88
[size:GuzzleHttp\Psr7\Stream:private] =>
[seekable:GuzzleHttp\Psr7\Stream:private] => 1
[readable:GuzzleHttp\Psr7\Stream:private] => 1
[writable:GuzzleHttp\Psr7\Stream:private] => 1
[uri:GuzzleHttp\Psr7\Stream:private] => php://temp
[customMetadata:GuzzleHttp\Psr7\Stream:private] => Array
(
)
)
[RequestId] => NjJhOThhNjhfNzgwYzAUOIDUSIOUDIOQ3NGE=
[ContentType] => application/xml
[ContentLength] => 670
[Key] => b33872336ec7b11as8d9000030d6f
[Bucket] => examplebucket-125000000
[Location] => examplebucket-125000000.ci.ap-guangzhou.myqcloud.com/inventorytriggerjob/b33872336ec7b11as8d9000030d6f
[Response] => Array
(
[JobsDetail] => Array
(
[Code] => Success
[CreationTime] => 2022-06-15T15:17:23+0800
[EndTime] => 2022-06-15T15:21:17+0800
[Input] => Array
(
[Object] => test01.png
)
[JobId] => b33872336ec7b11as8d9000030d6f
[Name] => 存量触发任务名称
[Operation] => Array
(
[TimeInterval] => Array
(
[End] => 2022-06-15T15:17:23+08:00
)
)
[StartTime] => 2022-06-15T15:17:23+0800
[State] => Success
[WorkflowIds] => w9938eda8s09d8a9s0d809a5762bddebdd
)
[RequestId] => NjJhOThhNjhfNAOUSDOIDUo3NGE=
)
)
取消存量任务
功能说明
用于取消一个存量触发工作流任务。
方法原型
public Guzzle\Service\Resource\Model cancelInventoryTriggerJob(array $args = array());
请求示例
<?php
require dirname(__FILE__) . '/../vendor/autoload.php';
$secretId = "SECRETID"; //替换为用户的 secretId,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$secretKey = "SECRETKEY"; //替换为用户的 secretKey,请登录访问管理控制台进行查看和管理,https://console.cloud.tencent.com/cam/capi
$region = "ap-beijing"; //替换为用户的 region,已创建桶归属的region可以在控制台查看,https://console.cloud.tencent.com/cos5/bucket
$cosClient = new Qcloud\Cos\Client(
array(
'region' => $region,
'schema' => 'https', //协议头部,默认为http
'credentials'=> array(
'secretId' => $secretId ,
'secretKey' => $secretKey)));
try {
// https://cloud.tencent.com/document/product/436/71515 取消存量任务
$result = $cosClient->cancelInventoryTriggerJob(array(
'Bucket' => 'examplebucket-125000000', //存储桶名称,由BucketName-Appid 组成,可以在COS控制台查看 https://console.cloud.tencent.com/cos5/bucket
'Key' => '', // jobId
));
// 请求成功
print_r($result);
} catch (\Exception $e) {
// 请求失败
echo($e);
}
参数说明
Request 中的具体数据描述如下:
参数名称 | 类型 | 描述 | 是否必填 |
---|---|---|---|
Bucket | String | 存储桶名称,格式:BucketName-APPID | 是 |
Key | String | 需要取消的任务 ID | 是 |
返回结果示例
GuzzleHttp\Command\Result Object
(
[RequestId] => NjJhOThjOWFfNzgwYzOUADOIID8xNWU3ODY=
[ContentType] => application/xml
[ContentLength] => 0
[Key] => b3c9das80d98a00f2ffd9
[Bucket] => examplebucket-125000000
[Location] => examplebucket-125000000.ci.ap-guangzhou.myqcloud.com/inventorytriggerjob/b3c9das80d98a00f2ffd9
)