Updated on 2026-04-28 GMT+08:00

Renaming a Branch

Function

This API is used to rename a branch.

Debugging

You can debug this API through automatic authentication in API Explorer or use the SDK sample code generated by API Explorer.

URI

PUT https://{hostURL}/v4/repositories/{repository_id}/repository/branch

Table 1 Path Parameters

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

Table 2 Request header 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.

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

new_branch

Yes

String

Definition

New branch name.

Constraints

Do not start with a hyphen (-), period (.) or refs/heads/refs/remotes/. Do not enter spaces or special characters such as [ \ < ~ ^ : ? * ! ( ) ' " |. Do not end with / .lock.

Range

1–200 characters.

Default Value

N/A.

old_branch

Yes

String

Definition

Name of the branch to be based on.

Constraints

Do not start with a hyphen (-), period (.) or refs/heads/refs/remotes/. Do not enter spaces or special characters such as [ \ < ~ ^ : ? * ! ( ) ' " |. Do not end with / .lock.

Range

1–200 characters.

Default Value

N/A.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

old_branch_name

String

Definition

Old branch name.

Constraints

Do not start with a hyphen (-), period (.) or refs/heads/refs/remotes/. Do not enter spaces or special characters such as [ \ < ~ ^ : ? * ! ( ) ' " |. Do not end with / .lock.

Range

1–200 characters.

Default Value

N/A.

old_branch_commit_id

String

Definition

ID of the latest commit of the old branch.

Constraints

N/A.

Range

N/A.

Default Value

N/A.

new_branch_name

String

Definition

New branch name.

Constraints

Do not start with a hyphen (-), period (.) or refs/heads/refs/remotes/. Do not enter spaces or special characters such as [ \ < ~ ^ : ? * ! ( ) ' " |. Do not end with / .lock.

Range

1–200 characters.

Default Value

N/A.

new_branch_commit_id

String

Definition

ID of the latest commit of the new branch.

Constraints

N/A.

Range

N/A.

Default Value

N/A.

Status code: 401

Table 5 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Status code: 403

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Status code: 404

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Example Requests

PUT https://{endpoint}/v4/repositories/100000/repository/branch

{
  "new_branch" : "123",
  "old_branch" : "123test"
}

Example Responses

Status code: 200

OK

{
  "old_branch_name" : "123",
  "old_branch_commit_id" : "11526aa1624f5f173b85673010b4c249bb5756a5",
  "new_branch_name" : "123test",
  "new_branch_commit_id" : "11526aa1624f5f173b85673010b4c249bb5756a5"
}

Status code: 401

Unauthorized

{
  "error_code" : "DEV.00000003",
  "error_msg" : "Authentication information expired."
}

Status code: 403

Bad Request

{
  "error_code" : "CH.004403",
  "error_msg" : "Insufficient permissions. Apply for the required permission and try again."
}

Status code: 404

Not Found

{
  "error_code" : "CH.004404",
  "error_msg" : "Group Not Found"
}

Status Codes

Status Code

Description

200

OK

401

Unauthorized

403

Bad Request

404

Not Found

Error Codes

See Error Codes.