文档首页/ 代码托管 CodeArts Repo/ API参考/ API/ V4/ FilePushPermission/ 批量更新仓库文件推送权限
更新时间:2025-08-20 GMT+08:00
分享

批量更新仓库文件推送权限

功能介绍

批量更新仓库文件推送权限

调试

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

URI

PUT /v4/repositories/{repository_id}/file-push-permissions

表1 路径参数

参数

是否必选

参数类型

描述

repository_id

Integer

参数解释:

仓库的ID,通过查询用户所有仓库接口查询项目列表获取。

约束限制:

不涉及。

取值范围:

1-2147483647

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

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

约束限制:

必传。

取值范围:

字符串长度不少于1,不超过10万。

默认取值:

不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

permissions

Array of FilePushPermissionUpdateDto objects

参数解释:

文件推送权限更新列表。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表4 FilePushPermissionUpdateDto

参数

是否必选

参数类型

描述

id

Integer

参数解释:

仓库文件推送权限ID

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

取值范围:

1-2147483647

path

String

参数解释:

目录路径或通配符

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

actions

Array of FilePushPermissionActionBodyDto objects

参数解释:

事件设置列表。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表5 FilePushPermissionActionBodyDto

参数

是否必选

参数类型

描述

enable

Boolean

参数解释:

是否启用。

约束限制:

不涉及。

取值范围:

  • true,开启规则限制

  • false,关闭规则限制

默认取值:

不涉及。

默认取值:

true

user_ids

Array of objects

参数解释:

用户ID列表。

约束限制:

不涉及。

取值范围:

Integer

默认取值:

不涉及。

取值范围:

1-2147483647

user_team_ids

Array of integers

参数解释:

成员组ID列表。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

取值范围:

1-2147483647

related_role_ids

Array of strings

参数解释:

关联角色ID列表。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

action

String

参数解释:

事件名称。

约束限制:

不涉及。

取值范围:

  • push,推送。

默认取值:

不涉及。

枚举值:

  • push

响应参数

状态码:200

表6 响应Body参数

参数

参数类型

描述

[数组元素]

Array of RepositoryFilePushPermissionDto objects

仓库文件推送权限列表

表7 RepositoryFilePushPermissionDto

参数

参数类型

描述

id

Integer

参数解释:

仓库文件推送权限ID。

取值范围:

1-2147483647

取值范围:

1-2147483647

path

String

参数解释:

目录路径或通配符。

取值范围:

不涉及。

actions

Array of RepositoryProtectedActionDto objects

参数解释:

事件列表。

取值范围:

不涉及。

表8 RepositoryProtectedActionDto

参数

参数类型

描述

action

String

参数解释:

事件名称。

取值范围:

不涉及。

enable

Boolean

参数解释:

是否启用。

取值范围:

  • true,开启规则限制。

  • false,未开启规则限制。

users

Array of RepositoryUserDto objects

参数解释:

白名单用户列表。

取值范围:

不涉及。

user_teams

Array of UserTeamBasicDto objects

参数解释:

白名单用户组列表。

取值范围:

不涉及。

roles

Array of BasicRoleDto objects

参数解释:

白名单角色列表。

取值范围:

不涉及。

表9 RepositoryUserDto

参数

参数类型

描述

id

Integer

参数解释:

用户id。

取值范围:

1-2147483647

name

String

参数解释:

用户名称。

username

String

参数解释:

用户名。

state

String

参数解释:

用户状态。

取值范围:

不涉及。

avatar_url

String

参数解释:

头像地址。

取值范围:

不涉及。

nick_name

String

参数解释:

用户昵称。

取值范围:

不涉及。

tenant_name

String

参数解释:

所属租户名称。

取值范围:

不涉及。

表10 UserTeamBasicDto

参数

参数类型

描述

id

Integer

参数解释:

用户组ID。

取值范围:

1-2147483647

name

String

参数解释:

用户组名称。

取值范围:

不涉及。

表11 BasicRoleDto

参数

参数类型

描述

id

Integer

参数解释:

角色ID。

取值范围:

1-2147483647

name

String

参数解释:

角色名称。

取值范围:

不涉及。

related_role_id

String

参数解释:

关联角色ID。

取值范围:

不涉及。

chinese_name

String

参数解释:

角色中文名。

取值范围:

不涉及。

请求示例

批量更新仓库文件推送权限

PUT /v4/repositories/123/file-push-permissions

{
  "permissions" : [ {
    "id" : 5,
    "path" : "/config/*",
    "actions" : [ {
      "action" : "push",
      "enable" : true,
      "user_ids" : [ 9124 ],
      "user_team_ids" : [ 247 ],
      "related_role_ids" : [ "24f72d0b611746c3a43da596ea5065f5" ]
    } ]
  } ]
}

响应示例

状态码:200

仓库文件推送权限列表

[ {
  "id" : 44,
  "path" : "33",
  "actions" : [ {
    "action" : "push",
    "enable" : true,
    "users" : [ {
      "id" : 7574,
      "name" : "user",
      "username" : "a618e34bd5704be3ae3395dfede06041",
      "state" : "active",
      "avatar_url" : "",
      "nick_name" : "user",
      "tenant_name" : "tenant"
    } ],
    "user_teams" : [ {
      "id" : 247,
      "name" : "team-1"
    } ],
    "roles" : [ {
      "id" : 23836594,
      "name" : "Project manager",
      "related_role_id" : "6115a3ddd9044e288c558d1ae827a732",
      "chinese_name" : "项目经理"
    } ]
  } ]
} ]

状态码

状态码

描述

200

仓库文件推送权限列表

错误码

请参见错误码

相关文档