Swagger and OpenAPI allow you to create a spec for your REST API. You can then use some tooling in order to create clients in pretty much every language under the sun for your API.
It took me a few solid days to write a python wrapper for the CircleCI API. In the same amount of time, I could have theoretically written a swagger spec and made clients for all the languages.
I spent a few hours today looking through the documentation for Swagger and learning more about tooling. Why doesn’t every product use this?