Ajuda da API do MediaWiki

Esta é uma página de documentação da API do MediaWiki gerada automaticamente.

Documentação e exemplos: https://www.mediawiki.org/wiki/Special:MyLanguage/API:Main_page

Módulo principal

Estado: A API do MediaWiki é uma interface consolidada e estável que é constantemente suportada e melhorada. Embora tentemos evitá-lo, podemos ocasionalmente realizar alterações disruptivas. Inscreva-se na lista de distribuição mediawiki-api-announce para receber notificações 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.

Parâmetros específicos:
action

A operação a ser realizada.

abusefiltercheckmatch
Verificar se um filtro de abusos coincide com um conjunto de variáveis, uma edição, ou um evento do registo de abusos.
abusefilterchecksyntax
Verificar a sintaxe de um filtro de abusos.
abusefilterevalexpression
Avalia uma expressão do filtro de abusos.
abusefilterunblockautopromote
Desbloqueia um utilizador de receber autopromoções em consequência do filtro de abusos.
abuselogprivatedetails
Ver detalhes privados de uma entrada do registo de abusos.
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.
antispoof
Verificar um nome de utilizador contra as verificações de normalização do AntiSpoof.
block
Bloquear um utilizador.
centralauthtoken
Obter uma chave centralauthtoken para fazer um pedido autenticado a uma wiki anexada.
centralnoticecdncacheupdatebanner
Pedir a purga de conteúdo de faixas armazenado na cache CDN (cliente) para utilizadores anónimos, para a faixa e língua pedidos
centralnoticechoicedata
Obter dados necessários para escolher uma faixa para um determinado projeto e língua.
centralnoticequerycampaign
Obter todas as configurações de um aviso.
changeauthenticationdata
Alterar os dados de autenticação do utilizador atual.
changecontentmodel
Alterar o modelo de conteúdo de uma página
checktoken
Verificar a validade de uma chave a partir de action=query&meta=tokens.
cirrus-config-dump
Cópia em ficheiro da configuração do CirrusSearch.
cirrus-mapping-dump
Cópia em ficheiro do mapeamento do CirrusSearch para esta wiki.
cirrus-profiles-dump
Cópia em ficheiro dos perfis do CirrusSearch para esta wiki.
cirrus-settings-dump
Cópia em ficheiro das configurações do CirrusSearch para esta wiki.
clearhasmsg
Limpa a indicação hasmsg do utilizador atual.
clientlogin
Entrar na wiki usando o processo interativo.
compare
Obter a diferença entre duas páginas.
createaccount
Criar uma conta de utilizador nova.
createlocalaccount
Forçar a criação de uma conta local. A conta central tem de existir.
delete
Eliminar uma página.
deleteglobalaccount
Eliminar um utilizador global.
discussiontoolsedit
Publicar uma mensagem numa página de discussão.
discussiontoolsfindcomment
Encontrar um comentário pelo seu identificador ou nome.
discussiontoolsgetsubscriptions
Obter o estado de subscrição dos tópicos especificados.
discussiontoolssubscribe
Subscrever (ou cancelar a subscrição) para receber notificações sobre um tópico.
echomarkread
Marcar notificações como lidas para o utilizador atual.
echomarkseen
Marcar as notificações como vistas pelo utilizador atual.
echomute
Silenciar ou remover o silenciamento de notificações originadas por certos utilizadores ou páginas.
edit
Criar e editar páginas.
editmassmessagelist
Editar uma lista de entrega de mensagens em massa.
emailuser
Enviar correio eletrónico a um utilizador.
expandtemplates
Expande todas as predefinições existentes num texto wiki.
featuredfeed
Devolve um feed de conteúdos em destaque.
feedcontributions
Devolve um feed das contribuições do utilizador.
feedrecentchanges
Devolve um feed das mudanças recentes.
feedwatchlist
Devolve um feed das páginas vigiadas.
filerevert
Reverter um ficheiro para uma versão antiga.
globalblock
Bloquear ou desbloquear globalmente um utilizador.
globalpreferenceoverrides
Alterar as sobreposições locais das preferências globais do utilizador corrente.
globalpreferences
Alterar as preferências globais do utilizador atual.
globaluserrights
Adicionar ou remover um utilizador, de grupos globais.
help
Apresentar ajuda para os módulos especificados.
imagerotate
Este módulo foi desativado.
import
Importar uma página de outra wiki ou de um ficheiro XML.
jsonconfig
Permite o acesso direto ao subsistema JsonConfig.
languagesearch
Pesquisar nomes de línguas em qualquer sistema de escrita.
linkaccount
Ligar uma conta de um fornecedor terceiro ao utilizador atual.
login
Iniciar uma sessão e obter cookies de autenticação.
logout
Terminar a sessão e limpar os dados da sessão.
managetags
Executar tarefas de gestão relacionadas com etiquetas de modificação.
massmessage
Enviar uma mensagem para uma lista de páginas.
mergehistory
Fundir o historial de páginas.
move
Mover uma página.
opensearch
Pesquisar a wiki usando o protocolo OpenSearch.
options
Alterar as preferências do utilizador atual.
paraminfo
Obter informação sobre os módulos da API.
parse
Faz a análise sintática do conteúdo e devolve o resultado da análise.
patrol
Patrulhar uma página ou revisão.
protect
Alterar o nível de proteção de uma página.
purge
Limpar a cache para os títulos especificados.
query
Obter dados de, e sobre, o MediaWiki.
removeauthenticationdata
Remover os dados de autenticação do utilizador atual.
resetpassword
Enviar a um utilizador uma mensagem eletrónica de reinício da palavra-passe.
revisiondelete
Eliminar e restaurar revisões.
rollback
Desfazer a última edição da página.
rsd
Exportar um esquema (schema) RSD (Really Simple Discovery).
setglobalaccountstatus
Ocultar ou bloquear (ou revelar ou desbloquear) uma conta de utilizador global.
setnotificationtimestamp
Atualizar a data e hora de notificação de alterações às páginas vigiadas.
setpagelanguage
Alterar a língua de uma página.
shortenurl
Reduzir um URL longo para um mais curto.
sitematrix
Obter a lista de sítios Wikimedia.
spamblacklist
Validar um ou mais URL contra a lista de barramento de spam.
streamconfigs
Expõe a configuração da transmissão de eventos. Só devolve format=json com formatversion=2.
strikevote
Permite que os administradores anulem ou desfaçam a anulação de um voto.
tag
Adicionar ou remover as etiquetas de modificação aplicadas a revisões individuais ou a entradas do registo.
templatedata
Obtém dados armazenados pela extensão TemplateData.
thank
Enviar uma notificação de agradecimento a um editor.
titleblacklist
Validar um título de página, nome de ficheiro ou nome de utilizador contra a lista negra.
torblock
Verificar se um endereço IP está bloqueado pelo Tor.
transcodereset
Os utilizadores com o privilégio 'transcode-reset' podem reiniciar e voltar a executar uma tarefa de transcodificação.
unblock
Desbloquear um utilizador.
undelete
Restaurar revisões de uma página eliminada.
unlinkaccount
Remover do utilizador atual uma conta ligada de uma wiki terceira.
upload
Carregar um ficheiro, ou obter o estado dos carregamentos pendentes.
userrights
Alterar os grupos a que um utilizador pertence.
validatepassword
Validar uma palavra-passe face às regras para palavras-passe da wiki.
watch
Adicionar ou remover páginas da lista de páginas vigiadas do utilizador atual.
webapp-manifest
Devolve um manifesto de aplicação da Internet.
webauthn
Módulo da API para comunicação entre servidor e cliente durante o processo de registo e autenticação.
bouncehandler
Interno. Receber um correio de devolução e processá-lo, para lidar com o erro de destinatário.
categorytree
Interno. Módulo interno para a extensão "Árvore de categorias" (CategoryTree).
cirrus-check-sanity
Interno. Reports on the correctness of a range of page ids in the search index
collection
Interno. Módulo da API para realizar várias operações na coleção de um utilizador da wiki.
cspreport
Interno. Usado por browsers para reportar violações da norma "Content Security Policy". Este módulo nunca deve ser usado, exceto quando utilizado automaticamente por um browser compatível com a CSP.
discussiontoolscompare
Interno. Obter informações sobre alterações de comentários entre duas revisões de página.
discussiontoolspageinfo
Interno. Devolve os metadados necessários para inicializar as ferramentas de discussão.
discussiontoolspreview
Interno. Antever uma mensagem numa página de discussão.
editcheckreferenceurl
Interno. Check the status of a URL for use as a reference.
fancycaptchareload
Interno. Gerar novo FancyCaptcha.
jsondata
Interno. Obter os dados JSON localizados.
oathvalidate
Interno. Validar uma chave de autenticação de dois fatores (OATH).
parser-migration
Interno. Fazer a análise sintática de uma página com duas configurações diferentes.
readinglists
Interno. Operações de escrita das listas de leitura.
sanitize-mapdata
Interno. Realiza a validação de dados para a extensão Kartographer
scribunto-console
Interno. Módulo interno para responder a pedidos XHR vindos da consola Scribunto.
securepollauth
Interno. Allows a remote wiki to authenticate users before granting access to vote in the election.
stashedit
Interno. Preparar uma edição na cache partilhada.
timedtext
Interno. Fornece conteúdo de legendas para ser usado por elementos <track>
ulslocalization
Interno. Obter a localização de ULS na língua indicada.
ulssetlang
Interno. Atualizar a língua de interface preferida do utilizador.
visualeditor
Interno. Devolve o HTML5 para uma página a partir do serviço Parsoid.
visualeditoredit
Interno. Gravar no MediaWiki uma página HTML5 (convertida para texto wiki através do serviço Parsoid).
wikimediaeventsblockededit
Interno. Informações do registo sobre tentativas de edição bloqueadas
Um dos seguintes valores: abusefiltercheckmatch, abusefilterchecksyntax, abusefilterevalexpression, abusefilterunblockautopromote, abuselogprivatedetails, acquiretempusername, antispoof, block, centralauthtoken, centralnoticecdncacheupdatebanner, centralnoticechoicedata, centralnoticequerycampaign, changeauthenticationdata, changecontentmodel, checktoken, cirrus-config-dump, cirrus-mapping-dump, cirrus-profiles-dump, cirrus-settings-dump, clearhasmsg, clientlogin, compare, createaccount, createlocalaccount, delete, deleteglobalaccount, discussiontoolsedit, discussiontoolsfindcomment, discussiontoolsgetsubscriptions, discussiontoolssubscribe, echomarkread, echomarkseen, echomute, edit, editmassmessagelist, emailuser, expandtemplates, featuredfeed, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, globalblock, globalpreferenceoverrides, globalpreferences, globaluserrights, help, imagerotate, import, jsonconfig, languagesearch, linkaccount, login, logout, managetags, massmessage, mergehistory, move, opensearch, options, paraminfo, parse, patrol, protect, purge, query, removeauthenticationdata, resetpassword, revisiondelete, rollback, rsd, setglobalaccountstatus, setnotificationtimestamp, setpagelanguage, shortenurl, sitematrix, spamblacklist, streamconfigs, strikevote, tag, templatedata, thank, titleblacklist, torblock, transcodereset, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, watch, webapp-manifest, webauthn, bouncehandler, categorytree, cirrus-check-sanity, collection, cspreport, discussiontoolscompare, discussiontoolspageinfo, discussiontoolspreview, editcheckreferenceurl, fancycaptchareload, jsondata, oathvalidate, parser-migration, readinglists, sanitize-mapdata, scribunto-console, securepollauth, stashedit, timedtext, ulslocalization, ulssetlang, visualeditor, visualeditoredit, wikimediaeventsblockededit
Valor por omissão: help
format

O formato do resultado.

json
Produzir os dados de saída no formato JSON.
jsonfm
Produzir os dados de saída em formato JSON (realce sintático em HTML).
none
Não produzir nada.
php
Produzir os dados de saída em formato PHP seriado.
phpfm
Produzir os dados de saída em formato PHP seriado (realce sintático em HTML).
rawfm
Produzir os dados de saída, incluindo elementos para despiste de erros, em formato JSON (realce sintático em HTML).
xml
Produzir os dados de saída em formato XML.
xmlfm
Produzir os dados de saída em formato XML (realce sintático em HTML).
Um dos seguintes valores: json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm
Valor por omissão: jsonfm
maxlag

O atraso máximo pode ser usado quando o MediaWiki é instalado num cluster de bases de dados replicadas. Para impedir que as operações causem ainda mais atrasos de replicação do sítio, este parâmetro pode fazer o cliente aguardar até que o atraso de replicação seja inferior ao valor especificado. Caso o atraso atual exceda esse valor, o código de erro maxlag é devolvido com uma mensagem como À espera do servidor $host: $lag segundos de atraso.
Consulte Manual: Parâmetro maxlag para mais informações.

Tipo: inteiro
smaxage

Definir no cabeçalho HTTP s-maxage de controlo da cache este número de segundos. Os erros nunca são armazenados na cache.

Tipo: inteiro
O valor não pode ser inferior a 0.
Valor por omissão: 0
maxage

Definir no cabeçalho HTTP max-age de controlo da cache este número de segundos. Os erros nunca são armazenados na cache.

Tipo: inteiro
O valor não pode ser inferior a 0.
Valor por omissão: 0
assert

Verificar que o utilizador tem sessão iniciada (inclusive possivelmente como utilizador temporário) se definido como user, que não tem sessão iniciada se definido como anon ou que tem o direito de utilizador de robô se bot.

Um dos seguintes valores: anon, bot, user
assertuser

Verificar que o utilizador atual é o utilizador nomeado.

Tipo: utilizador, por um de entre nome de utilizador e Utilizador temporário
requestid

Qualquer valor fornecido aqui será incluído na resposta. Pode ser usado para distinguir pedidos.

servedby

Incluir nos resultados o nome do servidor que serviu o pedido.

Tipo: booliano (detalhes)
curtimestamp

Incluir a data e hora atuais no resultado.

Tipo: booliano (detalhes)
responselanginfo

Incluir as línguas usadas para uselang e errorlang no resultado.

Tipo: booliano (detalhes)
origin

Ao aceder à API usando um pedido AJAX entre domínios (CORS), coloque aqui o domínio de origem. Isto tem de ser incluído em todas as verificações prévias e, portanto, tem de fazer parte do URI do pedido (e não do conteúdo do POST).

Para pedidos autenticados, este valor tem de corresponder de forma exata a um dos cabeçalhos Origin, portanto, tem de ser algo como https://en.wikipedia.org ou https://meta.wikimedia.org. Se este parâmetro não for igual ao cabeçalho Origin, será devolvida a resposta 403. Se este parâmetro for igual ao cabeçalho Origin e a origem for permitida, os cabeçalhos Access-Control-Allow-Origin e Access-Control-Allow-Credentials serão preenchidos.

Para pedidos não autenticados, especifique o valor *. Isto fará com que o cabeçalho Access-Control-Allow-Origin seja preenchido, mas Access-Control-Allow-Credentials terá o valor false e o acesso a todos os dados específicos do utilizador está restringido.

uselang

A língua a ser usada nas traduções de mensagens. action=query&meta=siteinfo com siprop=languages devolve uma lista de códigos de língua, ou especifique user para usar a língua nas preferências do utilizador atual, ou especifique content para usar a língua de conteúdo 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

O formato a ser usado no texto de avisos e erros

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.
Um dos seguintes valores: bc, html, none, plaintext, raw, wikitext
Valor por omissão: bc
errorlang

A língua a ser usada para avisos e erros. action=query&meta=siteinfo com siprop=languages devolve uma lista de códigos de língua, ou especifique content para usar a língua de conteúdo desta wiki, ou especifique uselang para usar o mesmo valor que o parâmetro uselang.

Valor por omissão: uselang
errorsuselocal

Se fornecido, os textos de erro utilizarão mensagens personalizadas localmente do espaço nominal MediaWiki.

Tipo: booliano (detalhes)
centralauthtoken

Ao aceder à API usando um pedido AJAX entre domínios (CORS), use este parâmetro para se autenticar como o utilizador SUL atual. Use action=centralauthtoken nesta wiki para obter a chave, antes de efetuar o pedido CORS. Cada chave só pode ser usada uma vez e expira após 10 segundos. Isto tem de ser incluído em todas as verificações prévias, e portanto tem de fazer parte do URI do pedido (e não do conteúdo do POST).

Permissões:
writeapi
Usar a API de escrita
Concedidas a: all, user e bot
apihighlimits
Usar limites mais altos em consultas da API (consultas lentas: 500; consultas rápidas: 5000). Os limites para consultas lentas também se aplicam a parâmetros com vários valores.
Concedidas a: bot e sysop

Tipo 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 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

Programadores da API:

  • Yuri Astrakhan (criador, programador principal, set 2006–set 2007)
  • Roan Kattouw (programador principal, set 2007–2009)
  • Victor Vasiliev
  • Bryan Tong Minh
  • Sam Reed
  • Brad Jorsch (programador principal, 2013–2020)

Pode enviar os seus comentários, sugestões e perguntas para o endereço mediawiki-api@lists.wikimedia.org, ou reportar quaisquer defeitos que encontre em https://phabricator.wikimedia.org/.