Creating a Commit
Function
This API is used to commit multiple files in different directories at a time. If the directory does not exist, the system automatically creates a directory. The forcible overwrite option is supported. When the forcible overwrite flag is set to true, the conflict is ignored and the configuration is forcibly committed.
URI
POST /v2/projects/{repo_id}/repository/commits
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
repo_id |
Yes |
Integer |
Explanation: Repository short ID. Constraints: Mandatory Range: 0–2147483647 Default value: None |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
Explanation: User token. It can be obtained by calling the IAM API used to obtain 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: None |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
branch |
Yes |
String |
Explanation: Target branch. Constraints: Mandatory Range: Minimum length: 1 Maximum length: 200 Default value: None |
commit_message |
Yes |
String |
Explanation: Commit message. Constraints: Mandatory Range: Minimum length: 0 characters Maximum length: 2,000 characters Default value: None |
start_branch |
No |
String |
Explanation: Name of the new branch. Constraints: None Range: Minimum length: 1 Maximum length: 200 Default value: None |
actions |
Yes |
Array of CommitAction objects |
Explanation: Commit processing list. Constraints: None Range: Minimum length: 1 Maximum length: 100 characters Default value: None |
author_email |
No |
String |
Explanation: Committer email address. |
author_name |
No |
String |
Explanation: Committer name |
stats |
No |
Boolean |
Explanation: Whether to include commit statistics. The default value is true. |
force |
No |
Boolean |
Explanation: Whether to overwrite the target branch. When the value is true, overwrite the target branch with a new commit based on start_branch. |
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
action |
Yes |
String |
Explanation: Operations to be performed: create, delete, move, update, and chmod. Constraints: Mandatory Range: create, delete, move, update, chmod Default value: None |
file_path |
Yes |
String |
Explanation: Complete path of the file. For example, lib/class.rb. Constraints: Mandatory Range: None Default value: None |
previous_path |
No |
String |
Explanation: Original full path of the file to be moved. For example, lib/class1.rb. This parameter is valid only when the move operation is performed. Constraints: None Range: None Default value: None |
content |
No |
String |
Explanation: File content. This parameter is mandatory for the create and update operations. A move operation that does not specify content retains the existing file content, and any other value of the content overwrites the file content. Constraints: None Range: None Default value: None |
encoding |
No |
String |
Explanation: File encoding: text and base64. The default value is text. Constraints: None Range: None Default value: None |
last_commit_id |
No |
String |
Explanation: Last known commit ID. This parameter is valid only when the update, move, or delete operation is performed. Constraints: None Range: None Default value: None |
execute_filemode |
No |
Boolean |
Explanation: Enable or disable the execution mode of a file. This parameter is valid only when the chmod operation is executed. Constraints: None Range: None Default value: None |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
error |
Error object |
Explanation: Response error code. |
result |
CreateCommitResponseBody object |
Explanation: Response result. |
status |
String |
Explanation: Response status of the API. Range:
|
Parameter |
Type |
Description |
---|---|---|
code |
String |
Explanation: Error code. Range: Max. 100 characters in the error code format. |
message |
String |
Explanation: Error message. Range: None |
Parameter |
Type |
Description |
---|---|---|
id |
String |
Explanation: SHA ID of a commit. |
short_id |
String |
Explanation: Short SHA ID of a commit. |
title |
String |
Explanation: Commit title. |
author_name |
String |
Explanation: Author. |
author_email |
String |
Explanation: Author email. |
committer_name |
String |
Explanation: Committer. |
committer_email |
String |
Explanation: Committer email. |
created_at |
String |
Explanation: Creation time. |
message |
String |
Explanation: Commit message. |
parent_ids |
Array of strings |
Explanation: Parent commit ID. |
committed_date |
String |
Explanation: Commit time. |
authored_date |
String |
Explanation: Author commit time. |
stats |
stats object |
Explanation: Statistics. |
Example Requests
POST https://{endpoint}/v2/projects/859341/repository/commits
{
"branch" : "master",
"commit_message" : "some commit message",
"actions" : [ {
"action" : "create",
"file_path" : "test001.txt",
"content" : "some content"
} ]
}
Example Responses
Status code: 200
OK
{
"result" : {
"id" : "85a0a9d5c6e43bc9c3e443ac01f789e24eeef02b",
"title" : "some commit message",
"message" : "some commit message",
"short_id" : "85a0a9d5",
"author_name" : "repo",
"author_email" : null,
"committer_name" : "repo",
"committer_email" : null,
"created_at" : "2021-09-26T03:44:51.000Z",
"parent_ids" : [ "5c114bb316dff4d4a046e09a5c44c816f2433140" ],
"committed_date" : "2021-09-26T03:44:51.000Z",
"authored_date" : null,
"stats" : {
"additions" : 1,
"deletions" : 0,
"total" : 1
}
},
"status" : "success"
}
Status Codes
Status Code |
Description |
---|---|
200 |
OK |
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.