< API:Lists

Ugly but useful view of all lists pages combined.

Allcategories

MediaWiki version:
1.12

GET request to list all categories that fit certain criteria relating to their titles.

This module can be used as a generator .

API documentation


Special:ApiHelp/query+allcategories

Example

GET request

Get a list of all categories, starting from "15th-century caliphs".


Response

{
    {
    "batchcomplete": "",
    "continue": {
        "accontinue": "15th-century_churches_in_Denmark",
        "continue": "-||"
    },
    "query": {
        "allcategories": [
            {
                "*": "15th-century caliphs"
            },
            {
                "*": "15th-century calligraphers"
            },
            {
                "*": "15th-century card games"
            },
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Additional notes

  • This module differs from list=allpages&alnamespace=14 in that categories without descriptions will be listed, while redirects and pages where the category was never used will not.
  • The response may include categories that were previously used but have since been deleted.
  • Because the response may include categories that are deleted or otherwise empty, it is recommended to filter the list using acmin=1, so as to only return categories containing one or more members.

See also

  • API:Categorymembers - list pages which are members of a certain category.
  • API:Categories - a prop module that gets all the categories associated with a particular page.
  • API:Allpages - another module that can access the category namespace.

Allimages

MediaWiki version:
1.13

GET request to list all image files, ordered by either title or timestamp.

This module can be used as a generator .

API documentation


Special:ApiHelp/query+allimages

Example

Example 1: Get images by name

GET request

List all images in the namespace, starting from files that begin with Graffiti_000. Limit the initial response to just the first three images.


Response

{
    "batchcomplete": "",
    "continue": {
        "aicontinue": "Graffiti_BTER_0001.JPG",
        "continue": "-||"
    },
    "query": {
        "allimages": [
            {
                "name": "Graffiti_0001.JPG",
                "timestamp": "2006-10-26T01:48:05Z",
                "url": "https://upload.wikimedia.org/wikipedia/en/9/98/Graffiti_0001.JPG",
                "descriptionurl": "https://en.wikipedia.org/wiki/File:Graffiti_0001.JPG",
                "descriptionshorturl": "https://en.wikipedia.org/w/index.php?curid=7624737",
                "ns": 6,
                "title": "File:Graffiti 0001.JPG"
            },
            {
                "name": "Graffiti_0002.JPG",
                "timestamp": "2006-10-26T02:03:40Z",
                "url": "https://upload.wikimedia.org/wikipedia/en/6/66/Graffiti_0002.JPG",
                "descriptionurl": "https://en.wikipedia.org/wiki/File:Graffiti_0002.JPG",
                "descriptionshorturl": "https://en.wikipedia.org/w/index.php?curid=7624935",
                "ns": 6,
                "title": "File:Graffiti 0002.JPG"
            },
            {
                "name": "Graffiti_0003.JPG",
                "timestamp": "2006-10-26T08:05:08Z",
                "url": "https://upload.wikimedia.org/wikipedia/en/2/2b/Graffiti_0003.JPG",
                "descriptionurl": "https://en.wikipedia.org/wiki/File:Graffiti_0003.JPG",
                "descriptionshorturl": "https://en.wikipedia.org/w/index.php?curid=7628426",
                "ns": 6,
                "title": "File:Graffiti 0003.JPG"
            }
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Example 2: Get images by date

GET request

List all images in the namespace, starting from 2010-01-01 18:05:46 (UTC).


Response

{
    "batchcomplete": "",
    "continue": {
        "aicontinue": "20100101190633|Ryan_Baker_12-30-2009.JPG",
        "continue": "-||"
    },
    "query": {
        "allimages": [
            {
                "name": "DramaQueenThatGirl.jpg",
                "timestamp": "2010-01-01T18:21:57Z",
                "url": "https://upload.wikimedia.org/wikipedia/en/1/17/DramaQueenThatGirl.jpg",
                "descriptionurl": "https://en.wikipedia.org/wiki/File:DramaQueenThatGirl.jpg",
                "descriptionshorturl": "https://en.wikipedia.org/w/index.php?curid=25646192",
                "ns": 6,
                "title": "File:DramaQueenThatGirl.jpg"
            },
            {
                "name": "VS_in_viena_austria.JPG",
                "timestamp": "2010-01-01T18:42:49Z",
                "url": "https://upload.wikimedia.org/wikipedia/en/b/bd/VS_in_viena_austria.JPG",
                "descriptionurl": "https://en.wikipedia.org/wiki/File:VS_in_viena_austria.JPG",
                "descriptionshorturl": "https://en.wikipedia.org/w/index.php?curid=25646382",
                "ns": 6,
                "title": "File:VS in viena austria.JPG"
            },
            {
                "name": "Vasanthamtv_channel.jpg",
                "timestamp": "2010-01-01T19:03:08Z",
                "url": "https://upload.wikimedia.org/wikipedia/en/1/18/Vasanthamtv_channel.jpg",
                "descriptionurl": "https://en.wikipedia.org/wiki/File:Vasanthamtv_channel.jpg",
                "descriptionshorturl": "https://en.wikipedia.org/w/index.php?curid=25626466",
                "ns": 6,
                "title": "File:Vasanthamtv channel.jpg"
            }
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 2

Parameter history

  • v1.23: Introduced aiprop=canonicaltitle, aiprop=commonmetadata, aiprop=extmetadata
  • v1.20: Introduced aisort, aistart, aiend, aiuser, aifilterbots, aidir=newer, aidir=older
  • v1.18: Introduced aimime, aiprop=mediatype
  • v1.17: Introduced aiprop=userid, aiprop=parsedcomment
  • v1.14: Introduced bitdepth

Additional notes

  • Only the most recent version of each file is returned.
  • See Data formats for more information on how to properly format dates for aisort=timestamps

See also

  • API:Images - a very similar module, but it is a prop, not a list; see API:Properties and API:Lists for more details on how these two kinds of modules differ from one another.
  • API:Imageinfo - retrieves detailed information about image files.
  • API:Stashimageinfo - retrieves information about stashed images.
  • API:Fileusage - find all pages that use the given image or images.
  • API:Duplicatefiles - find any duplicates of the given file or files.

Alllinks

MediaWiki version:
1.11

GET request to list links that point to a given namespace , ordered by title.

This module can be used as a generator.

API documentation


Special:ApiHelp/query+alllinks

Example

By default, this module will return duplicates if a page contains multiple links pointing to the same namespace. This example uses alunique=1 to remove any duplicate titles in the response.

GET request

List distinct links (i.e. no duplicates) which point to the main namespace.


Response

{
    "batchcomplete": "",
    "continue": {
        "alcontinue": "!!!!Hashtagging",
        "continue": "-||"
    },
    "query": {
        "alllinks": [
            {
                "ns": 0,
                "title": "!"
            },
            {
                "ns": 0,
                "title": "!!"
            },
            {
                "ns": 0,
                "title": "!!!"
            },
            ...
}

Sample code

API:Lists/All/Sample code 1

Possible errors

CodeInfo
badcontinueInvalid continue param. You should pass the original value returned by the previous query.
invalidparammixThe alprop=ids parameter cannot be used with alunique.
This happens when you use alprop=ids and alunique together

Additional notes

  • As with other link modules within the Action API, this module returns the titles of the pages that link to the namespace, not the exact URIs to those pages.
  • This module can be used as a generator.
  • Previous versions would return an error if the user tried to run this module as a generator, and alunique was set to true. This was altered in v1.24, to allow using the module as a generator even if alunique is true.

See also

  • API:Backlinks - lists links to a given page.
  • API:Linkshere - similar to API:Backlinks, gets links to a given page. Note that, unlike API:Backlinks, which is a list module, API:Linkshere is a prop module. See the respective pages on API:Properties and API:Lists for how these two kinds of modules differ.
  • API:Links - retrieves links on a given page or pages.

Allpages

MediaWiki version:
1.8

GET request to list all pages fitting certain criteria, within a given Namespace .

This module can be used as a generator .

API documentation


Special:ApiHelp/query+allpages

Example

GET request

Get all pages whose title contains the text "Jungle", in whole or part.


Response

Items in the results are listed in alphabetical order, by page title.
{
    "batchcomplete": "",
    "continue": {
        "apcontinue": "Jungle_(Bakufu_Slump_album)",
        "continue": "-||"
    },
    "query": {
        "allpages": [
            {
                "pageid": 341265,
                "ns": 0,
                "title": "Jungle"
            },
            {
                "pageid": 56461312,
                "ns": 0,
                "title": "Jungle-runner"
            },
            {
                "pageid": 18698572,
                "ns": 0,
                "title": "Jungle/Drum n bass"
            },
            {
                "pageid": 1487899,
                "ns": 0,
                "title": "Jungle2jungle"
            },
            {
                "pageid": 30391179,
                "ns": 0,
                "title": "JunglePup"
            }
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
invalidparammix The prlevel parameter may only be used with prtype.

See also

  • Chris G's botclasses/AllPagesBot.php — a bot that retrieves all files on a wiki, utilizing this API
  • API:Categorymembers — lists all pages within a category
  • API:Categories — lists all categories associated with a certain page, which can aid in finding similar pages
  • API:Allcategories — lists all categories fitting a certain criteria
  • API:Allimages — lists all images whose file names fit a certain criteria
  • API:Allusers — lists all users in alphabetical order

Alltransclusions

MediaWiki version:
1.21

GET request to list all existing and non-existing transclusions .

This module can be used as a generator .

API documentation


Special:ApiHelp/query+alltransclusions

Example

GET request

Get three unique pages in the main namespace which contain transclusions.


Response

{
    "batchcomplete": "",
    "continue": {
        "atcontinue": "!Hero_(album)",
        "continue": "-||"
    },
    "query": {
        "alltransclusions": [
            {
                "ns": 0,
                "title": "!!Destroy-Oh-Boy!!"
            },
            {
                "ns": 0,
                "title": "!Action Pact!"
            },
            {
                "ns": 0,
                "title": "!Arriba!"
            }
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
unknown_atnamespace Unrecognized value for parameter atnamespace: value.

Results from enumerating a non-existent namespace.

Additional notes

  • This module is part of API:Alllinks.

See also

  • API:Templates - Gets a list of all pages transcluded in a page.

Allusers

MediaWiki version:
1.11

GET request to list all registered users, as ordered by username.

API documentation


Special:ApiHelp/query+allusers

Example

GET request

GET request to list all users, starting from those whose name begins with the string, "Drov"


Response

{
    "batchcomplete": "",
    "continue": {
        "aufrom": "Drovark",
        "continue": "-||"
    },
    "query": {
        "allusers": [
            {
                "userid": 13239275,
                "name": "Drov"
            },
            {
                "userid": 7080866,
                "name": "Drova"
            },
            {
                "userid": 16013473,
                "name": "Drova 82"
            },
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

CodeInfo
augroup-excludegroupgroup and excludegroup cannot be used together

Parameter history

  • v1.12: Introduced auprop=registration

Additional notes

  • This API call is case sensitive, so aufrom=DROV doesn't return the same results as aufrom=Drov.
  • All registered usernames are saved and retrieved in capitalized form. If you are using aufrom or auprefix in your query, make sure you are passing them values that start with an uppercase character.
  • Although the default behavior is to list any user in the database, we can also limit our response to only those users who belong to a certain group, such as sysops, or bots. User groups are how MediaWiki grants users certain rights and privileges; see Help:User rights and groups for more details on how this system works.

See also

  • API:Users - finds information about a list of users.

Backlinks

MediaWiki version:
1.9

GET request to list pages which link to a certain page.

API documentation


Special:ApiHelp/query+backlinks

Example

GET request

List backlinks to the philosophy page.


Response

{
    "batchcomplete": "",
    "continue": {
        "blcontinue": "1|987",
        "continue": "-||"
    },
    "query": {
        "backlinks": [
            {
                "pageid": 12,
                "ns": 0,
                "title": "Anarchism"
            },
            {
                "pageid": 128,
                "ns": 1,
                "title": "Talk:Atlas Shrugged"
            },
            {
                "pageid": 336,
                "ns": 0,
                "title": "Altruism"
            },
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Redirects

In the example above, only direct links to the philosophy page are returned. When blredirect is set, the response will include any pages which backlink to redirects for the value in bltitle.

These redirected backlinks are treated as separate groups within the response hierarchy, one level down from the redirect itself.

The limit set in bllimit applies separately to each level of the response, so bllimit=25 would return up to 25 direct backlinks, and up to 25 backlinks within each individual redirect.

In addition, using blcontinue when a redirect was in the response will return more second-level backlinks, before finally moving on to more direct backlinks, once all the backlinks for a redirect have been returned in full.

Possible errors

Code Info
blbadcontinueInvalid continue param. You should pass the original value returned by the previous query.

See also

  • API:Linkshere - finds all pages that link to a given page. Note that, unlike API:Backlinks, which is a list module, API:Linkshere is a prop module. See the respective pages on API:Properties and API:Lists for how these two kinds of modules differ.
  • API:Transcludedin - a prop module that finds all pages that transclude (i.e. embed information from) the given pages.
  • API:Embeddedin - a list module which lists backlinks via transclusion, similar to Special:Whatlinkshere.
  • API:Imageusage - lists pages that use the given image(s).
  • API:Fileusage - lists pages that use the given file(s).

Blocks

GET request to list currently-blocked users, in the same manner as Special:BlockList lists them.

MediaWiki version:
1.12

API documentation


Special:ApiHelp/query+blocks

Example

Lists the 3 most recent blocks

GET request


Response

{
    "batchcomplete": "",
    "continue": {
        "bkcontinue": "20190226192632|8865878",
        "continue": "-||"
    },
    "query": {
        "blocks": [
            {
                "id": 8865881,
                "user": "168.11.166.47",
                "by": "Gilliam",
                "timestamp": "2019-02-26T19:28:56Z",
                "expiry": "2020-02-26T19:28:56Z",
                "reason": "{{school block}}",
                "rangestart": "168.11.166.47",
                "rangeend": "168.11.166.47",
                "anononly": "",
                "nocreate": "",
                "allowusertalk": ""
            },
            {
                "id": 8865880,
                "user": "64.125.67.43",
                "by": "Gilliam",
                "timestamp": "2019-02-26T19:27:44Z",
                "expiry": "2019-03-01T19:27:44Z",
                "reason": "part of mass attack",
                "rangestart": "64.125.67.43",
                "rangeend": "64.125.67.43",
                "anononly": "",
                "nocreate": "",
                "allowusertalk": ""
            }
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Additional notes

  • This module cannot be used as a generator.

Parameter history

  • v1.19: Introduced bkshow
  • v1.18: Introduced userid

See also

  • Extension:GlobalBlocking/API

Categorymembers

MediaWiki version:
1.11

GET request to list pages that belong to a given category.

API documentation


Special:ApiHelp/query+categorymembers

Example 1: List twenty pages in a category

GET request


Response

Response
{
	"api": {
		"query-continue": {
			"categorymembers": {
				"_cmcontinue": "subcat|44594e414d494353|10998823"
			}
		},
		"query": {
			"categorymembers": {
				"cm": [
					{
						"_pageid": "22688097",
						"_ns": "0",
						"_title": "Branches of physics"
					},
					{
						"_pageid": "3445246",
						"_ns": "0",
						"_title": "Glossary of classical physics"
					},
					{
						"_pageid": "24489",
						"_ns": "0",
						"_title": "Outline of physics"
					},
					...
				]
			}
		}
	}
}

Sample code

get_category_items.py

API:Lists/All/Sample code 1

Example 2: Get the ten articles most recently added to a category

GET request


Response

Response
{
	"api": {
		"query-continue": {
			"categorymembers": {
				"_cmcontinue": "Magnetic levitation|"
			}
		},
		"query": {
			"categorymembers": {
				"cm": [
					{
						"_pageid": "1653925",
						"_ns": "100",
						"_title": "Portal:Physics"
					},
					{
						"_pageid": "22939",
						"_ns": "0",
						"_title": "Physics"
					},
					{
						"_pageid": "3445246",
						"_ns": "0",
						"_title": "Glossary of classical physics"
					},
					...
				]
			}
		}
	}
}

Sample code

get_recent_category_items.py

API:Lists/All/Sample code 2

Example 3: Get ten subcategories of a category

GET request


Response

Response
{
	"api": {
		"query-continue": {
			"categorymembers": {
				"_cmcontinue": "subcat|57494b4950454449412050454f504c45|41491664"
			}
		},
		"query": {
			"categorymembers": {
				"cm": [
					{
						"_pageid": "1458692",
						"_ns": "14",
						"_title": "Category:Wikipedias by language"
					},
					{
						"_pageid": "22918730",
						"_ns": "14",
						"_title": "Category:Books about Wikipedia"
					},
					{
						"_pageid": "16957584",
						"_ns": "14",
						"_title": "Category:Critics of Wikipedia"
					},
					...
				]
			}
		}
	}
}

The next subcategories (if there're more than 10) can be continued using the cmcontinue parameter from the response above.

Sample code

get_subcategories.py

API:Lists/All/Sample code 3

Possible errors

CodeInfo
cmnotitleThe parameter cmtitle is required.
cminvalidcategoryThe category name you entered is not valid.
cmbadcontinueInvalid continue param. You should pass the original value returned by the previous query.

Parameter history

  • v1.24: Deprecated cmstartsortkey, cmendsortkey
  • v1.18: Introduced cmstartsortkeyprefix, cmendsortkeyprefix
  • v1.17: Introduced sortkeyprefix, type
  • v1.14: Introduced cmstartsortkey, cmendsortkey
  • v1.12: Introduced cmtype,cmstart, cmend, cmdir

See also

  • API:Allpages - lists all pages fitting certain criteria
  • API:Categories - lists categories associated with a page
  • API:Allcategories - lists all categories on a wiki

deletedrevs

MediaWiki version:
1.25
(deprecated in 1.25) The API documentation described here will work best with MediaWiki 1.14 and earlier. It has been deprecated in favor of alldeletedrevisions api

GET request to list deleted revisions.

API documentation


Special:ApiHelp/query+deletedrevs

Example

GET request

List the 6 most recent deleted revisions from user Catrope dated September 4, 2007.


Response

<?xml version="1.0" encoding="utf-8"?>
<api>
  <query-continue>
    <deletedrevs drstart="20070904142729" />
  </query-continue>
  <query>
    <deletedrevs>
      <page title="Main Page" ns="0" token="e4c475f13be7824135b4edbebf4140ff+\">
        <revisions>
          <rev timestamp="20070904200804" revid="31" user="Catrope" minor="" len="" />
          <rev timestamp="20070904200753" revid="30" user="Catrope" minor="" len="" />
          <rev timestamp="20070904193501" revid="29" user="Catrope" minor="" len="568" />
          <rev timestamp="20070904193213" revid="28" user="Catrope" minor="" len="470" />
        </revisions>
      </page>
      <page title="User:Catrope" ns="2" token="e4c475f13be7824135b4edbebf4140ff+\">
        <revisions>
          <rev timestamp="20070904143938" revid="24" user="Catrope" len="52" />
          <rev timestamp="20070904142758" revid="23" user="Catrope" len="37" />
        </revisions>
      </page>
    </deletedrevs>
  </query>
</api>

Sample code

get_deleted_revisions.py

#!/usr/bin/python3

"""
    get_deleted_revisions.py

    MediaWiki Action API Code Samples
    Demo of `Deletedrevs` module: List the six most recent deleted revisions
    from User:Catrope

    MIT License
"""

import requests

S = requests.Session()

URL = "https://en.wikipedia.org/w/api.php"

PARAMS = {
    "drend": "20070904000000",
    "format": "json",
    "druser": "Catrope",
    "list": "deletedrevs",
    "drstart": "20070904235959",
    "drlimit": "6",
    "drprop": "revid|user|minor|len|token",
    "action": "query"
}

R = S.get(url=URL, params=PARAMS)
DATA = R.json()

print(DATA)

Possible errors

Code Info
drpermissiondenied You don't have permission to view deleted revision information. On most wikis, viewing deleted revisions is restricted to sysops, but other wikis may have different rules.

Parameter history

  • v1.24: Deprecated drprop: token
  • v1.23: Introduced drtag, drprop: tags
  • v1.19: Introduced drprop: sha1
  • v1.18: Introduced drto, drprefix, drprop: parentid
  • v1.17: Introduced drprop: userid
  • v1.16: Introduced drprop: parsedcomment
  • v1.15: Introduced druser,drexcludeuser,drnamespace, drunique,drfrom

Additional notes

  • This module cannot be used as a generator.
  • You need the deletedhistory right to use this module. This module can be used in one of three modes:
    • List deleted revisions for the given titles (through titles or a generator), sorted by timestamp
    • List deleted contributions for a certain user, sorted by timestamp (druser set, no titles given)
    • List all deleted revisions in a certain namespace (druser not set, no titles given)
  • Some parameters are restricted to certain modes only, and are marked accordingly.

See also

  • API:Alldeletedrevisions

Embeddedin

MediaWiki version:
1.11

GET request to find all page(s) that embed a given page.

This module can be used as a generator .

API documentation


Special:ApiHelp/query+embeddedin

Example

GET request

Find all pages that embed the English Wikipedia's w:Computer page.


Response

{
    "batchcomplete": "",
    "query": {
        "embeddedin": [
            {
                "pageid": 14388072,
                "ns": 100,
                "title": "Portal:Computing"
            },
            {
                "pageid": 45719527,
                "ns": 2,
                "title": "User:SoSivr/sandbox"
            }
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
missingparam One of the parameters eititle, eipageid is required.
eibadcontinue Invalid continue param. You should pass the original value returned by the previous query.

See also

  • API:Transcludedin - Find all pages that transclude the given pages.
  • API:Templates - Returns all pages transcluded on the given pages.
  • API:Alltransclusions - Part of API:Alllinks module. This API gets a list all transclusions (pages embedded using {{x}}), including non-existing.
  • API:Parsing wikitext - Parse content of a page and obtain the output.

Exturlusage

MediaWiki version:
1.11

GET request to list pages that link to a certain URL, like Special:Linksearch.

API documentation


Special:ApiHelp/query+exturlusage

Example

GET request

Get a list of pages linking to slashdot.org


Response

{
    "batchcomplete": "",
    "continue": {
        "eucontinue": "http://org.slashdot./|169423",
        "continue": "-||"
    },
    "query": {
        "exturlusage": [
            {
                "pageid": 533948,
                "ns": 2,
                "title": "User:Peter Ellis",
                "url": "http://slashdot.org"
            },
            {
                "pageid": 3274,
                "ns": 2,
                "title": "User:Alexdb",
                "url": "http://slashdot.org/"
            },
            {
                "pageid": 36471,
                "ns": 2,
                "title": "User:Joao",
                "url": "http://slashdot.org/"
            }
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
unknown_euprotocol Wrong property for protocol parameter (use value from the list of supported protocols)
badcontinue Invalid continue param. You should pass the original value returned by the previous query.

Parameter history

  • v1.21: Introduced euexpandurl

See also

  • API:Backlinks - lists links to a given page.
  • API:Links - retrieves links on a given page or pages.
  • API:Iwlinks - Find interwiki links on a given page (i.e, meta pages, special pages).
  • API:Extlinks - Find all external links on a given page.
  • API:Langlinks - Get a list of language links from the given page. Language links represent translations.
  • API:Langbacklinks - Get a list of pages that contains a given language link.

Filearchive

MediaWiki version:
1.17

GET request to enumerate all deleted files from filearchive table sequentially.

API documentation


Special:ApiHelp/query+filearchive

Example

GET request

Get a list of all deleted files.


Response

{
    "batchcomplete": "",
    "continue": {
        "facontinue": "0000007.jpg|20070128133944|288",
        "continue": "-||"
    },
    "query": {
        "filearchive": [
            {
                "id": 1778,
                "name": "!notedit.png",
                "ns": 6,
                "title": "File:!notedit.png",
                "timestamp": "2011-04-25T13:17:47Z"
            },
            {
                "id": 6949,
                "name": "\"Twilight_at_the_pond\"_by_A.A.Tutunov_(1976).jpg",
                "ns": 6,
                "title": "File:\"Twilight at the pond\" by A.A.Tutunov (1976).jpg",
                "timestamp": "2019-01-26T11:48:52Z"
            },
            {
                "id": 5814,
                "name": "---C--temp-Regelwerk.pdf",
                "ns": 6,
                "title": "File:---C--temp-Regelwerk.pdf",
                "timestamp": "2017-03-09T10:09:24Z"
            },
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
cantview-deleted-description You don't have permission to view descriptions of deleted files.
cantview-deleted-metadata You don't have permission to view metadata of deleted files.
invalidsha1hash The SHA1 hash provided is not valid.
invalidsha1base36hash The SHA1Base36 hash provided is not valid.

Parameter history

  • v1.20: Introduced facontinue, mediatype, archivename
  • v1.18: Introduced fato, fasha1, fasha1base36, parseddescription

Imageusage

MediaWiki version:
1.9

GET request to find all pages that use a given image title.

This module can be used as a generator .

In MW 1.9 and 1.10, the module name was imagelinks.

API documentation


Special:ApiHelp/query+imageusage

Example

GET request

Get the first three pages that use a given image title.


Response

{
  "batchcomplete": "",
  "continue": {
    "continue": "-||",
    "iucontinue": "4|33464895"
  },
  "query": {
    "imageusage": [
      {
        "ns": 0,
        "pageid": 14072,
        "title": "History of Wikipedia"
      },
      {
        "ns": 4,
        "pageid": 16842768,
        "title": "Wikipedia:Wikipedia logos"
      },
      {
        "ns": 2,
        "pageid": 30536602,
        "title": "User:J Komara"
      }
    ]
  }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

CodeInfo
iubadcontinueInvalid continue param. You should pass the original value returned by the previous query.

See also

  • API:Images - Lists embedded media files on provided pages.
  • API:Allimages - Lists all images, by title or timestamp.
  • API:Imageinfo - Gets information for any titles in the image namespace.
  • API:Stashimageinfo - Gets information for stashed images or files in the namespace.
  • API:Duplicatefiles - Lists any duplicates of the given images or files.

Iwbacklinks

GET request to get all pages that link to the given interwiki link.

MediaWiki version:
1.17

API documentation


Special:ApiHelp/query+iwbacklinks

Example

GET request

Get pages that link to a given interwiki link.


Response

{
    "batchcomplete": "",
    "continue": {
        "iwblcontinue": "wikibooks|Main_Page|438739",
        "continue": "-||"
    },
    "query": {
        "iwbacklinks": [
            {
                "pageid": 18606,
                "ns": 0,
                "title": "Liberation Tigers of Tamil Eelam"
            },
            {
                "pageid": 43347,
                "ns": 1,
                "title": "Talk:Vi"
            },
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
invalidparammix-mustusewith The iwbltitle parameter may only be used with iwblprefix.

Parameter history

  • v1.20: Introduced iwbldir

Additional notes

  • This module can be used to find all pages that link to the given interwiki link. It finds all links using a prefix, or all links to a given title (with a given prefix). Using neither parameter returns All IW Links.

See also

  • API:Iwlinks - List interwiki links from a given page.
  • API:Links - Find all the links on the provided page(s).
  • API:Linkshere - Find all pages that link to the given pages.
  • API:Extlinks - Gets a list of all external links on the provided pages.

Langbacklinks

MediaWiki version:
1.18

GET request to find all pages that link to the given language link.

API documentation


Special:ApiHelp/query+langbacklinks

Example

GET request

Get pages linking to a given language link.


Response

{
    "batchcomplete": "",
    "query": {
        "langbacklinks": []
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
missingparam The lang parameter must be set.

Parameter history

  • v1.20: Introduced dir

Additional notes

  • This module can be used to find all pages that link to the given language link. It finds all links using a language code, or all links to a given title (with a given language). Using neither parameter is effectively All Language Links.

See also

  • API:Links - Returns all links from the given pages.
  • API:Langlinks - Gets a list of all language links from the provided pages to other languages.

Logevents

MediaWiki version:
1.9

GET request to fetch a list of all logged events as shown in Special:Log.

API documentation


Special:ApiHelp/query+logevents

Example

GET request

Get the three most recent logevents.


Response

{
  "batchcomplete": "",
  "continue": {
    "continue": "-||",
    "lecontinue": "20190606150600|99729503"
  },
  "query": {
    "logevents": [
      {
        "action": "create",
        "comment": "added to WikiProject (via [[WP:JWB]])",
        "logid": 99729506,
        "logpage": 60974819,
        "ns": 15,
        "pageid": 60974819,
        "params": {},
        "timestamp": "2019-06-06T15:06:07Z",
        "title": "Category talk:Electronic albums by Senegalese artists",
        "type": "create",
        "user": "Jevansen"
      }
      ...
    ]
  }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
leparam_user User name username not found.
leparam_title Bad title "title".
This happens when you set letitle to an invalid title.
apierror-unrecognizedvalue Unrecognized value for parameter leaction: value.
apierror-prefixsearchdisabled Prefix search is disabled in Miser Mode.

Parameter history

  • v1.17: Introduced leaction

Additional notes

  • This module cannot be used as a generator.
  • For autoblock unblock entries, the title returned is shown as "User:$blockid". This is not a userpage, but just the way it is stored. See task T19781.
  • When userid is specified for account creation events, the userid of the creating user is returned. When absent, the userid returned is that of the created account. See task T73020.
  • See Manual:Log actions for log types and log actions, and their log parameters and log_search entries and descriptions.
  • Every log action is logged in the Manual:Logging table. Users can see those edits on Special:Log, except for a few restricted logs like Special:Log/suppress.

See also

  • API:Recentchanges - Gets a list of all recent changes.
  • API:Database field and API property associations.

Protectedtitles

MediaWiki version:
1.15

GET request to list titles protected from creation.

This module can be used as a generator .

API documentation


Special:ApiHelp/query+protectedtitles

Example

GET request

Get the first 2 titles only sysops can create.


Response

{
    "batchcomplete": "",
    "continue": {
        "ptcontinue": "20190520051937|118|Dj_Consequence",
        "continue": "-||"
    },
    "query": {
        "protectedtitles": [
            {
                "ns": 118,
                "title": "Draft:DJ Consequence",
                "timestamp": "2019-05-20T05:34:39Z",
                "level": "sysop"
            },
            {
                "ns": 0,
                "title": "DJ Consequence",
                "timestamp": "2019-05-20T05:20:31Z",
                "level": "sysop"
            }
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Parameter history

  • v1.23: Introduced continue
  • v1.17: Introduced userid
  • v1.16: Introduced parsedcomment

See also

  • API:Protect - Change a page's protection level.

Querypage

MediaWiki version:
1.18

GET request to get a list provided by a QueryPage-based special page.

API documentation


Special:ApiHelp/query+querypage

Example

GET request

In the below query, we call the API to get a list of the first ten pages which are uncategorized


Response

{
  "batchcomplete": "", 
  "continue": {
    "continue": "-||", 
    "qpoffset": 10
  }, 
  "query": {
    "querypage": {
      "cached": "", 
      "cachedtimestamp": "2019-02-22T11:46:48Z", 
      "maxresults": 5000, 
      "name": "Uncategorizedpages", 
      "results": [
        {
          "ns": 0, 
          "title": "Abelardo Delgado", 
          "value": "0"
        }, 
        {
          "ns": 0, 
          "title": "Agriculture in Tonga", 
          "value": "0"
        }, 
        {
          "ns": 0, 
          "title": "Andriandramaka", 
          "value": "0"
        }
        ...
      ]
    }
  }
}

Sample code

API:Lists/All/Sample code 1

Special page values

(MediaWiki 1.32.0)

Ancientpages Listredirects Mostlinked Unusedtemplates
BrokenRedirects Lonelypages Mostrevisions Unwatchedpages
Deadendpages Longpages Shortpages Wantedcategories
DisambiguationPageLinks MediaStatistics Uncategorizedcategories Wantedfiles
DisambiguationPages Mostcategories Uncategorizedpages Wantedpages
DoubleRedirects MostGloballyLinkedFiles Uncategorizedimages Wantedtemplates
EntityUsage Mostimages Uncategorizedtemplates Withoutinterwiki
Fewestrevisions Mostinterwikis UnconnectedPages
GloballyWantedFiles Mostlinkedcategories Unusedcategories
ListDuplicatedFiles Mostlinkedtemplates Unusedimages

Possible errors

Code Info
unknown_qppage Unrecognized value for parameter qppage: value.
noqppage The qppage parameter must be set.

Additional notes

  • This module can be used as a generator.
  • Namespace filtering is unavailable on these pages. The possible way is to manually filter "ns" from collected results.

See also

  • API:Allpages - Lists all pages fitting certain criteria, within a given Namespace.
  • API:Categorymembers - Lists all pages within a category
  • API:Pageswithprop - List all pages using a given page property.

Random

MediaWiki version:
1.12

GET request to view a list of random pages.

This module can be used as a generator .

API documentation


Special:ApiHelp/query+random

Example

GET request

List 5 random pages


Response

{

"batchcomplete": "",
    "continue": {
        "rncontinue": "0.559881820010|0.559881954661|47659388|0",
        "continue": "-||"
    },
    "query": {
        "random": [
            {
                "id": 32381675,
                "ns": 0,
                "title": "Mallabhum Institute of Technology"
            },
            {
                "id": 25126452,
                "ns": 3,
                "title": "User talk:96.232.132.176"
            },
            {
                "id": 1440028,
                "ns": 0,
                "title": "Hyundai Epsilon engine"
            },
            {
                "id": 35446805,
                "ns": 15,
                "title": "Category talk:Ukrainian card games"
            },
            {
                "id": 12613,
                "ns": 0,
                "title": "Grue"
            }
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Parameter history

  • v1.26: Previous limit of 10/20 on rnlimit was increased to standard 500/5000 limits.
  • v1.26: Deprecated rnredirect
  • v1.26: Introduced rnfilterredir
  • v1.14: Introduced rnredirect

Additional notes

  • Unlike most modules in the Action API, the default number of pages returned is 1, not 10.
  • Pages are returned in a fixed sequence; only the starting point is actually random.
  • The default behavior is to pick pages from across the entire wiki, including talk pages, user pages, and so on. If you are looking for similar functionality as Special:Random, i.e. pick random articles, restrict rnnamespace to 0.
  • If the number of pages is fewer than rnlimit, the request will simply return all available pages. It will not repeat pages to pad out the response up to the limit.

See also

  • Manual:Random page - describes how to configure the API on the backend.

RecentChanges

MediaWiki version:
1.9

GET request to list all the recent changes to the wiki, in the same manner as Special:RecentChanges lists them.

API documentation


Special:ApiHelp/query+recentchanges

Example

GET request

Get the 3 most recent changes with sizes and flags


Response

{
    "batchcomplete": "",
    "continue": {
        "rccontinue": "20180330090522|1041353210",
        "continue": "-||"
    },
    "query": {
        "recentchanges": [
            {
                "type": "edit",
                "ns": 0,
                "title": "Histology",
                "pageid": 13570,
                "revid": 833218500,
                "old_revid": 833218201,
                "rcid": 1041353213,
                "user": "Iztwoz",
                "oldlen": 25718,
                "newlen": 25749
            }
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
rcshow Incorrect parameter - mutually exclusive values may not be supplied.
rcpermissiondenied You need the patrol or patrolmarks right to request the patrolled flag.

Parameter history

  • v1.24: Deprecated rctoken
  • v1.15: Removed rctitles
  • v1.14: Introduced rctitles
  • v1.13: Introduced loginfo

Additional notes

  • Many log actions can be viewed using this module excluding patrol actions as they are not present in the recentchanges table.
  • The Timestamp to start listing from may not be more than $wgRCMaxAge into the past, which on Wikimedia wikis is 30 days.
  • New changes may be inserted to the recentchanges table slightly out of order with respect to their timestamp. Thus, when requesting the most recent changes twice in a row, the second response may contain new changes inserted a few seconds before the most recent one in the first response. If you repeatedly call this module to get a stream a recent change, consider adding some overlap between requests to not miss any changes.
  • This module can be used as a generator.
  • This module is implemented by ApiQueryRecentChanges.php.

See also

  • API:Database field and API property associations
  • API:Recent changes stream

Search

MediaWiki version:
1.11

GET request to perform an advanced search for wiki pages by title or content text match.

API documentation


Special:ApiHelp/query+search

GET request


Default search results are without UTF8 encoding. Replace utf8 in the get request above to see the difference.

Response

{
    "batchcomplete": "",
    "continue": {
        "sroffset": 10,
        "continue": "-||"
    },
    "query": {
        "searchinfo": {
            "totalhits": 5060
        },
        "search": [
            {
                "ns": 0,
                "title": "Nelson Mandela",
                "pageid": 21492751,
                "size": 196026,
                "wordcount": 23664,
                "snippet": "<span class=\"searchmatch\">Nelson</span> Rolihlahla <span class=\"searchmatch\">Mandela</span> (/mænˈdɛlə/, Xhosa: [xoliɬaˈɬa <span class=\"searchmatch\">manˈdɛla</span>]; 18 July 1918 – 5 December 2013) was a South African anti-apartheid revolutionary,",
                "timestamp": "2018-07-23T07:59:43Z"
            },
            {
                "ns": 0,
                "title": "Death of Nelson Mandela",
                "pageid": 41284488,
                "size": 133513,
                "wordcount": 13512,
                "snippet": "On December 5, 2013, <span class=\"searchmatch\">Nelson</span> <span class=\"searchmatch\">Mandela</span>, the first President of South Africa to be elected in a fully representative democratic election, as well as the country's",
                "timestamp": "2018-07-19T17:30:59Z"
            }
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
nosrsearch The srsearch parameter must be set.
This was param-search before 1.17
search-text-disabled text search is disabled.
search-title-disabled title search is disabled.
search-error search error has occurred

Parameter history

  • v1.24: Deprecated score,hasrelated
  • v1.23:
    • Removed srredirects. Redirects are always included.
    • Introduced srinterwiki
  • v1.22: Introduced srbackend
  • v1.17: Introduced nearmatch, score, titlesnippet, redirecttitle, redirectsnippet, sectiontitle, sectionsnippet, hasrelated
  • v1.16: Introduced srinfo, srprop

Additional notes

  • Depending on which search backend is in use, how srsearch is interpreted may vary. On Wikimedia wikis which use CirrusSearch, see Help:CirrusSearch for information about the search syntax.

See also

  • API:Opensearch
  • API:All search modules

Tags

MediaWiki version:
1.16

GET request to list valid change tags.

API documentation


Special:ApiHelp/query+tags

Example

GET request

Get the first three change tags and their hitcounts.


Response

{
  "batchcomplete": "",
  "continue": {
    "continue": "-||",
    "tgcontinue": "Extraneous formatting"
  },
  "query": {
    "tags": [
      {
        "hitcount": 2481517,
        "name": "AWB"
      },
      {
        "hitcount": 10849,
        "name": "Addition of interwiki link"
      },
      {
        "hitcount": 819,
        "name": "Citing predatory open access journal"
      }
    ]
  }
}

Sample code

API:Lists/All/Sample code 1

Additional notes

  • This module cannot be used as a Generator.

See also

  • API:Recentchanges - List recent changes
  • API:Managetags - Define or delete tags

Usercontribs

MediaWiki version:
1.9

GET request to list a user's contributions.

API documentation


Special:ApiHelp/query+usercontribs

Example

GET request

List contributions by User:Jimbo Wales


Response

{
    "batchcomplete": "",
    "continue": {
        "uccontinue": "20190130180447|880978627",
        "continue": "-||"
    },
    "query": {
        "usercontribs": [
            {
                "userid": 24,
                "user": "Jimbo Wales",
                "pageid": 9870625,
                "revid": 881893498,
                "parentid": 881892978,
                "ns": 3,
                "title": "User talk:Jimbo Wales",
                "timestamp": "2019-02-05T14:05:11Z",
                "comment": "/* Fancy I edit Wikipedia T-Shirt */",
                "size": 29753
            },
            {
                "userid": 24,
                "user": "Jimbo Wales",
                "pageid": 9870625,
                "revid": 881282261,
                "parentid": 881270759,
                "ns": 3,
                "title": "User talk:Jimbo Wales",
                "timestamp": "2019-02-01T15:29:31Z",
                "comment": "/* Macedonian President Gorge Ivanov is now in the House arrest */",
                "size": 60166
            },
            {
                "userid": 24,
                "user": "Jimbo Wales",
                "pageid": 9513191,
                "revid": 881245934,
                "parentid": 881240310,
                "ns": 1,
                "title": "Talk:Mark Dice",
                "timestamp": "2019-02-01T09:48:38Z",
                "comment": "/* So good they names it twice */",
                "size": 74128
            },
            ...
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

Code Info
invaliduseridUser ID username is not valid.
paramempty_ucuserThe parameter user may not be empty.
baduser_ucuserInvalid value "username" for user parameter user.
showIncorrect parameter - mutually exclusive values may not be supplied.
permissiondeniedYou need the patrol or patrolmarks right to request the patrolled flag.

Parameter history

  • v1.39: Introduced uciprange
  • v1.29: Introduced ucuserids
  • v1.23: Deprecated uctoponly
  • v1.23: Introduced ucshow=top, ucshow=!top, ucshow=new, ucshow=!new
  • v1.20: Introduced ucprop=sizediff
  • v1.18: Introduced uctoponly
  • v1.16: Introduced ucprop=parsedcomment, ucprop=size, ucprop=tags, uctag
  • v1.15: Introduced ucprop=patrolled, ucshow=patrolled, ucshow=!patrolled
  • v1.14: Introduced uccontinue
  • v1.13: Introduced ucuserprefix
  • v1.11: Introduced ucnamespace, ucprop, ucshow

Additional notes

  • The module returns page edits and moves, but not other operations, such as uploads.
  • Prior to MediaWiki v1.14, the start parameter was used to view additional results within the response. Between v1.14 and v1.22, start was used to continue when listing a single user's contributions; continue was used when listing contributions from multiple users. From v1.23 forwards, all queries use continue.

See also

  • API:Logevents - shows many kinds of user activity, including uploads

Users

MediaWiki version:
1.12

GET request to view information about a list of users.

API documentation


Special:ApiHelp/query+users

Example

GET request

Get a list of the specified users -- each item in the list contains information specified by the usprop parameter


Response

{
    "batchcomplete": "",
    "query": {
        "users": [
            {
                "name": "1.2.3.4",
                "invalid": ""
            },
            {
                "userid": 4587601,
                "name": "Catrope",
                "editcount": 359,
                "registration": "2007-06-07T16:36:03Z",
                "groups": [
                    "*",
                    "user",
                    "autoconfirmed"
                ],
                "emailable": "",
                "gender": "male"
            },
            {
                "name": "Vandal01",
                "missing": ""
            },
            {
                "userid": 2793024,
                "name": "Bob",
                "editcount": 4542,
                "registration": "2006-11-18T21:55:03Z",
                "groups": [
                    "extendedconfirmed",
                    "reviewer",
                    "*",
                    "user",
                    "autoconfirmed"
                ],
                "emailable": "",
                "gender": "male"
            }
        ]
    }
}

Sample code

API:Lists/All/Sample code 1

Parameter history

  • v1.29: Introduced ususerids, userrights
  • v1.24: Deprecated ustoken
  • v1.18: Introduced implicitgroups
  • v1.17: Introduced rights
  • v1.16: Introduced ususerids, gender
  • v1.14: Introduced emailable
  • v1.13: Introduced registration

See also

  • Help:User rights and groups - More information on user rights, and how they relate to groups
  • API:User group membership - Adding and removing users from groups
  • API:Allusers - Lists registered users in alphabetical order
  • Extension:CentralAuth/API - Global user info

Watchlist

MediaWiki version:
1.9

GET request to list pages on the current user's watchlist that were changed within the given time period, ordered by time of the last change of the watched page.

This module can be used as a generator .

API documentation


Special:ApiHelp/query+watchlist

Example

GET request

Get the currently logged-in user's watchlist.


Response

{
  "batchcomplete": "",
  "query": {
    "watchlist": [
      {
        "ns": 1,
        "old_revid": 898447862,
        "pageid": 5858,
        "revid": 898447924,
        "title": "Talk:Software",
        "type": "edit"
      },
      {
        "ns": 0,
        "old_revid": 896386764,
        "pageid": 18934886,
        "revid": 897854521,
        "title": "Proprietary software",
        "type": "edit"
      },
      {
        "minor": "",
        "ns": 0,
        "old_revid": 894771707,
        "pageid": 1721496,
        "revid": 897348916,
        "title": "Free and open-source software",
        "type": "edit"
      }
    ]
  }
}

Sample code

API:Lists/All/Sample code 1

Possible errors

CodeInfo
wlnotloggedinYou must be logged-in to have a watchlist
wlpatrolpatrol property is not available
wlshowIncorrect parameter - mutually exclusive values may not be supplied.

Parameter history

  • v1.24: Introduced unread, !unread
  • v1.23: Introduced wlcontinue
  • v1.22: Introduced wltype
  • v1.18: Introduced loginfo
  • v1.17: Introduced userid
  • v1.16: Introduced wluser, wlexcludeuser, parsedcomment, notificationtimestamp, wlowner, wltoken
  • v1.14: Introduced patrolled, !patrolled
  • v1.12: Introduced wlshow
  • v1.11: Introduced ids, title, flags, sizes

Additional Notes

  • This module should not be confused with API:Watchlistraw, which lists all the pages on the logged in user's watchlist, regardless of whether they were recently changed or not.

See also

  • API:Watch - Edit the watchlist.
  • API:Watchlistraw - Get all the pages on the logged in user's watchlist, regardless of whether they were recently changed or not.
  • API:Watchlist feed - Get the RSS feed of a user's watchlist.

Watchlistraw

MediaWiki version:
1.14

GET request to list all the pages on the logged in user's watchlist, regardless of whether they were recently changed or not.

This module can be used as a generator.

API documentation


Special:ApiHelp/query+watchlistraw

Example

GET request

Get three pages on the logged-in user's watchlist from the main namespace.


Response

{
  "batchcomplete": "",
  "continue": {
    "continue": "-||",
    "wrcontinue": "0|Software"
  },
  "watchlistraw": [
    {
      "ns": 0,
      "title": "Free and open-source software"
    },
    {
      "ns": 0,
      "title": "Free software"
    },
    {
      "ns": 0,
      "title": "Proprietary software"
    }
  ]
}

Sample code

API:Lists/All/Sample code 1

Possible errors

CodeInfo
bad_wlownerSpecified user does not exist.
bad_wltokenIncorrect watchlist token provided. Please set a correct token in Special:Preferences.
notloggedinYou must be logged-in to have a watchlist.
showIncorrect parameter - mutually exclusive values may not be supplied.

Parameter history

  • v1.20: Introduced wrdir
  • v1.17: Introduced wrowner, wrtoken

Additional notes

  • This module should not be confused with API:Watchlist, which returns pages on the current user's watchlist that were changed within the given time period, ordered by time of the last change of the watched page.
  • The results of this query module are returned as part of the api node, not the query node.

See also

  • API:Watchlist - Get pages on a user's watchlist that were changed within the given time period, ordered by time of the last change of the watched page.
  • API:Watchlist feed - Get the RSS feed of a user's watchlist.
This article is issued from Mediawiki. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.