"Over the past few years, Swagger 2 has become the de facto standard for defining your API." - LOL. I stopped reading here.
What do you use for defining & documenting your APIs?
I ask because this is something the UK Government is looking at - https://github.com/alphagov/tech-and-data-standards/issues/3...
The best part about Swagger is there's a lot of good open-source tooling for it (though this depends on the language).
One alternative I find super interesting lately is defining APIs with grpc and then exposing them with the gateway proxy: https://github.com/grpc-ecosystem/grpc-gateway
In this way, you get strongly-typed interfaces and Swagger is autogenned for you.