I’ve been messing around with API updates and I have not be able to reproduce this issue anywhere. The only way I can get the candidate history to look like the history on that example profile is to actually change the candidate source in the update call.
Could you provide some more info on the circumstances where you are seeing this? Is this every API update call that is doing this? Only when you edit certain fields? Is it always setting it to “Dice Search” or are there other sources it’s setting it to?
As an aside, the fact that multiple source fields show up in the history when you edit the source via the API looks to be a long-standing bug, as I see some instances of it from over a year ago on your site, and is something I can look into cleaning up. But that seems unrelated to the issue of source itself being edited when you update a completely different field.