批量异步复制任务 - BatchCopyAsyncTasks
功能介绍
根据任务ID或者模板任务ID批量异步复制任务,待复制的任务支持重新设置项目ID、任务名、代码仓地址、分支名等参数,每个待复制的任务都会返回对应异步任务ID、复制进度等信息。
调用方法
请参见如何调用API。
授权信息
账号根用户具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备如下身份策略权限,更多的权限说明请参见权限和授权项。
|
授权项 |
访问级别 |
资源类型(*为必须) |
条件键 |
别名 |
依赖的授权项 |
|---|---|---|---|---|---|
|
codeartscheck:task:create |
Write |
task * |
- |
- |
- |
|
- |
codeartscheck:ProjectId |
URI
POST /v4/tasks/{task_id}/batch/async-copy
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
[数组元素] |
是 |
Array of CopyAsyncTaskInfo objects |
参数解释: 根据任务模板批量创建任务需要的参数。 约束限制: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
name |
否 |
String |
参数解释: 任务名。 约束限制: 任意中英文、数字、点.、连字符-及下划线_,且长度为1-128。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
taskClassificationId |
否 |
String |
参数解释: 任务分组ID。创建任务分组时,会返回一个任务分组ID。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
repoUrl |
否 |
String |
参数解释: 代码仓地址。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
|
projectId |
否 |
String |
参数解释: 项目的32位UUID,通过查询项目列表接口获取。 约束限制: 不涉及。 取值范围: 32位项目ID。 默认取值: 不涉及。 |
|
branchName |
否 |
String |
参数解释: 代码仓分支名。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
configTemplate |
否 |
configTemplate object |
参数解释: 配置模板。 约束限制: 不涉及。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
authId |
否 |
String |
参数解释: 用户预先创建的项目下的代码源扩展点ID,保存了代码仓信息。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
|
authType |
否 |
String |
参数解释: 授权类型。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
|
repoType |
否 |
String |
参数解释: 代码仓类型。 约束限制: 不涉及。 取值范围:
默认取值: 不涉及。 |
响应参数
状态码:200
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
[数组元素] |
Array of AsyncCopyTaskInfo objects |
参数解释: 异步任务列表。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
id |
String |
参数解释: 异步任务ID。根据模板批量创建任务时会返回每个任务的异步任务ID。 取值范围: 不涉及。 |
|
create_time |
String |
参数解释: 任务创建时间。 取值范围: 不涉及。 |
|
type |
String |
参数解释: 异步任务类型。根据模板批量创建任务时为"CopyTask"。 取值范围: CopyTask。 |
|
status |
String |
参数解释: 异步任务状态。 取值范围:
|
|
user |
AsyncCopyTaskUser object |
参数解释: 异步任务的用户信息。 |
|
result |
AsyncCopyTaskResult object |
参数解释: 异步任务创建结果。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
user_id |
String |
参数解释: 用户ID,值来源于IAM的用户ID。 取值范围: 不涉及。 |
|
domain_id |
String |
参数解释: 租户ID,值来源于IAM的租户ID。 取值范围: 不涉及。 |
|
region |
String |
参数解释: 华为云地域。 取值范围: 不涉及。 |
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
id |
String |
参数解释: 任务ID,即新建检查任务接口的返回值,每个代码检查任务及其下的分支任务、通过API创建的增量任务都有唯一的任务ID。即查询任务列表接口响应中的id字段。 约束限制: 不涉及。 取值范围: 长度为[1~32]个字符。 默认取值: 不涉及。 |
|
projectId |
String |
参数解释: 项目的32位UUID,通过查询项目列表接口获取。 取值范围: 长度为[1~32]个字符。 |
状态码:400
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
error_code |
String |
参数解释: 错误码。 取值范围: 不涉及。 |
|
error_msg |
String |
参数解释: 错误描述。 取值范围: 不涉及。 |
状态码:401
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
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.xxxxxxxx.400",
"error_msg" : "请求参数校验失败,请检查请求参数是否正确"
}
状态码:401
Unauthorized
{
"error_code" : "CC.00000003",
"error_msg" : "认证信息过期"
}
状态码
|
状态码 |
描述 |
|---|---|
|
200 |
Request succeeded! |
|
400 |
Bad Request |
|
401 |
Unauthorized |
错误码
请参见错误码。