Web-based REST and Hypermedia services are becoming more common every day, but very few client libraries take advantage of these powerful API features—mostly because the techniques and patterns needed to create successful hypermedia clients have been ignored. Yet, when done right, hypermedia-based client applications exhibit more stability and flexibility than typical one-off custom client code. This practical book takes you on a journey from custom bespoke implementations to powerful general-purpose client applications and, along the way, shows how you can harness many of the basic principles that underpin the Web. Along with a focus on applications designed for human use, this book also includes extensive examples of machine-to-machine hypermedia clients of various kinds from simple link bots to reliable web agents that can recognize and act on key metadata supplied by hypermedia APIs.