Ability to set the ID, but update if needed