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

Creating a Submodule

Function

This API is used to create a submodule.

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

POST https://{hostURL}/v4/repositories/{repository_id}/repository/submodules

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

branch_name

Yes

String

Definition

Branch name.

Range

1 to 200 bytes

Constraints

Existing branch under the repository.

file_path

Yes

String

File path of the submodule under the repository.

subrepo_id

Yes

String

ID of the repository where the submodule locates

commit_message

Yes

String

Commit message.

subrepo_branch

Yes

String

Definition

Submodule branch name.

Range

1 to 200 bytes

Constraints

Existing branch under the target repository.

Response Parameters

Status code: 200

Table 4 Response body parameters

Parameter

Type

Description

result

String

Definition

Successful creation commit ID.

status

String

Definition

Creation return status.

Status code: 401

Table 5 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Example Requests

POST https://{endpoint}/v4/repositories/2112031271/repository/submodules

{
  "branch_name" : "master",
  "file_path" : "/path/repo",
  "subrepo_id" : "234",
  "commit_message" : "message",
  "subrepo_branch" : "master"
}

Example Responses

Status code: 200

OK

{
  "result" : "e7a2c9c8a3672ee82b8eb5f771f468e1f6d50282",
  "status" : "success"
}

Status code: 401

Unauthorized

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

Status Codes

Status Code

Description

200

OK

401

Unauthorized

Error Codes

See Error Codes.