APIs as infrastructure: future-proofing Stripe with versioning
11–20 of 53 posts
Re: APIs as infrastructure: future-proofing Stripe with versioning
#12Re: APIs as infrastructure: future-proofing Stripe with versioning
#13Re: APIs as infrastructure: future-proofing Stripe with versioning
#14Github also versions their API via headers, but uses the `Accept` header instead: https://developer.github.com/v3/media/
Re: APIs as infrastructure: future-proofing Stripe with versioning
#15This is awesome. As someone who's built many APIs, I have always wondered how Stripe managed all those versions. I knew their code couldn't just be littered with if/thens. This is a really smart way to do it. One question is, over the years, wouldn't you add a lot of overhead to each request in transformation? Or do you have a policy where you expire versions that are more than 2 years old, etc? (skimmed through part…
Stripe probably tracks the relative usage of each API version. If they found a lot of their users were stuck on an old version, that would point to a bigger problem than just some per-request overhead.
Re: APIs as infrastructure: future-proofing Stripe with versioning
#16Re: APIs as infrastructure: future-proofing Stripe with versioning
#17Re: APIs as infrastructure: future-proofing Stripe with versioning
#18Re: APIs as infrastructure: future-proofing Stripe with versioning
#19Re: APIs as infrastructure: future-proofing Stripe with versioning
#20This is awesome. As someone who's built many APIs, I have always wondered how Stripe managed all those versions. I knew their code couldn't just be littered with if/thens. This is a really smart way to do it. One question is, over the years, wouldn't you add a lot of overhead to each request in transformation? Or do you have a policy where you expire versions that are more than 2 years old, etc? (skimmed through part…
- They apply transformations to convert responses from the current version to the previous version, step by step.
- This means the overhead for old versions only applies to consumers of the old version.
- They support all versions going back 6 years.