So I'm following what I've seen as a general convention of where we've been adding passing objects to initializers. In some cases, like the one you commented on later, this also saves us having to split data objects up into individual attributes and put them back together for sending on, and also makes it more easily maintainable, although I guess there's a risk of the documentation being out of date - maybe the better thing would be to point the documentation at the server where the documentation for these parameters are?