A new and essentially non-commercial software application developer service called API Commons has been created this month with the intention of providing programmers with a means of engaging in copyright-free sharing of API specifications, interfaces, and data models. API Commons will also promote community-centric collaborative design of API specifications as part of its core remit.
This development could herald a new era for API interchange and exchange, an area that has been subject to difficulties due to the fact that many APIs work to do comparable or related and associated jobs so copyright issues have been thrown up — as in the case of Oracle vs Google and the firm's API patent dispute.
As Ben Kepes notes on Forbes, "Many APIs provide similar or related functionality but use slightly different interface patterns, conventions in data models, or otherwise differ in ways often not important for delivery of the API's functionality. This requires fresh code implementations for each and every new API by consumers. Reuse of existing API Interface specifications and data models is often a legal grey area since there is no clear means for organizations to signal that such specifications are copyright free and available for reuse."
Despite recent copyright victories, the reuse of API interfaces remain a legal grey area and reuse of interface patterns may result in legal risks.
API Commons is headed up by API guru and programming thought leader Kin Lane and Steven Willmott, CEO of API management vendor 3Scale. Willmot and Lane hope to eradicate concerns of this kind with their new service, which allows APIs to be hosted under a Creative Commons license on GitHub for any programmer to use. Equally, any programmer can post API materials to the service and declare them to be copyright free and reusable.
Software developers will also be able to exercise an option to fork their API development projects, which could prove interesting if and when one particular API becomes popular and/or enjoys widespread developer interest.
According to the API Commons website, "APIs are transforming the web in radical new ways and are clearly leading a great deal of innovation and value — hence rapid growth of the number of APIs is a very desirable thing. This rapid growth, however, brings potentially huge costs — namely the need to create client (and server) code for potentially hundreds of thousands or millions of unique, slightly different APIs. While there are some solutions to help reduce this cost (automated code generation, or more flexible intelligent client code), it's unlikely to make much of a dent in the overall problem in the short and mid term."
The group sets out its desire for wanting to put APIs "in the commons" on the basis of the following points:
- To make it explicit when an API in whole or part could be reused
- Build up a valuable set of reusable API interface resources over time
- The most popular of which may in turn encourage shared development of shared client (or server) code
- Remove legal risk from API Interface design reuse