I have done ONVIF programming, and I actually licensed a dependency for the SOAP part.
I think not having used it to any real extent I've not run into the parts people hate. I just get an automatically generated client library that can be treated like normal method calls, more or less.
But I've also not had the opportunity to work with OpenAPI stuff so I'm not sure what the current state of the art there looks like
I have never heard praise of it again.
To tell you the truth, the autodiscovery part would be really awesome... if it worked. But instead, the thousands of pages long set of standards that create SOAP are not specific enough, so it doesn't work.
Only tangentially related: does anyone else have the sense that GraphQL is fancy, modern SOAP?