Technology / /

Linux Foundation Sets the Stage for Easier Sharing of APIs

5 Nov 2015 10:37am, by

Building on the work of a Swagger, a popular open source framework for exposing application programming interfaces (APIs), the Linux Foundation has launched an effort to build a vendor-neutral specification for providing metadata for RESTful APIs.

Founding members for the Open API Initiative include 3Scale, Apigee, Capital One, Google, IBM, Intuit, Microsoft, PayPal, Restlet and SmartBear. Collectively they will work on the specification, to be called Open API Definition Format (OADF).

“The Open API Initiative community will steer things in the right direction, now that the specification is in the Linux Foundation,” said Kin Lane of API Evangelist.

The initiative will extend the Swagger specification to allow both humans and computers to discover and understand the capabilities of services with a minimal amount of implementation logic. The initiative also will promote adoption and use of an open application programming interface standard.

“The API community has rallied around Swagger as the de facto standard for describing and sharing APIs. Independent, open governance under the Linux Foundation is the necessary next step,” said Ed Anuff, senior vice president of product strategy at Apigee, in the announcement.

SmartBear recently acquired the Swagger API open source project from Reverb Technologies, previously known as Wordnik. It created Swagger for its own use in 2010, then gave the technology away under an open source license a year later.

Downloads of Swagger and its tools have tripled in the past year, making it one of the most popular open source frameworks for defining and creating RESTful APIs.

Swagger’s goal has been to define a standard, language-agnostic interface to REST (Restful State Transfer) APIs that allows both humans and computers to discover and understand the capabilities of a service without access to source code, documentation, or through network traffic inspection.

Steve Willmott, founder of 3Scale, in an interview with The New Stack a year ago, said Swagger is becoming “the default way to describe your REST API.” In that conversation, Mike Amundsen of Layer 7 said its value lies in being really clear for providers and consumers.

Customers are interested in code generation, governance, documentation and tracking things over time, and Swagger offers some of the best opportunities for that, according to Willmott.

Swagger was chosen for the project because of its popularity, according to Angel Diaz, vice president of cloud architecture and technology at IBM.

“What we’ve been doing is working with colleagues in the industry – the folks at SmartBear, the Swagger community, a bunch of other partners – and saying, ‘Hey, what we really need to do is take the way we define APIs, the way you bind them to programming languages, the way they’re discovered, etc., and try to grow that ecosystem even more and evolve the specification,’” he said.

The open governance model for the Open API Initiative includes a Technical Developer Committee (TDC) that will maintain and evolve the specification, as well as engage users to provide feedback that will inform development.

With the 2.0 specification, Swagger grew beyond just a description format and has expanded beyond the JavaScript Swagger-node project to Java and Python servers. Now, client and server teams can iterate on API design in parallel with the server-side API implementation, according to SmartBear.

There has been an array of sometimes-competing API specifications over the years, including WADL (Web Application Description Language), a machine-readable XML description of HTTP-based web applications, and WSDL (Web Services Description Language) commonly used to describe SOAP web services. More recently,  RAML (RESTful API Modeling Language), which natively describes APIs using YAML, has been gaining traction. RAML is a human-readable data format while Swagger natively describes APIs using JSON.

This effort shares a common vision with the RAML group, which is dedicated to helping the current API ecosystem and building an open, simple and succinct specification for describing APIs, according to Uri Sarid, chief technology officer of MuleSoft.

“While it looks like the initiative starts with Swagger, the collaboration will be most successful if it envelops multiple communities, including other API specifications, languages and frameworks, to truly find the best common road for API standards,” he said.

“The industry should focus on innovating and challenging each other in a healthy way to make a meaningful difference and to create significant value for the users. This can’t happen with just one API language,” Sarid said.

RAML, he said, originally chose YAML as its underlying format and released an API designer from the start. Swagger evolved over time to add the YAML format as well as an API designer in its Swagger 2.0 to make it more appealing as an API contract spec.

“This is a sign of constructive competition where RAML and Swagger continue to challenge each other, ultimately benefiting the entire community,” he said.

He also pointed to Docker and CoreOS helping to create the Open Container Initiative as an example of rival companies working toward the common good.

This is the latest of a growing number of  collaborative projects that the Linux Foundation has taken on. This year, the organization also launched the Open Container Initiative, the Node.js Foundation, and the Cloud Native Computing Foundation. Three months ago it announced Open Mainframe Project, IO Visor Project and Kinetic Open Storage Project.

CoreOS, Docker, IBM are sponsors of The New Stack.

Feature Image: “API calls” by Tsahi Levent-Levi, licensed under CC BY-SA 2.0.


A digest of the week’s most important stories & analyses.

View / Add Comments