The Book: 29 Architectural Decisions and 44 API Design Patterns
EMBEDDED ENTITY and LINKED INFORMATION HOLDER kick off Chapter 7 of our book Patterns for API Design. The patterns in the book capture proven solutions to design problems commonly encountered when specifying, implementing and maintaining message-based APIs. They focus on message representations – the payloads exchanged when APIs are called. These payloads vary in their structure as API endpoints and their operations have different architectural roles and responsibilities. The chosen representation structures strongly influence the design time and runtime qualities of an API. The evolution of API specifications and their implementations has to be governed as well.
Part 1 of the book features an introduction to API fundamentals, a domain model for APIs, and a decision model identifying pattern selection questions, options, and criteria (six narratives guiding through the conceptual level of API design, with 29 recurring decisions). Part 2 presents the patterns in depth, grouping them into various themes and categories as shown in the following figure:
Click to view full-sized image
The book also applies the patterns to three cases, our fictitious Lakeside Mutual microservices scenario and two real-world projects that have been running in productions for some time. It presents an introduction to the Microservice Domain Specific Language (MDSL) in one of three appendices; the other two provide a pattern eligibility cheat sheet and an implementation of selected Lakeside Mutual APIs.