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. ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access