13 April, 2021

Not as the Oracle Foretold - US Supreme Court Decides on Copyright Infringement in relation to APIs

APIs, or Application Programming Interfaces, are absolutely everywhere these days. APIs allow for two pieces of software to 'speak' with each other, sharing information across to allow for interactivity and interconnectivity between different software applications. While many providers share their APIs freely for implementation, there is still certain rights that attach to those APIs in the form of copyright over the code itself. Just like text in a book, code can be protected by copyright and, in many instances, is absolutely worth protection if a particular coding language becomes very popular. This has been the central focus of an epic legal battle between Oracle and Google in the US, which has spanned for nearly 10 years (discussed previously on this very blog), and the highly anticipated US Supreme Court decision has finally been handed down in early April 2021. 

The case of Google LLC v Oracle America Inc. concerned the Java SE program, which uses Oracle's Java programming language. Parts of the Java SE program's code (roughly 11,500 lines of code) was used in the development of Google's Android operating system, which formed a part of the Java SE API. Java SE is commonly used to develop programs primarily to be used on desktop and laptop computers, which also extends into the realm of smartphones. Oracle subsequently sued Google for copyright infringement over this copied code, and the matter finally ended with the Supreme Court after a long 10-year journey through the US courts. 

The Supreme Court were tasked at looking at two questions: (i) whether Java SE’s owner could copyright the portion that Google copied; and (ii) whether Google’s copying nonetheless constituted a “fair use” of that material. 

Justice Breyer, handing down the majority's judgment, first started off discussing the basic requirements for copyright protection. This means that the work has to be one of authorship, original and fixed in a tangible medium. Copyright encompasses many types of works, such as literary, musical and architectural works, but in a more unconventional manner it includes 'computer programs', which are "...a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result". In terms of limitations, copyright does not extend to "...any idea procedure, process, system, method of operation, concept, principle, or discovery". In addition to copyright protection in general, one has to consider the remit of 'fair use', which allows for the use of copyright protected works for various purposes, e.g. criticism, satire and news reporting. 

The first question, as set out above, concerned whether the provision extending copyright protection to 'computer programs' includes APIs and/or whether they are excluded as 'processes', 'systems' or 'methods of operation' from copyright protection. However, the Supreme Court skipped the copyright aspect of the matter and immediately dove into whether Google's use of the API was fair use.

Justice Breyer noted that computer programs differ from other 'literary works' in that such programs almost always serve functional purposes, which makes the application of copyright to them more difficult. He also mentioned that, in discussions to extend copyright to computer programs, it should not "...grant anyone more economic power than is necessary to achieve the incentive to create". The key is to not allow copyright to stifle innovation in the realm of computer programs. 

Justice Breyer also mentioned that fair use can be used to distinguish between expressive and functional features of computer code where those features are mixed, and allow for different programs to be more readily distinguished in the light of protection. 

Turning to actually considering whether Google's copying fell into fair use, the Supreme Court had to look at the well-established factors of fair use: (i) the nature of the copyrighted work; (ii) the purpose and character of the use; (iii) the amount and substantiality of the portion used; and (iv) market effects. 

In relation to the first factor, the Supreme Court discussed the use of APIs in general as a way for computer programs to speak to each other. APIs also comprise three different 'functional' aspects, which are various parts of code that handle different aspects of the APIs functionality. Justice Breyer highlighted that the parts are inherently functional and bound together by uncopyrightable ideas (i.e. task division and organization) and new creative expression in the form of Android's implementing code. In their view the nature of APIs diminishes the need for copyright protection over them.

In terms of the second factor, the focus is on the transformative nature of a copyright protected works use. Google sought to make new products using the API and to expand the usefulness of the Android OS - argued to be transformative and innovative around the copying of the API. The Supreme Court also noted that one has to consider both the commerciality and good faith in relation to the copying. Justice Breyer determined that, while Google's use of the API was a commercial endeavor, it doesn't mean that the use cannot be transformative. Good faith was not a consideration in the case, but Justice Breyer did highlight that the other factors on the copying of the API weight towards a finding of fair use. 

The Court then moved onto looking at the amount of the work copied. As discussed above, Google copied approximately 11,500 lines of code, which was a mere fraction of the totality of 2.8 million lines in Java SE. While the amount is important, it's the substance of what was copied that is the most important part when thinking about substantiality. Why the lines were copied was to enable Java experienced programmers to work with Android; without which this would have been very difficult. This objective for the copying was to enable the expansion of Android, not to replace Java SE, and the Court did see that this favored a finding of fair use.

Finally, the Court turned to the market effects of the copying, i.e. did it impact the market value of the protected work. Thinking of the use of the code, it was in a market sector where Sun Microsystems (Oracle's predecessor) was not well-positioned, and the primary market for Java SE was PCs and laptops. Android used in smartphones was in no way a substitute for traditional computers where Java SE was typically used. However, the code's implementation did benefit Android through attracting developers to improve the OS. The Court saw that the copying didn't impact Sun Microsystem's position in the marketplace, and issues with an impact on creativity within the development of programs like Android, weighed for a finding of fair use. 

Rounding things off, Justice Breyer discussed the application of copyright in the world of computers and the difficulties the old concept has in adapting to this new environment. In his view, copyright very much persists in computer programs (and their underlying code), but emphasized the fair use doctrine's place in the same. 

The Supreme Court ultimately concluded that Google's copying was fair use as a matter of law and therefore there was no infringement of Oracle's code.

The case is a massive milestone in the application of copyright in computer programs and code, and as the court observed, Google only took "...what was needed to allow users to put their accrued talents to work in a new and transformative program". This is curious and can open the door for others to copy code as and when needed, without licensing, if it is used to allow for innovation through the implementation of well-established technologies. Justice Thomas did indeed write a very strong dissent to the majority's verdict, which highlights the blurring of copyright in relation to code. It remains to be seen how this precedent is applied by the courts in future cases, but it could very well lead to the limits of fair use in relation to code being tested sooner than you think.