API copyrights —

The Supreme Court hears Oracle v. Google tomorrow—here’s what’s at stake

The Supreme Court could decide whether APIs can be copyrighted.

Google CEO Sundar Pichai.
Google CEO Sundar Pichai.
On Wednesday, the Supreme Court will hear oral arguments in Oracle v. Google, a landmark case that considers whether application-programming interfaces can be protected by copyright. We first published this article about the case in early 2019, when Google asked the Supreme Court to consider the case. It has been edited to reflect the fact that oral arguments are this week.

On Wednesday, the Supreme Court will hear oral arguments in one of the decade's most significant software copyright decisions: the 2018 ruling by an appeals court that Google infringed Oracle's copyrights when Google created an independent implementation of the Java programming language. More broadly, the case could decide the copyright status of application-programming interfaces, with huge implications for the software industry.

An application-programming interface is the glue that holds complex software systems together. Until 2014, it was widely assumed that no one could use copyright law to restrict APIs' use—a view that promoted software interoperability.

Then, in 2014, a court known as the Federal Circuit Appeals Court issued a bombshell ruling taking the opposite view. Oracle had sued Google, arguing that Google had violated Oracle's copyright by re-implementing APIs from the Java programming language. The case has been working its way through the courts ever since, with the Federal Circuit issuing a second controversial ruling in 2018.

"The Federal Circuit’s approach will upend the longstanding expectation of software developers that they are free to use existing software interfaces to build new computer programs," Google wrote in its 2019 petition asking the Supreme Court to hear the case.

James Grimmelmann, a copyright scholar at Cornell University and former software developer, agrees with that. "The Federal Circuit's decision threatens the continued vitality of software innovation," he told Ars in 2019.

If APIs can be restricted by copyright, then every significant computer program could have legal landmines lurking inside of it. Grimmelmann warns that API copyrights could easily give rise to API trolls: companies that acquire the copyright to old software, then sue companies that built their software using what they assumed were open standards. API copyrights could also hamper interoperability between software platforms, as companies are forced to build their software using deliberately incompatible standards to avoid legal headaches.

Software companies and digital rights groups have made these arguments to the Federal Circuit on two separate occasions—once in 2014 and again in 2018. But the Federal Circuit, known for its friendliness to patent holders and its casual attitude about following precedents, wasn't persuaded.

On Wednesday, Google's lawyers will have a chance to persuade the Supreme Court that the Federal Circuit got it wrong. The stakes are high—both for Google and Oracle in particular and for the broader software industry.

Google points to a 1990s case about spreadsheet menus

The Federal Circuit has made two major rulings in Google's legal battle with Oracle, and it has sided with Oracle both times. In the first ruling, the Federal Circuit overruled a trial decision holding that APIs couldn't be copyrighted. The case was then sent back to the trial court to decide whether Google's use of the API was allowed by fair use.

The trial court (under the same tech-savvy judge who previously ruled that APIs shouldn't be copyrighted at all) decided that Google's use was fair. Oracle appealed, and in 2018 the Federal Circuit sided with Oracle once again, deciding that Google's use wasn't fair.

A fundamental principle of copyright law is that protection of creative works does not extend to any "idea, procedure, process, system, method of operation" contained in the work. This is the reason, for example, that news organizations are free to report on each other's scoops. The text of a news article is copyrighted, but anyone is free to describe the information in a news article in their own words.

This line between an idea and its expression is particularly crucial for software. One of the most important cases here was Lotus v. Borland. In the early 1990s, Lotus sued Borland, accusing the company of ripping off the structure of the menus from the Lotus 1-2-3 spreadsheet software in Borland's own Quattro spreadsheet package.

Transition to Quattro

To help experienced Lotus 1-2-3 users make the transition to Quattro, Borland had included a Lotus Emulation Interface—a version of the software that precisely duplicated the menu structure of Lotus 1-2-3. Lotus argued that this slavish copying violated its copyrights, and the trial court agreed.

But the First Circuit Court of Appeals disagreed. In a landmark 1995 ruling, the appeals court sided with Borland, ruling that the structure of the Lotus menus was a "method of operation"—and hence outside of copyright protection.

"We think that 'method of operation' refers to the means by which a person operates something, whether it be a car, a food processor, or a computer," the court held. "The Lotus menu command hierarchy provides the means by which users control and operate Lotus 1-2-3."

Notably, the menu hierarchy wasn't just the user interface for Lotus 1-2-3; it was a primitive API in its own right. Lotus 1-2-3 allowed menu functions to be invoked using keyboard shortcuts from its menus. A sequence of keystrokes could be saved as a macro—essentially a simple computer program. Duplicating the Lotus 1-2-3 menu hierarchy allowed people to use their old Lotus 1-2-3 macros on Quattro without modification.

Google argues that the logic of the First Circuit's Lotus ruling can be applied directly to its dispute with Oracle. In Google's view, the Java API calls are "methods of operation" for the Java platform in exactly the same way that Lotus 1-2-3's menu items were methods of operation for the spreadsheet software.

The problem for Google is that not every appeals court has followed the First Circuit's approach in Lotus. The Supreme Court actually agreed to hear an appeal of the Lotus ruling back in the 1990s, but, with one justice absent from the case, the high court deadlocked 4-4. That allowed the Lotus ruling to stand, but it didn't make the ruling binding on other appeals courts. Since then, some other appeals courts have developed different approaches that aren't necessarily well-aligned with the Lotus precedent.

Copyrighted APIs could cause chaos in the software industry

While the courts haven't been unanimous about the best way to apply copyright law to APIs—and weren't even before the Oracle v. Google ruling—software industry practices were fairly well-settled before the Federal Circuit got involved. And this means that the stakes for this case are quite high. If the Federal Circuit's reasoning is allowed to stand, it could force dramatic changes in how the software industry is organized.

It's common for software developers to clone the functionality of established software platforms and standards in order to make sure their new products are compatible with what's already out there. Sometimes this compatible software is then packaged into open source libraries that become free for others to use, and it can be bundled together with other programs to produce larger software packages. Because it has been widely assumed that API's can't be copyrighted—or at least that the copyrights aren't likely to be enforced—companies haven't worried about using libraries that take advantage of third-party APIs that might belong to someone else.

The Federal Circuit's Oracle rulings mean that there may be a lot of software out there that is suddenly vulnerable to copyright infringement claims because they implement APIs invented by third parties. Grimmelmann told us that this could be a particularly serious problem in the cloud computing world.

"If you've built a cloud service that people have written clients against, and someone says 'we own a copyright on marshalling arguments to this function this way,' you're screwed," he told Ars in 2019. "You can't change that API without losing customers. The holdup possibilities are immense."

In the long run, making APIs subject to copyright restrictions could also lead to balkanization of software standards. Wary of adopting APIs owned by rivals, companies will be more likely to develop their own incompatible versions of key standards. A friend-of-the-court brief filed in 2018 by three software industry groups—Engine, the App Alliance, and GitHub—points out that this could be particularly detrimental to small software companies that don't have the resources to re-implement their products using multiple incompatible standards.

And a 2018 brief by the Computer and Communications Industry Association points out that this could also become a significant burden for the software development profession. Achieving proficiency with a language like Java requires significant time and effort. CCIA points out that by trying to prevent independent implementations of Java, Oracle is essentially limiting opportunities for Java programmers.

"It is hard to see why programmers who have learned the Java APIs should remain captives of Oracle because of an investment in learning made by the programmers and not by Oracle," CCIA wrote.

Channel Ars Technica