API:Userinfo
![]() | This page is part of the MediaWiki Action API documentation. |
MediaWiki version: | ≥ 1.11 |
GET request to return information about the currently logged-in user.
API documentation
![]() | The following documentation is the output of Special: |
meta=userinfo (ui)
- This module requires read rights.
- Source: MediaWiki
- License: GPL-2.0-or-later
Get information about the current user.
Specific parameters:
Other general parameters are available.
- uiprop
Which pieces of information to include:
- blockinfo
- Tags if the current user is blocked, by whom, and for what reason.
- hasmsg
- Adds a tag messages if the current user has pending messages.
- groups
- Lists all the groups the current user belongs to.
- groupmemberships
- Lists groups that the current user has been explicitly assigned to, including the expiry date of each group membership.
- implicitgroups
- Lists all the groups the current user is automatically a member of.
- rights
- Lists all the rights the current user has.
- changeablegroups
- Lists the groups the current user can add to and remove from.
- options
- Lists all preferences the current user has set.
- editcount
- Adds the current user's edit count.
- ratelimits
- Lists all rate limits applying to the current user.
- theoreticalratelimits
- Lists all rate limits that would apply to the current user if they were not exempt from all ratelimits based on user rights or ip.
- Adds the user's email address and email authentication date.
- realname
- Adds the user's real name.
- acceptlang
- Echoes the
Accept-Language
header sent by the client in a structured format. - registrationdate
- Adds the user's registration date.
- unreadcount
- Adds the count of unread pages on the user's watchlist (maximum 999; returns 1000+ if more).
- centralids
- Adds the central IDs and attachment status for the user.
- latestcontrib
- Adds the date of user's latest contribution.
- cancreateaccount
- Indicates whether the user is allowed to create accounts. To check whether some specific account can be created, use action=query&list=users&usprop=cancreate.
- Values (separate with | or alternative): acceptlang, blockinfo, cancreateaccount, centralids, changeablegroups, editcount, email, groupmemberships, groups, hasmsg, implicitgroups, latestcontrib, options, ratelimits, realname, registrationdate, rights, theoreticalratelimits, unreadcount
- To specify all values, use *.
- uiattachedwiki
With uiprop=centralids, indicate whether the user is attached with the wiki identified by this ID.
Examples:
- Get information about the current user.
- api.php?action=query&meta=userinfo [open in sandbox]
- Get additional information about the current user.
- api.php?action=query&meta=userinfo&uiprop=blockinfo|groups|rights|hasmsg [open in sandbox]
Example
GET request
Get general user info and user rights.
Response
{
"batchcomplete": "",
"query": {
"userinfo": {
"id": 37494596,
"name": "Zaycodes",
"groups": [
"*",
"user"
],
"rights": [
"createaccount",
"read",
"edit",
"createtalk",
"writeapi",
"viewmywatchlist",
"editmywatchlist",
"viewmyprivateinfo",
"editmyprivateinfo",
...
]
}
}
Sample code
Python
#!/usr/bin/python3
"""
userinfo.py
MediaWiki API Demos
Demo of `Userinfo` module: Get general user info and user rights
MIT License
"""
import requests
S = requests.Session()
URL = "https://en.wikipedia.org/w/api.php"
PARAMS = {
"action": "query",
"meta": "userinfo",
"uiprop": "rights",
"format": "json"
}
R = S.get(url=URL, params=PARAMS)
DATA = R.json()
print(DATA)
PHP
<?php
/*
userinfo.php
MediaWiki API Demos
Demo of `Userinfo` module: Get general user info and user rights
MIT License
*/
$endPoint = "https://en.wikipedia.org/w/api.php";
$params = [
"action" => "query",
"meta" => "userinfo",
"uiprop" => "rights",
"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 );
var_dump( $result );
JavaScript
/*
userinfo.js
MediaWiki API Demos
Demo of `Userinfo` module: Get general user info and user rights
MIT License
*/
var url = "https://en.wikipedia.org/w/api.php";
var params = {
action: "query",
meta: "userinfo",
uiprop: "rights",
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) {console.log(response);})
.catch(function(error){console.log(error);});
MediaWiki JS
/*
userinfo.js
MediaWiki API Demos
Demo of `Userinfo` module: Get general user info and user rights
MIT License
*/
var params = {
action: 'query',
meta: 'userinfo',
uiprop: 'rights',
format: 'json'
};
var api = new mw.Api();
api.get( params ).then( function ( data ) {
console.log( data );
} );
Parameter history
- v1.33: Introduced
latestcontrib
- v1.24: Introduced
unreadcount
- v1.18: Introduced
implicitgroups
,registrationdate
,realname
- v1.17: Introduced
acceptlang
- v1.16: Introduced
changeablegroups
- v1.15: Introduced
email
- v1.14: Introduced
preferencestoken
- v1.12: Introduced
ratelimits
,editcount
Additional notes
- The code for the
userinfo
function is located at ApiQueryUserInfo.php. - If you need access to user information not listed here for a user on a Wikimedia project, please email privacy
wikimedia.org for further assistance.
See also
- API:Users - for getting information about other users.
- wmdoc:mediawiki-core/master/js/mw.user.html#.options – A way to get the options of a user when scripting.