We designed the API more opportunistically, where I looked only at errors that can happen with data validation. You have pointed correctly that the act of storing may error out too. I will update the interface appropriately.