Book Image

Designing API-First Enterprise Architectures on Azure

By : Subhajit Chatterjee
Book Image

Designing API-First Enterprise Architectures on Azure

By: Subhajit Chatterjee

Overview of this book

API-centric architectures are foundational to delivering omnichannel experiences for an enterprise. With this book, developers will learn techniques to design loosely coupled, cloud-based, business-tier interfaces that can be consumed by a variety of client applications. Using real-world examples and case studies, the book helps you get to grips with the cloudbased design and implementation of reliable and resilient API-centric solutions. Starting with the evolution of enterprise applications, you'll learn how API-based integration architectures drive digital transformation. You'll then learn about the important principles and practices that apply to cloud-based API architectures and advance to exploring the different architecture styles and their implementation in Azure. This book is written from a practitioner's point of view, so you'll discover ideas and practices that have worked successfully in various customer scenarios. By the end of this book, you'll be able to architect, design, deploy, and monetize your API solutions in the Azure cloud while implementing best practices and industry standards.
Table of Contents (14 chapters)
Section 1: API-Led Architecture in the Digital Economy
Section 2: Build Reliable API-Centric Solutions
Section 3: Deliver Business Value for a Modern Enterprise

Understanding API design considerations

The API design process involves analyzing the business and technical requirements against a set of predefined criteria or constraints, and then arriving at an optimal design to achieve the expected results. These criteria, also known as design considerations, will be covered in the following subsections.


Coupling refers to the degree of interdependency between the components or modules of a software system. A good design is one that has low coupling. In the context of API-led architectures, there will be multiple APIs and underlying subsystems involved in the solution. Low coupling will allow you to change or upgrade the components independently, without this impacting any other components in the system.

By focusing on building the components as atomic, self-contained parts, you can get optimal flexibility and improve your reusability. You can change or replace the components quite easily.

You can read more about the...