更新时间:2025-08-20 GMT+08:00
分享

创建项目、仓库

功能介绍

创建项目后,创建仓库组由后台生成方式 传入参数:仓库名、模板id、是否导入项目成员、归属项目

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

URI

POST /v2/projects/repositories

请求参数

表1 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

约束限制:

不涉及。

取值范围:

字符串长度为[1,100000]。

默认取值:

不涉及。

表2 请求Body参数

参数

是否必选

参数类型

描述

import_members

Integer

参数解释

是否导入项目成员。

约束限制

不涉及。

取值范围

  • 0,不导入项目成员。
  • 1,导入项目成员。

默认取值:

0

project_name

String

参数解释

项目名称。

约束限制

不涉及。

取值范围

可以输入英文大小写字母、数字、连字符、下划线,且必须以字母开头。

默认取值:

不涉及。

repo_name

String

参数解释

仓库名称。

约束限制

不涉及。

取值范围

  • 以大小写字母、数字、下划线开头,可包含大小写字母、数字、中划线、下划线、英文句点,但不能以.git、.atom或.结尾。
  • 长度为1-256。

默认取值:

0

type

String

参数解释

项目类型,scrum。

约束限制

不涉及。

取值范围

默认取值:

0

visibility_level

Integer

参数解释

仓库可见性。

约束限制

不涉及。

取值范围

  • 私有仓库:仓库仅对仓库成员可见,仓库成员可读写和访问仓库,取值为0
  • 公开仓库:
    1. 项目内成员只读仓库:仓库对项目内成员公开只读,并项目内成员可在项目下和代码组下的仓库列表中查看和搜索,取值为10
    2. 租户内成员只读仓库:仓库对租户内成员公开只读,并租户内成员可在项目下和代码组下的仓库列表中查看和搜索,取值为10
    3. 所有访客只读仓库:仓库对所有访客公开只读,并所有访客可在项目下和代码组下的仓库列表中查看和搜索,取值为20

默认取值:

0

external_project_info

ExternalKeyMessage object

参数解释

第三方服务信息。

约束限制

不涉及。

表3 ExternalKeyMessage

参数

是否必选

参数类型

描述

external_key_message

String

参数解释

第三方保存在代码托管的关键信息。

约束限制

不涉及。

取值范围

字符串。

默认取值:

不涉及。

external_service

String

参数解释

外部服务名称。

约束限制

不涉及。

取值范围

字符串。

默认取值:

不涉及。

响应参数

状态码: 200

表4 响应Body参数

参数

参数类型

描述

error

Error object

参数解释

响应错误。

result

ProjectRepository object

参数解释

响应结果。

status

String

参数解释

响应状态。

取值范围

  • success,表示接口调用成功。
  • fail,表示接口调用失败。
表5 Error

参数

参数类型

描述

code

String

参数解释

错误码。

取值范围

请参见错误码

message

String

参数解释

错误信息。

取值范围

字符串。

表6 ProjectRepository

参数

参数类型

描述

projectUuid

String

参数解释

项目ID,获取方式请参见获取项目ID

取值范围

32位字符串。

repositoryUuid

String

参数解释

仓库UUID。

取值范围

32位字符串。

请求示例

POST https://{endpoint}/v2/projects/repositories

{
  "project_name" : "testworld",
  "repo_name" : "demotest1",
  "import_members" : "0",
  "visibility_level" : "20",
  "type" : "normal"
}

响应示例

状态码: 200

OK

{
  "result" : {
    "repositoryUuid" : "02637c34ba954ab5bd37ff9537fe05b4",
    "projectUuid" : "1aeda7a6070d4119b7d8b45e5641599b"
  },
  "status" : "success"
}

状态码

状态码

描述

200

OK

错误码

请参见错误码

相关文档