Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This is is a genuine question: if you don't version your API somehow, then how do your clients handle breaking changes?


Version numbers simply represent a way of managing change over time. They certainly aren't the _only_ way, nor are they the most ideal in all situations, but they certainly are the most simple, accessible, and explicit, and they don't require a lot of planning ahead.

By contrast, the reason why designing real REST services is hard is because you actually have to _design_ them. This requires long, hard thinking about the domain of the problem at hand, and as such, doesn't square well with our "agile" methodologies of week-in and week-out iterative hacking.

Much as I typically loathe self-promotion, I did give a talk on this recently that enumerates some design strategies: https://speakerdeck.com/nateabele/designing-hypermedia-apis -- check out slides 8-20.


I tend to subscribe to the hybrid approach here: http://codebetter.com/howarddierking/2013/09/12/versioning-r...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: