Справка MediaWiki API

Это автоматически сгенерированная страница документации MediaWiki API.

Документация и примеры: https://www.mediawiki.org/wiki/Special:MyLanguage/API:Main_page

Главный модуль

Статус: MediaWiki API — зрелый и стабильный интерфейс, активно поддерживаемый и улучшаемый. Мы стараемся избегать ломающих изменений, однако изредка они могут быть необходимы. Подпишитесь на почтовую рассылку mediawiki-api-announce, чтобы быть в курсе обновлений.

Ошибочные запросы: Если API получает запрос с ошибкой, вернётся заголовок HTTP с ключом «MediaWiki-API-Error», после чего значение заголовка и код ошибки будут отправлены обратно и установлены в то же значение. Более подробную информацию см. API: Ошибки и предупреждения.

Параметры:
action

Действие, которое следует выполнить.

adddomainalias
Add a domain alias to the wiki
block
Блокировка участника.
changeauthenticationdata
Смена параметров аутентификации для текущего участника.
changecontentmodel
Изменить модель содержимого страницы
checktoken
Проверить действительность токена из action=query&meta=token.
checkwikistatus
Проверяет, завершен ли процесс создания новой вики, и возвращает статус всего процесса, а также статусы для каждого отдельного шага.
clearhasmsg
Очистить флаг hasmsg для текущего участника.
clientlogin
Вход в вики с помощью интерактивного потока.
compare
Получение разницы между двумя страницами.
confirmemail
createaccount
Создание новой учётной записи.
createnewwiki
Запускает процесс создания новой вики.
delete
Удаление страницы.
edit
Создание и редактирование страниц.
emailuser
Написание электронных писем участнику.
embedvideo
Get generated video embed code for given parameters.
expandtemplates
Разворачивание всех шаблонов в вики-текст.
feedcontributions
Возвращает ленту с вкладом участников.
feedrecentchanges
Возвращает ленту последних изменений.
feedwatchlist
Возвращает ленту списка наблюдения.
filerevert
Возвращение файла к старой версии.
getmap
help
Отображение справки указанных модулей.
imagerotate
Поворот одного или нескольких изображений.
imageserving
This module is used to return one image URL for the specified article given either the article ID or article title (with prefix if applicable).
import
Импорт страницы из другой вики или XML-файла.
infobox
This module provides infobox parser
isuserscheduledforclosure
Check whether an user account is closed or scheduled to be closed.
linkaccount
Связать учётную запись третьей стороны с текущим участником.
login
Вход и получение аутентификационных файлов cookie.
logout
Выйти и очистить данные сессии.
maintenance
managetags
Осуществление задач, связанных с изменением меток.
mergehistory
Объединение историй правок.
modifydomainalias
Modify a domain alias to the wiki
move
Переименование страницы.
multifindcharacter
notifications
Получение уведомлений для текущего участника.
opensearch
Поиск по вики с использованием протокола OpenSearch.
options
Смена настроек текущего участника.
paraminfo
Получение информации о модулях API.
parse
Парсит содержимое и возвращает результат парсинга.
patrol
Патрулирование страницы или версии.
protect
Изменение уровня защиты страницы.
purge
Очистка кэша заданных страниц.
purgeimages
query
Запросить данные с и о MediaWiki.
removeauthenticationdata
Удаление аутентификационных данных для текущего участника.
removedomainalias
Remove a domain alias for the wiki
renameuser
reopenwiki
resetpassword
Отправить участнику письмо для сброса пароля.
revisiondelete
Удаление и восстановление версий страниц.
rollback
Отмена последней правки на странице.
rsd
Экспорт схемы RSD (Really Simple Discovery).
savemap
savetheme
scheduledebuglonglivedtask
schedulesearchindexupdate
setnotificationtimestamp
Обновление временной метки уведомления для отслеживаемых страниц.
setpagelanguage
Изменить язык страницы.
tag
Добавление или удаление меток отдельных правок или записей журналов.
tagsreport
templatedata
Реализация API служит заменой для расширения TemplateData. Используется визуальным редактором для получения применимых параметров шаблона для трансклюзии
titleblacklist
Подтвердите заголовок страницы, имя файла или имя пользователя в списке TitleBlacklist.
unblock
Разблокировка участника.
undelete
Восстановление версий удалённой страницы.
unlinkaccount
Удаление связанного стороннего аккаунта с текущим участником.
updateprimarydomain
Update the primary domain of a wiki
updateuseremail
upload
Загрузка файла или получение статуса незавершённых загрузок.
uploadimage
userrights
Изменение групп участника.
validatepassword
Проверка пароля на удовлетворение политики вики.
verifytask
watch
Добавление или удаление страниц из списка наблюдения текущего участника.
webapp-manifest
Возвращает манифест веб-приложения.
annotatewikinotspam
Внутренний. Отметить вики как «не спам»
categorytree
Внутренний. Внутренний модуль для расширения CategoryTree.
clearwikiconfigcache
Внутренний. Очистить настройки кэша для вики.
createwikiconfigvariabledefinition
Внутренний. Создать конфигурацию переменной.
cspreport
Внутренний. Используется браузерами, чтобы сообщать о нарушениях политики безопасности (CSP). Этот модуль никогда не должен использоваться, за исключением случаев автоматического использования совместимыми с CSP браузерами.
details
Внутренний.
linksuggest
Внутренний.
listusersnamesearch
Внутренний.
listuserssearchuser
Внутренний.
listwikiswithextension
Внутренний. Получить список вики с включённым расширением.
listwikiswithvariable
Внутренний. Получить список вики с переменной в указанном состоянии.
lookupcontribs
Внутренний. Lookup user contributions
markwikiclosed
Внутренний. Отметить эту вики как закрытую (не общедоступную).
markwikiopen
Внутренний. Отметить эту вики как открытую (общедоступную).
markwikiprotected
Внутренний. Отметить вики как защищённую, чтобы её невозможно было закрыть.
masseditwikis
Внутренний. Редактировать конфигурации переменных для списка вики.
multidelete
Внутренний.
refreshlinks
Внутренний.
removephalanxblock
Внутренний.
removewikiconfigvariable
Внутренний. Удалить конфигурацию переменной для вики.
savewikiconfigvariable
Внутренний. Задать конфигурацию переменной для вики.
scribunto-console
Внутренний. Internal module for servicing XHR requests from the Scribunto console.
stashedit
Внутренний. Подготовка правки в общем кэше.
suggestwiki
Внутренний.
suggestwikis
Внутренний. Получить список вики с доменами, содержащими поисковый запрос.
togglephalanxblock
Внутренний.
updateHubs
Внутренний. Обновляет категории и портал вики
updatewikiconfigvariabledefinition
Внутренний. Обновить свойства существующей конфигурации переменной.
variableinfo
Внутренний. Получить подробную информацию об этой переменной.
variableupdate
Внутренний. Обновить данные о переменной
visualeditor
Внутренний. Возвращает HTML5 для страницы с сервиса Parsoid.
visualeditoredit
Внутренний. Сохранить в MediaWiki страницу в формате HTML5 (сконвертированную в вики-текст с помощью Parsoid).
Одно из следующих значений: adddomainalias, block, changeauthenticationdata, changecontentmodel, checktoken, checkwikistatus, clearhasmsg, clientlogin, compare, confirmemail, createaccount, createnewwiki, delete, edit, emailuser, embedvideo, expandtemplates, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, getmap, help, imagerotate, imageserving, import, infobox, isuserscheduledforclosure, linkaccount, login, logout, maintenance, managetags, mergehistory, modifydomainalias, move, multifindcharacter, notifications, opensearch, options, paraminfo, parse, patrol, protect, purge, purgeimages, query, removeauthenticationdata, removedomainalias, renameuser, reopenwiki, resetpassword, revisiondelete, rollback, rsd, savemap, savetheme, scheduledebuglonglivedtask, schedulesearchindexupdate, setnotificationtimestamp, setpagelanguage, tag, tagsreport, templatedata, titleblacklist, unblock, undelete, unlinkaccount, updateprimarydomain, updateuseremail, upload, uploadimage, userrights, validatepassword, verifytask, watch, webapp-manifest, annotatewikinotspam, categorytree, clearwikiconfigcache, createwikiconfigvariabledefinition, cspreport, details, linksuggest, listusersnamesearch, listuserssearchuser, listwikiswithextension, listwikiswithvariable, lookupcontribs, markwikiclosed, markwikiopen, markwikiprotected, masseditwikis, multidelete, refreshlinks, removephalanxblock, removewikiconfigvariable, savewikiconfigvariable, scribunto-console, stashedit, suggestwiki, suggestwikis, togglephalanxblock, updateHubs, updatewikiconfigvariabledefinition, variableinfo, variableupdate, visualeditor, visualeditoredit
По умолчанию: help
format

Формат вывода.

json
Выводить данные в формате JSON.
jsonfm
Выводить данные в формате JSON (отформатированном в HTML).
none
Ничего не выводить.
php
Выводить данные в сериализованном формате PHP.
phpfm
Выводить данные в сериализованном формате PHP (отформатированном в HTML).
rawfm
Выводить данные, включая элементы отладки, в формате JSON (отформатированном в HTML).
xml
Выводить данные в формате XML.
xmlfm
Выводить данные в формате XML (отформатированном в HTML).
Одно из следующих значений: json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm
По умолчанию: jsonfm
maxlag

Значение максимального отставания может использоваться, когда MediaWiki установлена на кластер из реплицируемых баз данных. Чтобы избежать ухудшения ситуации с отставанием репликации сайта, этот параметр может заставить клиента ждать, когда задержка репликации станет ниже указанного значения. В случае чрезмерной задержки возвращается код ошибки «maxlag» с сообщением «Waiting for $host: $lag seconds lagged».
См. подробнее на странице с описанием Manual: параметра Maxlag.

Тип: целочисленное значение
smaxage

Установить значение HTTP-заголовка Cache-Control s-maxage в заданное число секунд. Ошибки никогда не кэшируются.

Тип: целочисленное значение
По умолчанию: 0
maxage

Установить значение HTTP-заголовка Cache-Control max-age в заданное число секунд. Ошибки никогда не кэшируются.

Тип: целочисленное значение
По умолчанию: 0
assert

Проверить, авторизован ли участник, если задано user, not авторизирован если задано anon или что он имеет права бота, если задано bot.

Одно из следующих значений: anon, bot, user
assertuser

Проверить, что ник текущего участника совпадает с заданным.

Тип: пользователь, из имя участника
requestid

Любое заданное здесь значение будет включено в ответ. Может быть использовано для различения запросов.

servedby

Включить в результаты имя сервера, обработавшего запрос.

Type: boolean (details)
curtimestamp

Включить в результат временную метку.

Type: boolean (details)
responselanginfo

Включить языки, использованные для uselang и errorlang, в результат.

Type: boolean (details)
origin

При обращении к API с использованием кросс-доменного AJAX-запроса (CORS), задайте параметру значение исходного домена. Этот параметр должен быть включён в любой предварительный запрос и таким образом должен быть частью URI-запроса (не тела POST).

Для аутентифицированных запросов он должен точно соответствовать одному из источников в заголовке Origin, так что он должен быть задан наподобие https://ru.wikipedia.org или https://meta.wikimedia.org. Если параметр не соответствует заголовку Origin, будет возвращён ответ с кодом ошибки 403. Если параметр соответствует заголовку Origin, и источник разрешается, будут установлены заголовки Access-Control-Allow-Origin и Access-Control-Allow-Credentials.

Для неаутентифицированных запросов укажите значение *. В результате заголовок Access-Control-Allow-Origin будет установлен, но Access-Control-Allow-Credentials примет значение false и все пользовательские данные будут ограничены.

uselang

Язык, используемый для перевода сообщений. Запрос action=query&meta=siteinfo с siprop=languages возвращает список кодов языков; укажите user, чтобы использовать текущие языковые настройки участника, или content для использования основного языка этой вики.

По умолчанию: user
variant

Вариант языка. Работает только в том случае, если базовый язык поддерживает преобразование вариантов.

errorformat

Формат, используемый для вывода текста предупреждений и ошибок

plaintext
Вики-текст с удалёнными HTML-метками и заменёнными энтити.
wikitext
Нераспарсированный вики-текст.
html
HTML
raw
Ключ сообщения и параметры.
none
Не выводит текст, только коды ошибок.
bc
Формат, использовавшийся до MediaWiki 1.29. errorlang и errorsuselocal игнорируются.
Одно из следующих значений: bc, html, none, plaintext, raw, wikitext
По умолчанию: bc
errorlang

Язык, используемый для вывода предупреждений и сообщений об ошибках. Запрос action=query&meta=siteinfo с siprop=languages возвращает список кодов языков; укажите content для использования основного языка этой вики, или uselang для использования того же значения, что и в параметре uselang.

По умолчанию: uselang
errorsuselocal

Если задан, тексты ошибок будут использовать локально модифицированные сообщения из пространства имён MediaWiki.

Type: boolean (details)
Примеры:
Помощь по главному модулю.
api.php?action=help [открыть в песочнице]
Вся справка на одной странице.
api.php?action=help&recursivesubmodules=1 [открыть в песочнице]
Разрешения:
writeapi
Использование API для записи
Гарантируется: all, user и bot
apihighlimits
Использовать высокие лимиты в запросах API (медленные запросы: 500, быстрые запросы: 5000). Лимиты для медленных запросов также применимы к параметрам со множеством значений.
Гарантируется: bot, sysop, staff, helper, soap, wiki-representative и wiki-specialist

Типы данных

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.

Шаблонные параметры

Шаблонные параметры используются в случаях, когда модулю API нужно получить по параметру со значением на каждое значение другого параметра. Например, если бы был модуль API, запрашивающий фрукты, у него мог бы быть параметр фрукты, указывающий, какие фрукты запрашиваются, и шаблонный параметр {фрукт}-в-количестве, указывающий, сколько фруктов каждого вида запросить. Клиент API, который хочет запросить 1 яблоко, 5 бананов и 20 апельсинов, мог бы тогда сделать запрос наподобие фрукты=яблоки|бананы|апельсины&яблоки-в-количестве=1&бананы-в-количестве=5&апельсины-в-количестве=20.

Создатели

Разработчики API:

  • Yuri Astrakhan (создатель, ведущий разработчик с сентября 2006 по сентябрь 2007)
  • Roan Kattouw (ведущий разработчик 2007—2009)
  • Victor Vasiliev
  • Bryan Tong Minh
  • Sam Reed
  • Brad Jorsch (ведущий разработчик 2013—2020)

Пожалуйста, присылайте ваши комментарии, предложения и вопросы на адрес mediawiki-api@lists.wikimedia.org или присылайте отчёты об ошибках на https://phabricator.wikimedia.org/.