An application programming interface (API) defines and manages the interaction between multiple applications or platforms. The term API encompasses both software running on a server and the programming code necessary to implement that software.
APIs have been around for a long time, but they’ve become more important with the rise of big data. According to a 2019 report by KBV Research, the API management market will experience a compounded annual growth rate of 28% between 2018 and 2024.
What is API management?
Once upon a time APIs were coded manually, but today APIs are typically developed using API management software. API management is the process of creating and publishing APIs, enforcing their usage policies, controlling access, nurturing the developer community, collecting and analyzing usage statistics, and reporting on performance.
API management software is worth investing in because of the value APIs generate. APIs open up otherwise closed platforms and make it easier for companies to share their data with partner organizations. They provide external developers with a foot in the door that can lead to added revenue for a company that creates APIs as those other organizations develop ways to connect with the company’s platforms.
API management platform
In practice, an API management platform has several components:
- Developer tools — This is the interface that developers use to define APIs, test and debug them, generate documentation, govern API usage through access and usage policies, and deploy APIs into production, staging, and quality assurance environments. Often these developer tools include a visual development environment that helps developers generate code quickly and lets multiple developers collaborate on a project.
A robust API management platform also provides a developer portal to help educate and enable third-party developers. A developer portal might offer registration and onboarding capabilities that give developers access to resources, along with documentation, including examples showing how to work with the organization’s APIs. It might also support a community where developers can ask questions of peers.
- Gateway — To handle the data exchange, an API management platform employs a server to authorize requests, pass them to back-end services, and pass responses back to the requester. It provides loose coupling between the client applications and the organization’s resources, which never directly interact. The gateway is in charge of maximizing API efficiency and minimizing downtime. In the process the gateway can collecting auditing and analytics data.
Part of the job of an API platform is to make data compatible between two systems that weren’t designed to work together. To do that, the gateway needs to handle things like schema validation, and have the ability to transform data from source to back end and vice versa so that the data is transmitted in a format that each platform can use.
- Reporting and analytics — Any organization running an API management platform needs to know how the platform is running. An API management tool should provide a dashboard to monitor and report on API usage and load, including statistics about overall hits, completed transactions, number of data objects returned, amount of compute time and other internal resources consumed, and volume of data transferred. With collected performance data, the platform may provide reports so that administrators can analyze historical data to show usage trends. Reporting data can also help the API provider optimize API performance.
The platform must also generate alerts if it encounters error conditions, such as load too high or hardware or network failure. The alerting function may send out alerts directly or pass them to a network management application.
API management pricing
Pricing for API management tools varies according to the scope of what they’re designed to accomplish. Some open source tools are free, while licenses for on-premises commercial tools can cost tens or hundreds of thousands of dollars. The big commercial API management vendors generally don’t post pricing information on their websites. Pricing is often negotiated on a per-customer basis, depending on the customer’s needs and the features they plan to use.
Cloud-based API management software may cost several hundred dollars per month. Many cloud providers offer a free trial period.
API management tools
More than 150 vendors offer commercial and open source API management tools. Commercial tools generally serve the needs of both enterprises and small and medium-sized businesses. They tend to be mature products that the bugs have been worked out of, and that have been optimized for top performance. Often they have enterprise features, such as support for high availability and fault tolerance. Commercial tool vendors generally guarantee the compatibility of new versions of the software with older versions.
Commercial API management tools include visual development environments, which speed the development of new APIs to drive faster time to value.
Open source API management
Though commercial API management platforms cover a lot of ground, open source API management software can be useful too, especially for smaller projects. You can find lists of open source API management tools through web search. Open source tools tend to be smaller in scope — they likely do less than proprietary tools — but they provide a no-cost way to begin developing APIs without requiring the same level of expenditure as a commercial product.
Each open source API management tool typically has a community of developers who’ve worked with it and can help answer questions, which is a plus. Conversely, though, most open source tools lack commercial support, so you have to rely on the community.
Some commercial vendors offer entry-level open source community editions as a way for developers to get a feel for the software before signing a contract for the vendor’s high-end proprietary API management tools. This “freemium” model is common among many kinds of open source software.
By the way, don’t confuse open source with OpenAPI. The OpenAPI Specification defines standards for machine-readable interface files for describing, producing, consuming, and visualizing RESTful web services. (Read more about RESTful APIs in our post What is an API?) OpenAPI is an evolution of what used to be known as the Swagger API. Any API management platform you work with should comply with the specification so that it can offer the best interoperability with other platforms.
Talend API Services
Many organizations see the value of offering APIs to let outside developers interact with their platforms, but designing and documenting APIs can be a major project that takes months of develop time (and often calendar time as well) and costs tens of thousands of dollars.
Rather than start from scratch, businesses can use Talend API Services to do the heavy lifting. It lets developers collaborate to create and test new APIs with visual design tools. We’d be happy to give you a demo and show you what Talend API Services can do for you.