Ajuda da API MediaWiki
Esta é uma página de documentação da API MediaWiki gerada automaticamente.
Documentação e exemplos: https://www.mediawiki.org/wiki/Special:MyLanguage/API:Main_page
Módulo principal
- Fonte: MediaWiki
- Licença: GPL-2.0-or-later
Estado: A API do MediaWiki é uma interface madura e estável que é ativamente suportada e aprimorada. Por mais que tentemos evitar, ocasionalmente talvez precisemos fazer mudanças estruturais; inscreva-se na lista de discussão mediawiki-api-announce para ser informado acerca das atualizações.
Pedidos incorretos: Quando são enviados pedidos incorretos à API, será devolvido um cabeçalho HTTP com a chave "MediaWiki-API-Error" e depois tanto o valor desse cabeçalho como o código de erro devolvido serão definidos com o mesmo valor. Para mais informação, consulte API:Erros e avisos.
Testes: Para testar facilmente pedidos à API, visite Testes da API.
- action
Qual ação executar.
- acquiretempusername
- Adquirir um nome de utilizador para um utilizador temporário e armazená-lo na sessão atual, se a criação de contas temporárias estiver ativada e o utilizador atual não tiver sessão iniciada. Se já tiver sido armazenado um nome, devolve esse nome.
- block
- Bloquear um usuário.
- changeauthenticationdata
- Alterar os dados de autenticação para o usuário atual.
- changecontentmodel
- Alterar o modelo de conteúdo de uma página
- checktoken
- Verificar a validade de um token de action=query&meta=tokens.
- clearhasmsg
- Limpa a etiqueta
hasmsg
do usuário atual. - clientlogin
- Faça o login no wiki usando o fluxo interativo.
- compare
- Obter a diferença entre duas páginas.
- createaccount
- Criar uma nova conta de usuário.
- delete
- Excluir uma página.
- edit
- Criar e editar páginas.
- emailuser
- Envia e-mail para o usuário.
- expandtemplates
- Expande todas a predefinições em texto wiki.
- feedcontributions
- Retorna o feed de contribuições de um usuário.
- feedrecentchanges
- Retorna um feed de mudanças recentes.
- feedwatchlist
- Retornar um feed da lista de páginas vigiadas.
- filerevert
- Reverte um arquivo para uma versão antiga.
- help
- Mostra a ajuda para os módulos especificados.
- imagerotate
- Gira uma ou mais imagens.
- import
- Importar uma página de outra wiki ou de um arquivo XML.
- linkaccount
- Vincule uma conta de um provedor de terceiros ao usuário atual.
- login
- Faça login e obtenha cookies de autenticação.
- logout
- Faça o logout e limpe os dados da sessão.
- managetags
- Execute tarefas de gerenciamento relacionadas às tags de alteração.
- mergehistory
- Fundir históricos das páginas.
- move
- Mover uma página.
- opensearch
- Procure na wiki usando o protocolo OpenSearch.
- options
- Alterar as preferências do usuário atual.
- paraminfo
- Obter informações sobre módulos da API.
- parse
- Analisa o conteúdo e retorna a saída do analisador.
- patrol
- Patrulha uma página ou revisão.
- protect
- Modifica o nível de proteção de uma página.
- purge
- Limpe o cache para os títulos especificados.
- query
- Obtenha dados de e sobre o MediaWiki.
- removeauthenticationdata
- Remova os dados de autenticação para o usuário atual.
- resetpassword
- Envia um e-mail de redefinição de senha para o usuário atual.
- revisiondelete
- Excluir e recuperar revisões.
- rollback
- Desfazer a última edição para a página.
- rsd
- Exportar um esquema RSD (Really Simple Discovery).
- setnotificationtimestamp
- Atualize o timestamp de notificação para páginas vigiadas.
- setpagelanguage
- Mudar o idioma de uma página.
- tag
- Adicionar ou remover tags de alteração de revisões individuais ou entradas de log.
- unblock
- Desbloquear usuário.
- undelete
- Restaure as revisões de uma página excluída.
- unlinkaccount
- Remova uma conta de terceiros vinculada ao usuário atual.
- upload
- Carregue um arquivo ou obtenha o status dos carregamentos pendentes.
- userrights
- Alterar a associação de um grupo de usuários.
- validatepassword
- Valide uma senha de acordo as políticas de senha da wiki.
- watch
- Adicionar ou remover páginas da lista de páginas vigiadas do usuário atual.
- cspreport
- Interno. Usado por navegadores para denunciar violações da Política de Segurança de Conteúdo. Este módulo nunca deve ser usado, exceto quando usado automaticamente por um navegador web compatível com CSP.
- stashedit
- Interno. Prepare uma edição no cache compartilhado.
- Um dos seguintes valores: acquiretempusername, 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
- Padrão: help
- format
O formato da saída.
- json
- Dados de saída em formato JSON.
- jsonfm
- Dados de saída no formato JSON (pretty-print em HTML).
- none
- Nenhuma saída.
- php
- Dados de saída no formato PHP serializado.
- phpfm
- Dados de saída em formato serializado em PHP (pretty-print em HTML).
- rawfm
- Dados de saída, incluindo elementos de depuração, no formato JSON (pretty-print em HTML).
- xml
- Dados de saída em formato XML.
- xmlfm
- Dados de saída em formato XML (impressão bonita em HTML).
- Um dos seguintes valores: json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm
- Padrão: jsonfm
- maxlag
O atraso máximo pode ser usado quando o MediaWiki está instalado em um cluster replicado no banco de dados. Para salvar as ações que causam mais atraso na replicação do site, esse parâmetro pode fazer o cliente aguardar até que o atraso da replicação seja menor do que o valor especificado. Em caso de atraso excessivo, o código de erro maxlag é retornado com uma mensagem como Waiting for $host: $lag seconds lagged.
Veja Manual: Maxlag parameter para mais informações.- Tipo: inteiro
- smaxage
Define o cabeçalho HTTP de controle de cache
s-maxage
para esta quantidade de segundos. Erros não são armazenados em cache.- Tipo: inteiro
- O valor não pode ser inferior a 0.
- Padrão: 0
- maxage
Define o cabeçalho HTTP de controle de cache
max-age
para esta quantidade de segundos. Erros não são armazenados em cache.- Tipo: inteiro
- O valor não pode ser inferior a 0.
- Padrão: 0
- assert
Verifique se o usuário está logado se configurado para user, not logado se definido como anon ou tem o direito do usuário do bot se bot.
- Um dos seguintes valores: anon, bot, user
- assertuser
Verificar que o usuário atual é o utilizador nomeado.
- Tipo: usuário, por qualquer de nome de usuário e Usuário temporário
- requestid
Qualquer valor dado aqui será incluído na resposta. Pode ser usado para distinguir requisições.
- servedby
Incluir nos resultados o nome do servidor que serviu o pedido.
- Tipo: booleano (detalhes)
- curtimestamp
Inclui o timestamp atual no resultado.
- Tipo: booleano (detalhes)
- responselanginfo
Inclua os idiomas usados para uselang e errorlang no resultado.
- Tipo: booleano (detalhes)
- origin
Ao acessar a API usando uma solicitação AJAX por domínio cruzado (CORS), defina isto como o domínio de origem. Isto deve estar incluso em toda solicitação pre-flight, sendo portanto parte do URI da solicitação (ao invés do corpo do POST).
Para solicitações autenticadas, isto deve corresponder a uma das origens no cabeçalho
Origin
, para que seja algo como https://pt.wikipedia.org ou https://meta.wikimedia.org. Se este parâmetro não corresponder ao cabeçalhoOrigin
, uma resposta 403 será retornada. Se este parâmetro corresponder ao cabeçalhoOrigin
e a origem for permitida (whitelisted), os cabeçalhosAccess-Control-Allow-Origin
eAccess-Control-Allow-Credentials
serão definidos.Para solicitações não autenticadas, especifique o valor *. Isto fará com que o cabeçalho
Access-Control-Allow-Origin
seja definido, porém oAccess-Control-Allow-Credentials
seráfalse
e todos os dados específicos para usuários tornar-se-ão restritos.- uselang
Linguagem a ser usada para traduções de mensagens. action=query&meta=siteinfo com siprop=languages retorna uma lista de códigos de idioma ou especifique user para usar a preferência de idioma do usuário atual ou especifique content para usar o idioma de conteúdo desta wiki.
- Padrão: user
- variant
Variante da língua. Só funciona se a língua de base suportar a conversão de variantes.
- errorformat
Formato a ser usado aviso e saída de texto de erro.
- Texto simples
- Texto wiki com tags HTML removidas e entidades substituídas.
- Wikitext
- Unparsed wikitext.
- html
- HTML.
- Bruto
- chave e parâmetros da mensagem.
- Nenhum
- sem saída de texto, apenas os códigos de erro.
- Bc
- Formato usado antes do MediaWiki 1.29. errorlang e errorsuselocal são ignorados.
- plaintext
- Texto wiki com os elementos HTML removidos e as entidades substituídas.
- wikitext
- Wikitexto não analisado.
- html
- HTML
- raw
- Chave e parâmetros da mensagem.
- none
- Sem saída de texto, apenas os códigos de erro.
- bc
- Formato usado antes do MediaWiki 1.29. errorlang e errorsuselocal serão ignorados.
- Um dos seguintes valores: bc, html, none, plaintext, raw, wikitext
- Padrão: bc
- errorlang
Linguagem a utilizar para avisos e erros. action=query&meta=siteinfo com siprop=languages retorna uma lista de códigos de idioma ou especifique content para usar o idioma do conteúdo desta wiki ou especifique uselang para usar o mesmo valor que o parâmetro uselang.
- Padrão: uselang
- errorsuselocal
Se for dado, os textos de erro usarão mensagens customizadas localmente a partir do espaço nominal MediaWiki.
- Tipo: booleano (detalhes)
- Ajuda para o módulo principal.
- api.php?action=help [abrir na página de testes]
- Toda a ajuda em uma página.
- api.php?action=help&recursivesubmodules=1 [abrir na página de testes]
Tipos de dados
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 da predefinição
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:
- Yuri Astrakhan (criador, desenvolvedor-chefe Set 2006–Set 2007)
- Roan Kattouw (desenvolvedor-chefe Set 2007–2009)
- Victor Vasiliev
- Bryan Tong Minh
- Sam Reed
- Brad Jorsch (desenvolvedor-chefe 2013–2020)
Por favor, envie seus comentários, sugestões e perguntas para mediawiki-api@lists.wikimedia.org ou apresente um relatório de erro em https://phabricator.wikimedia.org/.