Why not just use creative commons?

Creative commons is a direct inspiration for API commons - and indeed people are encouraged to declare materials Creative Commons where possible. In the long run if API commons grows and there is interest we would certainly seek to link or even transition API Commons to Creative Commons.

However, in the short term having a separate name and process allows us to address the specific challenges of copyrighted interface code which is providing for explicit:

  • Listing of this type of content.
  • Tracking versioning.
  • Tracking usage and adoption.
  • Tracking contributions in a explicit way.
  • Supporting the conversation on how to best componentise and use such interfaces.

Don't Hypermedia APIs solve this problem?

One of the goals of Hypermedia APIs is to reduce the number of bespoke "hard wired" clients that need to be written for static APIs. They do this by giving clients the capability to "explore" changes in an API at execution time. This is valuable and may indeed reduce the amount of client code which needs to be written in the long run. However in the short and mid term:

  • Hypermedia APIs are a small fraction of all APIs being published.
  • They too suffer from the legal grey area of whether or not re-use is permitted - in other words, copyright may be enforced at any time.
  • Some of the APIs shared in the commons may indeed be hypermedia APIs - being in the commons will hopefully permit wider take up, evolution, creation of client code etc.

How is this different to Schema.org?

Schema.org is an awesome project and resource and while there is a small amount of potential overlap API Commons has a different purpose. Schema.org mostly focuses primarily on micro-formats embedded in human readable web-pages - API Commons is for any type of API Interface definition. Also, Schema.org is a curated resource (and this is the correct choice since webmasters and crawlers rely on it to be consistent), API Commons however is intentionally "bottom up" such that anybody anywhere can declare something to be in the commons without a central authority.

Why are you using Creative Commons and Not Open Source?

This is something for ongoing discussion and could be changed. However for the moment it seems clear that API definitions could in some cases fall under copyright - hence the Creative Commons choice.

Which Creative Commons License are you advocating for and supporting?

There are multiple Creative Commons licenses depending on what the copyright holder would like the achieve. API Commons strongly supports licensing of API interfaces using CC BY-SA or CC0.