Předpokládám, že čtenářům nemusím pojem API blíže vysvětlovat. Pro jistotu ve zkratce uvedu, že jde o rozhraní umožňující komunikaci mezi dvěma různými aplikacemi. Pravděpodobně nejčastější využití API spočívá v tom, že vývojář jedné aplikace chce nějakým způsobem využít výstup jiné, nezávislé aplikace.
Využíváte už ve firmě autonomní agenty postavené na bázi umělé inteligence?
Za tímto účelem API poskytuje soubor již připravených programových funkcí a procedur, které lze v rámci programování využívat. Místo vytváření celé funkčnosti od základu si programátor může tyto předdefinované bloky pouze „zavolat“ pro dosažení požadovaného efektu ve svém kódu. To umožňuje programátorům implementovat komplexní výpočetní operace do svých aplikací bez nutnosti samostatného programování každého detailu.
Tyto předdefinované funkce se nazývají metody a jsou dále organizovány do tříd. Každá třída obsahuje deklarující kód, který určuje, co třída a její metody dělají a jaké informace přijímají nebo vracejí. Implementační kód pak obsahuje konkrétní instrukce, jak tyto úlohy vykonat. Tímto je tvořena celková struktura API.
V Česku dosud neřešenou otázkou zůstává, do jaké míry je API chráněno. Je chráněno jako celek ve prospěch jeho tvůrce? Jsou chráněné pouze některé části a další mohou být libovolně užívány?
Google vs. Oracle
Podobné otázky řešil i americký nejvyšší soud ve sporu mezi společnostmi Google a Oracle (právní nástupce Sun Microsystems), který v této věci finálně rozhodl v dubnu roku 2021 po více než desetiletém soudním sporu.
Sun Microsystems, která byla později převzata společností Oracle, uvedla v roce 1995 na trh programovací jazyk Java. Ten získal popularitu mezi vývojáři díky své schopnosti interoperability napříč různými operačními systémy a možnosti vytvářet odvozená díla, ačkoli pro komerční využití bylo nutné získat speciální licenci.
Google, který od roku 2005 zastřešoval vývoj Androidu, se snažil zvýšit přitažlivost pro vývojáře tím, že do zdrojového kódu Androidu integroval knihovny Javy. Toto rozhodnutí umožnilo vývojářům využívat jejich znalosti Javy při vývoji aplikací pro Android místo toho, aby se museli učit nový programovací jazyk. V konečném důsledku Google vytvořil vlastní verzi Javy s téměř identickými knihovnami.
Google nekopíroval implementační kód Javy, ale pouze její deklarující kód, zahrnující názvy metod a strukturu jejího API. Tímto způsobem mohli programátoři používat stejné příkazy jako v Javě, ale jejich provedení bylo zajištěno kódem vyvinutým Googlem. Google replikoval názvy metod a strukturu 37 balíčků Javy, což odpovídalo přibližně 11,5 tisíce řádků kódu.
V roce 2010 Oracle zahájil řadu soudních sporů proti Googlu kvůli porušení patentů a autorských práv. Zatímco patentové nároky byly zamítnuty v roce 2012, autorskoprávní aspekty přetrvávaly až do roku 2021. Odvolací soud v roce 2014 rozhodl, že API podléhá autorskoprávní ochraně a že Google porušil autorská práva, nejvyšší soud toto rozhodnutí zvrátil a uvedl, že Google jednal v rámci doktríny fair use. Bohužel pro nás nepotvrdil ani nevyvrátil závěr odvolacího soudu o tom, že API podléhá autorskoprávní ochraně (v rámci hospodárnosti uvedl, že pokud by API nebylo autorskoprávně chráněno, Google by nic neporušil; pokud by bylo autorskoprávně chráněno, Google stejně jednal v rámci fair use, takže není třeba řešit složitou otázkou, zda API může být autorskoprávně chráněno, výsledek případu by byl stejný).
Doktrína fair use v americkém autorském právu umožňuje omezené využití autorsky chráněných materiálů bez nutnosti získat předchozí souhlas od držitele autorských práv. Je založena na flexibilním testu proporcionality, který zkoumá především čtyři faktory – účel a charakter použití, povahu chráněného díla, množství užitého díla a dopad použití na hodnotu chráněného díla.
Nejvyšší soud při posouzení vyšel z toho, že Google použil pouze deklarující kód, který slouží spíše pro organizaci než samotnou funkci API; že Google použil pouze 0,4 % celkového zdrojového kódu; že Google transformoval API pro nový kontext, vytvořil novou platformu a inovativně umožnil programátorům působit na více platformách.
Český kontext
Z přechozích dílů této minisérie již víme, že počítačový program se za určitých okolností považuje za autorské dílo, které je chráněno autorským zákonem. Pro připomenutí, musí jít o původní (nikoliv unikátní jako u jiných děl) duševní výtvor autora, jenž je vyjádřený v jakékoli objektivně vnímatelné podobě.
Pokud dojde k vytvoření díla chráněného autorským zákonem, vzniknou jeho autorovi osobnostní a majetková autorská práva, zejména právo dílo užít. Toto právo náleží výlučně autorovi, přičemž ostatní osoby, které chtějí dílo užít, si musejí zajistit souhlas autora nebo se spolehnout na stanovené výjimky z autorského práva. Výše popsanou výjimku v podobě doktríny fair use český autorský zákon nemá. Místo toho vyjmenovává přesné zákonné licence a omezení, tzn. případy, kdy lze užít autorsky chráněné dílo bez souhlasu autora – na rozdíl od amerického práva jsou ale zákonné licence vymezeny poměrně kazuisticky a nedávají prostor pro flexibilní test proporcionality.
V rámci ochrany API je důležité zohlednit i tzv. dichotomii myšlenky a vyjádření díla – autorské právo totiž chrání jen vyjádření počítačového programu (zdrojový a strojový kód), nikoli jeho funkcionalitu. Každý tak může vytvořit již existující program, pokud při tvorbě neoprávněně nezasáhl do původního díla (např. reverzním inženýrstvím).
Ačkoliv v Česku ještě nebyl řešený případ s takovým významem, jako byl Google vs. Oracle, došly by zdejší soudy podle mého názoru ke stejnému závěru, minimálně z hlediska neporušení autorských práv. Google zkopíroval pouze deklarující kód, tzn. specifikaci API (co rozhraní umí, jaký má účel, jak se chová, jaké informace poskytuje a jaké informace potřebuje), které je ve své podstatě myšlenkou vyloučenou z autorskoprávní ochrany. API neumožňuje počítačovému programu vykonávat jeho funkcionality, pouze je definuje, a nemůže se tak považovat za vyjádření programu. Na druhou stranu implementující kód rozhraní jakožto vyjádření počítačového programu může být chráněn.
Výše uvedená problematika zatím nebyla nejvyšším soudem detailně řešena a na závazný pohled na autorskoprávní ochranu API si tak budeme muset počkat. Důležitost dichotomie myšlenky a vyjádření ale zdůrazňuje i evropská směrnice o právní ochraně počítačových programů, takže lze očekávat, že specifikace API bude jakožto myšlenka vyloučena z autorskoprávní ochrany.
Autor je právník, Šetina, Komendová & Partners, advokátní kancelář
Článek vyšel v magazínu Computerworld 3/3024, jako 45. díl seriálu IT a právo
Computerworld si můžete objednat i jako klasický časopis. Je jediným odborným měsíčníkem na českém a slovenském trhu zaměreným na profesionály v oblasti informačních a komunikačních technologií (ICT). Díky silnému zázemí přináší aktuální zpravodajství, analýzy, komentáře a přehledy nejnovejších technologií dříve a na vyšší odborné úrovni, než ostatní periodika na tuzemském trhu.
Obsah Computerworldu je určen odborníkům a manažerům z firem a institucí, kteří se podílejí na rozhodovacím procesu při nákupu ICT technologií. Jednotlivá čísla si můžete objednat i v digitální podobě.
Chcete si článek přečíst celý?
Tento článek je součástí exkluzivního obsahu pouze pro odběratele našeho newsletteru.
Přihlaste se k odběru newsletteru a my vám do mailu pošleme odkaz na celý článek.