This e-book examines the API Facade design pattern – what it is, why it's important, and best practices
for crafting one.
As the API and apps economy continues to evolve, a design problem arises for API designers when
internal systems are too complex to expose directly to app developers. In fact, the problem is not
creating an API for just one big internal system but creating an API for an array of complementary
systems that are all needed to make an API valuable. The goal of an API Facade Pattern is to articulate
those internal systems and make them useful and consumable by app developers.This simplification results
in a lowered barrier to entry for developers and ultimately a
more easily adopted API.
The API facade provides a buffer or virtual layer between the interface on top and the API
implementation on the bottom. Read about the basic steps and key technology considerations to implement an
API facade including an examination of common API design scenarios including versioning, caching, transformation, authorization, and more.
Description:
This e-book examines the API Facade design pattern – what it is, why it's important, and best practices for crafting one. As the API and apps economy continues to evolve, a design problem arises for API designers when internal systems are too complex to expose directly to app developers. In fact, the problem is not creating an API for just one big internal system but creating an API for an array of complementary systems that are all needed to make an API valuable. The goal of an API Facade Pattern is to articulate those internal systems and make them useful and consumable by app developers.This simplification results in a lowered barrier to entry for developers and ultimately a more easily adopted API. The API facade provides a buffer or virtual layer between the interface on top and the API implementation on the bottom. Read about the basic steps and key technology considerations to implement an API facade including an examination of common API design scenarios including versioning, caching, transformation, authorization, and more.