API:Client code

Client libraries contain code that developers can use to help with common and basic tasks, so that they don't have to write the code from scratch when their projects interact with an API.

This page contains a set of lists, by language, of up-to three recommended client libraries that can be used with the MediaWiki Action API. The recommendations are based on evaluations using API:Client_code/Gold_standard.

Java
More Java libraries available at API:Client_code/All#Java.

JavaScript
In-wiki JavaScript clients:

More JavaScript libraries available at API:Client_code/All#JavaScript.

.NET
More .NET libraries available at API:Client_code/All#.NET.

PHP
More PHP libraries available at API:Client_code/All#PHP.

Sometimes people try to use these kind of libraries to access a MediaWiki installation on the same server. This is often unnecessary because MediaWiki itself is written in PHP, especially when the only purpose of the script is interacting with MediaWiki. By 'ing  (  may need to be set beforehand, see Manual:$IP), a script gets access to MediaWiki components and consequently it can call the API internally or use other MediaWiki classes and functions directly, which greatly reduces server load.

Python
Simple Python wrappers for no-abstraction interfaces to the MediaWiki API and basic session handling:

More Python libraries available at API:Client_code/All#Python.

Ruby
More Ruby libraries available at API:Client_code/All#Ruby.

Rust
More Rust libraries available at API:Client_code/All#Rust.