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.
Authorization Information
Each account root user has all the permissions required to call all APIs, but IAM users must be assigned the following required identity policy-based permissions. For details about the required permissions, see Permissions Policies and Supported Actions.
|
Action |
Access Level |
Resource Type (*: required) |
Condition Key |
Alias |
Dependencies |
|---|---|---|---|---|---|
|
codeartsrepo:repository:setRepository |
Write |
- |
- |
- |
- |
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 Default Value N/A Value range: 1~2147483647 |
Request Parameters
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
X-Auth-Token |
Yes |
String |
Definition User token. Obtain one by calling the IAM API Obtaining a User Token. The value of X-Subject-Token in the response header is a token. Constraints N/A 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 objects |
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 |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
name |
No |
String |
Definition: Switch name Constraints: N/A Value range:
Default value: N/A Enumeration values:
|
|
enable |
No |
Boolean |
Definition: Enabled or not Constraints: N/A Value range:
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.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot