MediaWiki version:
1.21

GET request to list all page properties in use on the wiki.

API documentation


Special:ApiHelp/query+pagepropnames

Example

GET request

List all page property names in use on the wiki.

Response

{
    "batchcomplete": "",
    "continue": {
        "ppncontinue": "kartographer_frames",
        "continue": "-||"
    },
    "query": {
        "pagepropnames": [
            {
                "propname": "defaultsort"
            },
            {
                "propname": "disambiguation"
            },
            {
                "propname": "displaytitle"
            }
            ...
        ]
    }
}

Sample code

Python

#!/usr/bin/python3

"""
    get_pagepropnames.py

    MediaWiki API Demos
    Demo of `Pagepropnames` module: List page property names on the given wiki.

    MIT License
"""

import requests

S = requests.Session()

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

PARAMS = {
    "action": "query",
    "list": "pagepropnames",
    "format": "json"
}

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

PAGEPROPS = DATA["query"]["pagepropnames"]

for p in PAGEPROPS:
    print(p["propname"])

PHP

<?php
/*
    get_pagepropnames.php

    MediaWiki API Demos
    Demo of `Pagepropnames` module: List page property names on the given wiki.

    MIT License
*/

$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
    "action" => "query",
    "list" => "pagepropnames",
    "format" => "json"
];

$url = $endPoint . "?" . http_build_query( $params );

$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
$output = curl_exec( $ch );
curl_close( $ch );

$result = json_decode( $output, true );

foreach( $result["query"]["pagepropnames"] as $k => $v ) {
    echo( $v["propname"] . "\n" );
}

JavaScript

/*
    get_pagepropnames.js

    MediaWiki API Demos
    Demo of `Pagepropnames` module: List page property names on the given wiki.

    MIT License
*/

var url = "https://en.wikipedia.org/w/api.php"; 

var params = {
    action: "query",
    list: "pagepropnames",
    format: "json"
};

url = url + "?origin=*";
Object.keys(params).forEach(function(key){url += "&" + key + "=" + params[key];});

fetch(url)
    .then(function(response){return response.json();})
    .then(function(response) {
        var pageprops = response.query.pagepropnames;
        for (var p in pageprops) {
            console.log(pageprops[p].propname);
        }
    })
    .catch(function(error){console.log(error);});

MediaWiki JS

/*
	get_pagepropnames.js

	MediaWiki API Demos
	Demo of `Pagepropnames` module: List page property names on the given wiki.

	MIT License
*/

var params = {
		action: 'query',
		list: 'pagepropnames',
		format: 'json'
	},
	api = new mw.Api();

api.get( params ).done( function ( data ) {
	var pageprops = data.query.pagepropnames,
		p;
	for ( p in pageprops ) {
		console.log( pageprops[ p ].propname );
	}
} );

See also

  • API:Pageswithprop - List all pages using a given page property.
  • API:Allpages - List all pages fitting certain criteria, within a given namespace.
This article is issued from Mediawiki. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.