Rest API Update / PUT Requires Value Delta else Error with empty ValidationMessages obj in Response
It appears that the update/put will fail if the value of the field being updated is NOT different (source value = target value).
When this occurs, IsSuccessful is false but the ValidationMessages response object IS EMPTY!
This is the behavior whether you are updating 20 fields and 19 are different but one is the same (the entire transaction fails and NOTHING is updated) or if you are updating just a single field which has not changed.
Why is this the behavior?
At the very least the validationMessages object should be populated with the reason for failure.
I contend that the transaction should not fail but rather the ValidationMessages object would be populated with a 'warning' message stating which fields did not update and why (because their value did not change).
This makes it a big pain to code for as now I have to check EACH and EVERY field for change when populating the JSON request string.
I know one can argue that doing so reduces the payload but come on, why fail the entire transaction if only a single field has not changed. And at least tell me why!
Has there been any changes to the REST API in 5.5 SP1?
We have plans to upgrade in a month or so.
- Community Thread
- Forum Thread
- RSA Archer
- RSA Archer Suite
Thanks, something else may have been causing the errors since I am now able to get IsSuccessful:true WITH THE SAME request.
Subsequent calls with the same request failed with no validation message populated.
So to clarify, I WAS experiencing the original post behavior (for a day and a half) but that has since ceased and now get IsSuccessful:true AS LONG AS AT LEAST ONE parameter in the source is different than the target.
Do you think I should still open a ticket with regard to empty ValidationMessages if IsSuccessful = false?