Ninety percent of developers use external application programming interfaces, or APIs, according to SlashData and their 19th Economic Developer Survey Report. Yet there are no standard rule sets for API design, making it difficult for developers to follow best practices in building APIs and ensuring quality, and leaving API consumers without standards and tools to assess API quality. The result: security incidents, unexpected failures, and microservices that have difficulty communicating with each other and their infrastructure.
Today, Cisco is pleased to announce that we are helping developers address these problems, beginning with the release of API Insights. API Insights is an open source tool that enables developers to adopt API best practices before APIs enter production, helping to shift quality and security of APIs left. It also helps organizations evaluate, manage, and improve the quality of their existing API portfolios. API Insights has been released to open source under the Apache-2.0 license, allowing the community to alter, copy, or update the source code.
API Insights includes linters that check for doc completeness, adherence to REST guidelines, API security, and inclusive language. These linters are based on a group of OpenAPI rulesets that programmatically check the conformance of APIs against industry guidelines. The linters are based on open standards and can be modified, or built, to match your organization’s.
API Insights brings this intelligence into already-established workflows via the IDE and CI/CD pipeline. Through an extension for VS Code, API Insights provides information to developers as they work. Developers can quickly see if their APIs meet their organization’s quality and security standards. They can also easily see version history, changelogs, backward compatibility, breaking changes between versions, and more.
Later in the software development lifecycle, API Insights integrates with CI/CD pipelines to provide API information at the time of deployment. API Insights allows teams to set safeguards that prevent APIs from being deployed if they don’t meet organizational standards.
Using the IDE and the CI/CD features of API Insights allows for an enhanced developer experience throughout the software development lifecycle. By establishing a common language for developers and DevSecOps to address weaknesses in APIs, API Insights fosters more effective collaboration between teams – breaking down traditional silos, which often slow productivity and time to resolution when issues occur.
Using API Insights to strengthen API quality at Cisco
API Insights began as an internal tool to help Cisco understand and improve our own API quality. As part of our commitment to an API-first approach, we have been evaluating our own API services. This has been a slow and manual process, and, we realized, one that can and must be automated. In response, we began building the tool that became API Insights.
By releasing API Insights to the community, we acknowledge that API best practices, ensuring quality of APIs, and API management represent challenges that are not unique to Cisco. We invite developers to use API Insights to improve their own API quality, and to contribute to the project in an effort to improve the reliability and performance of APIs industry-wide. We’re excited to see how the developer community will contribute to advance the API Insights project on GitHub.
Meraki is just one of the Cisco business units that has been using API Insights to evaluate and strengthen their APIs.
The API Insights platform enables Cisco business units to align on a consistent set of guidelines and predictability. We have identified a number of addressable issues through the use of API Insights which has helped us fix APIs while we work toward our strategy of open API version 3.
—Cory Guynn, Product Management Architect, Meraki
By leveraging API Insights in their efforts to drive up the quality of their APIs, Meraki has been able to gain new visibility into this process. Ultimately, this results in a better experience for API developers and consumers.
It’s easy to get started with API Insights. Here’s how to learn more:
- Go to the API Insights site.
- Register for the API Insights webinar hosted by Senior Developer Advocate Adrienne Tacke.
- Watch a demo on YouTube.
- Get started by cloning the project from GitHub.
Once you start experimenting with API Insights, be sure to star the api-insights repo on GitHub.
We’d love to hear what you think. Ask a question or leave a comment below.
And stay connected with Cisco DevNet on social!