1

I'm currently planning on implementing API for HgLab and the obvious role model for me here is GitHub.

My API obviously won't be an exact copy due to inherent differences between Mercurial and Git and due to different tasks GitHub and HgLab solve, but similarity will be quite clear.

How ethical of me will it be to copy their API to a significant extent? Is the API design copyrightable?

Anton Gogolev
  • 1,447
  • 2
  • 15
  • 23
  • Inspiration is commonplace. And an API that is designed to achieve almost the same effect and chooses the same style (for example a REST API) *will* look similar, even if it's *not* copied. That's all I'm saying. – Joachim Sauer Oct 17 '12 at 14:51
  • The question of whether an API can be copyrighted has shown up on the US news a few times lately. There are at least some US lawyers who are willing to argue that APIs can be copyrighted. Whether those lawyers are *right* is a more difficult question. – Brian Oct 17 '12 at 14:53
  • @Brian - Oracle found that the code can be copyrighted but the interface itself cannot be. – Ramhound Oct 17 '12 at 19:17

2 Answers2

3

I am not a lawyer. If you are genuinely worried about this you should consult one.

It is typically considered fine to duplicate an API as long as you don't look at the implementation at all. For instance, this is what the Wine project does with the Win32 API. In Oracle's recent court case against Google, one of Oracle's arguments was that Google was not allowed to copy Oracle's APIs for Java, however, the court did not agree with this argument.

Dirk Holsopple
  • 2,701
  • 18
  • 16
  • Actually they did agree with Google, Google was only found guility of copying 9 lines of code, their blackbox copying was found to be legit. – Ramhound Oct 17 '12 at 19:18
  • @Ramhound that's what my answer says. The court disagreed with Oracle's argument that Google wasn't allowed to copy the API. – Dirk Holsopple Oct 17 '12 at 19:25
2

As of Nov 2019, the Oracle vs. Google case has reached the Supreme Court. Oracle is in the driver's seat, having won at Federal appeals court level. In reading through various articles, it looks like the core issue is whether you exactly copy the API in order to offer a competing product, i.e. one that users can swap out with your competitor and not have to change anything. If you're not doing that you should be Ok.

Sun made Java open source many years ago, but the Java use license prevents redistribution (as noted here). Unfortunately for Google, that's what they do: redistribute in order to compete with the copyright owner, without paying. IMHO, they will not be able to convince 5 conservative justices that this is ok.

  • Being able to do that is exactly why we have API's. This is like England saying you have to pay us if you use English. – candied_orange Jan 25 '20 at 03:26
  • @candied_orange no it's not the same. APIs are narrowly defined commands and feedback, not language. It would be like England saying you have to pay us if you copy our military command & control structure, then use it to fight with us – Jeff Brower Jan 26 '20 at 05:49
  • Yeah that wouldn't be entitled to copyright either. That's a process. You'd need a patent. – candied_orange Jan 26 '20 at 16:43
  • "In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work." - [Title 17 U.S. Code § 102](https://www.law.cornell.edu/uscode/text/17/102#b) – candied_orange Jan 26 '20 at 19:36
  • @candied_orange Your argument that APIs are a process helps defeat your own point. I don't think they are, but I do think there is an art to well organized, efficient, and easy to use APIs. [Google is now trying to overturn the APIs-can-be-copyrighted situation](https://arstechnica.com/tech-policy/2019/01/google-asks-supreme-court-to-overrule-disastrous-ruling-on-api-copyrights) but I don't think a conservative court will go for it. They will consider the unfair competition issue first and foremost – Jeff Brower Jan 27 '20 at 21:16
  • Helps defeat my point how? Which point are you thinking of? – candied_orange Jan 27 '20 at 21:26
  • I posted the wrong link in my last comment. Here is the correct one, with [recent status on the Google vs. Oracle supreme court case](https://www.zdnet.com/article/the-supreme-court-will-decide-software-developments-future-in-google-v-oracle) – Jeff Brower Jan 29 '20 at 17:38