Synopses & Reviews
The popularity of REST in recent years has led to tremendous growth in almost-RESTful APIs that dont include many of the architectures benefits. With this practical guide, youll learn what it takes to design usable REST APIs that evolve over time. By focusing on solutions that cross a variety of domains, this book shows you how to create powerful and secure applications, using the tools designed for the worlds most successful distributed computing system: the World Wide Web.
Youll explore the concepts behind REST, learn different strategies for creating hypermedia-based APIs, and then put everything together with a step-by-step guide to designing a RESTful Web API.
- Examine API design strategies, including the collection pattern and pure hypermedia
- Understand how hypermedia ties representations together into a coherent API
- Discover how XMDP and ALPS profile formats can help you meet the Web API "semantic challenge"
- Learn close to two-dozen standardized hypermedia data formats
- Apply best practices for using HTTP in API implementations
- Create Web APIs with the JSON-LD standard and other the Linked Data approaches
- Understand the CoAP protocol for using REST in embedded systems
RESTful APIs make programming easy for users, but it can be tricky to map traditional APIs to REST expectations. While REST simplifies user expectations, getting the flow and granularity of data right remains a challenge. REST's popularity has led to tremendous growth in "almost REST" APIs, and grown demand for projects that evolve toward the hypermedia possibilities REST opens for data on the Web.
This book shows readers how to get APIs as close as possible to optimum usability, focusing on solutions to common problems that cross a variety of domains. By combining the tools and expectations that the Web has already provided with complex data structures, developers will be able to create secure and powerful applications their customers will be happy to use.
About the Author
An internationally known author and lecturer, Mike Amundsen travels throughout the United States and Europe consulting and speaking on a wide range of topics including distributed network architecture, Web application development, Cloud computing, and other subjects. His recent work focuses on the role hypermedia plays in creating and maintaining applications that can successfully evolve over time. He has more than a dozen books to his credit and recently contributed to the book "RESTful Web Services Cookbook" (by Subbu Allamaraju). When he is not working, Mike enjoys spending time with his family in Kentucky, USA.
Sam Ruby is a prominent software developer who is a co-chair of the W3C HTML Working Group and has made significant contributions to many of the Apache Software Foundation's open source software projects. He is a Senior Technical Staff Member in the Emerging Technologies Group of IBM.
Table of Contents
Praise for RESTful Web APIsDedicationForewordIntroductionChapter 1: Surfing the WebChapter 2: A Simple APIChapter 3: Resources and RepresentationsChapter 4: HypermediaChapter 5: Domain-Specific DesignsChapter 6: The Collection PatternChapter 7: Pure-Hypermedia DesignsChapter 8: ProfilesChapter 9: The Design ProcedureChapter 10: The Hypermedia ZooChapter 11: HTTP for APIsChapter 12: Resource Description and Linked DataChapter 13: CoAP: REST for Embedded SystemsThe Status CodexThe Header CodexAn API Designers Guide to the Fielding DissertationGlossaryIndexColophon