HACKER Q&A
📣 Choc13

Which API gateway solution is the best


Currently investigating which API gateway solution to use to provide auth, billing, developer portal etc for an api I'm building. There's plenty of solutions on the market and I'm wondering if anyone has any recent experience with them and can provide an honest review on their relative strengths and weaknesses.

Big pros for me would be: * An elastic payment model, so we can start for free while volumes are still low * Out the box developer portal and docs generation * OAuth capabilities

The pricing in particular seems quite opaque from my many vendors, so would appreciate any real information on costs that people have.


  👤 gumatias88 Accepted Answer ✓
Some recent experience going over the pros and cons for the most well known API Gateway out there (e.g. AWS API Gateway, HAProxy, and Kong) had us go back and forth between those.

Although I have no experience with any in particular, the experts I know are leaning towards the apparently most complete, mature and robust solution which we concluded to be AWS API Gateway, which in my view has an extremely high fidelity that's hard to reason against (though I'm looking forward to be proved wrong).

AWS API Gateway might probably have its own complexities and depending on what you're solving for specifically, might be way too much to take. But make no mistake, the knowledge you and your team will acquire is likely to payoff in the long run since I think it'll likely span across decades and continue to develop faster than most of its competitors. Though to be clear, I'm also for giving smaller businesses a fair shot.


👤 ecesena
Do you plan to just offer the API or build a SaaS around it?

We're making Saasform (see profile), but mostly focused on the SaaS. For example right now we don't support metered subscriptions. If interested please feel free to reach out directly.


👤 andrecp11
Kong works pretty well in their OSS version! You can start paying and get more features once you're used to it.

👤 taf2
Why not just use openresty ? You can do all of that with a little bit of lua...