Help Center/ CodeArts Repo/ API Reference/ APIs/ V4/ Repository/ Obtaining the Submodule List of a Specified Branch or Tag in a Repository
Updated on 2026-04-28 GMT+08:00

Obtaining the Submodule List of a Specified Branch or Tag in a Repository

Function

This API is used to obtain the submodule list of a specified branch or tag in a repository.

Debugging

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

URI

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

Value range:

1~2147483647

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

sha

Yes

String

Definition

Branch name, tag name, or commit ID.

offset

No

Integer

Definition

Offset, which starts from 0.

Value range:

0~2147483647

Default value:

0

limit

No

Integer

Definition

Number of returned records.

Value range:

1~100

Default value:

20

Request Parameters

Table 3 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.

Response Parameters

Status code: 200

Table 4 Response header parameters

Parameter

Type

Description

X-Total

String

Total number of results of the current request.

Table 5 Response body parameters

Parameter

Type

Description

[items]

Array of SubmoduleDto objects

Submodule list

Table 6 SubmoduleDto

Parameter

Type

Description

repo_id

Integer

Definition

Repository ID.

branch

String

Definition

Branch name.

Range

1 to 200 bytes.

path

String

Definition

Branch name.

Range

1 to 200 bytes

git_url

String

Definition

Submodule Git address.

submodule_branch

String

Definition

Submodule branch name.

Range

1 to 200 bytes.

namespace_uuid

String

Organization name/Organization name.../Repository name

submodule_repo_id

Integer

Definition

Submodule repository ID.

repo_name

String

Definition

Submodule repository name.

sub_commitId

String

Definition

Submodule repository commit.

deployKey_status

Integer

Definition:

Deploy key synchronization status

Value range:

  • 0: not synchronized

  • 1: synchronized

Default value:

0

status

Integer

Definition

Submodule status.

Range

  • 0: abnormal.

  • 1: normal.

Default value:

0

Status code: 401

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Status code: 403

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Status code: 404

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Example Requests

GET https://{endpoint}/v4/repositories/2112016472/repository/submodules?sha=111

Example Responses

Status code: 200

OK

[ {
  "repo_id" : 2112016472,
  "branch" : "base64",
  "path" : "repo1122",
  "git_url" : "git@.**.***example.com:12345/repo1122.git",
  "submodule_branch" : "dsds",
  "namespace_uuid" : "0379d2da2bae4c38b3d2fbbdb6asd2fs",
  "submodule_repo_id" : 2112000256,
  "repo_name" : "repo1122",
  "sub_commitId" : "7963ac02",
  "deployKey_status" : 0,
  "status" : 1
} ]

Status code: 401

Unauthorized

{
  "error_code" : "CH.00000001",
  "error_msg" : "User authentication info not found."
}

Status code: 403

Bad Request

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

Status code: 404

Not Found

{
  "error_code" : "CH.00402000",
  "error_msg" : "The repository does not exist. Check and try again."
}

Status Codes

Status Code

Description

200

OK

401

Unauthorized

403

Bad Request

404

Not Found

Error Codes

See Error Codes.