Question

Telegram has provided API, through which programmers can connect to telegram servers, enabling them to implement clients for the messaging system.

They also have released some open source client implementations, licensed under GPL.

It is apparent to me that any software, reusing the code, must release the new source code under the GPL too.

Now the question is if one does not reuse the open source client implementations and only uses the provided API to connect to the Telegram servers with new code, are they mandated to release the new code under GPL too? Or could one implement a closed-source client for Telegram?

Was it helpful?

Solution

I am not a lawyer. If you want a lawyer's answer, you should probably ask one. The FSF is particularly helpful in providing guidance in understanding of the aspects of various free licenses, in particular the GPL.

The GPL is a license based on copyright. The rights that copyright grant the copyright holder allow them to enforce the license.

An API is a interface - a contract. It says nothing about the code used to contact it.

Most relevant to this is Oracle vs. Google over the use of Java.

"So long as the specific code used to implement a method is different, anyone is free under the Copyright Act to write his or her own code to carry out exactly the same function or specification of any methods used in the Java API. It does not matter that the declaration or method header lines are identical."

It found that the API Oracle was claiming to be copyrighted wasn't copyrightable under section 102 of the Copyright Act.

(Yes, that's about reimplementing the Java API - but its still the most relevant thing I could find and speaks to the ability to copyright an API which is needed for a license based on copyright.)

That the company has released clients under GPL is great - it lets others use that code. If one makes use of the copyrighted code that is released under the GPL in their product, it is also GPL'ed.

The APIs remain APIs and are not (cannot be) copyrighted and thus there is no way to put them under the GPL.

Licensed under: CC-BY-SA with attribution
scroll top