From MediaWiki.org
Jump to navigation Jump to search

GET Request to search for a title or text in a wiki

Note: This module was introduced in v1.11

API documentation[edit]

list=search (sr)

(main | query | search)
  • This module requires read rights.
  • This module can be used as a generator.
  • Source: MediaWiki
  • License: GPL-2.0-or-later

Perform a full text search.


Search for page titles or content matching this value. You can use the search string to invoke special search features, depending on what the wiki's search backend implements.

This parameter is required.

Search only within these namespaces.

Values (separate with | or alternative): 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 90, 91, 92, 93, 100, 101, 102, 103, 104, 105, 106, 107, 486, 487, 828, 829, 1198, 1199, 2300, 2301, 2302, 2303, 2600, 5500, 5501
To specify all values, use *.
Default: 0

How many total pages to return.

No more than 500 (5,000 for bots) allowed.
Type: integer or max
Default: 10

When more results are available, use this to continue.

Type: integer
Default: 0

Query independent profile to use (affects ranking algorithm).

Ranking based on the number of incoming links, some templates, page language and recency (templates/language/recency may not be activated on this wiki).
Ranking based on some templates, page language and recency when activated on this wiki.
Ranking based solely on query dependent features (for debug only).
Weighted sum based on incoming links
Weighted sum based on incoming links and weekly pageviews
Ranking based primarily on page views
Ranking based primarily on incoming link counts
Let the search engine decide on the best profile to use.
One of the following values: classic, classic_noboostlinks, empty, wsum_inclinks, wsum_inclinks_pv, popular_inclinks_pv, popular_inclinks, engine_autoselect
Default: engine_autoselect

Which type of search to perform.

One of the following values: title, text, nearmatch

Which metadata to return.

Values (separate with | or alternative): totalhits, suggestion, rewrittenquery
Default: totalhits|suggestion|rewrittenquery

Which properties to return:

Adds the size of the page in bytes.
Adds the word count of the page.
Adds the timestamp of when the page was last edited.
Adds a parsed snippet of the page.
Adds a parsed snippet of the page title.
Adds the title of the matching redirect.
Adds a parsed snippet of the redirect title.
Adds the title of the matching section.
Adds a parsed snippet of the matching section title.
Adds a boolean indicating if the search matched file content.
Adds a parsed snippet of the matching category.
Deprecated. Ignored.
Deprecated. Ignored.
Adds extra data generated by extensions.
Values (separate with | or alternative): size, wordcount, timestamp, snippet, titlesnippet, redirecttitle, redirectsnippet, sectiontitle, sectionsnippet, isfilematch, categorysnippet, score, hasrelated, extensiondata
Default: size|wordcount|timestamp|snippet

Include interwiki results in the search, if available.

Type: boolean (details)

Enable internal query rewriting. Some search backends can rewrite the query into another which is thought to provide better results, for instance by correcting spelling errors.

Type: boolean (details)

Set the sort order of returned results.

One of the following values: relevance, just_match, none, incoming_links_asc, incoming_links_desc, last_edit_asc, last_edit_desc
Default: relevance

GET Request[edit]

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


    "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[edit]




    MediaWiki Action API Code Samples
    Demo of `Search` module: Search for a text or title
    MIT license

import requests

S = requests.Session()

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

SEARCHPAGE = "Nelson Mandela"

    'srsearch': SEARCHPAGE,

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

if DATA['query']['search'][0]['title'] == SEARCHPAGE:
    print("Your search page '" + SEARCHPAGE + "' exists on English Wikipedia")

Demo app(s)[edit]

Possible errors[edit]

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[edit]

Introduced Deprecated Removed Default

  • srinfo v1.16
  • srprop v1.16
  • nearmatch Search for a near match in the title v1.17
  • score Adds the score if any from the search engine v1.17 v1.24
    • titlesnippet v1.17
    • redirecttitle v1.17
    • redirectsnippet v1.17
    • sectiontitle v1.17
    • sectionsnippet v1.17
    • hasrelated Indicated whether a related search is available v1.17 v1.24
  • srbackend Class name of search backend to use $wgSearchType v1.22
  • srinterwiki false v1.23
  • srredirects Include redirect pages in the search. From v1.23 onwards, redirects are always included false v1.23

Additional notes[edit]

  • 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[edit]