I currently maintain about 280 different API integrations. I have a team that does constant maintenance. Usually 1-2 API breaking changes per day is what we see after you get past the stable big ones. Even versioned APIs kick you off the old version pretty regularly. In the upcoming months we have 3 scheduled version bumps that are mandatory as they will discontinue the old version completely. Not "use the new version for more features", like completely 100% "we are not supporting v2 any longer. You won't get responses in 60 days. Good luck."
It's easy to say, "they're doing versioning wrong" but it's the reality.
Everyone does oauth wrong. Everyone does versioning wrong. Everyone adds or removes fields that were once critical to someone's workflows. Maybe 25% of our integrations are a joy to work with. Once you get to the smaller players, things start to get weird.