Help Center/ CodeArts Repo/ API Reference/ APIs/ V4/ ProtectedRefs/ Obtaining the Details of a Protected Tag of a Specified Project
Updated on 2026-01-27 GMT+08:00

Obtaining the Details of a Protected Tag of a Specified Project

Function

This API is used to obtain protected tag details of a specified project.

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

Read

-

codeartsrepo:ProjectId

-

-

URI

GET https://{hostURL}/v4/projects/{project_id}/protected-tags

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Definition

You can obtain the unique project identifier, 32-character project UUID, by calling the API used to query the project list.

Range

String length: 32 characters.

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

Response Parameters

Status code: 200

Table 3 Response body parameters

Parameter

Type

Description

[items]

Array of ProjectProtectedTagPo objects

Protected tag details list

Table 4 ProjectProtectedTagPo

Parameter

Type

Description

id

Integer

Definition:

Unique ID of the protected branch

Value range:

1~2147483647

source

String

Definition:

Source

Value range:

1–1,000 characters.

project_id

String

Definition:

Project ID

Value range:

1–1,000 characters.

updated_at

String

Definition:

Update time

Value range:

1–1,000 characters.

name

String

Definition:

Protected branch name

Value range:

1–1,000 characters.

actions

Array of ProjectProtectedActionResultDto objects

Definition:

Event list

Table 5 ProjectProtectedActionResultDto

Parameter

Type

Description

action

String

Definition:

Action

Value range:

1–1,000 characters.

enable

Boolean

Definition:

Enabled or not

levels

String

Definition:

Permission point

Value range:

1–1,000 characters.

level_names

String

Definition:

Permission name

Value range:

1–1,000 characters.

users

Array of UserBasicDto objects

Definition:

Member list

user_teams

Array of UserTeamBasicDto objects

Definition:

Member group list

roles

Array of RoleBasicDto objects

Definition:

Role list

addition_switchers

Array of ForceActionEnableDto objects

Definition:

Operation selection list

Table 6 UserBasicDto

Parameter

Type

Description

id

Integer

Definition

User ID.

Value range:

1~2147483647

name

String

Definition

Username.

username

String

Definition

Username.

state

String

Definition:

User status

Value range:

  • active: available account

  • blocked: locked user

  • error: The user is not found

Enumeration values:

  • active

  • blocked

  • error

service_license_status

Integer

Service-level permission status. 0: disabled; 1: enabled

avatar_url

String

User profile picture URL

avatar_path

String

User profile picture path

email

String

User email

name_cn

String

Username (CN)

web_url

String

User homepage

nick_name

String

User alias

tenant_name

String

Tenant name

error_message

String

Definition

When some query APIs detect that the user permission in the transfer parameter is insufficient or the user does not exist, the user is returned but the field is not empty for information.

Table 7 UserTeamBasicDto

Parameter

Type

Description

id

Integer

Definition:

User group ID.

Value range:

1–2147483647

name

String

Definition:

User group name.

Value range:

N/A.

Table 8 RoleBasicDto

Parameter

Type

Description

id

Integer

Definition:

Unique role ID

Value range:

1~2147483647

name

String

Definition:

Role name

Value range:

1–1,000 characters.

related_role_id

String

Definition:

Role ID

Value range:

1–1,000 characters.

chinese_name

String

Definition:

Role name (CN)

Value range:

1–1,000 characters.

Table 9 ForceActionEnableDto

Parameter

Type

Description

name

String

Definition:

Name of the forced operation

Value range:

1–1,000 characters.

enable

Boolean

Definition:

Whether to force open this operation.

Status code: 401

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Status code: 403

Table 11 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Status code: 404

Table 12 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Example Requests

GET https://{endpoint}/v4/projects/{project_id}/protected-tags

Example Responses

Status code: 200

Obtain protected tag details of a specified project

[ {
  "id" : 85,
  "source" : null,
  "project_id" : "bf8e0877a109417ba0f184208b44fedc",
  "updated_at" : "2025-09-23",
  "name" : "123",
  "actions" : [ {
    "action" : "create",
    "enable" : false,
    "users" : [ {
      "id" : 1111,
      "name" : "user1",
      "username" : "user1",
      "state" : "active",
      "avatar_url" : null,
      "avatar_path" : null,
      "email" : null,
      "name_cn" : null,
      "web_url" : null,
      "nick_name" : "",
      "tenant_name" : "devcloud_test",
      "error_message" : null
    } ],
    "user_teams" : [ {
      "id" : 1111,
      "name" : "team1"
    } ],
    "roles" : [ {
      "id" : 1111,
      "name" : "Developer",
      "related_role_id" : "dfcd80a52b5e46cab86a8e1fa7ecd25a",
      "chinese_name" : "Developer"
    } ]
  } ]
}, {
  "id" : 85,
  "source" : null,
  "project_id" : "bf8e0877a109417ba0f184208b44fedc",
  "updated_at" : "2025-09-23",
  "name" : "123",
  "actions" : [ {
    "action" : "create",
    "enable" : false,
    "users" : [ {
      "id" : 1111,
      "name" : "user1",
      "username" : "user1",
      "state" : "active",
      "avatar_url" : null,
      "avatar_path" : null,
      "custom_attributes" : null,
      "email" : null,
      "name_cn" : null,
      "web_url" : null,
      "nick_name" : "",
      "tenant_name" : "devcloud_test",
      "error_message" : null
    } ],
    "user_teams" : [ {
      "id" : 1111,
      "name" : "team1"
    } ],
    "roles" : [ {
      "id" : 1111,
      "name" : "Developer",
      "related_role_id" : "dfcd80a52b5e46cab86a8e1fa7ecd25a",
      "chinese_name" : "Developer"
    } ]
  } ]
} ]

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 code: 404

Not Found

{
  "error_code" : "CH.004404",
  "error_msg" : "Project Not Found. Project Not Found"
}

Status Codes

Status Code

Description

200

Obtain protected tag details of a specified project

401

Unauthorized

403

Bad Request

404

Not Found

Error Codes

See Error Codes.