The Application Programming Interface (API) has been around since the 1960s, but in today’s world of heterogeneous environments and distributed systems it’s become indispensable. Even in networking, hard-core bastion of the command-line interface (CLI), APIs have become useful enough that commentators such as Chris Grundemann are blogging about whether the API is the new CLI for networking professionals.
The popularity of APIs, typically RESTful these days, is driven by the fact that they simplify the integration of different web-based applications, which enables innovation based on much faster and more open communication between systems. For an easy-to-understand example, take the “Skills” that are available for Amazon’s Alexa. Using the Alexa app on your phone, you can add a skill that integrates with a Nest account, after which you can control the temperature in your house via a voice command. How is that magic actually accomplished? When you ask Alexa to change the temperature, the Amazon system makes an API call to the Nest system. Because of APIs, two (or more) completely separate systems can now act as one cohesive unit.
The benefits that can come from integrating Alexa and Nest apply as well to the integration of tools for operating and securing a network. While Kentik addresses use cases across monitoring, alerting, analytics, and planning, organizations will likely always encounter specific scenarios that aren’t totally handled by any one tool or system. That’s why network operations has for years involved deployment of a mix of different commercial, open-source, and home-grown tools. This creates what we refer to as the swivel chair problem for operations personnel, who must constantly switch between various systems to troubleshoot an issue. Monitoring solutions that implement APIs help solve this problem because they enable multiple systems to work together as a unified whole.
Here at Kentik, our engineers work really hard to continually expand the functionality and data types supported by our platforms. We realize, however, that Kentik Detect alone may not cover all network use cases. So APIs have been integral to the design of our platform from the outset.
On the one hand our focus on open APIs has facilitated partnerships with complementary vendors, such as the integrations that allow our alerting system to interact seamlessly with DDoS mitigation from leading providers such as Radware and A10. On the other hand we provide a set of very powerful APIs that users can leverage to integrate our functionality and network traffic data with other systems. As part of that effort we’ve built some resources right into the product to make our APIs as easy as possible for customers to use. In the Data Explorer section of the Kentik portal, for example, the View Options menu at top right of the graph display area (see image at right) exposes the Kentik API call (as cURL) needed to return either a chart or table data, and will also show you the JSON needed to make the call.
One example of using Kentik APIs in a provider setting is to enable customer portals, which is explained in this blog post. To see the full variety of the calls that are available you can refer to our Knowledge Base, which covers both Admin APIs and the Query API. Another powerful resource for API calls is our API tester which allows the user to try out API syntax in a GUI.
Another API-based option that we’ve developed for our customers is Kentik Connect Pro, a plug-in that we worked with Grafana to develop for their popular open-source data graphing software. This allows our customers to skip a lot of the heavy lifting that would otherwise be involved in pulling in their Kentik data alongside the other data that they are already graphing.
Kentik Connect for Grafana ships with Kentik Data Source, a database connector that allows you to read and visualize data directly from our backend, the Kentik Data Engine (KDE). Within the Grafana environment, you can specify the parameters of the traffic that you want Kentik Connect to display:
Kentik Connect also allows you to edit the configuration of devices you have registered in Kentik Detect. As with any Grafana dashboard, current settings can be managed and dashboards can be saved, shared, and starred. To enable integration between Kentik Connect in Grafana and your Kentik Detect portal, you will need your email address and Kentik API token, which can be found in the portal’s User Details dialog (go to Admin » Users and click on your row in the User List).
The examples above represent just a few of the ways to use the Kentik APIs. As you can see, using these APIs to integrate with other systems can be a very powerful mechanism to leverage both the capabilities of the Kentik platform and your Kentik-stored traffic data (flow records, SNMP, GeoIP, BGP, etc.). If you’re already a Kentik Detect user and would like some help implementing these APIs, get in touch with the Kentik support team for assistance. If you’re not yet a user and would like to see what these powerful integration capabilities can do for you, contact us today to request a demo or start a free trial.