API:REST API/cs

MediaWiki Core REST API vám umožňuje komunikovat s MediaWiki odesíláním požadavků HTTP na  adresy URL. Rozhraní API můžete použít k vytváření aplikací a skriptů, které vyhledávají a zobrazují stránky wiki, získávají mediální soubory a prozkoumávají historii stránek.



Rychlý start
$ curl



Formát dat
Koncové body REST API vracejí data ve formátu JSON nebo HTML. Typ obsahu podporovaný každým koncovým bodem najdete v odkazu na rozhraní API.

Metody
Rozhraní API podporuje standardní metody požadavků HTTP.



Struktura URL
Koncové body API sdílejí konzistentní strukturu URL, která zahrnuje základní URL wiki, cestu skriptu wiki a verzi API.

Verzování
MediaWiki REST API, navržené tak, aby poskytovalo vývojářům dlouhodobou stabilitu, je verzováno pomocí globálního čísla verze v cestě API (například: ). Podle principů sémantického verzování se verze zvýší, když se koncový bod změní zpětně nekompatibilním způsobem, jako je odstranění vlastnosti odezvy nebo přidání požadovaného parametru. V rámci hlavní verze se API může změnit zpětně kompatibilními způsoby, jako je přidání vlastnosti odezvy nebo volitelného parametru požadavku.



Oprávnění a autorizace
REST API je navrženo pro použití s rozšířením pro ověřování a autorizaci uživatelů. Bez ohledu na metodu ověřování však API reaguje na přítomnost přihlášeného uživatele a vrací obsah odpovídající oprávněním tohoto uživatele.



Přístup k projektům Wikimedie pomocí REST API
REST API můžete použít pro přístup k Wikipedii, Wikislovníku a dalším projektům Wikimedie ve více jazycích. Úplný seznam adres URL projektů Wikimedie naleznete v matici stránek Meta-Wiki.



Limit požadavku
Neexistuje žádný pevný limit pro požadavky na API, ale váš klient může být zablokován, pokud ohrozíte stabilitu webu. Chcete-li zůstat v bezpečné míře požadavků, počkejte na dokončení každého požadavku, než odešlete další požadavek.



Identifikace klienta
Stránky Wikimediea vyžadují HTTP hlavičku User-Agent pro všechny požadavky API. To pomáhá identifikovat vaši aplikaci a zajišťuje, že vás v případě problému mohou kontaktovat správci systému. Klienti, kteří zadávají požadavky bez hlavičky User-Agent, mohou být bez upozornění blokováni IP adresou.

Záhlaví User-Agent může obsahovat uživatelskou stránku na místní wiki, uživatelskou stránku na související wiki používající syntaxi propojení interwiki, URL pro relevantní externí web nebo e-mailovou adresu.

Pokud voláte API z JavaScriptu založeného na prohlížeči, možná nebudete moci, v závislosti na prohlížeči, ovlivnit hlavičku User-Agent. Chcete-li to obejít, použijte hlavičku. Další informace naleznete v zásadách uživatelského agenta Meta-Wiki.

Autorizace
To authorize your app to act on behalf of a user, follow the OAuth developer guide to register your app and make requests using OAuth tokens.

Licensing and trademarks
Wikimedia content is free to reuse within the terms specified by the applicable license. Licenses can differ between projects, so see the individual project for information about licenses and content reuse. For example, English Wikipedia’s text can be used under the terms of the Creative Commons Attribution Share-Alike license, while media files on Wikimedia Commons are licensed individually as indicated on the file’s information page. For more information about licensing and trademark use, see Meta-Wiki’s developer app guidelines.

Limitations on Wikidata
While the REST API is available on Wikimedia projects, it is not fully supported by Wikidata. As of writing, some of the endpoints may return unexpected errors.

Extension endpoints
MediaWiki extensions can surface extension-specific API endpoints using the REST API interface. See the REST API extension interface docs to get started. For documentation for REST API endpoints provided by extensions, see the extension docs. The REST API extension interface is available in via  and in  and later by default.

About these docs
These docs are written manually based on the. Corrections and additions are welcome! To share a tutorial or app that uses the MediaWiki REST API, add a link to the REST API template.