Many developers use Application Programming Interfaces (APIs) every day to interact with a multitude of services. Many developers are also all too familiar with how much overhead there can be in learning and using a new API from a new company or service, and in keeping your clients up to date with changes in the API. By being discoverable and leveraging semantic contracts, Hypermedia APIs relieve some of these headaches in a practical way!
Hypermedia brings some improvements over traditional REST architectures by transferring state back and forth between client and server. This allows for the state of the application to be determined dynamically based on the current application state, inputs, and other constraints. In addition, because it relies on semantic contracts, your APIs can be highly discoverable for new clients to explore and exercise. All without a single page of documentation!
We’re going to look at some of the advantages and disadvantages of Hypermedia APIs that we’ve come across at D2L, and discuss why Hypermedia might be right for your next project!
Ryan Mahler has been a software developer at D2L for just over two years, and has worked up and down the stack as part of the UX Design and Development team in that time. Initially focused on backends for mobile apps, he then spent some time on a QA and testing-focused team before transitioning to the team building the Daylight experience in Brightspace. Ryan has a degree in computer engineering from the University of Waterloo, 2014.