华为云用户手册

  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 error Error object 参数解释: 响应错误码 result Array of MergeRequestDiscussionDto object 参数解释: 返回新建检视意见的相关信息。 取值范围: 无。 status String 参数解释: 响应状态。 取值范围: success,表示接口调用成功。 failed,表示接口调用失败。 表4 Error 参数 参数类型 描述 code String 参数解释: 调用此接口失败时返回的错误码。 取值范围: CH.10000,系统繁忙,请稍后再试。 message String 参数解释: 调用此接口失败时返回的提示信息。 取值范围: “系统繁忙,请稍后再试”。 表5 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_cnreview_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 表6 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:不是基于最新提交的检视意见 表7 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。 表8 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 参数解释: 租户名称。 取值范围: 无。 表9 MergeRequestVersionParamsDto 参数 参数类型 描述 diff_id Integer 参数解释: MR每个版本提交都有其对应的diff_id(此处为MR最新提交)。 取值范围: 最小值:1 最大值:2147483647 start_sha String 参数解释: 目标分支最新提交节点。 取值范围: 只能为数字和字母,长度为40字符。 commit_id String 参数解释: 关联的提交id:noteable_type为Commit的检视意见的特有字段,为此次提交的sha值。 取值范围: 只能为数字和字母,长度为40字符。
  • URI GET /v2/repositories/{repository_id}/merge_requests/{merge_request_iid}/discussions 表1 路径参数 参数 是否必选 参数类型 描述 repository_id 是 String 参数解释: 仓库id。 约束限制: 必传。 取值范围: 最小值:1 最大值:214748364 merge_request_iid 是 Integer 参数解释: 合并请求iid(仓库的第几个mr)。 约束限制: 必传。 取值范围: 最小值:1 最大值:2147483647 表2 Query参数 参数 是否必选 参数类型 描述 type 否 String 参数解释: 检视意见类型。 取值范围: user:用户创建的检视意见。 system:系统创建的检视意见。 unresolved 否 String 参数解释: 检视意见是否未解决。 取值范围: true: 返回未解决的检视意见。 false: 返回已解决的检视意见。 view 否 String 参数解释: 返回基础信息或者详细信息。 取值范围: basic:返回基础信息。 simple:返回详细信息。 author_id 否 String 参数解释: 筛选所传用户创建的检视意见,可传用户id或用户名。 取值范围: 长度为[0,255]个字符。 page 否 Integer 参数解释: 分页参数,返回第几页的检视意见。 取值范围: 最小值:1 最大值:2147483647 默认值: 1 per_page 否 Integer 参数解释: 分页参数,每页的检视意见数量。 取值范围: 最小值:1 最大值:100 默认值: 20
  • URI GET /v1/projects/{project_uuid}/repositories 表1 路径参数 参数 是否必选 参数类型 描述 project_uuid 是 String 项目的uuid 表2 Query参数 参数 是否必选 参数类型 描述 page_index 否 Integer 分页索引,从1开始计数 page_size 否 Integer 每页条目数 search 否 String 搜索关键字
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result RepoListInfo object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 RepoListInfo 参数 参数类型 描述 repositorys Array of RepoInfo objects 仓库列表 total Integer 仓库总数 表7 RepoInfo 参数 参数类型 描述 createAt String 创建时间 groupName String 仓库组名 httpUrl String https url id String 仓库uuid 最小长度:32 最大长度:32 name String 仓库名 最小长度:2 最大长度:128 projectId String 项目的uuid 最小长度:32 最大长度:32 projectIsDelete String 项目是否被删除 repoId String 仓库主键id 最小长度:1 最大长度:40 sshUrl String ssh url visibilityLevel Integer 是否可见:0私有仓库,20公有仓库 webUrl String web url 访问路径
  • 响应示例 状态码: 200 OK { "result" : { "total" : 1, "repositorys" : [ { "id" : "d0457f74cc5b43d989ded7248f71b4e5", "repoId" : "468480", "name" : "CreatRepository_2qD5i", "sshUrl" : "git@codehub.alpha.devcloud.intest.com:Demo00228/CreatRepository_2qD5i.git", "httpUrl" : "https://codehub.alpha.devcloud.intest.com/Demo00228/CreatRepository_2qD5i.git", "groupName" : "Demo00228", "webUrl" : "https://alpha.devcloud.intest.com/codehub/468480/home", "visibilityLevel" : 0, "createAt" : "2019-10-15 09:40:26", "projectId" : "4838955a48e2492bbe44b31bc4c272f6", "projectIsDelete" : "false" } ], "status" : "success" } }
  • URI GET /v1/projects/{project_uuid}/repositories 表1 路径参数 参数 是否必选 参数类型 描述 project_uuid 是 String 项目ID,获取方式请参见获取项目ID。 表2 Query参数 参数 是否必选 参数类型 描述 page_index 否 Integer 分页索引,从1开始计数 page_size 否 Integer 每页条目数 search 否 String 搜索关键字
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 响应错误 result RepoListInfo object 响应结果 status String 响应状态 表5 Error 参数 参数类型 描述 code String 错误码 message String 错误信息 表6 RepoListInfo 参数 参数类型 描述 repositorys Array of RepoInfo objects 仓库列表 total Integer 仓库总数 表7 RepoInfo 参数 参数类型 描述 createAt String 创建时间 groupName String 仓库组名(克隆地址中 域名 后面仓库名前的一段 示例:git@repo.alpha.devcloud.inhuawei.com:Demo00228/testword.git 组名:Demo00228) httpUrl String https url id String 仓库uuid(由CreateRepository接口返回) 最小长度:32 最大长度:32 name String 仓库名 最小长度:2 最大长度:128 projectId String 项目ID,获取方式请参见获取项目ID。 最小长度:32 最大长度:32 projectIsDelete String 项目是否被删除 repoId String 仓库主键id 最小长度:1 最大长度:40 sshUrl String ssh url visibilityLevel Integer 是否可见:0私有仓库,20公有仓库 webUrl String web url 访问路径
  • 响应示例 状态码: 200 OK { "result" : { "total" : 1, "repositorys" : [ { "id" : "d0457f74cc5b43d989ded7248f71b4e5", "repoId" : "468480", "name" : "CreatRepository_2qD5i", "sshUrl" : "git@repo.alpha.devcloud.inhuawei.com:Demo00228/CreatRepository_2qD5i.git", "httpUrl" : "https://repo.alpha.devcloud.inhuawei.com/Demo00228/CreatRepository_2qD5i.git", "groupName" : "Demo00228", "webUrl" : "https://alpha.devcloud.inhuawei.com/repo/468480/home", "visibilityLevel" : 0, "createAt" : "2019-10-15 09:40:26", "projectId" : "4838955a48e2492bbe44b31bc4c272f6", "projectIsDelete" : "false" } ], "status" : "success" } }
  • URI DELETE /v1/repositories/{group_name}/{repository_name}/hooks/{hook_id} 表1 路径参数 参数 是否必选 参数类型 描述 group_name 是 String 组名(克隆地址中域名后面仓库名前的一段 示例:git@repo.alpha.devcloud.intest.com:Demo00228/testword.git 组名:Demo00228 ) hook_id 是 Integer 通过id删除指定仓库的hook repository_name 是 String 仓库名
  • 响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 error Error object 参数解释: 响应错误: result Repository object 参数解释: 响应结果 status String 参数解释: 响应状态 取值范围: success fail 表4 Error 参数 参数类型 描述 code String 参数解释: 错误码 取值范围: 请参见错误码 message String 参数解释: 错误信息 取值范围: 字符串 表5 Repository 参数 参数类型 描述 repository_uuid String 参数解释: 指定项目ID 取值范围: 32位字符串
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。通过调用 IAM 服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 必传。 取值范围: 字符串长度不少于1,不超过10万。 默认取值: 不涉及。 表2 请求Body参数 参数 是否必选 参数类型 描述 import_members 否 Integer 参数解释: 是否导入项目成员。 约束限制: 不涉及。 取值范围: 0,不导入项目成员 1,导入项目成员 默认取值: 0 name 是 String 参数解释: 仓库名称 约束限制: 必传 取值范围: 以大小写字母、数字、下划线开头,可包含大小写字母、数字、中划线、下划线、英文句点,但不能以.git、.atom或.结尾 长度[1-256] 默认取值: 不涉及 project_uuid 是 String 参数解释: 指定项目ID 约束限制: 必传 取值范围: 32位字符串 默认取值: 不涉及 template_id 否 String 参数解释: 复制模板的ID 约束限制: 不涉及 取值范围: 字符串 默认取值: 不涉及 visibility_level 否 Integer 参数解释: 仓库可见性 约束限制: 不涉及 取值范围: 0,私有 20,公开只读 默认取值: 0 import_url 否 String 参数解释: 模板仓库的https地址的base64加密 约束限制: 不涉及 取值范围: URL长度[10-512] 默认取值: 不涉及 description 否 String 参数解释: 仓库描述信息 约束限制: 不涉及 取值范围: [0-2000] 默认取值: 不涉及 gitignore_id 否 String 参数解释: 根据编程 语言生成 .gitignore文件 约束限制: 不涉及 取值范围: Actionscript,Ada,Agda,Android,Ansible,AppceleratorTitanium,AppEngine,ArchLinuxPackages,Autotools,C#,C++,C,CakePHP,CFWheels,ChefCookbook,Clojure,CMake,CodeIgniter,CommonLisp,Composer,Concrete5,Coq,CraftCMS,CUDA,D,Dart,Delphi,DM,Dreamweaver,Dropbox,Drupal,Eagle,Eclipse,Elisp,Elixir,Elm,Emacs,EPiServer,Erlang,ExpressionEngine,ExtJs,Fancy,Finale,ForceDotCom,Fortran,FuelPHP,Gcov,GitBook,Go,Godot,GPG,Gradle,Grails,GWT,Haskell,Idris,IGORPro,Java,JavaScript,Jboss,Jekyll,JetBrains,Joomla,Julia,KiCad,Kohana,Kotlin,LabVIEW,Laravel,Leiningen,LemonStand,Lilypond,Lithium,Lua,Magento,Maven,Mercury,MetaProgrammingSystem,Nanoc,NetBeans,Nim,Node,NotepadPP,Objective-C,OCaml,Opa,OpenCart,OracleForms,Packer,Perl,Phalcon,PlayFramework,Plone,Prestashop,Processing,PureScript,Python,Qooxdoo,Qt,R,Rails,RhodesRhomobile,ROS,Ruby,Rust,Sass,Scala,Scheme,SCons,Scrivener,Sdcc,SeamGen,SketchUp,Smalltalk,Stella,SublimeText,SugarCRM,SVN,Swift,Symfony,SymphonyCMS,Terraform,TeX,Textpattern,TortoiseGit,TurboGears2,Typo3,Umbraco,Unity,UnrealEngine,VisualStudio,VisualStudioCode,VVVV,Waf,WordPress,Xojo,Yeoman,Yii,ZendFramework,Zephir 默认取值: 不涉及 license_id 否 Integer 参数解释: 开源许可证id 约束限制: 不涉及 取值范围: 1,Apache_License_v2.0 2,MIT_License,,BSD_3Clause 3,Eclipse_Public_License_v1.0 4,BSD_2Clause 5,GNU_General_Public_License_v2.0 6,GNU_General_Public_License_v3.0 7,GNU_Affero_General_Public_License_v3.0 8,GNU_Lesser_General_Public_License_v2.1 9,GNU_Lesser_General_Public_License_v3.0 10,Mozilla_Public_License_v2.0 11,The_Unlicense 默认取值: 不涉及 enable_readme 否 Integer 参数解释: 是否允许生成README文件 约束限制: 不涉及 取值范围: true:创建 false:不创建 默认取值: 不涉及 caller 否 String 参数解释: 调用者 约束限制: 不涉及 取值范围: 字符串 默认取值: 不涉及
  • 请求示例 POST https://{endpoint}/v2/projects/{project_uuid}/repositories/fork { "project_name" : "testworld", "repo_name" : "demotest1", "template_id" : 453489, "import_members" : 0, "visibility_level" : 20, "type" : "normal" }
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 必传。 取值范围: 字符串长度不少于1,不超过10万。 默认取值: 不涉及。 表2 请求Body参数 参数 是否必选 参数类型 描述 import_members 否 Integer 参数解释: 是否导入项目成员。 取值范围: 0,表示不导入项目成员 1,表示导入项目成员。 project_name 是 String 参数解释: 项目名称。 取值范围: 可以输入英文大小写字母、数字、连字符、下划线,且必须以字母开头。 repo_name 是 String 参数解释: 仓库名称。 取值范围: 可以输入英文大小写字母、数字、连字符、下划线,且必须以字母开头。 最小长度:2 最大长度:128 template_id 是 String 参数解释: 复制模板的ID。 type 否 String 参数解释: 项目类型,scrum。 visibility_level 否 Integer 参数解释: 仓库可见性。 约束限制: 不涉及。 取值范围: 私有仓库:仓库仅对仓库成员可见,仓库成员可读写和访问仓库,取值为0 公开仓库: 项目内成员只读仓库:仓库对项目内成员公开只读,并项目内成员可在项目下和代码组下的仓库列表中查看和搜索,取值为10 租户内成员只读仓库:仓库对租户内成员公开只读,并租户内成员可在项目下和代码组下的仓库列表中查看和搜索,取值为10 所有访客只读仓库:仓库对所有访客公开只读,并所有访客可在项目下和代码组下的仓库列表中查看和搜索,取值为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 参数解释: 响应状态。 表5 Error 参数 参数类型 描述 code String 参数解释: 错误码。 message String 参数解释: 错误信息。 表6 ProjectRepository 参数 参数类型 描述 projectUuid String 参数解释: 项目ID,获取方式请参见获取项目ID。 取值范围: 最小长度:32 最大长度:32 repositoryUuid String 参数解释: 仓库UUID。 取值范围: 最小长度:32 最大长度:32
  • 请求参数 表1 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 必传。 取值范围: 字符串长度不少于1,不超过10万。 默认取值: 不涉及。 表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 公开仓库: 项目内成员只读仓库:仓库对项目内成员公开只读,并项目内成员可在项目下和代码组下的仓库列表中查看和搜索,取值为10 租户内成员只读仓库:仓库对租户内成员公开只读,并租户内成员可在项目下和代码组下的仓库列表中查看和搜索,取值为10 所有访客只读仓库:仓库对所有访客公开只读,并所有访客可在项目下和代码组下的仓库列表中查看和搜索,取值为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位字符串。
  • 响应示例 状态码: 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" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 参数解释: 响应错误码 result AddProtectResponse object 参数解释: 响应结果 status String 参数解释: 调用此接口的响应状态。 取值范围: success,表示接口调用成功。 failed,表示接口调用失败。 表5 Error 参数 参数类型 描述 code String 参数解释: 错误码 取值范围: 符合错误码格式字符串,长度[0,100] message String 参数解释: 错误信息 取值范围: 不涉及 表6 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 参数解释: 是否在一个打开的合并请求 表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 参数解释: 提交时间
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 参数解释: 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 约束限制: 必传。 取值范围: 字符串长度不少于1,不超过10万。 默认取值: 不涉及。 表3 请求Body参数 参数 是否必选 参数类型 描述 branch_name 是 String 参数解释: 分支名称 约束限制: 必传 取值范围: 最小长度:1 最大长度:200 默认取值: 不涉及 ref 是 String 参数解释: 源分支名称 约束限制: 必传 取值范围: 最小长度:1 最大长度:200 默认取值: 不涉及
  • 错误码 状态码 错误码 错误信息 描述 处理措施 400 CH.00401999 'body': The body is out of max length (8000 characters). 检视意见内容超过8000字符 降低内容长度 400 CH.00401015 字符串不可包括表情包或生僻字等无法识别的字符。 unicode编码\u0000 - \uffff,不支持emoji表情、部分生僻字等特殊字符 删除特殊字符 404 CH.00406001 当前合并请求未找到。 MR信息未找到 刷新MR页面后重试。 404 CH.00406048 通过noteId未查询到检视意见。 关联repository_id、merge_request_iid和discussion_id未查询到检视意见 检查并修改传参。 404 CH.00406049 检视意见类型错误。 关联repository_id、merge_request_iid和discussion_id未查询到检视意见 检查并修改传参。 404 CH.00406050 检视意见不属于此commit或merge request。 关联repository_id、merge_request_iid和discussion_id未查询到检视意见 检查并修改传参。 405 CH.00406019 当前不允许在合并后新增检视意见,请改变设置后再进行操作。 设置不允许对已合并mr新增意见 修改合并请求设置。
  • 响应示例 状态码: 200 OK { "result": { "id": 2111974340, "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-30T10:47:54.000+08:00", "updated_at": "2024-07-30T10:47:54.000+08:00", "system": false, "noteable_id": 38517, "noteable_type": "MergeRequest", "resolvable": true, "is_reply": true, "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 }, "status": "success" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 error Error object 参数解释: 响应错误码 result NoteDto object 参数解释: 返回新建检视意见的相关信息。 取值范围: 无。 status String 参数解释: 响应状态。 取值范围: success,表示接口调用成功。 failed,表示接口调用失败。 表5 Error 参数 参数类型 描述 code String 参数解释: 调用此接口失败时返回的错误码。 取值范围: CH.10000,系统繁忙,请稍后再试。 message String 参数解释: 调用此接口失败时返回的提示信息。 取值范围: “系统繁忙,请稍后再试”。 表6 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_cnreview_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:不是基于最新提交的检视意见 表7 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 参数解释: 租户名称。 取值范围: 无。 表8 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。
  • 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
  • 请求参数 表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或空字符串或全是空格。
  • 请求示例 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
  • 请求示例 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 表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 参数解释: 变更的总行数
共100000条