Creating Protected Branches in Batches in a Repository
Function
This API is used to create protected branches in batches.
Debugging
You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.
URI
POST https://{hostURL}/v4/repositories/{repository_id}/protected-branches
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| repository_id | Yes | Integer | Definition You can query the project list to obtain the repository ID by calling the API used to query user's all repositories. Constraints N/A. Value range: 1~2147483647 |
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| X-Auth-Token | Yes | String | Definition User token. Obtain a token by calling the IAM API for obtaining a user token. The value of X-Subject-Token in the response header is the user token. Constraints Mandatory. Range 1–100,000 characters. Default Value N/A. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| names | Yes | Array of strings | Definition: Protected branch name or wildcard array. Constraints: Mandatory. Each item must match at least one branch. Value range: Character string. Default value: N/A. |
| actions | No | Array of ProtectedBranchProtectedActionBodyDto objects | Definition: Event setting list. Constraints: N/A. Value range: N/A. Default value: N/A. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| enable | No | Boolean | Definition: Whether to enable. Constraints: N/A. Value range: Default value: N/A. Default value: true |
| user_ids | No | Array of integers | Definition: User ID list. Constraints: N/A. Value range: Integer Default value: N/A. Value range: 1~2147483647 |
| user_team_ids | No | Array of integers | Definition: Member group ID list. Constraints: N/A. Value range: N/A. Default value: N/A. Value range: 1~2147483647 |
| related_role_ids | No | Array of strings | Definition: Associated role ID list. Constraints: N/A. Value range: N/A. Default value: N/A. |
| action | No | String | Definition: Event name. Constraints: Mandatory. Value range: Default value: N/A. Enumeration values: |
| addition_switchers | No | Array of ProtectedActionSwitcher objects | Definition: Additional switch Constraints: N/A Value range: N/A Default value: N/A |
Response Parameters
Status code: 200
| Parameter | Type | Description |
|---|---|---|
| [items] | Array of RepositoryProtectedBranchDto objects | List of protected branches in a repository. |
| Parameter | Type | Description |
|---|---|---|
| id | Integer | Definition: ID of the protected branch. Value range: 1–2147483647 Value range: 1~2147483647 |
| name | String | Definition: Branch name or wildcard. Value range: N/A. |
| actions | Array of RepositoryProtectedActionDto objects | Definition: Event list. Value range: N/A. |
| Parameter | Type | Description |
|---|---|---|
| action | String | Definition: Event name. Value range: N/A. |
| enable | Boolean | Definition: Whether to enable. Value range: |
| users | Array of RepositoryUserDto objects | Definition: Whitelisted user list. Value range: N/A. |
| user_teams | Array of UserTeamBasicDto objects | Definition: Whitelisted user group list. Value range: N/A. |
| roles | Array of BasicRoleDto objects | Definition: Whitelisted role list. Value range: N/A. |
| Parameter | Type | Description |
|---|---|---|
| id | Integer | Definition User ID. Value range: 1~2147483647 |
| name | String | Definition Username. |
| username | String | Definition Username. |
| state | String | Definition: User status Value range: Enumeration values: |
| avatar_url | String | Definition: Profile picture URL. Value range: N/A. |
| nick_name | String | Definition: User alias. Value range: N/A. |
| tenant_name | String | Definition: Tenant name. Value range: N/A. |
| Parameter | Type | Description |
|---|---|---|
| id | Integer | Definition: User group ID. Value range: 1–2147483647 |
| name | String | Definition: User group name. Value range: N/A. |
| Parameter | Type | Description |
|---|---|---|
| id | Integer | Definition: Role ID. Value range: 1–2147483647 |
| name | String | Definition: Role name. Value range: N/A. |
| related_role_id | String | Definition: Associated role ID. Value range: N/A. |
| chinese_name | String | Definition: Role name in Chinese. Value range: N/A. |
Example Requests
Create protected branches in batches in a repository.
POST /v4/repositories/123/protected-branches
{
"names" : [ "t*", "test" ],
"actions" : [ {
"action" : "push",
"enable" : true,
"user_ids" : [ 9124 ],
"user_team_ids" : [ 247 ],
"related_role_ids" : [ "6115a3ddd9044e288c558d1ae827a732", "8425999e92974f2980b76b08ad423aa1", "f2464b129b064a6a988734a73c3f366b", "24f72d0b611746c3a43da596ea5065f5" ]
}, {
"action" : "merge",
"enable" : true,
"user_ids" : [ 9124 ],
"user_team_ids" : [ 247 ],
"related_role_ids" : [ "Administrator", "8425999e92974f2980b76b08ad423aa1", "f2464b129b064a6a988734a73c3f366b", "24f72d0b611746c3a43da596ea5065f5" ]
} ]
} Example Responses
Status code: 200
List of protected branches in a repository.
[ {
"id" : 2112012344,
"name" : "t*",
"actions" : [ {
"action" : "push",
"enable" : true,
"users" : [ {
"id" : 9124,
"name" : "user",
"username" : "c369c68f1ff84679b5a8ed904d8bff1c",
"state" : "active",
"avatar_url" : "",
"nick_name" : "user",
"tenant_name" : "tenantName"
} ],
"user_teams" : [ {
"id" : 247,
"name" : "team-1"
} ],
"roles" : [ {
"id" : 23836589,
"name" : "Committer",
"related_role_id" : "8425999e92974f2980b76b08ad423aa1",
"chinese_name" : "Committer"
}, {
"id" : 23836590,
"name" : "Developer",
"related_role_id" : "f2464b129b064a6a988734a73c3f366b",
"chinese_name" : "Developer"
}, {
"id" : 23836594,
"name" : "Project manager",
"related_role_id" : "6115a3ddd9044e288c558d1ae827a732",
"chinese_name" : "Project manager"
}, {
"id" : 23836597,
"name" : "Test manager",
"related_role_id" : "24f72d0b611746c3a43da596ea5065f5",
"chinese_name" : "Test manager"
} ]
}, {
"action" : "merge",
"enable" : true,
"users" : [ {
"id" : 9124,
"name" : "user",
"username" : "c369c68f1ff84679b5a8ed904d8bff1c",
"state" : "active",
"avatar_url" : "",
"nick_name" : "user",
"tenant_name" : "tenantName"
} ],
"user_teams" : [ {
"id" : 247,
"name" : "team-1"
} ],
"roles" : [ {
"id" : 23836589,
"name" : "Committer",
"related_role_id" : "8425999e92974f2980b76b08ad423aa1",
"chinese_name" : "Committer"
}, {
"id" : 23836590,
"name" : "Developer",
"related_role_id" : "f2464b129b064a6a988734a73c3f366b",
"chinese_name" : "Developer"
}, {
"id" : 23836595,
"name" : "Administrator",
"related_role_id" : "7a96af96176e4f728f571b8af8551dec",
"chinese_name" : "Project administrator"
}, {
"id" : 23836597,
"name" : "Test manager",
"related_role_id" : "24f72d0b611746c3a43da596ea5065f5",
"chinese_name" : "Test manager"
} ]
} ]
}, {
"id" : 2112012345,
"name" : "test",
"actions" : [ {
"action" : "push",
"enable" : true,
"users" : [ {
"id" : 9124,
"name" : "test_user",
"username" : "c369c68f1ff84679b5a8ed904d8bff1c",
"state" : "active",
"avatar_url" : "",
"nick_name" : "user",
"tenant_name" : "tenant"
} ],
"user_teams" : [ {
"id" : 247,
"name" : "team-1"
} ],
"roles" : [ {
"id" : 23836589,
"name" : "Committer",
"related_role_id" : "8425999e92974f2980b76b08ad423aa1",
"chinese_name" : "Committer"
}, {
"id" : 23836590,
"name" : "Developer",
"related_role_id" : "f2464b129b064a6a988734a73c3f366b",
"chinese_name" : "Developer"
}, {
"id" : 23836594,
"name" : "Project manager",
"related_role_id" : "6115a3ddd9044e288c558d1ae827a732",
"chinese_name" : "Project manager"
}, {
"id" : 23836597,
"name" : "Test manager",
"related_role_id" : "24f72d0b611746c3a43da596ea5065f5",
"chinese_name" : "Test manager"
} ]
}, {
"action" : "merge",
"enable" : true,
"users" : [ {
"id" : 9124,
"name" : "user",
"username" : "c369c68f1ff84679b5a8ed904d8bff1c",
"state" : "active",
"avatar_url" : "",
"nick_name" : "user",
"tenant_name" : "tenant"
} ],
"user_teams" : [ {
"id" : 247,
"name" : "team-1"
} ],
"roles" : [ {
"id" : 23836589,
"name" : "Committer",
"related_role_id" : "8425999e92974f2980b76b08ad423aa1",
"chinese_name" : "Committer"
}, {
"id" : 23836590,
"name" : "Developer",
"related_role_id" : "f2464b129b064a6a988734a73c3f366b",
"chinese_name" : "Developer"
}, {
"id" : 23836595,
"name" : "Administrator",
"related_role_id" : "7a96af96176e4f728f571b8af8551dec",
"chinese_name" : "Project administrator"
}, {
"id" : 23836597,
"name" : "Test manager",
"related_role_id" : "24f72d0b611746c3a43da596ea5065f5",
"chinese_name" : "Test manager"
} ]
} ]
} ] Status Codes
| Status Code | Description |
|---|---|
| 200 | List of protected branches in a repository. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.