Axuda da API de MediaWiki
Esta é unha páxina de documentación da API de MediaWiki xerada automaticamente.
Documentación e exemplos: https://www.mediawiki.org/wiki/API
Módulo principal
- Fonte: MediaWiki
- Licenza: GPL-2.0-or-later
Estado: A API de MediaWiki é interface estable e consolidada que é soportada e mellorada constantemente. Aínda que intentamos evitalo, ocasionalmente precisamos facer cambios importantes, pode apuntarse na lista de discusión mediawiki-api-announce para estar informado acerca das actualizacións.
Solicitudes incorrectas: Cando se envían solicitudes incorrectas á API, envíase unha cabeceira HTTP coa chave "MediaWiki-API-Error" e, a seguir, tanto o valor da cabeceira como o código de erro retornado serán definidos co mesmo valor. Para máis información, consulte API: Erros e avisos.
Test: Para facilitar as probas das peticións da API, consulte Special:ApiSandbox.
- action
Que acción se realizará.
- block
- Bloquear un usuario.
- changeauthenticationdata
- Cambiar os datos de autenticación do usuario actual.
- changecontentmodel
- Alterar o modelo de conteúdo de uma página
- checktoken
- Verificar a validez dun identificador de action=query&meta=tokens.
- clearhasmsg
- Limpar a bandeira
hasmsg
para o usuario actual - clientlogin
- Conectarse á wiki usando o fluxo interactivo.
- compare
- Obter as diferencias entre dúas páxinas.
- createaccount
- Crear unha nova conta de usuario.
- delete
- Borrar a páxina.
- edit
- Crear e editar páxinas.
- emailuser
- Enviar un correo electrónico a un usuario.
- expandtemplates
- Expandir tódolos modelos dentro do wikitexto.
- feedcontributions
- Devolve a lista de contribucións dun usuario.
- feedrecentchanges
- Devolve un ficheiro de cambios recentes.
- feedwatchlist
- Devolve o fluxo dunha lista de vixiancia.
- filerevert
- Revertir o ficheiro a unha versión anterior.
- help
- Amosar axuda para os módulos indicados.
- imagerotate
- Xirar unha ou máis imaxes.
- import
- Importar unha páxina doutra wiki, ou dun ficheiro XML.
- linkaccount
- Vincular unha conta dun provedor externo ó usuario actual.
- login
- Iniciar sesión e obter as cookies de autenticación.
- logout
- Terminar e limpar datos de sesión.
- managetags
- Realizar tarefas de xestión relacionadas coa modificación de etiquetas.
- mergehistory
- Fusionar os historiais das páxinas.
- move
- Mover unha páxina.
- opensearch
- Buscar no wiki mediante o protocolo OpenSearch.
- options
- Cambiar as preferencias do usuario actual.
- paraminfo
- Obter información sobre módulos API.
- parse
- Fai a análise sintáctica do contido e devolve o resultado da análise.
- patrol
- Patrullar unha páxina ou edición.
- protect
- Cambiar o nivel de protección dunha páxina.
- purge
- Borrar a caché para os títulos indicados.
- query
- Consultar datos de e sobre MediaWiki.
- removeauthenticationdata
- Elimina os datos de autenticación do usuario actual.
- resetpassword
- Envía un correo de inicialización de contrasinal a un usuario.
- revisiondelete
- Borrar e restaurar revisións.
- rollback
- Desfacer a última edición da páxina.
- rsd
- Exportar un esquema RSD (Really Simple Discovery, Descubrimento Moi Simple).
- setnotificationtimestamp
- Actualizar a data e hora de notificación das páxinas vixiadas.
- setpagelanguage
- Cambiar a lingua dunha páxina.
- tag
- Engadir ou eliminar etiquetas de cambio de revisións individuais ou entradas de rexistro.
- unblock
- Desbloquear un usuario.
- undelete
- Restaurar modificacións dunha páxina borrada.
- unlinkaccount
- Elimina unha conta vinculada do usuario actual.
- upload
- Subir un ficheiro, ou obter o estado das subas pendentes.
- userrights
- Cambiar a pertencia dun usuario a un grupo.
- validatepassword
- Valida un contrasinal contra as políticas de contrasinais da wiki.
- watch
- Engadir ou borrar páxinas da lista de vixiancia do usuario actual.
- cspreport
- Interno. Usado polos navegadores para informar de violacións da política de confidencialidade de contido. Este módulo non debe se usado nunca, excepto cando é usado automaticamente por un navegador web compatible con CSP.
- stashedit
- Interno. Preparar unha edición na caché compartida.
- visualeditor
- Interno. Devolve o código HTML5 para unha páxina do servizo Parsoid.
- visualeditoredit
- Interno. Gardar unha páxina HTML5 en MediaWiki (convertida en texto wiki mediante o servizo do Parsoid).
- Un valor dos seguintes valores: block, changeauthenticationdata, changecontentmodel, checktoken, clearhasmsg, clientlogin, compare, createaccount, delete, edit, emailuser, expandtemplates, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, help, imagerotate, import, linkaccount, login, logout, managetags, mergehistory, move, opensearch, options, paraminfo, parse, patrol, protect, purge, query, removeauthenticationdata, resetpassword, revisiondelete, rollback, rsd, setnotificationtimestamp, setpagelanguage, tag, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, watch, cspreport, stashedit, visualeditor, visualeditoredit
- Valor por omissão: help
- format
O formato de saída.
- json
- Datos de saída en formato JSON.
- jsonfm
- Datos de saída en formato JSON(impresión en HTML).
- none
- Ningunha saída.
- php
- Datos de saída en formato serializado de PHP.
- phpfm
- Datos de saída en formato serializado de PHP(impresión en HTML).
- rawfm
- Datos de saída, incluíndo os elementos de depuración, en formato JSON (impresión en HTML).
- xml
- Datos de saída en formato XML.
- xmlfm
- Datos de saída en formato XML(impresión en HTML).
- Un valor dos seguintes valores: json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm
- Valor por omissão: jsonfm
- maxlag
O retardo máximo pode usarse cando MediaWiki está instalada nun cluster de base de datos replicadas. Para gardar accións que causen calquera retardo máis de replicación do sitio, este parámetro pode facer que o cliente espere ata que o retardo de replicación sexa menor que o valor especificado. No caso de retardo excesivo, é devolto o código de erro maxlag cunha mensaxe como esperando por $host: $lag segundos de retardo.
Para máis información, ver Manual: Maxlag parameter.- Tipo: inteiro
- smaxage
Fixar a cabeceira HTTP de control de caché
s-maxage
a eses segundos. Os erros nunca se gardan na caché.- Tipo: inteiro
- Valor por omissão: 0
- maxage
Fixar a cabeceira HTTP de control de caché
max-age
a eses segundos. Os erros nunca se gardan na caché.- Tipo: inteiro
- Valor por omissão: 0
- assert
Verificar se o usuario está conectado como usuario ou ten a marca de bot.
- Un valor dos seguintes valores: anon, bot, user
- assertuser
Verificar que o usuario actual é o usuario nomeado.
- Tipo: usuario, por nome de usuario
- requestid
Calquera valor dado aquí será incluído na resposta. Pode usarse para distingir peticións.
- servedby
Inclúa o nome do servidor que servía a solicitude nos resultados.
- Tipo: booliano (detalhes)
- curtimestamp
Incluir a marca de tempo actual no resultado.
- Tipo: booliano (detalhes)
- responselanginfo
Incluír no resultado as linguas usada para uselang e errorlang.
- Tipo: booliano (detalhes)
- origin
Cando se accede á API usando unha petición AJAX entre-dominios (CORS), inicializar o parámetro co dominio orixe. Isto debe incluírse en calquera petición pre-flight, e polo tanto debe ser parte da petición URI (non do corpo POST). Para peticións autenticadas, isto debe coincidir exactamente cunha das orixes na cabeceira
Origin
, polo que ten que ser fixado a algo como https://en.wikipedia.org ou https://meta.wikimedia.org. Se este parámetro non coincide coa cabeceiraOrigin
, devolverase unha resposta 403. Se este parámetro coincide coa cabeceiraOrigin
e a orixe está na lista branca, as cabeceirasAccess-Control-Allow-Origin
eAccess-Control-Allow-Credentials
serán fixadas.Para peticións non autenticadas, especifique o valor *. Isto fará que se fixe a cabeceira
Access-Control-Allow-Origin
, peroAccess-Control-Allow-Credentials
seráfalse
e todos os datos específicos do usuario serán ocultados.- uselang
Linga a usar para a tradución de mensaxes. action=query&meta=siteinfo con siprop=languages devolve unha lista de códigos de lingua, ou especificando user coa preferencia de lingua do usuario actual, ou especificando content para usar a lingua do contido desta wiki.
- Valor por omissão: user
- variant
Variante da língua. Só funciona se a língua de base suportar a conversão de variantes.
- errorformat
Formato a usar para a saída do texto de aviso e de erroː
- plaintext
- texto wiki sen as etiquetas HTML e coas entidades substituídas.
- wikitext
- texto wiki sen analizar.
- html
- HTML.
- raw
- Clave de mensaxe e parámetros.
- none
- Sen saída de texto, só os códigos de erro.
- bc
- Formato utilizado antes de MediaWiki 1.29. errorlang e errorsuselocal non se teñen en conta.
- plaintext
- Texto wiki com os elementos HTML removidos e as entidades substituídas.
- wikitext
- Texto wiki sem análise sintática.
- html
- HTML
- raw
- Chave e parâmetros da mensagem.
- none
- Sem saída de texto, só os códigos de erro.
- bc
- Formato usado antes do MediaWiki 1.29. errorlang e errorsuselocal são ignorados.
- Un valor dos seguintes valores: bc, html, none, plaintext, raw, wikitext
- Valor por omissão: bc
- errorlang
Lingua usada para advertencias e erros. action=query&meta=siteinfo con siprop=languages devolve unha lista de códigos de lingua. Pode especificar content para utilizar a lingua do contido deste wiki ou uselang para utilizar o mesmo valor que o do parámetro uselang.
- Valor por omissão: uselang
- errorsuselocal
Se se indica, os textos de erro empregarán mensaxes adaptadas á lingua do espazo de nomes MediaWiki.
- Tipo: booliano (detalhes)
- Axuda para o módulo principal
- api.php?action=help [abrir en zona de probas]
- Toda a axuda nunha páxina
- api.php?action=help&recursivesubmodules=1 [abrir en zona de probas]
Tipos de datos
Os dados de entrada do MediaWiki devem estar no formato UTF-8 na forma normalizada NFC. O MediaWiki pode tentar converter outros formatos, mas esta conversão pode causar a falha de algumas operações (tais como edições com verificações MD5).
Os parâmetros que aceitam mais do que um valor são normalmente fornecidos com os valores separados por uma barra vertical (pipe), por exemplo parâmetro=valor1|valor2 ou parâmetro=valor1%7Cvalor2. Se um valor tiver de conter a barra vertical, use U+001F (separador de unidades) como separador e prefixe o valor com U+001F, por exemplo parâmetro=%1Fvalor1%1Fvalor2.
Alguns tipos de parâmetros nos pedidos da API requerem mais explicações.
- boolean
Os parâmetros boolianos funcionam tal como as caixas de seleção em HTML: se o parâmetro for especificado, independentemente do seu valor, é considerado verdadeiro. Para especificar um valor falso, omita completamente o parâmetro.
- expiry
Os valores de expiração podem ser relativos (p. ex. 5 meses ou 2 semanas) ou absolutos (p. ex. 2014-09-18T12:34:56Z). Para não haver expiração use infinite (infinito), indefinite (indefinido), infinity (infinidade) ou never (nunca).
- timestamp
Datas e horas podem ser especificadas em vários formatos (consulte os formatos de entrada para datas e horas documentados em mediawiki.org para obter mais detalhes). É recomendada a utilização do formato de data e hora ISO 8601: 2001-01-15T14:56:00Z. Adicionalmente, pode ser usado o texto now para especificar a data e hora atual.
Parâmetros modelados
Os parâmetros modelados usam-se nos casos em que um módulo da API necessita de um valor para cada valor de um outro parâmetro. Por exemplo, se existisse um módulo da API para encomendar fruta, poderia ter um parâmetro frutas para especificar as frutas que estão a ser encomendadas e um parâmetro modelado quantidade-de-{fruta} para especificar quanto de cada fruta. Um cliente da API que pretenda 1 maçã, 5 bananas e 20 morangos pode então fazer um pedido como frutas=maçãs|bananas|morangos&quantidade-de-maçãs=1&quantidade-de-bananas=5&quantidade-de-morangos=20.
Créditos
Desenvolvedores da API:
- Roan Kattouw (desenvolvedor principal, set. 2007-2009)
- Victor Vasiliev
- Bryan Tong Minh
- Sam Reed
- Yuri Astrakhan (creador e desenvolvedor principal, set. 2006-sep. 2007)
- Brad Jorsch (desenvolvedor principal, 2013-actualidade)
Envía comentarios, suxerencias e preguntas a mediawiki-api@lists.wikimedia.org ou informa dun erro en https://phabricator.wikimedia.org/.