Help Center/ CodeArts Repo/ API Reference/ APIs/ V4/ MergeRequest/ Updating the Approver List of a Merge Request
Updated on 2026-01-27 GMT+08:00

Updating the Approver List of a Merge Request

Function

This API is used to update the approver list of a merge request.

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

Write

-

-

-

-

URI

PUT https://{hostURL}/v4/repositories/{repository_id}/merge-requests/{merge_request_iid}/approval-approvers

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

merge_request_iid

Yes

Integer

Definition

MR internal ID (IID).

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

approver_ids

No

String

Definition

ID list of approvers to be updated. They are separated by commas (,): 111,222.

Range

N/A.

Response Parameters

Status code: 201

Table 4 Response body parameters

Parameter

Type

Description

[items]

Array of ApproverBasicDto objects

Get a merge request approver info

Table 5 ApproverBasicDto

Parameter

Type

Description

id

Integer

Definition

User ID.

Value range:

1~2147483647

name

String

Definition

Username.

username

String

Definition

Username.

name_cn

String

Definition

Name (CN).

Range

N/A.

email

String

Definition

Email.

Range

N/A.

state

String

Definition

Status.

  • optional: optional (approver and reviewer) (not approved or reviewed)

  • required: mandatory (approver and reviewer) (not approved or reviewed)

  • approve: approving passed

  • true: review passed

  • passed: approved or reviewed by others (not personally approved or reviewed)

  • reject: approving failed

updated_at

String

Definition

Update time.

Range

N/A.

avatar_url

String

Definition

Profile picture link.

Range

N/A.

nick_name

String

Definition

Alias.

Range

N/A.

tenant_name

String

Definition

Tenant name.

Range

N/A.

approver_comment

String

Definition

Approving remarks.

Range

N/A.

Status code: 401

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Status code: 403

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Definition

Error code.

error_msg

String

Definition

Error message.

Example Requests

PUT https://{endpoint}/v4/projects/a642c851d4dc4853b595e5c8a5e56df7/hooks/1

{
  "approver_ids" : "10311,10312"
}

Example Responses

Status code: 201

OK

[ {
  "id" : 10311,
  "avatar_url" : "",
  "email" : "",
  "name" : "dev1",
  "name_cn" : "Test account 1",
  "nick_name" : "dev1_nick",
  "state" : "optional",
  "tenant_name" : "example_name",
  "updated_at" : "2025-04-27T19:35:16.708+08:00",
  "username" : "dev2"
}, {
  "id" : 10312,
  "avatar_url" : "",
  "email" : "",
  "name" : "dev2",
  "name_cn" : "Test account 2",
  "nick_name" : "dev2_nick",
  "state" : "optional",
  "tenant_name" : "example_name",
  "updated_at" : "2025-04-27T19:35:16.708+08:00",
  "username" : "dev2"
} ]

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 Codes

Status Code

Description

201

OK

401

Unauthorized

403

Bad Request

Error Codes

See Error Codes.