Chapter 5. Extending APIs
Your business is unique, and few APIs will offer the exact functionality required by every client. Whether provided by a third-party software vendor, a systems integrator, or an in-house team, you’ll often have to extend the APIs you consume. Common extensions in the commerce space include:
-
Sending notifications when an event has occurred, like sending an email when an order has been shipped
-
Capturing additional properties on resources, like capturing a customer’s shoe size at registration
-
Validating data, like checking user-submitted data for SQL injection attacks
-
Performing real-time data checks, like making sure inventory is available during checkout
-
Adjusting the behavior of the API, like changing how prices are calculated
In this chapter, I’ll explain the three different approaches to extending APIs, highlighting which approach is best for which type of extensions.
Extending Traditional Enterprise Commerce Platforms
If you were consuming a legacy commerce platform, you’d essentially be getting two things:
-
A framework
-
A bunch of libraries
The framework, platform, or whatever you want to call it often includes some type of extensibility mechanism, allowing you to plug your custom code inside the framework. This is often implemented with IoC.
Libraries are immutable, precompiled pieces of functionality, like JAR files and NPM packages. Libraries are similar to APIs, with the only difference being how the functionality is consumed. ...
Get APIs for Modern Commerce now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.