node-cnb
Version:
node sdk for cnb open api
2,255 lines • 192 kB
JSON
{
"groups.post": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "CreateOrganization",
"tags": [
"Organizations"
],
"summary": "创建新组织",
"parameters": [
{
"description": "group information",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.CreateGroupReq"
}
}
],
"responses": {
"201": {
"description": "Created"
}
},
"path": "/groups",
"method": "post"
},
"user.get": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-profile:r",
"operationId": "GetUserInfo",
"tags": [
"Users"
],
"summary": "获取指定用户的详情信息",
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.UsersResultForSelf"
}
}
},
"path": "/user",
"method": "get"
},
"user.post": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-profile:rw",
"operationId": "UpdateUserInfo",
"tags": [
"Users"
],
"summary": "更新指定用户的详情信息, 可更新内容为: 昵称, 个人签名, 微信公众号名称, 微信公众号二维码链接, 个人网站, 个人地址, 公司名称",
"parameters": [
{
"description": "user info",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/http.UpdateUserInfoPayload"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/user",
"method": "post"
},
"user.autocompleteSource.list": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "AutoCompleteSource",
"tags": [
"Users"
],
"summary": "查询当前用户用户拥有指定权限的所有资源列表",
"parameters": [
{
"description": "资源类型, 默认group",
"enum": [
"Group",
"Repo"
],
"in": "query",
"name": "source_type",
"type": "string"
},
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"default": "",
"description": "过滤组织",
"in": "query",
"name": "search",
"type": "string"
},
{
"description": "最小仓库权限,默认owner",
"enum": [
"Reporter",
"Developer",
"Master",
"Owner"
],
"in": "query",
"name": "access",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"type": "string"
},
"type": "array"
}
}
},
"path": "/user/autocomplete_source",
"method": "get"
},
"user.groups.list": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "ListTopGroups",
"tags": [
"Organizations"
],
"summary": "获取当前用户拥有权限的顶层组织列表",
"parameters": [
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"default": "",
"description": "过滤组织",
"in": "query",
"name": "search",
"type": "string"
},
{
"description": "筛选角色",
"enum": [
"Guest",
"Reporter",
"Developer",
"Master",
"Owner"
],
"in": "query",
"name": "role",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.OrganizationAccess"
},
"type": "array"
}
}
},
"path": "/user/groups",
"method": "get"
},
"user.groups.listByGroup": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "ListGroups",
"tags": [
"Organizations"
],
"summary": "查询当前用户在指定组织下拥有指定权限的子组织列表",
"parameters": [
{
"default": "hello",
"description": "Group slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"description": "access level",
"in": "query",
"name": "access",
"type": "integer"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.OrganizationAccess"
},
"type": "array"
}
}
},
"path": "/user/groups/{group}",
"method": "get"
},
"user.repos.list": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "GetRepos",
"tags": [
"Repositories"
],
"summary": "获取当前用户拥有指定权限及其以上权限的仓库",
"parameters": [
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"default": "",
"description": "过滤仓库",
"in": "query",
"name": "search",
"type": "string"
},
{
"description": "仓库类型",
"enum": [
"private",
"public",
"encrypted"
],
"in": "query",
"name": "filter_type",
"type": "string"
},
{
"description": "最小仓库权限,默认owner",
"enum": [
"Reporter",
"Developer",
"Master",
"Owner"
],
"in": "query",
"name": "role",
"type": "string"
},
{
"description": "排序类型,默认last_updated_at",
"enum": [
"created_at",
"last_updated_at",
"stars",
"slug_path",
"forks"
],
"in": "query",
"name": "order_by",
"type": "string"
},
{
"default": false,
"description": "排序顺序",
"in": "query",
"name": "desc",
"type": "boolean"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.Repos4User"
},
"type": "array"
}
}
},
"path": "/user/repos",
"method": "get"
},
"user.staredRepos.list": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "GetUserAllStaredRepos",
"tags": [
"Repositories"
],
"summary": "获取当前用户 star 的仓库列表",
"parameters": [
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"default": "",
"description": "过滤仓库",
"in": "query",
"name": "search",
"type": "string"
},
{
"default": false,
"description": "排序顺序",
"in": "query",
"name": "desc",
"type": "boolean"
},
{
"description": "排序类型,默认last_updated_at",
"enum": [
"created_at",
"last_updated_at",
"stars",
"forks"
],
"in": "query",
"name": "order_by",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.Repos4UserBase"
},
"type": "array"
}
}
},
"path": "/user/stared-repos",
"method": "get"
},
"users.get": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-profile:r",
"operationId": "GetUserInfoByName",
"tags": [
"Users"
],
"summary": "获取指定用户的详情信息",
"parameters": [
{
"default": "someone",
"description": "User Name",
"in": "path",
"name": "username",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.UsersResult"
}
}
},
"path": "/users/{username}",
"method": "get"
},
"users.avatar.get": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-profile:r",
"operationId": "GetUserAvatar",
"tags": [
"Assets"
],
"summary": "获取指定用户的用户头像",
"parameters": [
{
"default": "someone",
"description": "User Name",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"description": "头像大小,取 s 或者 l",
"in": "path",
"name": "size",
"required": true,
"type": "string"
}
],
"responses": {},
"path": "/users/{username}/avatar/{size}",
"method": "get"
},
"users.followers.list": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "GetFollowersByUserID",
"tags": [
"Followers"
],
"summary": "获取指定用户的粉丝列表",
"parameters": [
{
"default": "someone",
"description": "User Name",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.UserFollowResult"
},
"type": "array"
}
}
},
"path": "/users/{username}/followers",
"method": "get"
},
"users.following.list": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "GetFollowingByUserID",
"tags": [
"Followers"
],
"summary": "获取指定用户的关注人列表",
"parameters": [
{
"default": "someone",
"description": "User Name",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.UserFollowResult"
},
"type": "array"
}
}
},
"path": "/users/{username}/following",
"method": "get"
},
"users.groups.get": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "GetGroupsByUserID",
"tags": [
"Organizations"
],
"summary": "获取指定用户拥有权限的顶层组织列表",
"parameters": [
{
"default": "someone",
"description": "UserName",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"default": "",
"description": "过滤组织",
"in": "query",
"name": "search",
"type": "string"
},
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"default": false,
"description": "排序顺序",
"in": "query",
"name": "desc",
"type": "boolean"
},
{
"description": "排序类型,默认为created_at",
"enum": [
"join_time",
"created_at"
],
"in": "query",
"name": "order_by",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.OrganizationUnion"
}
}
},
"path": "/users/{username}/groups",
"method": "get"
},
"users.pinnedRepos.list": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "GetPinnedRepoByID",
"tags": [
"Repositories"
],
"summary": "获取指定用户的用户仓库墙",
"parameters": [
{
"default": "someone",
"description": "User Name",
"in": "path",
"name": "username",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.Repos4User"
},
"type": "array"
}
}
},
"path": "/users/{username}/pinned-repos",
"method": "get"
},
"users.repos.list": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "GetReposByUserName",
"tags": [
"Repositories"
],
"summary": "获取指定用户有指定以上权限并且客人态可见的仓库",
"parameters": [
{
"default": "someone",
"description": "UserName",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"default": "",
"description": "过滤仓库",
"in": "query",
"name": "search",
"type": "string"
},
{
"description": "最小仓库权限,默认owner",
"enum": [
"Reporter",
"Developer",
"Master",
"Owner"
],
"in": "query",
"name": "role",
"type": "string"
},
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"default": false,
"description": "排序顺序",
"in": "query",
"name": "desc",
"type": "boolean"
},
{
"description": "排序类型,默认last_updated_at",
"enum": [
"created_at",
"last_updated_at",
"stars",
"slug_path",
"forks"
],
"in": "query",
"name": "order_by",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.Repos4User"
},
"type": "array"
}
}
},
"path": "/users/{username}/repos",
"method": "get"
},
"users.staredRepos.list": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "GetUserStaredRepos",
"tags": [
"Starring"
],
"summary": "获取指定用户的 star 仓库列表",
"parameters": [
{
"default": "someone",
"description": "UserName",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"default": "",
"description": "过滤仓库",
"in": "query",
"name": "search",
"type": "string"
},
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"default": false,
"description": "排序顺序",
"in": "query",
"name": "desc",
"type": "boolean"
},
{
"description": "排序类型,默认last_updated_at",
"enum": [
"created_at",
"last_updated_at",
"stars",
"forks"
],
"in": "query",
"name": "order_by",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.Repos4User"
},
"type": "array"
}
}
},
"path": "/users/{username}/stared-repos",
"method": "get"
},
"workspace.delete.post": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:rw",
"operationId": "DeleteWorkspace",
"tags": [
"Workspace"
],
"summary": "删除我的云原生开发环境",
"parameters": [
{
"description": "参数",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.WorkspaceDeleteReq"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.WorkspaceDeleteResult"
}
}
},
"path": "/workspace/delete",
"method": "post"
},
"workspace.list.get": {
"description": "访问令牌调用此接口需包含以下权限 \naccount-engage:r",
"operationId": "ListWorkspaces",
"tags": [
"Workspace"
],
"summary": "获取我的云原生开发环境列表",
"parameters": [
{
"description": "分支名,例如:main",
"in": "query",
"name": "branch",
"type": "string"
},
{
"description": "查询结束时间,格式:YYYY-MM-DD HH:mm:ssZZ,例如:2024-12-01 00:00:00+0800",
"in": "query",
"name": "end",
"type": "string"
},
{
"description": "分页页码,从 1 开始,默认为 1",
"in": "query",
"name": "page",
"type": "integer"
},
{
"description": "每页条数,默认为 20,最高 100",
"in": "query",
"name": "pageSize",
"type": "integer"
},
{
"description": "仓库路径,例如:groupname/reponame",
"in": "query",
"name": "slug",
"type": "string"
},
{
"description": "查询开始时间,格式:YYYY-MM-DD HH:mm:ssZZ,例如:2024-12-01 00:00:00+0800",
"in": "query",
"name": "start",
"type": "string"
},
{
"description": "开发环境状态,running: 开发环境已启动,closed:开发环境已关闭",
"in": "query",
"name": "status",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.WorkspaceListResult"
}
}
},
"path": "/workspace/list",
"method": "get"
},
"group.delete": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-delete:rw",
"operationId": "DeleteOrganization",
"tags": [
"Organizations"
],
"summary": "删除指定组织",
"parameters": [
{
"description": "group path",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "微信用户需要确认身份,第一次调用不传接口会调用失败并返回一个x-cnb-identity-ticket,第二次调用再传返回的值",
"in": "header",
"name": "x-cnb-identity-ticket",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{group}",
"method": "delete"
},
"group.get": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-resource:r",
"operationId": "GetGroup",
"tags": [
"Organizations"
],
"summary": "获取指定组织信息",
"parameters": [
{
"description": "group path",
"in": "path",
"name": "group",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "group",
"schema": {
"$ref": "#/definitions/dto.OrganizationAccess"
}
}
},
"path": "/{group}",
"method": "get"
},
"group.put": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "UpdateOrganization",
"tags": [
"Organizations"
],
"summary": "更新组织信息, 可更新的内容为: 组织描述, 组织展示名称, 组织网站, 组织联系邮箱",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "group information to update",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UpdateGroupReq"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{group}",
"method": "put"
},
"group.avatar.put": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "UpdateGroupAvatar",
"tags": [
"Organizations"
],
"summary": "更新组织头像 URL 地址",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "group avatar url to update",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UpdateGroupAvatarReq"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{group}/-/avatar",
"method": "put"
},
"group.inheritMembers.list": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:r",
"operationId": "ListInheritMembersOfGroup",
"tags": [
"Collaborators"
],
"summary": "获取指定组织或仓库内的继承成员",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"default": "",
"description": "过滤成员",
"in": "query",
"name": "search",
"type": "string"
},
{
"description": "筛选角色",
"enum": [
"Guest",
"Reporter",
"Developer",
"Master",
"Owner"
],
"in": "query",
"name": "role",
"type": "string"
},
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.ListInheritMembers"
},
"type": "array"
}
}
},
"path": "/{group}/-/inherit-members",
"method": "get"
},
"group.logos.put": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "PutLogos",
"tags": [
"Assets"
],
"summary": "确认上传的logo",
"parameters": [
{
"default": "test-group/test-repo",
"description": "group",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "获取 uploadurl 时返回的token",
"in": "query",
"name": "token",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{group}/-/logos",
"method": "put"
},
"group.logos.get": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-resource:r",
"operationId": "GetLogos",
"tags": [
"Assets"
],
"summary": "发起一个获取 logo 的请求,返回内容或者 302 到某个地址",
"parameters": [
{
"default": "test-group",
"description": "group",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "size",
"in": "path",
"name": "size",
"type": "string"
}
],
"responses": {
"302": {
"description": "Found"
}
},
"path": "/{group}/-/logos/{size}",
"method": "get"
},
"group.members.list": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:r",
"operationId": "ListMembersOfGroup",
"tags": [
"Collaborators"
],
"summary": "获取指定组织或仓库内的所有直接成员",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"default": 1,
"description": "第几页,从1开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页多少条数据",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"description": "筛选角色",
"enum": [
"Guest",
"Reporter",
"Developer",
"Master",
"Owner"
],
"in": "query",
"name": "role",
"type": "string"
},
{
"default": "",
"description": "过滤成员",
"in": "query",
"name": "search",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.UsersWithAccessLevelInSlug"
},
"type": "array"
}
}
},
"path": "/{group}/-/members",
"method": "get"
},
"group.members.accessLevel.get": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:r",
"operationId": "GetMemberAccessLevelOfGroup",
"tags": [
"Contributors"
],
"summary": "获取指定组织或仓库内, 访问成员在当前层级内的权限信息",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"default": true,
"description": "是否包含继承的权限",
"in": "query",
"name": "include_inherit",
"type": "boolean"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.MemberAccessLevelInSlugUnion"
}
}
},
"path": "/{group}/-/members/access-level",
"method": "get"
},
"group.members.delete": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "DeleteMembersOfGroup",
"tags": [
"Collaborators"
],
"summary": "删除指定组织或仓库的直接成员, 包含两种场景: 1. 作为直接成员的用户自己退出 2. 由管理者移除指定的直接成员",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "username",
"in": "path",
"name": "username",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{group}/-/members/{username}",
"method": "delete"
},
"group.members.post": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "AddMembersOfGroup",
"tags": [
"Collaborators"
],
"summary": "添加成员",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "username",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"description": "member information",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UpdateMembersRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{group}/-/members/{username}",
"method": "post"
},
"group.members.put": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "UpdateMembersOfGroup",
"tags": [
"Collaborators"
],
"summary": "更新指定组织或仓库内的直接成员权限信息",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "username",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"description": "member information",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UpdateMembersRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{group}/-/members/{username}",
"method": "put"
},
"group.members.accessLevel.list": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:r",
"operationId": "ListMemberAccessLevelOfGroup",
"tags": [
"Contributors"
],
"summary": "获取指定组织或仓库内指定成员的权限信息, 结果按组织层级来展示, 包含上层组织的权限继承信息",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "username",
"in": "path",
"name": "username",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.MemberAccessLevel"
},
"type": "array"
}
}
},
"path": "/{group}/-/members/{username}/access-level",
"method": "get"
},
"group.pinnedRepos.list": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:r",
"operationId": "GetPinnedRepoByGroup",
"tags": [
"Repositories"
],
"summary": "获取指定组织的仓库墙列表",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.Repos4UserBase"
},
"type": "array"
}
}
},
"path": "/{group}/-/pinned-repos",
"method": "get"
},
"group.pinnedRepos.put": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "SetPinnedRepoByGroup",
"tags": [
"Repositories"
],
"summary": "更新指定组织仓库墙",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "repo path",
"in": "body",
"name": "request",
"required": true,
"schema": {
"items": {
"type": "string"
},
"type": "array"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.Repos4UserBase"
},
"type": "array"
}
}
},
"path": "/{group}/-/pinned-repos",
"method": "put"
},
"group.repos.list": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-resource:r",
"operationId": "GetGroupSubRepos",
"tags": [
"Repositories"
],
"summary": "查询组织下访问用户有权限查看到仓库",
"parameters": [
{
"description": "组织 slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"default": 1,
"description": "页码",
"in": "query",
"name": "page",
"type": "integer"
},
{
"default": 10,
"description": "每页数量",
"in": "query",
"name": "page_size",
"type": "integer"
},
{
"description": "仓库类型",
"enum": [
"private",
"public",
"encrypted"
],
"in": "query",
"name": "filter_type",
"type": "string"
},
{
"description": "排序类型,默认last_updated_at",
"enum": [
"created_at",
"last_updated_at",
"stars",
"slug_path"
],
"in": "query",
"name": "order_by",
"type": "string"
},
{
"default": false,
"description": "排序顺序",
"in": "query",
"name": "desc",
"type": "boolean"
},
{
"description": "查全部/查询直接属于当前组织的仓库/查询子组织的仓库",
"enum": [
"all",
"sub",
"grand"
],
"in": "query",
"name": "descendant",
"type": "string"
},
{
"description": "搜索关键字",
"in": "query",
"name": "search",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.Repos4UserBase"
},
"type": "array"
}
}
},
"path": "/{group}/-/repos",
"method": "get"
},
"group.repos.post": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-resource:rw",
"operationId": "CreateRepo",
"tags": [
"Repositories"
],
"summary": "创建仓库",
"parameters": [
{
"default": "hello",
"description": "Group slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "repo information",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.CreateRepoReq"
}
}
],
"responses": {
"201": {
"description": "Created"
}
},
"path": "/{group}/-/repos",
"method": "post"
},
"group.settings.get": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:r",
"operationId": "GetGroupSetting",
"tags": [
"Organizations"
],
"summary": "获取指定组织的配置详情",
"parameters": [
{
"description": "group path",
"in": "path",
"name": "group",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.OrganizationSettingWithParent"
}
}
},
"path": "/{group}/-/settings",
"method": "get"
},
"group.settings.put": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "UpdateGroupSetting",
"tags": [
"Organizations"
],
"summary": "更新指定组织的配置, 可更新内容为: 是否对外隐藏组织成员",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "group information to update",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.GroupSettingReq"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{group}/-/settings",
"method": "put"
},
"group.subGroups.list": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-resource:r",
"operationId": "ListSubgroups",
"tags": [
"Organizations"
],
"summary": "获取指定组织下的子组织列表",
"parameters": [
{
"description": "Slug",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"default": "",
"description": "过滤组织",
"in": "query",
"name": "search",
"type": "string"
},
{
"default": 1,
"description": "page",
"in": "query",
"name": "page",
"required": true,
"type": "integer"
},
{
"default": 10,
"description": "page",
"in": "query",
"name": "page_size",
"required": true,
"type": "integer"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.OrganizationUnion"
},
"type": "array"
}
}
},
"path": "/{group}/-/sub-groups",
"method": "get"
},
"group.upload.logos.post": {
"description": "访问令牌调用此接口需包含以下权限 \ngroup-manage:rw",
"operationId": "UploadLogos",
"tags": [
"Assets"
],
"summary": "发起一个上传 logo 的请求,返回上传 cos 的 url 和 form 内容",
"parameters": [
{
"default": "test-group",
"description": "group",
"in": "path",
"name": "group",
"required": true,
"type": "string"
},
{
"description": "UploadRequestParams",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UploadRequestParams"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.UploadAssetsResponse"
}
}
},
"path": "/{group}/-/upload/logos",
"method": "post"
},
"mission.delete": {
"description": "访问令牌调用此接口需包含以下权限 \nmission-delete:rw",
"operationId": "DeleteMission",
"tags": [
"Missions"
],
"summary": "删除指定任务集",
"parameters": [
{
"description": "mission path",
"in": "path",
"name": "mission",
"required": true,
"type": "string"
},
{
"description": "微信用户需要确认身份,第一次调用不传接口会调用失败并返回一个x-cnb-identity-ticket,第二次调用再传返回的值",
"in": "header",
"name": "x-cnb-identity-ticket",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{mission}",
"method": "delete"
},
"mission.members.post": {
"description": "访问令牌调用此接口需包含以下权限 \nmission-manage:rw",
"operationId": "AddMembersOfMission",
"tags": [
"Collaborators"
],
"summary": "添加成员",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "mission",
"required": true,
"type": "string"
},
{
"description": "username",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"description": "member information",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UpdateMembersRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{mission}/-/members/{username}",
"method": "post"
},
"registry.delete": {
"description": "访问令牌调用此接口需包含以下权限 \nregistry-delete:rw",
"operationId": "DeleteRegistry",
"tags": [
"Artifactory"
],
"summary": "删除制品仓库",
"parameters": [
{
"description": "registry path",
"in": "path",
"name": "registry",
"required": true,
"type": "string"
},
{
"description": "微信用户需要确认身份,第一次调用不传接口会调用失败并返回一个x-cnb-identity-ticket,第二次调用再传返回的值",
"in": "header",
"name": "x-cnb-identity-ticket",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{registry}",
"method": "delete"
},
"registry.members.post": {
"description": "访问令牌调用此接口需包含以下权限 \nregistry-manage:rw",
"operationId": "AddMembersOfRegistry",
"tags": [
"Collaborators"
],
"summary": "添加成员",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "registry",
"required": true,
"type": "string"
},
{
"description": "username",
"in": "path",
"name": "username",
"required": true,
"type": "string"
},
{
"description": "member information",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.UpdateMembersRequest"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{registry}/-/members/{username}",
"method": "post"
},
"repo.delete": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-delete:rw",
"operationId": "DeleteRepo",
"tags": [
"Repositories"
],
"summary": "删除指定仓库",
"parameters": [
{
"description": "repo path",
"in": "path",
"name": "repo",
"required": true,
"type": "string"
},
{
"description": "微信用户需要确认身份,第一次调用不传接口会调用失败并返回一个x-cnb-identity-ticket,第二次调用再传返回的值",
"in": "header",
"name": "x-cnb-identity-ticket",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{repo}",
"method": "delete"
},
"repo.get": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-basic-info:r",
"operationId": "GetRepo",
"tags": [
"Repositories"
],
"summary": "获取指定仓库信息",
"parameters": [
{
"description": "repo path",
"in": "path",
"name": "repo",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "repo",
"schema": {
"$ref": "#/definitions/dto.Repos4User"
}
}
},
"path": "/{repo}",
"method": "get"
},
"repo.patch": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-manage:rw",
"operationId": "UpdateRepo",
"tags": [
"Repositories"
],
"summary": "更新仓库信息, 可更新的内容为: 仓库简介, 仓库站点, 仓库主题, 开源许可证",
"parameters": [
{
"description": "仓库路径",
"in": "path",
"name": "repo",
"required": true,
"type": "string"
},
{
"description": "仓库信息",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.RepoPatch"
}
}
],
"responses": {
"200": {
"description": "OK"
}
},
"path": "/{repo}",
"method": "patch"
},
"repo.build.logs.get": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-cnb-trigger:r",
"operationId": "GetBuildLogs",
"tags": [
"Build"
],
"summary": "查询流水线构建列表",
"parameters": [
{
"description": "仓库路径",
"in": "path",
"name": "repo",
"required": true,
"type": "string"
},
{
"description": "开始时间,格式:YYYY-MM-DD,例如:2024-12-01",
"in": "query",
"name": "createTime",
"type": "string"
},
{
"description": "结束时间,格式:YYYY-MM-DD,例如:2024-12-01",
"in": "query",
"name": "endTime",
"type": "string"
},
{
"description": "事件名,例如:push",
"in": "query",
"name": "event",
"type": "string"
},
{
"description": "页数,从 1 开始",
"in": "query",
"name": "page",
"type": "integer"
},
{
"description": "每页数量,最大 100 条,默认 20 条",
"in": "query",
"name": "pagesize",
"type": "integer"
},
{
"description": "commit id,例如:2221d4535ec0c921bcd0858627c5025a871dd2b5",
"in": "query",
"name": "sha",
"type": "string"
},
{
"description": "构建号,例如:cnb-1qa-1i3f5ecau",
"in": "query",
"name": "sn",
"type": "string"
},
{
"description": "源分支名,例如:dev",
"in": "query",
"name": "sourceRef",
"type": "string"
},
{
"description": "构建状态,pending: 构建中、success:成功、error: 失败、cancel: 取消",
"in": "query",
"name": "status",
"type": "string"
},
{
"description": "目标分支名,例如:main",
"in": "query",
"name": "targetRef",
"type": "string"
},
{
"description": "用户 id",
"in": "query",
"name": "userId",
"type": "string"
},
{
"description": "用户名",
"in": "query",
"name": "userName",
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.BuildLogsResult"
}
}
},
"path": "/{repo}/-/build/logs",
"method": "get"
},
"repo.build.start.post": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-cnb-trigger:rw",
"operationId": "StartBuild",
"tags": [
"Build"
],
"summary": "开始一个构建",
"parameters": [
{
"description": "repo",
"in": "path",
"name": "repo",
"required": true,
"type": "string"
},
{
"description": "构建参数",
"in": "body",
"name": "request",
"required": true,
"schema": {
"$ref": "#/definitions/dto.StartBuildReq"
}
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.BuildResult"
},
"type": "array"
}
}
},
"path": "/{repo}/-/build/start",
"method": "post"
},
"repo.build.status.get": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-cnb-trigger:r",
"operationId": "GetBuildStatus",
"tags": [
"Build"
],
"summary": "查询流水线构建状态",
"parameters": [
{
"description": "仓库路径",
"in": "path",
"name": "repo",
"required": true,
"type": "string"
},
{
"description": "构建号",
"in": "path",
"name": "sn",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/dto.BuildStatusResult"
}
}
},
"path": "/{repo}/-/build/status/{sn}",
"method": "get"
},
"repo.build.stop.post": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-cnb-trigger:rw",
"operationId": "StopBuild",
"tags": [
"Build"
],
"summary": "停止一个构建",
"parameters": [
{
"description": "repo",
"in": "path",
"name": "repo",
"required": true,
"type": "string"
},
{
"description": "构建号",
"in": "path",
"name": "sn",
"required": true,
"type": "string"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"items": {
"$ref": "#/definitions/dto.BuildResult"
},
"type": "array"
}
}
},
"path": "/{repo}/-/build/stop/{sn}",
"method": "post"
},
"repo.commitAssets.download.get": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-contents:r",
"operationId": "GetCommitAssets",
"tags": [
"Assets"
],
"summary": "发起一个获取 commits 附件的请求,返回内容或者 302 到某个地址",
"parameters": [
{
"default": "test-group/test-repo",
"description": "Repo",
"in": "path",
"name": "repo",
"required": true,
"type": "string"
},
{
"description": "包含commitSha和文件名,例如 3bba1ce6a8c35ee1264c7449f4f0b512bd751eac/test.png",
"in": "path",
"name": "fileName",
"required": true,
"type": "string"
}
],
"responses": {
"302": {
"description": "Found"
}
},
"path": "/{repo}/-/commit-assets/download/{fileName}",
"method": "get"
},
"repo.contributor.trend.get": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-code:r",
"operationId": "GetRepoContributorTrend",
"tags": [
"RepoContributor"
],
"summary": "查询仓库贡献者前 100 名的详细趋势数据",
"parameters": [
{
"description": "slug",
"in": "path",
"name": "repo",
"required": true,
"type": "string"
},
{
"default": 14,
"description": "limit, 0~100",
"in": "query",
"name": "limit",
"type": "integer"
},
{
"default": false,
"description": "exclude_external_users, true|false",
"in": "query",
"name": "exclude_external_users",
"type": "boolean"
}
],
"responses": {
"200": {
"description": "OK",
"schema": {
"$ref": "#/definitions/web.RepoContribTrend"
}
},
"404": {
"description": "Not Found",
"schema": {
"$ref": "#/definitions/die.WebError"
}
},
"500": {
"description": "Internal Server Error",
"schema": {
"$ref": "#/definitions/die.WebError"
}
}
},
"path": "/{repo}/-/contributor/trend",
"method": "get"
},
"repo.files.get": {
"description": "访问令牌调用此接口需包含以下权限 \nrepo-contents:r",
"operationId": "GetFiles",
"tags": [