Enterprise architect's guide to API best practices and trends
A comprehensive collection of articles, videos and more, hand-picked by our editors
Application development in the upcoming year will be less about delivering tangible software products to clients, and more about delivering high quality, integration APIs to users and developers. But why is the trend in 2014 and beyond to focus so much on application program interfaces (APIs) instead of simply focussing on deliverable, distributable and downloadable software? According to Gartner analyst Paolo Malinverno, there are three main factors that will drive the impending surge in interest for APIs:
By submitting your personal information, you agree that TechTarget and its partners may contact you regarding relevant content, products and special offers.
- It's important to ensure APIs can be used by someone outside the organization. A primary purpose of today's APIs is connection with other systems both B2B and B2C.
- Many of these APIs are used over the web, which is another area where SOA is the norm.
- Mobile applications use APIs. Mobile is taking over the world. Enough said.
In fact, the modular, service oriented nature of today's development arena has created a new focus on underlying functionality. Surface appearances and big picture thinking are giving way to a granular view of what really drives revenue in today's data-rich age. Malinverno says development priorities are shifting dramatically, but they are still driven by the almighty dollar. "Now people think that APIs on the web are as important as websites. They allow external companies to see information that you want to give to them - and eventually you want to sell to them."
Pitfalls of API development and release
As Paolo rightly points out, we're currently experiencing the second wave of APIs. Initially, enterprises were developing lots of applications internally using SOA but doing so in a way that pretty much guaranteed they wouldn't be reused. You shouldn't make the same mistake with today's APIs.
- Only expose those APIs that you know people are looking for and will use. Don't just throw things out there hoping someone will latch onto them.
- Expose APIs in an orderly fashion, knowing who is going to use them and for what purpose.
- Have a proper process in place to authenticate the requests, logging the frequency of calls, and who is making them.
- Pay attention to security and identity management – especially with mobile. Ensure the person using the device is entitled to see information and that the device itself is well authenticated.
Above all, don't give away information for which you should be charging.
APIs on the web are as important as websites. They allow external companies to see information that you want to give to them - and eventually you want to sell to them.
Gartner analyst Paolo Malinverno
Defining the API is critical
What makes an API development endeavor successful? Not surprisingly, it's all about knowing what you want to do before you start. Malinverno notes that the best projects he typically sees are those in which two government agencies need to share data. The parameters of the project are easy to define since each party knows what info the other should have. If they are clever, they can even have the same API return a different set of data depending on the clearance level of whoever is calling. Commercially available APIs used for business tend to be dealing with more complex situations. But the more definition you can have in the design stage, the better.
What's in the future of API development?
Here's Paulo's real shocker for all the enterprise app developers out there: "Going forward, IT departments will worry less about applications and more about APIs created to support applications developed by others." Interfaces and platforms are multiplying. Even cars are coming along with a reasonable amount of computing power on them. That's just too much variety to handle.
Plus, the new generation of workers will not put up with apps that are sub-optimal for their work. They will find a way around this, and APIs will give them that way out. In fact, Malinverno foresees a time when the everyday employee will simply create apps for themselves. App development is getting to be so simple and so modular that a monkey will eventually be able do it. Fortunately, it will still take some pretty smart cookies to develop the APIs that make these apps work.
Is your organizations exposing your applications through external APIs? Let us know.