华为云用户手册

  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 必传。 取值范围: 字符串长度不少于1,不超过10万。 默认取值: 不涉及。 表3 请求Body参数 参数 是否必选 参数类型 描述 body 是 String 参数解释: 检视意见内容。 约束限制: 必传。 取值范围: 长度限制:8000字符。 字符限制:unicode编码\u0000 - \uffff,不支持emoji表情、部分生僻字等特殊字符。 blank限制:不能为null或空字符串或全是空格。
  • URI POST /v2/repositories/{repository_id}/merge_requests/{merge_request_iid}/discussions/{discussion_id}/notes 表1 路径参数 参数 是否必选 参数类型 描述 repository_id 是 Integer 参数解释: 仓库id。 约束限制: 必传。 取值范围: 最小值:1 最大值:2147483647 merge_request_iid 是 Integer 参数解释: 合并请求iid(仓库的第几个mr)。 约束限制: 必传。 取值范围: 最小值:1 最大值:2147483647 discussion_id 是 String 评论id
  • 请求示例 POST https://{endpoint}/v2/repositories/{repository_id}/merge_requests/{merge_request_iid}/discussions { "body": "检视意见内容", "lineTypes": "new", "position": { "base_sha": "a9ce1513d5185d5fe2bac52c597f204ce695c4be", "start_sha": "a9ce1513d5185d5fe2bac52c597f204ce695c4be", "head_sha": "53c75fa88dc4e7d0b68d108b7f1ee0a5c4564f44", "position_type": "text", "new_path": "a.txt", "old_path": "a.txt", "new_line": 1, "old_line": -1 }, "assignee_id": 9124, "proposer_id": null, "severity": "suggestion", "review_modules": "模块", "review_categories": "分类" }
  • 响应示例 状态码: 200 OK { "result": { "id": "996f57b8fdd5e62678b16f0ea4f91688405fa72f", "individual_note": false, "notes": [ { "id": 2111974336, "type": "DiffNote", "body": "检视意见内容", "author": { "id": 9124, "name": "CodeHub_beta_dev", "username": "c369c68f1ff84679b5a8ed904d8bff1c", "state": "active", "avatar_url": "", "email": "liujian@example.com", "name_cn": "CodeHub_beta_dev", "web_url": "https://test.com/c369c68f1ff84679b5a8ed904d8bff1c", "nick_name": "我是昵称", "tenant_name": "devcloud_codehub_l00314597_01" }, "created_at": "2024-07-29T22:01:37.000+08:00", "updated_at": "2024-07-29T22:01:37.000+08:00", "system": false, "noteable_id": 38517, "noteable_type": "MergeRequest", "resolvable": true, "is_reply": false, "noteable_iid": 18, "discussion_id": "996f57b8fdd5e62678b16f0ea4f91688405fa72f", "project": "sll_test00006/mr_test", "diff_file": "a.txt", "diff": "@@ -0,0 +1,0 @@\n+1\r\n", "archived": false, "review_categories": "分类", "review_categories_cn": "分类", "review_categories_en": "分类", "review_modules": "模块", "severity": "suggestion", "severity_cn": "建议", "severity_en": "Suggestion", "assignee": { "id": 9124, "name": "CodeHub_beta_dev", "username": "c369c68f1ff84679b5a8ed904d8bff1c", "state": "active", "avatar_url": "", "email": "liujian@example.com", "name_cn": "CodeHub_beta_dev", "web_url": "https://test.com/c369c68f1ff84679b5a8ed904d8bff1c", "nick_name": "我是昵称", "tenant_name": "devcloud_codehub_l00314597_01" }, "proposer": { "id": 9124, "name": "CodeHub_beta_dev", "username": "c369c68f1ff84679b5a8ed904d8bff1c", "state": "active", "avatar_url": "", "email": "liujian@example.com", "name_cn": "CodeHub_beta_dev", "web_url": "https://test.com/c369c68f1ff84679b5a8ed904d8bff1c", "nick_name": "我是昵称", "tenant_name": "devcloud_codehub_l00314597_01" }, "position": { "base_sha": "a9ce1513d5185d5fe2bac52c597f204ce695c4be", "start_sha": "a9ce1513d5185d5fe2bac52c597f204ce695c4be", "head_sha": "53c75fa88dc4e7d0b68d108b7f1ee0a5c4564f44", "old_path": "a.txt", "new_path": "a.txt", "position_type": "text", "new_line": 1 }, "resolved": false, "is_outdated": false } ], "project_id": 2111704470, "noteable_type": "MergeRequest", "project_full_path": "sll_test00006/mr_test", "a_mode": "0", "b_mode": "100644", "deleted_file": false, "new_file": true, "resolved": false, "archived": false, "review_categories": "分类", "review_categories_cn": "分类", "review_categories_en": "分类", "review_modules": "模块", "severity": "suggestion", "severity_cn": "建议", "assignee": { "id": 9124, "name": "CodeHub_beta_dev", "username": "c369c68f1ff84679b5a8ed904d8bff1c", "state": "active", "avatar_url": "", "email": "liujian@example.com", "name_cn": "CodeHub_beta_dev", "web_url": "https://test.com/c369c68f1ff84679b5a8ed904d8bff1c", "nick_name": "我是昵称", "tenant_name": "devcloud_codehub_l00314597_01" }, "proposer": { "id": 9124, "name": "CodeHub_beta_dev", "username": "c369c68f1ff84679b5a8ed904d8bff1c", "state": "active", "avatar_url": "", "email": "liujian@example.com", "name_cn": "CodeHub_beta_dev", "web_url": "https://test.com/c369c68f1ff84679b5a8ed904d8bff1c", "nick_name": "我是昵称", "tenant_name": "devcloud_codehub_l00314597_01" }, "merge_request_version_params": {}, "diff_file": "@@ -0,0 +1,0 @@\n+1\r\n", "added_lines": 2, "removed_lines": 0 }, "status": "success" }
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 error Error object 参数解释: 响应错误码 result MergeRequestDiscussionDto object 参数解释: 返回新建检视意见的相关信息。 取值范围: 无。 status String 参数解释: 响应状态。 取值范围: success,表示接口调用成功。 failed,表示接口调用失败。 表6 Error 参数 参数类型 描述 code String 参数解释: 调用此接口失败时返回的错误码。 取值范围: CH.10000,系统繁忙,请稍后再试。 message String 参数解释: 调用此接口失败时返回的提示信息。 取值范围: “系统繁忙,请稍后再试”。 表7 MergeRequestDiscussionDto 参数 参数类型 描述 id String 参数解释: 主评论和回复共用的id,一般称为discussion_id。 取值范围: 只能为数字和字母,长度为40字符。 individual_note Boolean 参数解释: 是否为个人意见,即不需要他人解决的意见。 取值范围: true:不需要解决的意见 false:需要解决的意见 notes Array of NoteDto objects 参数解释: 主评论和回复列表,主评论为第一个(此接口为新建主评论,所以数量为1)。 取值范围: 无。 project_id Integer 参数解释: 仓库id 取值范围: 最小值:1 最大值:2147483647 noteable_type String 参数解释: 意见类型。 取值范围: MergeRequest:MR下提的意见(MR下点提交记录,选择一次提交加检视意见,仍是MergeRequest类型) Commit:代码下或一次提交下提的意见 commit_id String 参数解释: 关联的提交id:noteable_type为Commit的检视意见的特有字段,为此次提交的sha值。 取值范围: 只能为数字和字母,长度为40字符。 project_full_path String 参数解释: 仓库路径。 取值范围: 无。 a_mode String 参数解释: 关联文件变更前文件的文件模式,如果为新增文件此处为0。 取值范围: git支持的文件权限数字,例如:100644,100755,120000,160000等。 b_mode String 参数解释: 变更后文件的文件模式,如果为删除文件此处为0。 取值范围: git支持的文件权限数字,例如:100644,100755,120000,160000等。 deleted_file Boolean 参数解释: 关联文件是否是删除文件。 取值范围: true:关联文件是删除文件。 false或null:关联文件不是删除文件。 new_file Boolean 参数解释: 关联文件是否是新增文件。 取值范围: true:关联文件是新增文件。 false或null:关联文件不是新增文件。 resolved Boolean 参数解释: 检视意见是否已解决。 取值范围: true:检视意见已解决。 false或null:检视意见未解决。 archived Boolean 参数解释: 检视意见是否已归档,归档后不允许编辑删除回复解决该意见。 取值范围: true:检视意见已归档。 false或null:检视意见未归档。 review_categories String 参数解释: 检视意见分类的key。 自定义分类的review_categories、review_categories_cn、review_categories_en一致。 取值范围: 无。 review_categories_cn String 参数解释: 检视意见分类的中文名。 自定义分类的review_categories、review_categories_cn一致。 取值范围: 无。 review_categories_en String 参数解释: 检视意见分类的英文名。 自定义分类的review_categories、review_categories_en一致。 取值范围: 无。 review_modules String 参数解释: 检视意见模块。 取值范围: 无。 severity String 参数解释: 检视意见严重程度的key。 取值范围: suggestion:建议。 minor:一般。 major:严重。 fatal:致命。 severity_cn String 参数解释: 严重程度中文名。 取值范围: 建议 一般 严重 致命 severity_en String 参数解释: 严重程度英文名。 取值范围: Suggestion:建议 Minor:一般 Major:严重 Fatal:致命 assignee UserBasicDto object 参数解释: 指派人详细信息。 取值范围: 无。 proposer UserBasicDto object 参数解释: 提出人详细信息。 取值范围: 无。 merge_request_version_params MergeRequestVersionParamsDto object 参数解释: MR版本详细信息。 取值范围: 无。 diff_file String 参数解释: 变更文件路径。 取值范围: 无。 added_lines Integer 参数解释: 新增行数。 取值范围: 最小值:0 最大值:2147483647 removed_lines Integer 参数解释: 删除行数。 取值范围: 最小值:0 最大值:2147483647 表8 NoteDto 参数 参数类型 描述 id Integer 参数解释: 评论id,主评论和回复不共用。 取值范围: 最小值:1 最大值:2147483647 type String 参数解释: note类型。 取值范围: DiffNote:文件变更页提的需要解决的检视意见。 MergeRequestNote:详情页提的需要解决的检视意见。 null:详情页提的不需要解决的意见。 body String 参数解释: 检视意见内容。 取值范围: 长度限制:8000字符。 字符限制:unicode编码\u0000 - \uffff,不支持emoji表情、部分生僻字等特殊字符。 blank限制:不能为null或空字符串或全是空格。 attachment String 参数解释: 附件(废弃字段)。 取值范围: 无。 author UserBasicDto object 参数解释: 作者详细信息。 取值范围: 无。 created_at String 参数解释: 创建时间。 约束限制: 格式:yyyy-MM-ddTHH:mm:ss.SSS+08:00 updated_at String 参数解释: 更新时间。 约束限制: 格式:yyyy-MM-ddTHH:mm:ss.SSS+08:00 system Boolean 参数解释: 是否是系统生成的日志。 取值范围: true:系统创建的检视意见。 false:用户创建的检视意见。 noteable_id Integer 参数解释: MR的id。 取值范围: 最小值:1 最大值:2147483647 noteable_type String 参数解释: 意见类型。 取值范围: MergeRequest:MR或CR下提的意见(MR或CR下点提交记录,选择一次提交加检视意见,仍是MergeRequest类型) Commit:代码下或一次提交下提的意见 commit_id String 参数解释: 关联的提交id:noteable_type为Commit的检视意见的特有字段,为此次提交的sha值。 取值范围: 只能为数字和字母,长度为40字符。 resolvable Boolean 参数解释: 意见是否需要解决。 取值范围: true:可解决的检视意见。 false或null:不可解决的检视意见。 is_reply Boolean 参数解释: 是否是回复的评论。 取值范围: true:回复的评论。 false:主评论。 resolved_by UserBasicDto object 参数解释: 检视意见的解决人。 取值范围: 无。 noteable_iid Integer 参数解释: MR的iid,表示为该仓库第几个MR。 取值范围: 最小值:1 最大值:2147483647 discussion_id String 参数解释: 检视意见id,主评论和回复共用。 取值范围: 只能为数字和字母,长度为40字符。 project String 参数解释: 项目路径。 取值范围: 无。 diff_file String 参数解释: 变更文件路径。 取值范围: 无。 diff String 参数解释: 变更文件内容。 取值范围: 无。 archived Boolean 参数解释: 检视意见是否已归档,归档后不允许编辑删除回复解决该意见。 取值范围: true:检视意见已归档。 false或null:检视意见未归档。 review_categories String 参数解释: 检视意见分类的key。 自定义分类的review_categories、review_categories_cn、review_categories_en一致。 取值范围: 无。 review_categories_cn String 参数解释: 检视意见分类的中文名。 自定义分类的review_categories、review_categories_cn一致。 取值范围: 无。 review_categories_en String 参数解释: 检视意见分类的英文名。 自定义分类的review_categories、review_categories_en一致。 取值范围: 无。 review_modules String 参数解释: 检视意见模块。 取值范围: 无。 severity String 参数解释: 严重程度,非建议级别意见指派人和MR/Commit作者不能点解决。 取值范围: suggestion:建议; minor:一般; major: 严重; fatal:致命。 severity_cn String 参数解释: 严重程度中文名。 取值范围: 建议 一般 严重 致命 severity_en String 参数解释: 严重程度英文名。 取值范围: Suggestion:建议 Minor:一般 Major:严重 Fatal:致命 file_path String 参数解释: 文件路径(弃用)。 取值范围: 无。 line String 参数解释: 行号(弃用)。 取值范围: 无。 assignee UserBasicDto object 参数解释: 指派人详细信息。 取值范围: 无。 proposer UserBasicDto object 参数解释: 检视人详细信息。 取值范围: 无。 position PositionDto object 参数解释: 代码位置信息:意见关联何处代码 。 取值范围: 无。 resolved Boolean 参数解释: 检视意见是否已解决。 取值范围: true:检视意见已解决。 false或null:检视意见未解决。 is_outdated Boolean 参数解释: 是否过时。 取值范围: true:基于最新提交的检视意见。 false或null:不是基于最新提交的检视意见 表9 PositionDto 参数 参数类型 描述 base_sha String 参数解释: 源分支base提交节点。 取值范围: 只能为数字和字母,长度为40字符。 start_sha String 参数解释: 源分支最新提交节点。 取值范围: 只能为数字和字母,长度为40字符。 head_sha String 参数解释: 目标分支最新提交节点。 取值范围: 只能为数字和字母,长度为40字符。 old_path String 参数解释: 修改前文件路径。 取值范围: 无。 new_path String 参数解释: 修改后文件路径。 取值范围: 无。 position_type String 参数解释: 变更类型。 取值范围: 无。 默认取值: text。 old_line Integer 参数解释: 修改前行号,小于等于0或为null,表示此行为新增行,即对比时位于右侧,绿色显示。 取值范围: -1-2147483647或为null。 new_line Integer 参数解释: 修改后行号。 小于等于0或为null,表示此行为删除行,即对比时位于左侧,红色显示。 取值范围: -1-2147483647或为null。 表10 UserBasicDto 参数 参数类型 描述 id Integer 参数解释: 用户id。 取值范围: 最小值:1 最大值:2147483647 name String 参数解释: 名字。 取值范围: 长度为[0,255]个字符。 username String 参数解释: 用户名。 取值范围: 长度为[0,255]个字符。 state String 参数解释: 状态。 取值范围: 长度为[0,255]个字符。 avatar_url String 参数解释: 获取头像的url。 取值范围: 无。 avatar_path String 参数解释: 获取头像的路径。 取值范围: 无。 email String 参数解释: 邮箱。 取值范围: 无。 name_cn String 参数解释: 中文名。 约束限制: 此字段已弃用,取值同username。 取值范围: 无。 web_url String 参数解释: 主页url。 取值范围: 无。 nick_name String 参数解释: 昵称。 取值范围: 无。 tenant_name String 参数解释: 租户名称。 取值范围: 无。 表11 MergeRequestVersionParamsDto 参数 参数类型 描述 diff_id Integer 参数解释: MR每个版本提交都有其对应的diff_id(此处为MR最新提交)。 取值范围: 最小值:1 最大值:2147483647 start_sha String 参数解释: 目标分支最新提交节点。 取值范围: 只能为数字和字母,长度为40字符。 commit_id String 参数解释: 关联的提交id:noteable_type为Commit的检视意见的特有字段,为此次提交的sha值。 取值范围: 只能为数字和字母,长度为40字符。
  • URI POST /v2/repositories/{repository_id}/merge_requests/{merge_request_iid}/discussions 表1 路径参数 参数 是否必选 参数类型 描述 repository_id 是 Integer 参数解释: 仓库id。 约束限制: 必传。 取值范围: 最小值:1 最大值:2147483647 merge_request_iid 是 Integer 参数解释: 合并请求iid(仓库的第几个mr)。 约束限制: 必传。 取值范围: 最小值:1 最大值:2147483647
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 error Error object 参数解释: 响应错误码 result CreateCommitResponseBody object 参数解释: 响应结果 status String 参数解释: 调用此接口的响应状态。 取值范围: success,表示接口调用成功。 failed,表示接口调用失败。 表6 Error 参数 参数类型 描述 code String 参数解释: 错误码 取值范围: 符合错误码格式字符串,长度[0,100] message String 参数解释: 错误信息 取值范围: 不涉及 表7 CreateCommitResponseBody 参数 参数类型 描述 id String 参数解释: 提交对应的SHA id short_id String 参数解释: 提交对应的短SHA id title String 参数解释: 提交标题 author_name String 参数解释: 作者 author_email String 参数解释: 作者邮箱 committer_name String 参数解释: 提交作者 committer_email String 参数解释: 提交作者邮箱 created_at String 参数解释: 创建时间 message String 参数解释: 提交信息 parent_ids Array of strings 参数解释: 父提交id committed_date String 参数解释: 提交时间 authored_date String 参数解释: 作者提交时间 stats stats object 参数解释: 统计信息 表8 stats 参数 参数类型 描述 additions Integer 参数解释: 变更增加的行数 deletions Integer 参数解释: 变更删除的行数 total Integer 参数解释: 变更的总行数
  • 请求示例 POST https://{endpoint}/v2/projects/859341/repository/commits { "branch" : "master", "commit_message" : "some commit message", "actions" : [ { "action" : "create", "file_path" : "test001.txt", "content" : "some content" } ] }
  • 响应示例 状态码: 200 OK { "result" : { "id" : "85a0a9d5c6e43bc9c3e443ac01f789e24eeef02b", "title" : "some commit message", "message" : "some commit message", "short_id" : "85a0a9d5", "author_name" : "repo", "author_email" : null, "committer_name" : "repo", "committer_email" : null, "created_at" : "2021-09-26T03:44:51.000Z", "parent_ids" : [ "5c114bb316dff4d4a046e09a5c44c816f2433140" ], "committed_date" : "2021-09-26T03:44:51.000Z", "authored_date" : null, "stats" : { "additions" : 1, "deletions" : 0, "total" : 1 } }, "status" : "success" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 必传。 取值范围: 字符串长度不少于1,不超过10万。 默认取值: 不涉及。 表3 请求Body参数 参数 是否必选 参数类型 描述 branch 是 String 参数解释: 目标分支 约束限制: 必传 取值范围: 最小长度:1 最大长度:200 默认取值: 不涉及 commit_message 是 String 参数解释: 提交信息 约束限制: 必传 取值范围: 最小长度:0 最大长度:2000 默认取值: 不涉及 start_branch 否 String 参数解释: 创建分支时,新的分支名 约束限制: 无 取值范围: 最小长度:1 最大长度:200 默认取值: 不涉及 actions 是 Array of CommitAction objects 参数解释: 提交处理列表 约束限制: 无 取值范围: 最小长度:1 最大长度:100 默认取值: 不涉及 author_email 否 String 参数解释: 提交作者的电子邮件地址 author_name 否 String 参数解释: 提交作者的名称 stats 否 Boolean 参数解释: 是否包括提交统计信息。默认值为true force 否 Boolean 参数解释: 是否覆盖目标分支。当true时,使用基于start_branch的新提交覆盖目标分支 表4 CommitAction 参数 是否必选 参数类型 描述 action 是 String 参数解释: 要执行的操作:create、delete、move、update、chmod 约束限制: 必传 取值范围: create、delete、move、update、chmod 默认取值: 不涉及 file_path 是 String 参数解释: 文件的完整路径。例如lib/class.rb 约束限制: 必传 取值范围: 无 默认取值: 不涉及 previous_path 否 String 参数解释: 要移动的文件的原始完整路径。例如lib/class1.rb。仅在move操作时生效 约束限制: 无 取值范围: 无 默认取值: 不涉及 content 否 String 参数解释: 文件内容,create和update操作时必须。未指定内容的移动操作将保留现有文件内容,内容的任何其他值将覆盖文件内容。 约束限制: 无 取值范围: 无 默认取值: 不涉及 encoding 否 String 参数解释: 文件编码:text、base64。默认为text 约束限制: 无 取值范围: 无 默认取值: 不涉及 last_commit_id 否 String 参数解释: 最后一个已知的提交ID。仅在update、move、delete操作时生效 约束限制: 无 取值范围: 无 默认取值: 不涉及 execute_filemode 否 Boolean 参数解释: 启用或者禁用文件的执行模式。仅在chmod操作时生效 约束限制: 无 取值范围: 无 默认取值: 不涉及
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 必传。 取值范围: 字符串长度不少于1,不超过10万。 默认取值: 不涉及。 表2 请求Body参数 参数 是否必选 参数类型 描述 branch 是 String 分支名 project_id 是 String 项目ID,获取方式请参见获取项目ID。 related_id 是 Array of strings 工作项集合 repo_id 是 String 仓库id
  • 响应示例 状态码: 200 OK { "result" : { "name" : "test_tag_name", "message" : "test message", "commit" : { "id" : "3b68902cf0eb7de3d5c8757e4a990bc3fe0af349", "short_id" : "3b68902c", "created_at" : "2022-03-08T03:14:39.000Z", "title" : "新建文件", "parent_ids" : [ "08618c900a4048aae7e4cd88913d3d521eae02eb" ], "message" : "新建文件", "author_name" : "repo", "committer_name" : "repo", "committed_date" : "2022-03-08T03:14:39.000Z" } }, "status" : "success" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 tag_name 是 String 标签名称 ref 是 String 分支名称 message 否 String 备注
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result AddTagsResponse object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 AddTagsResponse 参数 参数类型 描述 name String 标签名称 message String 备注 commit CommitRepoV2 object 提交信息 表7 CommitRepoV2 参数 参数类型 描述 id String 提交对应的SHA id short_id String 提交对应的短SHA id created_at String 创建时间 title String 提交标题 parent_ids Array of strings 父提交id message String 提交信息 author_name String 作者 committer_name String 提交作者 committed_date String 提交时间
  • 响应参数 表3 响应Body参数 参数 参数类型 描述 error Error object 参数解释: 接口调用时,响应错误。 取值范围: 无。 result PublicKey object 参数解释: 接口调用的响应结果。 取值范围: 无。 status String 参数解释: 调用此接口的响应状态。 取值范围: success,表示接口调用成功。 failed,表示接口调用失败。 表4 Error 参数 参数类型 描述 code String 参数解释: 调用此接口失败时返回的错误码。 取值范围: 40,表示密钥添加失败,您需要检查密钥是否有效。 CH.080002,表示密钥添加失败,该密钥已存在,您需要重新生成密钥。 message String 参数解释: 调用此接口失败时返回的提示信息。 取值范围: “密钥添加失败,请检查密钥是否有效”。 “此密钥已存在,请重新生成密钥”。 表5 PublicKey 参数 参数类型 描述 id String 参数解释: 密钥ID。 取值范围: 只能由数字组成,且长度为[1-40]个字符。 key String 参数解释: 密钥,由用户上传。 取值范围: 只能数字组成,且长度为[0-2048]个字符。 title String 参数解释: 添加SSH密钥时输入的标题,由用户自定义输入。 取值范围: 长度为[0,255]个字符。
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 必传。 取值范围: 字符串长度不少于1,不超过10万。 默认取值: 不涉及。 表2 请求Body参数 参数 是否必选 参数类型 描述 key 是 String 参数解释: 用户在本地生成的SSH密钥。 约束限制: 不涉及。 取值范围: 只能由数字和字母组成,且长度为[0-2048]个字符。 默认取值: 不涉及。 title 是 String 参数解释: 添加SSH密钥时输入的标题,由用户自定义输入。 取值范围: 长度为[0,255]个字符。
  • 请求示例 POST https://{endpoint}/v1/users/sshkey { "title" : "repo@xxx.com", "key" : "ssh-rsa AAAAB3NzaC1yc2EA*********************************************************U7xcma6HU8nj1E0i46VObWyOONl3gh142BV repo@xxx.com" }
  • 响应示例 状态码: 200 OK { "result" : { "id" : "1034531", "title" : "repo@xxx.com", "key" : "ssh-rsa AAAAB3NzaC1yc2EA*********************************************************U7xcma6HU8nj1E0i46VObWyOONl3gh142BV repo@xxx.com" }, "status" : "success" }
  • 错误码 表6 错误码 状态码 错误码 错误信息 描述 处理措施 409 CH.080002 “此密钥已存在,请重新生成密钥” 表示CodeArts Repo已配置该密钥,您需要在本地重新生成密钥。 可参考步骤1~步骤3。 200 CH.010202 “密钥添加失败,请检查密钥是否有效” 表示CodeArts Repo无法添加该密钥,原因可能是您的密钥复制有误或者您输入的title有误。 如果您的密钥没有复制完整,可重新在本地复制密钥。 如果是title不符合规范,重新自定义输入title。 400 CH.080002 title不能为空 title必传 title必传。 400 CH.080002 key is empty ssh key 必传 ssh key必传
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result Array of CreateRepoMemberResult objects 响应结果 status String 响应状态 表6 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表7 CreateRepoMemberResult 参数 参数类型 描述 id String 用户id 最小长度:32 最大长度:32 message String 创建仓库成员信息 name String 用户名 status String 创建仓库成员状态
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 必传。 取值范围: 字符串长度不少于1,不超过10万。 默认取值: 不涉及。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 否 String 参数解释: 创建保护Tag规则,在产品界面对应“Tag名称”。 约束限制: 不涉及。 取值范围: 保护Tag规则不能包含空格,且长度为[1-500]个字符。 默认取值: 不涉及。 create_access_level 否 Integer 参数解释: 保护Tag创建权限。 约束限制: 不涉及。 取值范围: 0,表示不允许任何人创建符合此规则的Tag。 30,表示开发人员、Committer、项目经理和管理员可创建符合此规则的Tag。 40,项目经理和管理员可修改或删除此符合规则的Tag。 默认取值: 不涉及。
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 参数解释: 响应错误。 result AddProtectTagResponse object 参数解释: 响应结果。 status String 参数解释: 响应状态。 取值范围: success,表示“新建保护Tag”成功。 fail,表示“新建保护Tag”失败。 表5 Error 参数 参数类型 描述 code String 参数解释: 错误码。 取值范围: 请参见错误码。 message String 参数解释: 错误信息。 取值范围: 字符串。 表6 AddProtectTagResponse 参数 参数类型 描述 name String 参数解释 保护Tag规则,在产品界面对应“Tag名称”。 取值范围: 字符串长度范围为[1,500]个字符。 create_access_levels CreateAccessLevels object 参数解释: 保护Tag的权限。 表7 CreateAccessLevels 参数 参数类型 描述 access_level Integer 参数解释: 可创建此Tag规则的权限。 取值范围: 0,不允许任何人创建此规则的Tag。 30,开发人员、Committer、项目经理和管理员创建此规则的Tag。 40,项目经理、管理员可创建此规则的Tag。 access_level_description String 参数解释: 权限描述 取值范围: “Maintainers”, 项目经理、管理员。 “Developers + Committer + Maintainers”, 开发人员、Committer、项目经理和管理员。 “No one”, 不允许任何人。
  • 响应示例 状态码: 200 OK { "result" : { "name" : "master", "commit" : { "id" : "3b68902cf0eb7de3d5c8757e4a990bc3fe0af349", "short_id" : "3b68902c", "title" : "新建文件", "created_at" : "2022-03-08T03:14:39.000Z", "parent_ids" : [ "08618c900a4048aae7e4cd88913d3d521eae02eb" ], "message" : "新建文件", "author_name" : "repo", "committer_name" : "repo", "committed_date" : "2022-03-08T03:14:39.000Z" }, "protected" : true, "developers_can_push" : false, "developers_can_merge" : false, "master_can_push" : false, "master_can_merge" : false, "no_one_can_push" : true, "no_one_can_merge" : true, "in_an_opened_merge_request" : false }, "status" : "success" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 access_level 是 AddProtectAccessLevel object 新建保护分支权限 表4 AddProtectAccessLevel 参数 是否必选 参数类型 描述 push_access_level 是 Integer 提交权限 0:任何人不允许提交,30:开发者及管理员可提交,40:管理员可提交 枚举值: 0 30 40 merge_access_level 是 Integer 合并权限 0:任何人不允许合并,30:开发者及管理员可合并,40:管理员可合并,合并权限必须大于等于提交权限 枚举值: 0 30 40
  • 响应参数 状态码: 200 表5 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result AddProtectResponse object 响应结果 status String 响应状态 表6 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表7 AddProtectResponse 参数 参数类型 描述 name String 分支名称 commit CommitRepoV2 object 提交信息 protected Boolean 是否保护 developers_can_push Boolean 是否允许开发者提交 developers_can_merge Boolean 是否允许开发者合并 master_can_push Boolean 是否允许管理员提交 master_can_merge Boolean 是否允许管理员合并 no_one_can_push Boolean 没有人允许提交 no_one_can_merge Boolean 没有人允许合并 in_an_opened_merge_request Boolean 是否在一个打开的合并请求 表8 CommitRepoV2 参数 参数类型 描述 id String 提交对应的SHA id short_id String 提交对应的短SHA id created_at String 创建时间 title String 提交标题 parent_ids Array of strings 父提交id message String 提交信息 author_name String 作者 committer_name String 提交作者 committed_date String 提交时间
  • 响应示例 状态码: 200 OK { "result" : { "id" : 5609, "project_id" : 453489, "created_at" : "2019-10-23 17:29:56", "enable_ssl_verification" : false, "push_events" : true, "tag_push_events" : false, "repository_update_events" : false, "merge_requests_events" : false, "issues_events" : false, "note_events" : false, "pipeline_events" : false, "wiki_page_events" : false, "build_events" : null }, "status" : "success" }
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 hook_url 是 String 触发url service 是 String 事件来源 token 否 String 安全令牌 hook_events 是 Array of strings 触发事件
  • 请求示例 POST https://{endpoint}/v1/repositories/{group_name}/{repository_name}/hooks { "service" : 11, "token" : "test", "hook_url" : "https://alpha.devcloud.intest.com/", "hook_events" : [ "push_events" ] }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result RepoHook object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 RepoHook 参数 参数类型 描述 build_events Boolean 是否触发build_events事件 created_at String 仓库统计创建的时间 enable_ssl_verification Boolean 是否使用ssl验证 id Integer hook id issues_events Boolean 是否触发issues_events事件 merge_requests_events Boolean 是否触发merge_requests_events事件 note_events Boolean 是否触发note_events事件 pipeline_events Boolean 是否触发pipeline_events事件 project_id Integer 仓库id push_events Boolean 是否触发push_events事件 repository_update_events Boolean 是否触发repository_update_events事件 tag_push_events Boolean 是否触发tag_push_events事件 wiki_page_events Boolean 是否触发wiki_page_events事件
  • URI POST /v1/repositories/{group_name}/{repository_name}/hooks 表1 路径参数 参数 是否必选 参数类型 描述 group_name 是 String 组名(克隆地址中 域名 后面仓库名前的一段 示例:git@repo.alpha.devcloud.intest.com:Demo00228/testword.git 组名:Demo00228 ) repository_name 是 String 仓库名
共100000条