Yes, the answer to your question is to auto-generate the client. But as I mentioned, the current generators has drawbacks. They are buggy, produces ugly code, and hard to customize.
How do you test that the client can actually still call the server when you make changes to the server? Do you have automated tests?
AutoRest is one of those buggy generators that I mentioned.
I agree that generated clients are ugly which is one reason why I'm hesitant. On the other hand, generators saves time and doesn't need to be tested (If you can trust the generator).
The other option that I'm thinking of is to create my own template for one of those OpenAPI generator so that the client code isn't ugly but creating a template is not a trivial task.
I'm wondering companies that has tons of REST microservices do it.
In order to implement a JSON GET and POST to one endpoint, they had to write 186 lines of code and unit tests so something is clearly wrong!
Even just being smarter on manually writing the client will save us a lot of time.