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
- Fuente: MediaWiki
- Licencia: GPL-2.0-or-later
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.
Pruebas: Para facilitar la comprobación de las solicitudes de API, consulta Special:ApiSandbox.
- action
Qué acción se realizará.
- acquiretempusername
- Adquiera un nombre de usuario de usuario temporal y guárdelo en la sesión actual, si la creación de una cuenta temporal está habilitada y el usuario actual está desconectado. Si un nombre ya ha sido guardado, devuelve el mismo nombre.
- 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.
- echocreateevent
- Activar manualmente una notificación a un usuario
- echomarkread
- Marcar las notificaciones del usuario actual como leídas.
- echomarkseen
- Marcar notificaciones como vistas para el usuario actual.
- echomute
- Silenciar o anular el silencio de las notificaciones de determinados usuarios o páginas.
- 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.
- infobox
- This module provides infobox parser
- 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.
- smitespamanalyze
- Get a list of possible spam pages from Extension:SmiteSpam.
- smitespamtrustuser
- Trust a user so that SmiteSpam ignores pages created by the user.
- 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.
- editcheckreferenceurl
- Interno. Check the status of a URL for use as a reference.
- 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.
- 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: acquiretempusername, block, changeauthenticationdata, changecontentmodel, checktoken, clearhasmsg, clientlogin, compare, createaccount, delete, echocreateevent, echomarkread, echomarkseen, echomute, edit, emailuser, expandtemplates, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, help, imagerotate, import, infobox, linkaccount, login, logout, managetags, mergehistory, move, opensearch, options, paraminfo, parse, patrol, protect, purge, query, removeauthenticationdata, resetpassword, revisiondelete, rollback, rsd, setnotificationtimestamp, setpagelanguage, smitespamanalyze, smitespamtrustuser, tag, templatedata, titleblacklist, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, watch, webapp-manifest, categorytree, cspreport, editcheckreferenceurl, oathvalidate, scribunto-console, stashedit, 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
- The value must be no less than 0.
- 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
- The value must be no less than 0.
- 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 cualquiera de nombre de usuario y Usuario temporal
- 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 cabeceraOrigin
, se devolverá una respuesta 403. Si este parámetro coincide con la cabeceraOrigin
y el origen está en la lista blanca, se creará una cabeceraAccess-Control-Allow-Origin
.En las peticiones sin autenticación, introduce el valor *. Esto creará una cabecera
Access-Control-Allow-Origin
, pero el valor deAccess-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&siprop=languages devuelve una lista de códigos.Puede especificar el usuario para usar la preferencia de idioma del usuario actual o contenido 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&siprop=languages devuelve una lista de códigos de idioma. 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)
- Ayuda del módulo principal
- api.php?action=help [abrir en la zona de pruebas]
- Toda la ayuda en una página
- api.php?action=help&recursivesubmodules=1 [abrir en la zona de pruebas]
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/.