I prefer to treat HTTP as a transport layer. A 200 means the transport succeeded but doesn’t indicate that the RPC succeeded.
- 404 might mean the URL was wrong
- 405 might mean swapping POST with PUT
Both of these are simple programming errors. You might as well have used the wrong host or protocol for that matter