I don’t enjoy strong_parameters as well. My approach is to pass commands to services. And commands are just objects with fields. The nice approach of using objects with attributes instead of hashes is that there is limited amount of attributes which can be set. It is a closed object with a finite API :) It’s also a nice documentation of what you expect to actually arrive without accepting anything blindly.