Posted on 07-07-2014
I was exchanging emails with someone regarding API design considerations at their large institutions today, and where they could find healthy patterns for API designs within their industry. As with any API provider, they were concerned with emulating the best API design patterns they could, and evolve the design of their own services. They put it like this:
..."our APIs largely expose our internal mess and legacy design rather than presenting a well thought out, consistent view of the important resources and operations"...
We all want to deploy the best designed API that we possibly can, but with a lack of meaningful API definition formats (until recently), and nowhere to go and search or browse for common API design patterns (something 3Scale and API Evangelist want to fix with API Commons, APIs.json, and APIs.io), it can be difficult to know exactly what is good API design for our respective industries.
It would be nice, if all of the APIs we designed were brand new, perfectly architected to follow best of breed REST patterns, and we had all the time in the world to research and design. In reality, many of the APIs we design will ony act as a facade for some legacy beast of a system, that won't go away anytime soon. We are working to get more places like API Commons and APIs.io available to find the best API design patterns, and you should always look at as many of the APIs in your industry as you can, when designing your APIs, but most importantly, don't be concerned with a perfect interface--right out of the gate.
In reality, we have to just walk a line between the perfect API design, and the ugly legacy IT worlds, we are building these API facades to hide. The sooner we get the first version of the facade up, we can then iterate, and turn our APIs into the mirror image of the designs we ultimately desire—until then it is just smoke and mirrors, smoke and mirrors.
comments powered by Disqus
Winning in the API Economy
|Download as PDF|
Latest Blog Posts
- Top 5 Most Popular Themes On API Evangelist In 2014
- Query Parameter Determining Which Fields Are Queried For API Call
- Now Our Development Environment Is Now Containerized And Scalable Like Our Production Environment
- Guest Post: Let Our Sponsors Blow A Little Smoke Up Your Ass
- API Discovery Continues Its Move Into The IDE With Eclipse Che
- Evolving Beyond Just Resources Towards A More Experience Based API Design
- Another View of The API vs. Data Download Model
- If You Have A Publicly Available Mobile App You Have a Public API
- Reducing The API Stack Down From 830 to 690
- Gathering My Thoughts Around Common Patterns For Base URLs Across Nearly 700 APIs