The full thing? If not, what did you post exactly?
A quick search seems to show that a limited payload should indeed work. I think “all fields must be supplied” is false, and also attributes
being a single object rather than an array/list seems an error in the documentation, which is confirmed by the source code of the discontinued Python SDK. The same source code suggests that most data is optional.