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-01-27 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.

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

Read

-

-

-

-

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

Default Value

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

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.