Updated on 2026-01-27 GMT+08:00

Renaming a File

Function

This API is used to rename a file.

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:pushCode

Write

-

-

-

-

URI

PUT https://{hostURL}/v4/repositories/{repository_id}/repository/rename-file

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

Default Value

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 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

Table 3 Request body parameters

Parameter

Mandatory

Type

Description

file_path

Yes

String

Definition:

File path

Value range:

N/A

branch_name

Yes

String

Definition:

Branch name

Value range:

N/A

commit_message

Yes

String

Definition:

Commit message

Value range:

N/A

start_branch

No

String

Definition:

Push to other branches based on the branch name

Value range:

N/A

author_email

No

String

Definition:

Author email

Value range:

N/A

author_name

No

String

Definition:

Author name

Value range:

N/A

previous_path

Yes

String

Definition:

Address before renaming

Value range:

N/A

infer_content

No

Boolean

Definition:

Whether to migrate the content (cannot be empty if the content field is also empty)

Value range:

N/A

content

No

String

Definition:

File content (cannot be empty if the infer_content is also empty)

Value range:

N/A

encoding

No

String

Definition:

Encoding format

Value range:

  • text.

  • Base64.

Default value:

text

last_commit_id

No

String

Definition:

Last known file commit ID

Value range:

N/A

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

file_path

String

File path

branch

String

Branch name

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.

Example Requests

PUT https://{endpoint}/v4/repositories/1/repository/rename-file

{
  "file_path" : "Test2.java",
  "previous_path" : "Test.java",
  "branch_name" : "master",
  "commit_message" : "Rename Test.java",
  "encoding" : "text",
  "infer_content" : true
}

Example Responses

Status code: 200

Renamed successfully.

{
  "branch" : "master",
  "file_path" : "123"
}

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 permissions and try again."
}

Status Codes

Status Code

Description

200

Renamed successfully.

401

Unauthorized

403

Bad Request

Error Codes

See Error Codes.