If a PATCH request contains no recognized fields (either because there are no fields at all, or because no fields are recognized), and the server expects fields to patch, should the server return an error?
I’m generally in favor of indicating to the client that something is wrong with the request, but returning an error here might have implications for backwards compatibility, though I’m not sure if it’s relevant in practice. Specifically, removing a resource field will then cause clients that only attempt to patch this field to suddenly start getting errors. But in this case, the client is likely broken anyway since it depends on a field that has been removed. (Also, clients should have ample time to update during a sunset period, so I’m not too concerned about this.)
Any thoughts on whether to return an error for “empty” PATCH requests?