Copyright is a legal ownership right in an original work of authorship. Although ideas are not protected by copyright, even unique and novel ideas, the tangible expression of those ideas is subject to copyright. To the extent they contain creative original expressions, some portions of computer programs are copyrightable as literary works. A recent federal court decision found that a certain category of source code may also be protected by copyright.
Application programming interface (API)
An application programming interface is a defined set of functions or protocols that instructs applications how to interact. Many software companies voluntarily release an API to the public to allow other developers to integrate the API into products that will interact with the program. As copyright law only protects creative expression and not functionality, debates have persisted regarding whether APIs should be protected by copyright.
Oracle v. Google
A recent appellate court decision quashed any speculation about the copyrightability of API code. In an ongoing legal battle, Oracle America, Inc. sued Google, Inc. for copyright infringement for using 37 of Oracle’s Java script API packages in Google’s Android operating system.
The API packages contain two types of source code:
- The declaring code, which is a header line of code that commands the execution of the second type of code
- The implementation code. The implementation code instructs the computer to carry out the operation.
Google copied the declaring code from the 37 Java API packages verbatim but primarily used its own implementation code.
The appellate court ruled that the “declaring code and structure, sequence and organization of API packages” are original creative works. Therefore, API packages may be copyrighted.
However, copyrightability of API code is hotly contested. A copyright is designed to protect creative expression, not functionality, process, procedure or commands. The organization and structure of an API package is considered a command or process, casting doubt on whether it should be protected by copyright.
Additionally, with certain functions there may be only one way to write the declaring code. In copyright law, a concept called the “merger doctrine” holds that when there is a single conceivable way to express an idea, allowing the copyright of that expression would essentially permit copyright of the idea and would allow the monopolization of the expression of that idea. As ideas may not be copyrighted, the merger doctrine prohibits granting copyright protection when an idea can only be expressed in a single manner.
In some circumstances, there is only one method in which the function of an API package may be expressed. In such instances, the declaring code must be duplicated in order to carry out the specified function, even if the code for implementing the function is different. The merger doctrine would suggest those APIs could not be copyrighted. However, the court reached a different decision, finding three core Java API packages were subject to copyright protection.
Changing the landscape of software development
Granting copyright status to certain types of source code is bound to have a widespread effect on the software industry. Programmers will be required to obtain a license to use API packages to build functions that interact with existing software. A rights holder in a particularly lucrative set of API packages, such as the Java packages, will control access to existing programs; yet the whole purpose of APIs is to allow applications to engage. Obtaining a license to use API packages may not be difficult, but such requirement will allow software giants to determine what players enter the game.
Undoubtedly, software programs are expressive works that are protected against unauthorized duplication. Whether codes that permit software programs to interact should be protected is not as clear.
Protecting source code
In light of the recent court decision, product developers may wish to register the copyright to their API source codes. In order to submit a registration for source code copyright, the potential rights holder must first be sure it owns the code. Generally, the development of software code by an independent contractor does not qualify as a “work made for hire” even if identified as such in a contract. In those situations, the product developer will need to obtain a written assignment from the independent contractor.
A copyright in a computer program, object code or source code can be registered with the United States Copyright Office by submitting an application, sample deposit and applicable fee. Some developers fear turning over a sample of their program or code for registration may result in public disclosure of a confidential code. If disclosure is a concern, the Copyright Office has specific guidelines regarding redacting any segments of the code that contain trade secrets or only submitting a portion of the code.
Lindsay Junck is an associate attorney at the Lotus Law Center, where she practices business and intellectual property law. The Lotus Law Center was founded as a way to make legal services affordable for all sizes of businesses. Focusing on the practice of business and technology law, the Lotus Law Center provides premium personal and professional responses to the legal needs of business clients at an affordable fixed or hourly rate. Contact her at firstname.lastname@example.org.