Versioning, What’s new in KeyServ v1.2.5

Well, it’s an API dude, what were you expecting? Versioning sheesh, public-facing APIs are the one place you should be happy to stick with what you have and not get sparkly-eyed about newer releases. Well unless you REALLY need the service or endpoint v2 has to offer.

Public consumption APIs can’t really be improved in terms of soft-versioning (i.e minor updates), except in hacky ways like extra headers and query strings. If you screwed up on releasing your v1, well folks, then your off to v2, do not pass go, do not collect $200.


That is why you take extra care when releasing an API. It’s not like the rest of your devOps world with your fancy continuous integration pipelines. You don’t want to screw this up or potentially all of your users might suffer. So test, test, test before releasing your API.

In our case it wasn’t that bad. We soft-versioned because nothing really serious changed. We modified the datetime fields in our API, they were already ISO8601 compliant, the difference is before these were accurate to the millisecond. Apparently most people don’t like precision like that, who knew?