How to Implement Smart UX Throughout API Design & Versioning

Developers are always looking for the perfect light and holistic API design, one that will be durable enough to stand the test of time. Consistently, versioning is often first on their minds, but API UX recommends holding out as long as you can.

To implement successful versioning, one needs to consider consistency, proper documentation, hypermedia linkage, deprecating v1s, communicating to the developer community, new bug-fixing, and more. To avoid the complexity of versioning, deploying parallel APIs on different URIs in v1 can make for more seamless versioning. 

In general, more time allows for more perspective on how your API is being used. Resources for REST development should complement what is found to be the community's needs. This means avoiding RPC-style design and embracing CRUD principles whenever possible. CRUD is superior as it allows for history query and sub-resources. Lastly, API resources shouldn’t be too granular with dissemination, but they shouldn’t be to bulky in assemblage. Find a balanced dissemination strategy that will match system performance and keep a smooth API running. 


Original Article

How to design APIs that last

Bill Doerrfeld I am a consultant that specializes in API economy research & content creation for developer-centric programs. I study Application Programming Interfaces (APIs) and related tech and develop content [eBooks, blogs, whitepapers, graphic design] paired with high-impact publishing strategies. I live and work in Seattle, and spend most of my time as Editor in Chief for Nordic APIs, a blog and knowledge center for API providers. For a time I was a Directory Manager & Associate Editor at ProgrammableWeb, and still add new APIs to the directory every now and then. Let's connect on Twitter at @DoerrfeldBill, or follow me on LinkedIn.