This library provides basic access to the MediaWiki Action API. This library features simple methods allowing you to login, logout and do both GET and POST requests. This library should work with most if not all MediaWiki versions due to its simplicity.
You can find the full documentation at https://addwiki.github.io/mediawiki-api-base/
A quick example can be found below:
use \Addwiki\Mediawiki\Api\Client\Auth\UserAndPassword;
use \Addwiki\Mediawiki\Api\Client\Action\MediawikiApi;
$auth = new UserAndPassword( 'username', 'password' );
$api = MediawikiApi::newFromPage( 'https://en.wikipedia.org/wiki/Berlin', $auth );
$purgeRequest = FluentRequest::factory()->setAction( 'purge' )->setParam( 'titles', 'Berlin' );
$api->postRequest( $purgeRequest );
Run the MediaWiki test site:
docker compose -f docker-compose-ci.yml up -d
Run the tests:
composer phpunit-integration
Destroy the site that was used for testing:
docker compose -f docker-compose-ci.yml down --volumes