tencent cloud

文档反馈

CreateJob

最后更新时间:2023-12-21 17:43:15

    功能描述

    CreateJob 用于在存储桶中创建批量处理任务。详细信息可参见 批量处理概述
    调用该请求时,请确保您有足够的权限对存储桶的对象进行操作。存储桶所有者默认拥有该权限,若您无该项权限,请先向存储桶所有者申请该项操作的权限。

    请求

    请求示例

    POST /jobs HTTP/1.1
    Host: <UIN>.cos-control.<Region>.myqcloud.com
    Date: GMT Date
    Content-Type: application/xml
    Content-Length: Content Length
    Authorization: Auth String
    x-cos-appid: <APPID>
    
    <?xml version="1.0" encoding="UTF-8"?>
    <CreateJobRequest>
    ...
    </CreateJobRequest>
    说明
    Authorization: Auth String(详情请参见 请求签名 文档)。

    请求参数

    调用 CreateJob 所需的参数。该参数格式如下:
    参数
    描述
    是否必选
    x-cos-appid
    用户的 APPID,长度为1 - 64字节。

    请求头

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

    请求体

    用户在请求体中使用 XML 语言设置清单任务的具体配置信息。配置信息包括清单任务分析的对象,分析的频次,分析的维度,分析结果的格式及存储的位置等信息。
    <CreateJobRequest>
    <ClientRequestToken>string</ClientRequestToken>
    <ConfirmationRequired>boolean</ConfirmationRequired>
    <Description>string</Description>
    <Manifest>
    <Location>
    <ETag>string</ETag>
    <ObjectArn>string</ObjectArn>
    <ObjectVersionId>string</ObjectVersionId>
    </Location>
    <Spec>
    <Fields>
    <member>string</member>
    <member>string</member>
    </Fields>
    <Format>string</Format>
    </Spec>
    </Manifest>
    <Operation>
    <COSInitiateRestoreObject>
    <ExpirationInDays> integer </ExpirationInDays>
    <JobTier> string </JobTier>
    </COSInitiateRestoreObject>
    <COSPutObjectCopy>
    <AccessControlDirective>string</AccessControlDirective>
    <AccessControlGrants>
    <COSGrant>
    <Grantee>
    <Identifier>string</Identifier>
    <TypeIdentifier>string</TypeIdentifier>
    </Grantee>
    <Permission>string</Permission>
    </COSGrant>
    <COSGrant>
    <Grantee>
    <Identifier>string</Identifier>
    <TypeIdentifier>string</TypeIdentifier>
    </Grantee>
    <Permission>string</Permission>
    </COSGrant>
    </AccessControlGrants>
    <PrefixReplace>boolean</PrefixReplace>
    <ResourcesPrefix>string</ResourcesPrefix>
    <TargetKeyPrefix>string</TargetKeyPrefix>
    <CannedAccessControlList>string</CannedAccessControlList>
    <MetadataDirective>string</MetadataDirective>
    <ModifiedSinceConstraint>timestamp</ModifiedSinceConstraint>
    <UnModifiedSinceConstraint>timestamp</UnModifiedSinceConstraint>
    <MetadataDirective>string</MetadataDirective>
    <NewObjectMetadata>
    <CacheControl>string</CacheControl>
    <ContentDisposition>string</ContentDisposition>
    <ContentEncoding>string</ContentEncoding>
    <ContentType>string</ContentType>
    <HttpExpiresDate>timestamp</HttpExpiresDate>
    <SSEAlgorithm>string</SSEAlgorithm>
    <UserMetadata>
    <member>
    <Key>string</Key>
    <Value>string</Value>
    </member>
    <member>
    <Key>string</Key>
    <Value>string</Value>
    </member>
    </UserMetadata>
    </NewObjectMetadata>
    <TaggingDirective>string</TaggingDirective>
    <NewObjectTagging>
    <COSTag>
    <Key>string</Key>
    <Value>string</Value>
    </COSTag>
    </NewObjectTagging>
    <StorageClass>string</StorageClass>
    <TargetResource>string</TargetResource>
    </COSPutObjectCopy>
    </Operation>
    <Priority>integer</Priority>
    <Report>
    <Bucket>string</Bucket>
    <Enabled>boolean</Enabled>
    <Format>string</Format>
    <Prefix>string</Prefix>
    <ReportScope>string</ReportScope>
    </Report>
    <RoleArn>string</RoleArn>
    </CreateJobRequest>
    请求体内相关元素的具体描述如下。其他元素请参见 批量处理功能公共元素
    节点名
    父节点
    描述
    类型
    是否必选
    ClientRequestToken
    CreateJobRequest
    每个请求唯一的 token,用于避免前端重复发起同一批处理任务。长度为1 - 64字节,建议使用 uuid。
    String
    ConfirmationRequired
    CreateJobRequest
    是否在执行任务前进行确认。默认值为 false。
    Boolean
    Description
    CreateJobRequest
    任务描述。若您在创建任务时配置了此信息,则会返回该项内容。描述长度范围为0 - 256字节。
    String
    Manifest
    CreateJobRequest
    待处理的对象清单。您需要将待处理的对象记录在此对象清单内。您可以使用 清单功能 生成文件清单。
    Manifest Object
    Operation
    CreateJobRequest
    选择对清单文件中的对象将要执行的操作。目前 COS 支持 批量复制对象批量恢复归档 等操作,您可以据此处理存储桶内的存量数据。
    Operation Object
    Priority
    CreateJobRequest
    任务优先级。越高的数值代表此项任务的优先级越高。优先级数值范围为0 - 2147483647。
    Integer
    Report
    CreateJobRequest
    任务完成报告。您可配置此参数以在任务完成时输出报告,方便审计任务执行状况。
    Report Object
    RoleArn
    CreateJobRequest
    COS 资源标识符,此处用于标识您创建的角色。您需要此资源标识符以验证您的身份。
    String

    响应

    响应头
    此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。
    响应体
    <CreateJobResult>
    <JobId>string</JobId>
    </CreateJobResult>
    具体内容描述如下:
    节点名
    父节点
    描述
    类型
    JobId
    CreateJobResult
    任务 ID。当您成功创建一项任务后,COS 自动返回的 ID,长度1 - 64字节。
    String
    错误分析
    该请求操作可能会出现如下错误信息。其他错误请参见 批量处理功能错误响应
    错误代码
    描述
    状态码
    API
    InvalidRequest
    重复的请求
    400
    CreateJob
    InvalidRequest
    优先级的有效范围是0 - 2147483647的整数
    400
    CreateJob
    MalformedXML
    请求体的 XML Manifest 字段不符合 XML 语法
    400
    CreateJob
    MalformedXML
    请求体的 XML Operation 字段不符合 XML 语法
    400
    CreateJob
    MalformedXML
    请求体的 XML Report 字段不符合 XML 语法
    400
    CreateJob
    ServiceUnavailable
    服务暂不可用,无法建立新的任务
    500
    CreateJob
    TooManyJobs
    任务已达上限,服务器不可用
    500
    CreateJob

    实际案例

    请求

    POST /jobs HTTP/1.1
    Host: 100000000001.cos-control.ap-chengdu.myqcloud.com
    Date: Thu, 19 Dec 2019 18:00:29 GMT
    x-cos-appid: 1250000000
    Content-Type: application/xml
    Content-Length: 1056
    Content-MD5: hHcgq5mu8s0YP4WTGiQ+uA==
    Authorization: q-sign-algorithm=sha1&q-ak=AKID8A0fBVtYFrNm02oY1g1JQQF0c3JO****&q-sign-time=1576778429;1576785629&q-key-time=1576778429;1576785629&q-header-list=content-length;content-md5;content-type;date;host;x-cos-appid&q-url-param-list=&q-signature=8e0db6883376b5df713819f878da5020c5b6****
    Connection: close
    
    <CreateJobRequest>
    <ClientRequestToken>184ce261-18af-5e3d-3e30-253723cfd937</ClientRequestToken>
    <ConfirmationRequired>false</ConfirmationRequired>
    <Description>example-job</Description>
    <Manifest>
    <Location>
    <ETag>"15150651828fa9cdcb8356b6d1c7638b"</ETag>
    <ObjectArn>qcs::cos:ap-chengdu::sourcebucket-1250000000/manifests/batch-copy-manifest.csv</ObjectArn>
    </Location>
    <Spec>
    <Fields>
    <member>Bucket</member>
    <member>Key</member>
    </Fields>
    <Format>COSBatchOperations_CSV_V1</Format>
    </Spec>
    </Manifest>
    <Operation>
    <COSPutObjectCopy>
    <TargetResource>qcs::cos:ap-chengdu:uid/1250000000:destinationbucket-1250000000</TargetResource>
    </COSPutObjectCopy>
    </Operation>
    <Priority>10</Priority>
    <Report>
    <Bucket>qcs::cos:ap-chengdu::sourcebucket-1250000000</Bucket>
    <Enabled>true</Enabled>
    <Format>Report_CSV_V1</Format>
    <Prefix>job-result</Prefix>
    <ReportScope>AllTasks</ReportScope>
    </Report>
    <RoleArn>qcs::cam::uin/100000000001:roleName/COS_Batch_QcsRole</RoleArn>
    </CreateJobRequest>

    响应

    上述请求后,COS 返回以下响应,表明该清单任务已经成功设置完毕。
    HTTP/1.1 200 OK
    Content-Type: application/xml
    Content-Length: 89
    Connection: close
    Date: Thu, 19 Dec 2019 18:00:30 GMT
    Server: tencent-cos
    x-cos-request-id: NWRmYmJhYmRfMjViMjU4NjRfNmIzYV8xMDE2****
    
    <CreateJobResult>
    <JobId>53dc6228-c50b-46f7-8ad7-65e7159f1aae</JobId>
    </CreateJobResult>