MediaWiki version:
1.22

GET request to list all file usages, including non-existing.

API documentation


Special:ApiHelp/query+allfileusages

Example

GET request

List the first 10 used files starting with the word "Icon" and what page ids they are used on

Response

{
    "batchcomplete": "",
    "continue": {
        "afcontinue": "Icon-C4004.jpg|7174658",
        "continue": "-||"
    },
    "query": {
        "allfileusages": [
            {
                "fromid": 12221220,
                "ns": 6,
                "title": "File:Icon"
            },
            {
                "fromid": 12274856,
                "ns": 6,
                "title": "File:Icon"
            },
            {
                "fromid": 14729339,
                "ns": 6,
                "title": "File:Icon"
            }
            ...
        ]
    }
}

Sample code

Python

#!/usr/bin/python3

"""
    get_allfileusages.py

    MediaWiki API Demos
    Demo of `allfileusage` module: List all file usages, including non-existing

    MIT License
"""

import requests

S = requests.Session()

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

PARAMS = {
    "action": "query",
    "afprefix": "Icon",
    "list": "allfileusages",
    "afprop": "ids|title",
    "format": "json"
}

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

USAGES = DATA["query"]["allfileusages"]

for img in USAGES:
    print(img["title"])

PHP

<?php
/*
    get_allfileusages.php

    MediaWiki API Demos
    Demo of `allfileusage` module: List all file usages, including non-existing.

    MIT License
*/

$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
    "action" => "query",
    "format" => "json",
    "list" => "allfileusages",
    "afprefix" => "Icon",
    "afprop" => "ids|title"
];

$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"]["allfileusages"] as $k => $v ) {
    echo( $v["title"] . "\n" );
}

JavaScript

/*
    get_allfileusages.js

    MediaWiki API Demos
    Demo of `allfileusage` module: List all file usages, including non-existing.

    MIT License
*/

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

var params = {
    action: "query",
    format: "json",
    list: "allfileusages",
    afprefix: "Icon",
    afprop: "ids|title"
};

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 usages = response.query.allfileusages;
        for (var img in usages) {
            console.log(usages[img].title);
        }
    })
    .catch(function(error){console.log(error);});

MediaWiki JS

/*
	get_allfileusages.js

	MediaWiki API Demos
	Demo of `allfileusage` module: List all file usages, including non-existing.

	MIT License
*/

var params = {
		action: 'query',
		format: 'json',
		list: 'allfileusages',
		afprefix: 'Icon',
		afprop: 'ids|title'
	},
	api = new mw.Api();

api.get( params ).done( function ( data ) {
	var usages = data.query.allfileusages,
		img;
	for ( img in usages ) {
		console.log( usages[ img ].title );
	}
} );

See also

  • API:Properties - get properties of a page.
  • API:Lists - list pages matching a criterion.
This article is issued from Mediawiki. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.