Putting the Cart Behind the Horse — API Strategy and API Design
By: Bill Oakes, CISSP, Director for Product Marketing for API Management at CA Technologies
While enterprises often talk about API Strategy and API Design as one, they are not — and like the cart, one comes before the other
We often hear API Strategy and API Design as a single topic — and while they are both an important component of the “Plan” phase in Full Lifecycle API Management, they are nonetheless two components that need to be considered separately.
A means to and end?
In the Application Economy, an API Strategy is critical to digital success. Whether it’s to provide a superior digital experience, to grow markets and revenue streams, connect employees and partners, or launching an innovative new service, successfully executing a business strategy requires the ability to launch new apps and (if applicable) to coordinate your digital presence with partners. The most efficient way to do this is through APIs — but APIs are the means to the end, but not the end itself — for more on this check out our webinar: Mastering Digital Channels Through APIs
So, before building or designing APIs you need to implement an API strategy that should address four key requirements:
1. Alignment and Usefulness:
You should know your business goals, and how APIs help achieve those goals
You should ensure that the API will have a future value
Look for gaps in your industry to exploit through APIs (alternatively, look to see if someone is disrupting your industry through APIs)
2. Engagement and Usability:
APIs should be easy for your developers to access and use
Examine your target developer’s tool needs, and ensure you can integrate with them
3. Scalability and evolvability:
APIs should adapt to the needs of the business, with a solid enterprise architecture around them
A versioning methodology needs to be in place
4. Manageability and sustainability:
It should be easy to see and control an APIs activity
Business/operational metrics should be determined
A security model should be established without needless barriers
Strategy and design go hand-in-hand
While not a complete list, API Strategy is the umbrella under which all else falls. It’s crucial to align your strategy and your architecture, in order to be successful. A great resource on this topic is here: API Strategy and Architecture eBook.
API Design, on the other hand, is specific to functions of an API. So an API Strategy dictates your overall objectives, and an API Design would use those objectives as an API is planned. Design is the bridge that moves APIs from planning (pure strategy) to the build (pure development) stage. API Design should never take place until an API Strategy is created.
API Design should provide resiliency and reliability to that API, and should make interaction easy, while ensuring that the API resolves the job it needs to do. There are three notable principles of API Design:
1. Functionality: available in the right place, at the right time, in the right form
2. Usability: the API needs to be usable (consumable) to accomplish that function
3. Experience: the developer experience, decided when setting the API Strategy, should be ideal
Following these three principles can help drive adoption of your API — the basic objective of a good API Design.
I’ve shared a brief, high level overview of why API Strategy is important, and should take place well before any API Design discussions. If you’re interested in learning more about API Strategy, I highly recommend reading API 360: Complete API Strategy Model. And you can learn more about API Design by reading A Guide to REST and API Design.
And finally, I invite you to our API Strategy and Design Live Demo and TechChat with Geoff Anderson, API Management Product Strategist here at CA. Geoff will be talking about what makes a great API Strategy, important design considerations, and demonstrating API prototyping tools and approaches.
As always, if you have any questions or want to share ideas, don’t hesitate to reach me on Twitter @BillatCA.