Not on you at all, seriously! We definitely need to update the documentation for that gem to show an example with a body, as well as as an example with filters. I'll see what I can do here about opening a PR to add that. Thanks for helping us find a gap in our docs!
Also now that I know it works (thanks for being my guinea pig, haha!) I'll dive more into what was going for anyone curious (feel free to skip if you're not). Here's the source code in specific that clued me in:
A quick explanation of why this was going wrong: outside of the body key, arguments are forwarded as basic query params. So your original call was getting translated to something like /search?query=foo&filters=bar, which does sorta work since apparently our search endpoint accepts both query params and JSON bodies.
However, since query strings don't tend to handle complex/nested objects very well, it was failing when you tried to go into an array. Switching over to a JSON body fixes that and allows for more complex filters.
Hope that all makes sense, and super glad I could help! 