Updating a Change Review
Function
This API is used to update a change review.
Calling Method
For details, see Calling APIs.
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.
URI
PUT /v1/ipdprojectservice/projects/{project_id}/review/{review_id}
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| project_id | Yes | String | Definition 32-character ID of a project, which must be unique. Obtain the value by calling the API for querying the IPD project list. The value of id in the response message body is the project ID. Constraints N/A Range A string of 32 characters consisting of letters and digits. Default Value N/A |
| review_id | Yes | String | Definition Review ID, which uniquely identifies a review. Obtain the value by calling the API for querying the review list (BR/GR). The value of id in the response body is the review ID. Constraints N/A Range A string of 18 to 19 digits. Default Value N/A |
Request Parameters
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| category | Yes | String | Definition Review type. Constraints CR only. Range CR only. Default Value N/A |
| old_status | Yes | ReviewStatusEntity object | Definition Review status before the update. Constraints 0 to 32 characters. Range Default Value N/A |
| status | Yes | ReviewStatusEntity object | Definition Target status code of a review. Constraints 0 to 32 characters. Range Default Value N/A |
| cos | Yes | Array of COUpdateEntity objects | Definition Review object list. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| code | Yes | String | Definition Review status code. Constraints N/A Range Default Value N/A |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| id | Yes | String | Definition Change object ID. Constraints 18 to 19 characters. Range N/A Default Value N/A |
| review_comments | No | Array of ReviewCommentUpdateEntity objects | Review comments on the change object |
| approval_comments | No | Array of ReviewCommentUpdateEntity objects | Decision-making comments on the change object. This parameter is mandatory when the review is in the to-be-decided phase. |
| Parameter | Mandatory | Type | Description |
|---|---|---|---|
| result | No | String | Review result, which is mandatory during review. Approved: The review/decision-making is approved. Rejected: The review/decision-making is rejected. |
| comment | No | String | Review comments, which are mandatory for review. |
| other_user_id | No | String | ID of the review receiver (mandatory during review transfer). |
Response Parameters
Status code: 200
| Parameter | Type | Description |
|---|---|---|
| status | String | Definition Response status. Range |
| message | String | Definition Response message. Range N/A |
| result | ReviewEntity object | Review details |
| Parameter | Type | Description |
|---|---|---|
| id | String | Definition Review ID. Range N/A |
| number | String | Definition Review No. Range N/A |
| state | String | Definition Lifecycle of a review. Range |
| title | String | Definition Review title. Range N/A |
| category | String | Definition Review type. Range CR (change review), BR (baseline review), and GR (general review). |
| created_by | UserEntity object | Definition Review creator. |
| modified_by | UserEntity object | Definition Last modifier of a review. |
| assigned_cc | Array of UserEntity objects | Definition Cc recipient of a review. |
| created_time | String | Definition Creation timestamp of a review. Range N/A |
| modified_time | String | Definition Timestamp when a review was last modified. Range N/A |
| plan_end_date | String | Definition Timestamp of the planned completion date. Range N/A |
| plan_start_date | String | Definition Timestamp of the planned start date. Range N/A |
| close_time | String | Definition Review completion time. Range N/A |
| need_approval | String | Definition Whether the review needs to be approved by the decision-maker. Range true and false |
| status | StatusEntity object | Definition Review status. |
| description | String | Definition Review description. Range N/A |
| closed_time | String | Definition Review completion time. Range N/A |
| approver | String | Definition Decision-maker ID. Range N/A |
| reviewer | String | Definition ID of a review expert. Range N/A |
| cos | Array of COEntity objects | Definition Review object list. |
| ccbs | Array of CcbEntity objects | Definition Approval information lists. |
| old_status | StatusEntity object | Definition Historical review status. |
| cc | Array of UserEntity objects | Definition List of CC recipients. |
| Parameter | Type | Description |
|---|---|---|
| after_change | String | Definition Change object content after change. Range N/A |
| review_complete_time | String | Definition Review completion time of the change object. Range N/A |
| review_phase_result | String | Definition Review result of the change object. Range |
| review_time | String | Definition Review time of the change object. Range N/A |
| before_change | String | Definition Work item content before change. Range N/A |
| category | String | Definition Work item type of the change object. The value is fixed to CO. Range N/A |
| ccb_info | CcbEntity object | Definition Actual decision-maker of the change object. Range N/A |
| ccbs | Array of UserEntity objects | Definition List of decision makers for the change object. The list contains only one element. Range N/A |
| change_type | String | Definition Change type. Range Modify Move: migrate Delete ModifyPlan: move it into or out of the baselined release or sprint |
| co2review | String | Definition ID of the review associated with a change object. Range N/A |
| created_by | String | Definition Creator ID of a change object. Range N/A |
| created_date | String | Definition Time when a change object is created. Range N/A |
| description | String | Definition Description of a change object. Range N/A |
| id | String | Definition Change object ID. Range N/A |
| issue_id | String | Definition ID of the work item associated with a change object. Range N/A |
| issue_number | String | Definition ID of the work item associated with a change object. Range N/A |
| issue_category | String | Definition Type of the work item associated with a change object. Range N/A |
| modified_by | String | Definition ID of the last modifier of a change object. Range N/A |
| modified_date | String | Definition Last modification time of a change object. Range N/A |
| opinions | Array of UserEntity objects | Definition List of change object review expert IDs (used when a change review is created). Range N/A |
| opinion_comments | Array of ReviewOpinionEntity objects | Definition Review comments on a change object. Range N/A |
| review_comments | Array of ReviewCommentEntity objects | Definition Review comments on a change object (for review update). Range N/A |
| approval_comments | Array of ReviewCommentEntity objects | Definition Decision-making comments on a change object (for decision-making update). Range N/A |
| reviewer | Array of strings | Definition List of change object review expert IDs. Range N/A |
| approver | Array of strings | Definition Array of change object decision-maker IDs. Range N/A |
| status | String | Definition Change object status. Range |
| Parameter | Type | Description |
|---|---|---|
| approval_time | String | Definition Approval time. Range N/A |
| category | String | Definition Work item type. The value is fixed at CCB. Range N/A |
| ccb2review | String | Definition ID of the review associated with an approval object. Range N/A |
| co_id | String | Definition ID of the associated change object. Range N/A |
| id | String | Definition Approval object ID. Range N/A |
| owner | UserEntity object | Definition Decision-maker. Range N/A |
| approval_comments | String | Definition Approval comments. Range N/A |
| Parameter | Type | Description |
|---|---|---|
| category | String | Definition Review comment object type. The value is fixed at Opinion. Range N/A |
| co_id | String | Definition ID of the change object associated with the review comment object. Range N/A |
| created_by | UserEntity object | Definition Review expert who creates the review comment. Range N/A |
| created_date | String | Definition Review comment creation time. Range N/A |
| curr_owner | UserEntity object | Definition Current review expert. Range N/A |
| id | String | Definition Review comment object ID. Range N/A |
| modified_date | String | Definition Last modification time of a review comment. Range N/A |
| review_comments | String | Definition Review comment. Range N/A |
| Parameter | Type | Description |
|---|---|---|
| id | String | Definition Review comment object ID. Range N/A |
| user_id | String | Definition Reviewer ID. Range N/A |
| other_user_id | String | Definition ID of the review receiver (during review transfer). Range N/A |
| result | String | Definition Review result. Range N/A |
| comment | String | Definition Review comment. Range N/A |
| Parameter | Type | Description |
|---|---|---|
| id | String | Definition User ID. Obtain it by calling the API for querying project members. The value of id in the response message body is the user ID. Range N/A |
| name | String | Definition Username. Range 2 to 64 characters. |
| nick_name | String | Definition User alias. Range 2 to 30 characters |
| Parameter | Type | Description |
|---|---|---|
| id | String | Definition Status ID. Range N/A |
| belonging | String | Definition Work item status. Range START, IN_PROGRESS, and END |
| display_value | String | Definition Status name. Range N/A |
| code | String | Definition Unique status ID. Range N/A |
| created_by | String | Definition Status creator. Range N/A |
| created_time | String | Definition Status creation time. Range N/A |
| modified_by | String | Definition Status modifier. Range N/A |
| modified_time | String | Definition Latest modification time of a status. Range N/A |
| category_code | Array of strings | Definition Work items that use the status. |
Status code: 400
| Parameter | Type | Description |
|---|---|---|
| error_code | String | Definition Error code. Range N/A |
| error_msg | String | Definition Error description, which is a supplement to error_code. Range N/A |
Example Requests
-
PUT https://{endpoint}/v1/ipdprojectservice/projects/b248a70bc6434e6bad54c8e73a222dca/review/1073568012549795840 { "category" : "CR", "old_status" : { "code" : "ToBeReviewed" }, "status" : { "code" : "ToBeReviewed" }, "cos" : [ { "id" : "1073568002185670656", "review_comments" : [ { "result" : "Approved", "comment" : "Review approved" } ] } ] } -
https://{endpoint}/v1/ipdprojectservice/projects/b248a70bc6434e6bad54c8e73a222dca/review/1073568012549795840 { "category" : "CR", "old_status" : { "code" : "ToBeReviewed" }, "status" : { "code" : "ToBeReviewed" }, "cos" : [ { "id" : "1073568002185670656", "review_comments" : [ { "result" : "Rejected", "comment" : "Review rejected" } ] } ] } -
https://{endpoint}/v1/ipdprojectservice/projects/b248a70bc6434e6bad54c8e73a222dca/review/1073568012549795840 { "category" : "CR", "old_status" : { "code" : "ToBeReviewed" }, "status" : { "code" : "ToBeReviewed" }, "cos" : [ { "id" : "1073568002185670656", "review_comments" : [ { "other_user_id" : "09d25f5d3f80d2881fd7c008ecf1622b" } ] } ] } -
https://{endpoint}/v1/ipdprojectservice/projects/b54914d464d1498a97d683ef198ec448/review/1029697355810648065 { "category" : "CR", "old_status" : { "code" : "ToBeApproved" }, "status" : { "code" : "ToBeApproved" }, "cos" : [ { "id" : "1073343385248509953", "approval_comments" : [ { "result" : "Approved", "comment" : "Decision approved" } ] } ] } -
https://{endpoint}/v1/ipdprojectservice/projects/b54914d464d1498a97d683ef198ec448/review/1029697355810648065 { "category" : "CR", "old_status" : { "code" : "ToBeApproved" }, "status" : { "code" : "ToBeApproved" }, "cos" : [ { "id" : "1073344323946328065", "approval_comments" : [ { "result" : "Rejected", "comment" : "Decision rejected" } ] } ] } -
https://{endpoint}/v1/ipdprojectservice/projects/b54914d464d1498a97d683ef198ec448/review/1029697355810648065 { "category" : "CR", "old_status" : { "code" : "ToBeApproved" }, "status" : { "code" : "ToBeApproved" }, "cos" : [ { "id" : "1073344323946328065", "approval_comments" : [ { "other_user_id" : "09d25f5d3f80d2881fd7c008ecf1622b" } ] } ] }
Example Responses
Status code: 200
{
"status" : "success",
"result" : {
"id" : "1073571791578767361",
"number" : "CR20241211782420",
"state" : "In use",
"title" : "21-CR-10x",
"category" : "CR",
"created_by" : {
"id" : "a360371833bf4c558f796fd707b44daf",
"name" : "devcloud_devcloud_01",
"nick_name" : "Test account."
},
"modified_by" : {
"id" : "system",
"name" : "System"
},
"created_time" : "1733889061000",
"modified_time" : "1733889106000",
"plan_end_date" : "1735574400000",
"plan_start_date" : "1733673600000",
"need_approval" : "true",
"status" : {
"display_value" : "To be decided",
"code" : "ToBeApproved"
},
"description" : "<p><strong>[Background]</strong></p><p>1</p><p><strong>[Benefits]</strong></p><p><br></p><p><strong>[Details]</strong></p>",
"cos" : [ {
"after_change" : "{\"view\":{\"description\":\"<p>[Fault Symptom]</p><p>x</p><p>[Environment Information]</p><p><br></p><p>[Onsite Fault Locating R&D Engineer]</p><p><br></p><p>[Preliminary Fault Locating]</p>\"},\"execute\":{\"description\":\"<p>[Fault Symptom]</p><p>x</p><p>[Environment Information]</p><p><br></p><p>[Onsite Fault Locating R&D Engineer]</p><p><br></p><p>[Preliminary Fault Locating]</p>\"},\"snapshot\":{\"found_iteration\":null,\"type\":\"bug\",\"test_failures_times\":\"0\",\"number\":\"BUG20241209780441\",\"convolution_actual_hours\":null,\"path\":\"/1072968362439385089\",\"workload_man_day\":null,\"id\":\"1072968362439385089\",\"state\":\"In use\",\"sys_no_repair_reason\":null,\"module\":null,\"priority\":null,\"found_env\":null,\"sys_activation_reason\":null,\"assignee\":{\"watcher\":0,\"user_id\":\"a360371833bf4c558f796fd707b44daf\",\"user_num_id\":4091,\"user_name\":\"devcloud_devcloud_01\",\"domain_id\":\"4e919d73499648e3b0292cd3cbef806a\",\"domain_name\":\"devcloud_devcloud_01\",\"nick_name\":\"Test Account\",\"role_id\":\"257bbf34272649dd909bb35dfe27d126,05d9444b66cc4d5090ef3180a3096c91\",\"role_name\":\"Project Manager,Project Administrator\",\"role_alias_name\":\"Project manager,Project admin\",\"role_code\":\"Project manager,project_admin\",\"image_id\":\"\",\"region\":\"\",\"has_removed\":\"\"},\"close_type\":null,\"status\":{\"id\":\"1072203303913304105\",\"belonging\":\"START\",\"space_id\":\"1072203303493873664\",\"name\":\"Analysis\",\"status_category\":\"\",\"code\":\"Analyse\",\"definition_type\":\"5\",\"belong_definition_type\":3,\"belong_scope\":\"\",\"display_value\":\"Analysis\",\"position\":2,\"displayable\":1,\"editable\":1,\"deletable\":1,\"mutable\":1,\"title_py\":\"fx\",\"builtin\":false,\"label\":\"\",\"description\":\"\",\"created_by\":\"a360371833bf4c558f796fd707b44daf\",\"created_userinfo\":null,\"created_on\":\"\",\"created_date\":1733591588000,\"modified_date\":1733591588000,\"modified_by\":\"a360371833bf4c558f796fd707b44daf\",\"category_code\":[],\"editing_fields\":[],\"associate\":null,\"linkage_node_fields\":false},\"tenant_id\":\"4e919d73499648e3b0292cd3cbef806a\",\"plan_pi\":null,\"repair_solution\":null,\"plan_end_date\":null,\"expected_repair_date\":null,\"plan_iteration\":null,\"cascade_delete\":\"none\",\"issue_opinion_id\":null,\"modified_by\":{\"watcher\":0,\"user_id\":\"a360371833bf4c558f796fd707b44daf\",\"user_num_id\":4091,\"user_name\":\"devcloud_devcloud_01\",\"domain_id\":\"4e919d73499648e3b0292cd3cbef806a\",\"domain_name\":\"devcloud_devcloud_01\",\"nick_name\":\"Test Account\",\"role_id\":\"257bbf34272649dd909bb35dfe27d126,05d9444b66cc4d5090ef3180a3096c91\",\"role_name\":\"Project Manager,Project Administrator\",\"role_alias_name\":\"Project manager,Project admin\",\"role_code\":\"Project manager,project_admin\",\"image_id\":\"\",\"region\":\"\",\"has_removed\":\"\"},\"position_float\":\"10000000000.0000000000\",\"belong_inside\":\"1\",\"regression_failure_number\":\"0\",\"src_domain\":{\"id\":\"1072203303493873664\",\"name\":\"beta-m2-wyl-021\",\"title\":\"beta-m2-wyl-021\",\"project_id\":\"b248a70bc6434e6bad54c8e73a222dca\",\"parent_id\":\"\",\"category\":\"Project\",\"created_by\":\"a360371833bf4c558f796fd707b44daf\",\"model_id\":\"10002\",\"children\":[]},\"domain_id\":{\"id\":\"1072203303493873664\",\"name\":\"beta-m2-wyl-021\",\"title\":\"beta-m2-wyl-021\",\"project_id\":\"b248a70bc6434e6bad54c8e73a222dca\",\"parent_id\":\"\",\"category\":\"Project\",\"created_by\":\"a360371833bf4c558f796fd707b44daf\",\"model_id\":\"10002\",\"children\":[]},\"send_from\":\"\",\"send_to\":\"\",\"stay_days\":2,\"test_report\":null,\"assigned_cc\":null,\"return_reason\":null,\"submit_time\":1733745191791,\"workitem2label\":null,\"close_time\":null,\"modified_date\":1733888840000,\"created_by\":{\"watcher\":0,\"user_id\":\"a360371833bf4c558f796fd707b44daf\",\"user_num_id\":4091,\"user_name\":\"devcloud_devcloud_01\",\"domain_id\":\"4e919d73499648e3b0292cd3cbef806a\",\"domain_name\":\"devcloud_devcloud_01\",\"nick_name\":\"Test Account\",\"role_id\":\"257bbf34272649dd909bb35dfe27d126,05d9444b66cc4d5090ef3180a3096c91\",\"role_name\":\"Project Manager,Project Administrator\",\"role_alias_name\":\"Project manager,Project admin\",\"role_code\":\"Project manager,project_admin\",\"image_id\":\"\",\"region\":\"\",\"has_removed\":\"\"},\"activate_times\":\"0\",\"status_modified_date\":1733745192515,\"parent_id\":null,\"business_domain\":null,\"found_pi\":null,\"region\":\"example\",\"reason_analysis\":null,\"link\":\"\",\"is_suspended\":null,\"origin_id\":\"1072968362439385089\",\"change_status\":{\"id\":\"1072203303896526858\",\"display_value\":\"changed\",\"value\":\"changed\",\"code\":\"changed\",\"value_py\":\"changed\",\"sequence\":3.0,\"level\":1,\"domain_id\":\"1072203303493873664\",\"belong_definition_type\":\"5\"},\"title\":\"21-Bug-01\",\"sum_workload_man_day\":null,\"plan_start_date\":null,\"severity\":{\"id\":\"1072203303896526851\",\"display_value\":\"Information\",\"value\":\"Information\",\"code\":\"Information\",\"value_py\":\"ts\",\"sequence\":1.0,\"level\":1,\"domain_id\":\"1072203303493873664\",\"belong_definition_type\":\"5\"},\"convolution_plan_hours\":null,\"submitted_by\":[{\"watcher\":0,\"user_id\":\"a360371833bf4c558f796fd707b44daf\",\"user_num_id\":4091,\"user_name\":\"devcloud_devcloud_01\",\"domain_id\":\"4e919d73499648e3b0292cd3cbef806a\",\"domain_name\":\"devcloud_devcloud_01\",\"nick_name\":\"Test Account\",\"role_id\":\"257bbf34272649dd909bb35dfe27d126,05d9444b66cc4d5090ef3180a3096c91\",\"role_name\":\"Project Manager,Project Administrator\",\"role_alias_name\":\"Project manager,Project admin\",\"role_code\":\"Project manager,project_admin\",\"image_id\":\"\",\"region\":\"\",\"has_removed\":\"\"}],\"sys_return_reason\":null,\"issue_review_id\":null,\"created_date\":1733745192388,\"category\":\"Bug\",\"setup\":true,\"collaborative_status\":[],\"parent_status\":\"no\"}}",
"review_complete_time" : "1733889106000",
"review_phase_result" : "Approved",
"before_change" : "{\"view\":{\"description\":\"<p>[Fault Symptom]</p><p><br></p><p>[Environment Information]</p><p><br></p><p>[Onsite Fault Locating R&D Engineer]</p><p><br></p><p>[Preliminary Fault Locating]</p>\"}}",
"category" : "CO",
"ccbs" : [ {
"id" : "a360371833bf4c558f796fd707b44daf",
"name" : "devcloud_devcloud_01",
"nick_name" : "Test account."
} ],
"change_type" : "Modify",
"co2review" : "1073571791578767361",
"created_by" : "a360371833bf4c558f796fd707b44daf",
"created_date" : "1733889060000",
"description" : "<p>[Fault Symptom]</p><p>x</p><p>[Environment Information]</p><p><br></p><p>[Onsite Fault Locating R&D Engineer]</p><p><br></p><p>[Preliminary Fault Locating]</p>",
"id" : "1073571790225190913",
"issue_id" : "1072968362439385089",
"issue_number" : "BUG20241209780441",
"issue_category" : "Bug",
"modified_by" : "a360371833bf4c558f796fd707b44daf",
"modified_date" : "1733889106000",
"opinions" : [ { } ],
"opinion_comments" : [ {
"category" : "Opinion",
"co_id" : "1073571790225190913",
"created_by" : {
"id" : "a360371833bf4c558f796fd707b44daf",
"name" : "devcloud_devcloud_01",
"nick_name" : "Test account."
},
"created_date" : "1733889106000",
"curr_owner" : {
"id" : "a360371833bf4c558f796fd707b44daf",
"name" : "devcloud_devcloud_01",
"nick_name" : "Test account."
},
"id" : "1073571982662868993",
"modified_date" : "1733889106000",
"review_comments" : "Review approved"
} ],
"approver" : [ "a360371833bf4c558f796fd707b44daf" ],
"reviewer" : [ "a360371833bf4c558f796fd707b44daf" ],
"status" : "ToBeApproved"
} ],
"cc" : [ {
"id" : "a360371833bf4c558f796fd707b44daf",
"name" : "devcloud_devcloud_01",
"nick_name" : "Test account."
} ]
}
} Status code: 400
{
"error_code" : "PM.02174103",
"error_msg" : "No permission."
} Status Codes
| Status Code | Description |
|---|---|
| 200 | OK |
| 400 | Response upon a request failure. For example, the user does not have the operation permission or the project does not exist. |
Error Codes
See Error Codes.
What is your overall rating for this page?
Thank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot