MediaWiki API help

This is an auto-generated MediaWiki API documentation page.

Documentation and examples:

Main module

Status: All features shown on this page should be working, but the API is still in active development, and may change at any time. Subscribe to the mediawiki-api-announce mailing list for notice of updates.

Erroneous requests: When erroneous requests are sent to the API, an HTTP header will be sent with the key "MediaWiki-API-Error" and then both the value of the header and the error code sent back will be set to the same value. For more information see API: Errors and warnings.


Which action to perform.

One value: abusefiltercheckmatch, abusefilterchecksyntax, abusefilterevalexpression, abusefilterunblockautopromote, block, centralauthtoken, checktoken, cirrus-config-dump, cirrus-mapping-dump, cirrus-settings-dump, clearhasmsg, compare, createaccount, delete, deleteglobalaccount, edit, emailuser, expandtemplates, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, globaluserrights, help, imagerotate, import, login, logout, managetags, mobileview, move, opensearch, options, paraminfo, parse, patrol, protect, purge, query, revisiondelete, rollback, rsd, setglobalaccountstatus, setnotificationtimestamp, stashedit, tag, titleblacklist, tokens, unblock, undelete, upload, userrights, watch
Default: help

The format of the output.

One value: dbg, dbgfm, dump, dumpfm, json, jsonfm, none, php, phpfm, rawfm, txt, txtfm, wddx, wddxfm, xml, xmlfm, yaml, yamlfm
Default: jsonfm

Maximum lag can be used when MediaWiki is installed on a database replicated cluster. To save actions causing any more site replication lag, this parameter can make the client wait until the replication lag is less than the specified value. In case of excessive lag, error code maxlag is returned with a message like Waiting for $host: $lag seconds lagged.
See Manual: Maxlag parameter for more information.


Set the s-maxage header to this many seconds. Errors are never cached.

Default: 0

Set the max-age header to this many seconds. Errors are never cached.

Default: 0

Verify the user is logged in if set to user, or has the bot userright if bot.

One value: user, bot

Any value given here will be included in the response. May be used to distinguish requests.


Include the hostname that served the request in the results.


Include the current timestamp in the result.


When accessing the API using a cross-domain AJAX request (CORS), set this to the originating domain. This must be included in any pre-flight request, and therefore must be part of the request URI (not the POST body). This must match one of the origins in the Origin header exactly, so it has to be set to something like or If this parameter does not match the Origin header, a 403 response will be returned. If this parameter matches the Origin header and the origin is whitelisted, an Access-Control-Allow-Origin header will be set.


Language to use for message translations. A list of codes may be fetched from action=query&meta=siteinfo with siprop=languages, or specify user to use the current user's language preference, or specify content to use this wiki's content language.

Default: user

When accessing the API using a cross-domain AJAX request (CORS), use this to authenticate as the current SUL user. Use action=centralauthtoken on this wiki to retrieve the token, before making the CORS request. Each token may only be used once, and expires after 10 seconds. This should be included in any pre-flight request, and therefore should be included in the request URI (not the POST body).

Help for the main module.
All help in one page.
Use of the write API
Granted to: bot, sysop, bureaucrat, sr-admin, editboard, technical
Use higher limits in API queries (slow queries: 500; fast queries: 5000). The limits for slow queries also apply to multivalue parameters.
Granted to: bot, sysop, bureaucrat, sr-admin, editboard, technical


API developers:

  • Roan Kattouw (lead developer Sep 2007–2009)
  • Victor Vasiliev
  • Bryan Tong Minh
  • Sam Reed
  • Yuri Astrakhan (creator, lead developer Sep 2006–Sep 2007)
  • Brad Jorsch (lead developer 2013–present)

Please send your comments, suggestions and questions to or file a bug report at