which leads to some differences in behavior: e.g. apis that leniently accept assorted types in the client side will error out using the same inputs on the server side
(since when the client side api transports the data it all gets serialized as strings)