Development teams are under increasing pressure to develop more software, and to deploy it faster. There are plenty of things that are contributing to helping them achieve this goal and to become more agile, and one of those things is the use of APIs.
An API is a set of defined methods for how components communicate with each other. APIs can help shorten the development lifecycle, explained John Armenia, product director of self-hosted services tools at Accusoft, a document management company.
APIs have exploded over the past decade, and that growth can be attributed to being mostly a function of the growth of microservices, said David Codelli, director of product marketing at Red Hat. “One of the things that came out of this microservices revolution is the idea that teams can move more quickly if they cut dependencies to other projects.”
Microservices teams started refraining from sharing databases and not having dependencies when transferring files around. However, integration is still a dominant requirement so they had to figure out a way to share data, and the API movement grew out of that, Codelli believes.
“People decided that hey, we have these open standards for sharing information and we have these management products that can allow us to not only enforce our governance, but enforce our security and enforce our organization policies,” said Codelli. “But they also provide a mechanism for socializing and sharing the APIs in an organization. And that’s really where API management products grew out of.”
Like in any aspect of software development, it’s important to have a set of best practices that your organization and development team can follow. According to Randy Heffner, vice president and industry analyst at Forrester, there are two major best practices that organizations should follow. The first is to have an API taxonomy. The key thing that organizations should understand here is that not all APIs are alike; some are more important to an enterprise’s API strategy than others.
The other major best practice is API portfolio management, which is the notion that you should have some idea of the vision that your organization is working towards. Rather than letting development teams create whatever APIs they want, they should develop APIs in such a way that at the end they wind up with a coherent set of APIs that represent a business domain, Heffner explained.
“You have to evolve your set of APIs incrementally,” said Heffner. “The only way that you wind up with something coherent that you are doing piecemeal is to, as Stephen Covey long ago smartly said, you have to begin with the end in mind in some way.”
Those are the two major necessities that all organizations should probably adhere to, but Heffner notes that some best practices are dependent on the organization itself. Organizations that are more mature will tend to have different practices in place than those starting off.
It’s important for organizations to know that APIs generally do not achieve value individually. When talking about the bigger picture of APIs, an individual API may have some value, but take for an example a scenario where an organization develops 10 mobile apps because they see 10 mobile app opportunities. Each of those apps would be independent. Once you develop 10 different APIs, however, there are relationships between them that makes the organization’s ability to use them more nuanced and tricky than just using 10 different mobile apps, Heffner explained.
What this means for APIs is that they have a portfolio dimension to achieving value. The portfolio value may be that they can be used across a variety of different business contexts, lines of businesses, or scenarios.
Sometimes organizations need to step back the maturity and understand that APIs are a portfolio value generator, that they derive value as a group, he explained. “For an organization often there just isn’t that kind of maturity and discipline,” Heffner said. “Sometimes that’s easier to achieve in a smaller organization where you can have better governance.”
No matter the size of the organization that governance needs to be a collaborative effort. This can take on a variety of different forms and is going to be specific to the organization, Heffner explained.
One of the major trends that Heffner is seeing in the industry is the use of API management solutions. API management solutions typically have ways of doing security enforcement and some way to ensure that the APIs are in compliance with the organization’s policies, Red Hat’s Codelli explained. But a good API management solution should also have a social aspect, some sort of portal that developers can access to learn more about the APIs. Developers, both internal and external to the organization, can use those features to do things such as share fragment of code or ask questions to learn and make them more effective developers, he said.
Looking towards the future, Forrester’s Heffner believes that organizations need to think beyond REST APIs being the way that organizations integrate between themselves. “There’s a lot of architecture work to be sorted out in how APIs and microservices interact.”
This impacts how organizations will need to think about both microservice platforms and API management solutions, Heffner said. He also believes that API management solutions will soon need to be able to integrate more natively for policy enforcement rather than always using their own gateways.
In the future, Red Hat’s Codelli saw three things as being crucial. First, OpenAPI, which is a specification for REST APIs, will become a necessity.
He also believes that the industry is moving to a place where organizations will need to target the hybrid cloud when implementing APIs and API management layers. “You have to be able to deploy the services necessary on-prem and in any combination of the two at the implementation level and the delivery level. and even policy management.” As more and more organizations migrate to a cloud or hybrid cloud architecture, this will become more important.
Another thing he believes we will see a need for in the future is a proper DevOps platform. It will become important to be able to get API management information, configuration information, and provisional information in DevOps terms.
Use APIs to drive business revenues in indirect ways
Heffner notes that 98 percent to 99 percent of the times he hears people use the word monetization in relation to APIs, they typically mean charging for APIs. “But there are many, many indirect ways to make money from APIs and so monetizing APIs should be reserved for the bigger concept of how APIs will improve our business’s ability to make money,” said Heffner.
While Accusoft is first and foremost a document management company, the company is a great example of the power of APIs. By developing APIs, Accusoft has strengthened its document management portfolio. Its APIs enable Accusoft’s customers to easily integrate the company’s PrizmDoc solution into their own applications. PrizmDoc enables developers to add document viewing and document conversion functionality into their web applications, Accusoft’s website states.
Once the customer has that integration in place, they can start thinking about customization and being able to do more things with the product.
Accusoft notes that their documentation is robust and their support team is made up of engineers who have actually worked on the product. Those two components are also important when monetizing APIs, whether directly or indirectly. Documentation enables developers to be self-sufficient, but customer support provides experts to work with if needed.
The integration that APIs enable have allowed Accusoft to provide more value to their customers, and turn that value into business revenue. This is just one example of why organizations should develop an API strategy.
The indirect revenue from APIs can come from improving processes or making customers happier, thus more likely to buy from a company in the future, Heffner said. Even if a business is not profiting directly from the sale of an API, they are monetizing their APIs in this indirect way.