PyCon DE & PyData 2025

Death by a Thousand API Versions
2025-04-25 , Helium3

API versioning is tough, really tough. We tried multiple approaches to versioning in production and eventually ended up with a solution we love. During this talk you will look into the tradeoffs of the most popular ways to do API versioning, and I will recommend which ones are fit for which products and companies. I will also present my framework, Cadwyn, that allows you to support hundreds of API versions with ease -- based on FastAPI and inspired by Stripe's approach to API versioning.

After this session, you will understand which approach to pick for your company to make your versioning cost effective and maintainable without investing too much into it.


Web API Versioning is a way to allow your developers to move quickly and break things while your clients enjoy the stable API in long cycles. It is best practice for any API-first company to have API Versioning in one way or another. Otherwise, the company will either be unable to improve their API or their clients will have their integrations broken every few months.

At Monite, we spent a great deal of time trying to make API versioning work. We went through multiple horrifying solutions until we reached something we are proud of. I'll share just how expensive API versioning can get if done incorrectly.

I'll cover all sorts of approaches you can pick to add incompatible features to your API: extremely stable and expensive, easy-looking but horrible in practice, and even completely version-less yet viable. I will provide you with the best practices of how you could find or implement a modern API versioning solution and will discuss the versioning at Stripe and Monite in great detail.

When you leave, you'll have enough information to make your API Versioning user-friendly without overburdening your developers.


Expected audience expertise: Domain:

Novice

Expected audience expertise: Python:

Novice

Public link to supporting material, e.g. videos, Github, etc.:

https://youtu.be/_jmLqOSKIJU

Experienced platform engineer and architect with a passion for open source and developer tools. The author of Cadwyn -- a sophisticated API Versioning framework based on FastAPI. A contributor to numerous projects such as CPython and tortoise-orm. Currently building the future of finance at Monite.

This speaker also appears in: