文档首页/ 代码检查 CodeArts Check/ API参考/ API/ 任务管理/ 批量异步复制任务 - BatchCopyAsyncTasks
更新时间:2025-12-09 GMT+08:00
分享

批量异步复制任务 - BatchCopyAsyncTasks

功能介绍

根据任务或者模板任务批量异步复制任务。

调用方法

请参见如何调用API

授权信息

账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项

授权项

访问级别

资源类型(*为必须)

条件键

别名

依赖的授权项

codeartscheck:task:create

Write

task *

-

-

-

-

codeartscheck:ProjectId

URI

POST /v4/tasks/{task_id}/batch/async-copy

表1 路径参数

参数

是否必选

参数类型

描述

task_id

String

参数解释:

任务ID或者模板任务ID。

  • 任务ID:新建检查任务接口的返回值,每个CodeArtsCheck任务及其下的分支任务、通过API创建的增量任务都有唯一的任务ID。

  • 模板任务ID:模板任务的ID,模板任务列表可以通过get::/v4/template-tasks接口查询,模板任务ID的值可从模板任务列表的data.id查询。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

[数组元素]

Array of CopyAsyncTaskInfo objects

参数解释:

根据任务模板批量创建任务需要的参数。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表3 CopyAsyncTaskInfo

参数

是否必选

参数类型

描述

name

String

参数解释:

任务名。

约束限制:

任意中英文、数字、点.、连字符-及下划线_,且长度为1-128。

取值范围:

不涉及。

默认取值:

不涉及。

taskClassificationId

String

参数解释:

任务分组ID。创建任务分组时,会返回一个任务分组ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

repoUrl

String

参数解释:

代码仓地址。

约束限制:

不涉及。

取值范围:

  • Repo仓: 传以git开头的地址。

  • 非Repo仓: 传以http开头的地址。

默认取值:

不涉及。

projectId

String

参数解释:

项目的32位UUID,通过查询项目列表接口查询项目列表获取。

约束限制:

不涉及。

取值范围:

32位项目ID。

默认取值:

不涉及。

branchName

String

参数解释:

代码仓分支名。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

configTemplate

configTemplate object

参数解释:

配置模板。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表4 configTemplate

参数

是否必选

参数类型

描述

authId

String

参数解释:

用户预先创建的项目下的代码源扩展点ID,保存了代码仓信息。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

authType

String

参数解释:

授权类型。

约束限制:

不涉及。

取值范围:

  • DevCloud:CodeArtsRepo仓。

  • Gitee:Gitee仓。

  • GitHub:GitHub仓。

  • GitPub:通用Git仓。

  • gitcode:GitCode仓。

  • gitlab:GitLab仓。

  • self_gitlab:自建GitLab仓。

  • tfs_git:TFS仓。

  • bitbucket:Bitbucket仓。

默认取值:

不涉及。

repoType

String

参数解释:

代码仓类型。

约束限制:

不涉及。

取值范围:

  • DevCloud:CodeArtsRepo仓。

  • Gitee:Gitee仓。

  • GitHub:GitHub仓。

  • GitPub:通用Git仓。

  • gitcode:GitCode仓。

  • gitlab:GitLab仓。

  • self_gitlab:自建GitLab仓。

  • tfs_git:TFS仓。

  • bitbucket:Bitbucket仓。

默认取值:

不涉及。

响应参数

状态码:200

表5 响应Body参数

参数

参数类型

描述

[数组元素]

Array of AsyncCopyTaskInfo objects

参数解释:

异步任务列表。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表6 AsyncCopyTaskInfo

参数

参数类型

描述

id

String

参数解释:

异步任务ID。根据模板批量创建任务时会返回每个任务的异步任务ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

create_time

String

参数解释:

任务创建时间。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

type

String

参数解释:

异步任务类型。根据模板批量创建任务时为"CopyTask"。

约束限制:

不涉及。

取值范围:

CopyTask。

默认取值:

不涉及。

status

String

参数解释:

异步任务状态,异步任务还在执行中时为"RUNNING",异步任务执行完成时为"SUCCESS"。

约束限制:

不涉及。

取值范围:

RUNNING、SUCCESS。

默认取值:

不涉及。

user

AsyncCopyTaskUser object

result

AsyncCopyTaskResult object

参数解释:

异步任务创建结果。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表7 AsyncCopyTaskUser

参数

参数类型

描述

user_id

String

参数解释:

用户ID,值来源于IAM的用户ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

domain_id

String

参数解释:

租户ID,值来源于IAM的租户ID。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

region

String

参数解释:

华为云地域。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表8 AsyncCopyTaskResult

参数

参数类型

描述

id

String

参数解释:

任务ID,即新建检查任务接口的返回值,每个CodeArtsCheck任务及其下的分支任务、通过API创建的增量任务都有1个唯一的任务ID。即“查询任务列表接口”的响应中的ID字段。

约束限制:

不涉及。

取值范围:

字符串长度不少于1,不超过32。

默认取值:

不涉及。

projectId

String

项目ID

状态码:400

表9 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码:401

表10 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

请求示例

以任务id为21ac33fdfaae4132bcb88cf0a6a7a2d3的任务模板,创建两个任务。这两个任务的仓库类型都是CodeArtsRepo仓,项目分别位于项目id为213d2d49dbb2473e9c8d4f117ab1b0dc,bc17c7dd92c84e84be62185b5e383e90的项目,gitUrl分别为git@codehub.devcloud.example.com:213d2d49dbb2473e9c8d4f117ab1b0dc/phoenix-sample.git和git@codehub.devcloud.example.com:bc17c7dd92c84e84be62185b5e383e90/fortran_test.git。

POST https://{endpoint}/v4/tasks/21ac33fdfaae4132bcb88cf0a6a7a2d3/batch/async-copy

[ {
  "name" : "task_name1",
  "taskClassificationId" : "no_grouped",
  "repoUrl" : "git@codehub.devcloud.example.com:213d2d49dbb2473e9c8d4f117ab1b0dc/phoenix-sample.git",
  "projectId" : "213d2d49dbb2473e9c8d4f117ab1b0dc",
  "branchName" : "master",
  "configTemplate" : {
    "repoType" : "DevCloud"
  }
}, {
  "name" : "task_name2",
  "taskClassificationId" : "no_grouped",
  "repoUrl" : "git@codehub.devcloud.example.com:bc17c7dd92c84e84be62185b5e383e90/fortran_test.git",
  "projectId" : "bc17c7dd92c84e84be62185b5e383e90",
  "branchName" : "master",
  "configTemplate" : {
    "repoType" : "DevCloud"
  }
} ]

响应示例

状态码:200

Request succeeded!

[ {
  "id" : "24426b3d522f40719e22c4867fb79f3b",
  "create_time" : "2025-09-09 11:50:41",
  "type" : "CopyTask",
  "status" : "RUNNING",
  "user" : {
    "user_id" : "4050544ea69a40dabf28310fc3d10a09",
    "domain_id" : "389efb76b1354e4482eabeed25c895e4",
    "region" : "cn-north-7"
  }
}, {
  "id" : "b7875294d47841d48c4728c7ca17994a",
  "create_time" : "2025-09-09 11:50:41",
  "type" : "CopyTask",
  "status" : "RUNNING",
  "user" : {
    "user_id" : "4050544ea69a40dabf28310fc3d10a09",
    "domain_id" : "389efb76b1354e4482eabeed25c895e4",
    "region" : "cn-north-7"
  }
} ]

状态码:400

Bad Request

{
  "error_code" : "CC.00000000",
  "error_msg" : "网络繁忙,请稍后再试"
}

状态码:401

Unauthorized

{
  "error_code" : "CC.00000003",
  "error_msg" : "认证信息过期"
}

状态码

状态码

描述

200

Request succeeded!

400

Bad Request

401

Unauthorized

错误码

请参见错误码

相关文档