Web Service command updateReviewItems does not allow only comments for review items to be changed in RSA Identity Governance & Lifecycle
4 years ago
Originally Published: 2020-09-30
Article Number
000043486
Applies To
RSA Product Set: RSA Identity Governance & Lifecycle
RSA Version/Condition: 7.2.x,7.1.x

 
Issue
The RSA IdentityGovernance & Lifecycle Web Service command 'updateReviewItems' fails when attempting to update only the comments in a review item.

Review item comments may be updated in the Review through the console without error.

For example, the following Web Service command to add only a comment.
<Review>
<ReviewResultName>Review-Result-Name</ReviewResultName>
<SignOff>false</SignOff>
<ReviewItemChange comments="Adding Only Comment for this Entitlement">
<RevieweeUserId>TestUser</RevieweeUserId>
<Entitlement resource="Group" action = "Add" business-source="Perforce"/>
</ReviewItemChange>
</Review>


Generates the following error response.
412 Precondition Failed
<html><head><title>Error</title></head><body>
Status=Failure.  None of the 1 review components could be updated.
Status for Review Item (TestUser-Group)=Failure (State specified should be one of [Maintain, revoke, none]



 
Cause
The feature to add comments only is currently not available in web service commands (updateReviewItems) in RSA Identity Governance & Lifecycle. Engineering defect has been opened (ACM-107647) and this feature in a future version of the product.
Resolution
A new parameter 'UpdateCommentsOnly' (exact parameter name may change slightly) will be added to the webservice command 'updateReviewItems' as below.
When this option is set to true, only the comments will be updated for the review items, the state will not get affected (Just like adding comments from UI).
Also, comments will be updated only when the comments being added are not found already as part of the existing review comments.
<Review>
<ReviewResultName>value</ReviewResultName>
<UpdateCommentsOnly>true<UpdateCommentsOnly>
<SignOff>false</SignOff>
<ReviewItemChange state="revoke" comments="value">
<RevieweeUserId>value</RevieweeUserId>
<Entitlement resource="value" action = "value" business-source="value"/>
</ReviewItemChange>
</Review>