Ayuda de la API de MediaWiki

Esta es una página de documentación autogenerada de la API de MediaWiki.

Documentación y ejemplos: https://www.mediawiki.org/wiki/Special:MyLanguage/API:Main_page

Módulo principal

Estado: La API de MediaWiki es una interfaz madura y estable que se mejora y prueba activamente. Aunque tratamos de evitarlo, es posible que ocasionalmente debamos hacer cambios importantes. Suscríbete a la lista de correo mediawiki-api-announce para recibir avisos de actualizaciones.

Solicitudes erróneas: Cuando se envían solicitudes erróneas a la API, se enviará un encabezado HTTP con la clave «MediaWiki-API-Error» y, luego, el valor del encabezado y el código de error devuelto se establecerán en el mismo valor. Para obtener más información, consulta API: Errores y advertencias.

Parámetros:
action

Qué acción se realizará.

block
Bloquear a un usuario.
changeauthenticationdata
Cambiar los datos de autentificación para el usuario actual.
changecontentmodel
Cambia el modelo de contenido de una página
checktoken
Comprueba la validez de una ficha desde action=query&meta=tokens.
clearhasmsg
Limpia la marca hasmsg del usuario actual.
clientlogin
Entrar en wiki usando el flujo interactivo.
compare
Obtener la diferencia entre 2 páginas.
createaccount
Crear una nueva cuenta de usuario.
delete
Borrar una página.
edit
Crear y editar páginas.
emailuser
Enviar un mensaje de correo electrónico a un usuario.
expandtemplates
Expande todas las plantillas en wikitexto.
feedcontributions
Devuelve el suministro de contribuciones de un usuario.
feedrecentchanges
Devuelve un suministro de cambios recientes.
feedwatchlist
Devuelve el suministro de una lista de seguimiento.
filerevert
Revertir el archivo a una versión anterior.
help
Mostrar la ayuda para los módulos especificados.
imagerotate
Girar una o más imágenes.
import
Importar una página desde otra wiki, o desde un archivo XML.
languagesearch
Search for language names in any script.
linkaccount
Vincular una cuenta de un proveedor de terceros para el usuario actual.
login
Iniciar sesión y obtener las cookies de autenticación.
logout
Salir y vaciar los datos de la sesión.
managetags
Realizar tareas de administración relacionadas con el cambio de etiquetas.
mergehistory
Fusionar historiales de páginas.
move
Trasladar una página.
opensearch
Buscar en la wiki mediante el protocolo OpenSearch.
options
Cambiar preferencias del usuario actual.
paraminfo
Obtener información acerca de los módulos de la API.
parse
Analiza el contenido y devuelve la salida del analizador sintáctico.
patrol
Verificar una página o revisión.
protect
Cambiar el nivel de protección de una página.
purge
Purgar la caché de los títulos proporcionados.
query
Obtener datos de y sobre MediaWiki.
removeauthenticationdata
Elimina los datos de autentificación del usuario actual.
resetpassword
Enviar un email de reinicialización de la contraseña a un usuario.
revisiondelete
Eliminar y restaurar revisiones
rollback
Deshacer la última edición de la página.
rsd
Exportar un esquema RSD (Really Simple Discovery; Descubrimiento Muy Simple).
setnotificationtimestamp
Actualizar la marca de tiempo de notificación de las páginas en la lista de seguimiento.
setpagelanguage
Cambiar el idioma de una página.
spamblacklist
Validar una o más URLs contra la lista negra de spam.
tag
Añadir o borrar etiquetas de modificación de revisiones individuales o entradas de registro.
templatedata
Recuperar datos almacenados por la extensión TemplateData.
titleblacklist
Validar el título de una página, nombre de archivo o nombre de usuario en la TitleBlacklist (lista negra de títulos).
unblock
Desbloquear un usuario.
undelete
Restaurar revisiones de una página borrada.
unlinkaccount
Remove a linked third-party account from the current user.
upload
Upload a file, or get the status of pending uploads.
userrights
Cambiar la pertenencia a grupos de un usuario.
validatepassword
Valida una contraseña contra las políticas de contraseñas de la wiki.
watch
Añadir o borrar páginas de la lista de seguimiento del usuario actual.
webapp-manifest
Devuelve un manifiesto de aplicación web.
categorytree
Interno. Módulo interno para la extensión CategoryTree.
cspreport
Interno. Utilizado por los navegadores para informar de violaciones a la normativa de seguridad de contenidos. Este módulo no debe usarse nunca, excepto cuando se usa automáticamente por un navegador web compatible con CSP.
oathvalidate
Interno. Validar una clave de autenticación en dos pasos (OATH).
scribunto-console
Interno. Internal module for servicing XHR requests from the Scribunto console.
stashedit
Interno. Prepare an edit in shared cache.
ulslocalization
Interno. Get the localization of ULS in the given language.
ulssetlang
Interno. Update user's preferred interface language.
visualeditor
Interno. Devuelve el código HTML5 de una página por medio del servicio Parsoid.
visualeditoredit
Interno. Guardar una página HTML5 en MediaWiki (convertida en wikicódigo mediante el servicio Parsoid).
Uno de los siguientes valores: block, changeauthenticationdata, changecontentmodel, checktoken, clearhasmsg, clientlogin, compare, createaccount, delete, edit, emailuser, expandtemplates, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, help, imagerotate, import, languagesearch, linkaccount, login, logout, managetags, mergehistory, move, opensearch, options, paraminfo, parse, patrol, protect, purge, query, removeauthenticationdata, resetpassword, revisiondelete, rollback, rsd, setnotificationtimestamp, setpagelanguage, spamblacklist, tag, templatedata, titleblacklist, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, watch, webapp-manifest, categorytree, cspreport, oathvalidate, scribunto-console, stashedit, ulslocalization, ulssetlang, visualeditor, visualeditoredit
Predeterminado: help
format

El formato de la salida.

json
Extraer los datos de salida en formato JSON.
jsonfm
Producir los datos de salida en formato JSON (con resaltado sintáctico en HTML).
none
No extraer nada.
php
Extraer los datos de salida en formato serializado PHP.
phpfm
Producir los datos de salida en formato PHP serializado (con resaltado sintáctico en HTML).
rawfm
Extraer los datos de salida, incluidos los elementos de depuración, en formato JSON (embellecido en HTML).
xml
Producir los datos de salida en formato XML.
xmlfm
Producir los datos de salida en formato XML (con resaltado sintáctico en HTML).
Uno de los siguientes valores: json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm
Predeterminado: jsonfm
maxlag

Se puede usar el retardo máximo cuando se instala MediaWiki en un clúster replicado de base de datos. Para evitar acciones que causen más retardo en la replicación del sitio, este parámetro puede hacer que el cliente espere hasta que el retardo en la replicación sea menor que el valor especificado. En caso de retardo excesivo, se devuelve el código de error maxlag con un mensaje como Esperando a $host: $lag segundos de retardo.
Consulta Manual: parámetro Maxlag para más información.

Tipo: entero
smaxage

Establece la cabecera HTTP s-maxage de control de antememoria a esta cantidad de segundos. Los errores nunca se almacenan en la antememoria.

Tipo: entero
Predeterminado: 0
maxage

Establece la cabecera HTTP max-age de control de antememoria a esta cantidad de segundos. Los errores nunca se almacenan en la antememoria.

Tipo: entero
Predeterminado: 0
assert

Comprobar que el usuario haya iniciado sesión si el valor es user o si tiene el permiso de bot si es bot.

Uno de los siguientes valores: anon, bot, user
assertuser

Verificar el usuario actual es el usuario nombrado.

Tipo: usuario, por nombre de usuario
requestid

Cualquier valor dado aquí se incluirá en la respuesta. Se puede utilizar para distinguir solicitudes.

servedby

Incluir el nombre del host que ha servido la solicitud en los resultados.

Type: boolean (details)
curtimestamp

Incluir la marca de tiempo actual en el resultado.

Type: boolean (details)
responselanginfo

Incluye los idiomas utilizados para uselang y errorlang en el resultado.

Type: boolean (details)
origin

Cuando se accede a la API usando una petición AJAX de distinto dominio (CORS), se establece este valor al dominio de origen. Debe ser incluido en cualquier petición pre-vuelo, y por lo tanto debe ser parte de la URI de la petición (no del cuerpo POST).

En las peticiones con autenticación, debe coincidir exactamente con uno de los orígenes de la cabecera Origin, por lo que debería ser algo como https://en.wikipedia.org o https://meta.wikimedia.org. Si este parámetro no coincide con la cabecera Origin, se devolverá una respuesta 403. Si este parámetro coincide con la cabecera Origin y el origen está en la lista blanca, se creará una cabecera Access-Control-Allow-Origin.

En las peticiones sin autenticación, introduce el valor *. Esto creará una cabecera Access-Control-Allow-Origin, pero el valor de Access-Control-Allow-Credentials será false y todos los datos que dependan del usuario estarán restringidos.

uselang

El idioma que se utilizará para las traducciones de mensajes. action=query&meta=siteinfo con siprop=languages devuelve una lista de códigos de idiomas. También puedes introducir user para usar la preferencia de idioma del usuario actual, o content para usar el idioma de contenido de esta wiki.

Predeterminado: user
variant

Variante del lenguaje. Solo funciona si el lenguaje original soporta conversión variante.

errorformat

Formato utilizado para la salida de texto de avisos y errores.

plaintext
Wikitext with HTML tags removed and entities replaced.
wikitext
Unparsed wikitext.
html
HTML
raw
Message key and parameters.
none
No text output, only the error codes.
bc
Format used prior to MediaWiki 1.29. errorlang and errorsuselocal are ignored.
Uno de los siguientes valores: bc, html, none, plaintext, raw, wikitext
Predeterminado: bc
errorlang

Idioma empleado para advertencias y errores. action=query&meta=siteinfo con siprop=languages devuelve una lista de códigos de idioma. Puedes especificar content para utilizar el idioma del contenido de esta wiki o uselang para utilizar el valor del parámetro uselang.

Predeterminado: uselang
errorsuselocal

Si se da, los textos de error emplearán mensajes localmente personalizados del espacio de nombres MediaWiki.

Type: boolean (details)
Permisos:
writeapi
Hacer uso de la API de escritura
Concedidos a: all, user y bot
apihighlimits
Usa límites más altos para consultas a través de la API (consultas lentas: 500; consultas rápidas: 5000). Los límites para las consultas lentas también se aplican a los parámetros multivalorados.
Concedidos a: bot y sysop

Tipos de datos

Input to MediaWiki should be NFC-normalized UTF-8. MediaWiki may attempt to convert other input, but this may cause some operations (such as edits with MD5 checks) to fail.

Parameters that take multiple values are normally submitted with the values separated using the pipe character, e.g. param=value1|value2 or param=value1%7Cvalue2. If a value must contain the pipe character, use U+001F (Unit Separator) as the separator and prefix the value with U+001F, e.g. param=%1Fvalue1%1Fvalue2.

Some parameter types in API requests need further explanation:

boolean

Boolean parameters work like HTML checkboxes: if the parameter is specified, regardless of value, it is considered true. For a false value, omit the parameter entirely.

expiry

Expiry values may be relative (e.g. 5 months or 2 weeks) or absolute (e.g. 2014-09-18T12:34:56Z). For no expiry, use infinite, indefinite, infinity or never.

timestamp

Timestamps may be specified in several formats, see the Timestamp library input formats documented on mediawiki.org for details. ISO 8601 date and time is recommended: 2001-01-15T14:56:00Z. Additionally, the string now may be used to specify the current timestamp.

Templated parameters

Templated parameters support cases where an API module needs a value for each value of some other parameter. For example, if there were an API module to request fruit, it might have a parameter fruits to specify which fruits are being requested and a templated parameter {fruit}-quantity to specify how many of each fruit to request. An API client that wants 1 apple, 5 bananas, and 20 strawberries could then make a request like fruits=apples|bananas|strawberries&apples-quantity=1&bananas-quantity=5&strawberries-quantity=20.

Créditos

Desarrolladores de la API:

  • Roan Kattouw (desarrollador principal, sep. 2007-2009)
  • Victor Vasiliev
  • Bryan Tong Minh
  • Sam Reed
  • Yuri Astrakhan (creador y desarrollador principal, sep. 2006-sep. 2007)
  • Brad Jorsch (desarrollador principal, 2013-actualidad)

Envía comentarios, sugerencias y preguntas a mediawiki-api@lists.wikimedia.org o informa de un error en https://phabricator.wikimedia.org/.