Because the first endpoint I hit included "msg": "success", I assumed it was intended as a representation of status.
However, that's not the case - sometimes it includes modbus output.
There's an attribute code which should be used. The docs give a breakdown of what each means:

Activity
01-Jan-25 12:24
assigned to @btasker
01-Jan-25 12:24
mentioned in commit 3e857258ddf711b3b4ff5971bc69b47cd713399b
Commit: 3e857258ddf711b3b4ff5971bc69b47cd713399b Author: B Tasker Date: 2025-01-01T12:22:12.000+00:00Message
fix: rely on code rather than message to assess success (misc/soliscloud-inverter-control#4)
18-Dec-25 22:53
mentioned in commit 75e5e90943f9a1ee112545dddb602e78c85920d3
Commit: 75e5e90943f9a1ee112545dddb602e78c85920d3 Author: Ben Tasker Date: 2025-06-26T22:43:42.000+01:00Message
Merge pull request #4 from Adam1901/main
add docker compose script for ease