Довідка API MediaWiki
Це автоматично генерована сторінка документації API MediaWiki.
Документація та приклади: https://www.mediawiki.org/wiki/Special:MyLanguage/API:Main_page
Головний модуль
- Джерело: MediaWiki
- Ліцензія: GPL-2.0-or-later
Статус: Усі функції, вказані на цій сторінці, мають працювати, але API далі перебуває в активній розробці і може змінитися у будь-який момент. Підпишіться на список розсилки mediawiki-api-announce, щоб помічати оновлення.
Хибні запити: Коли до API надсилаються хибні запити, буде відіслано HTTP-заголовок з ключем «MediaWiki-API-Error», а тоді і значення заголовку, і код помилки, надіслані назад, будуть встановлені з тим же значенням. Більше інформації див. на сторінці API: Помилки й попередження.
Тестування: Для зручності тестування запитів API, див. Special:ApiSandbox.
- action
Яку дію виконати.
- abusefiltercheckmatch
- Перевірити, щоб побачити, чи відповідає фільтр зловживань набору змінних, редагуванню чи журнальовані дії фільтра зловживань.
- abusefilterchecksyntax
- Перевірити синтаксис фільтра зловживань.
- abusefilterevalexpression
- Оцінює вираз фільтра зловживань.
- abusefilterunblockautopromote
- Розблоковує користувача від отримування автоматичних просувань через послідовність фільтрів.
- abuselogprivatedetails
- Переглянути приватні деталі запису в журналі фільтра зловживань.
- acquiretempusername
- Получить временное имя пользователя и сохраните его в текущем сеансе, если создание временной учетной записи включено и текущий пользователь вышел из системы. Если имя уже сохранено, возвращается то же имя.
- antispoof
- Перевірите ім'я користувача через перевірку нормалізації AntiSpoof.
- block
- Заблокувати користувача.
- centralauthtoken
- Отримати centralauthtoken для виконання автентифікованого запиту до прикріпленої вікі.
- centralnoticecdncacheupdatebanner
- Запитати очистку вмісту банеру збереженого в CDN-кеші (на фронт-енді) для анонімних користувачів для обраних банеру та мови.
- centralnoticechoicedata
- Отримати дані, необхідні для вибору банера для даного проєкту та мови
- centralnoticequerycampaign
- Отримати всі параметри конфігурації для кампанії.
- changeauthenticationdata
- Зміна параметрів автентифікації для поточного користувача.
- changecontentmodel
- Змінити модель вмісту сторінки
- checktoken
- Перевірити коректність токена з action=query&meta=tokens.
- cirrus-config-dump
- Дамп конфігурації CirrusSearch.
- cirrus-mapping-dump
- Дамп відображення CirrusSearch для цієї Вікі.
- cirrus-profiles-dump
- Дамп профілів CirrusSearch для цієї вікі.
- cirrus-settings-dump
- Дамп налаштувань CirrusSearch для цієї Вікі.
- clearhasmsg
- Очищає прапорець
hasmsg
для поточного користувача. - clientlogin
- Увійдіть у вікі з допомогою інтерактивного потоку.
- communityconfigurationedit
- Change the content of a configuration provider in Community configuration
- compare
- Отримати порівняння двох сторінок.
- createaccount
- Створити новий обліковий запис користувача.
- createlocalaccount
- Примусово створити локальний обліковий запис. Центральний обліковий запис має існувати.
- cxdelete
- Вилучити чернетку перекладу, створену за допомогою розширення ContentTranslation.
- cxsuggestionlist
- Керувати списками пропозицій. Додавати пропозиції до списку й вилучати їх.
- cxtoken
- Отримати токени JWT для автентифікації з cxserver.
- delete
- Вилучити сторінку.
- deleteglobalaccount
- Вилучити глобального користувача.
- discussiontoolsedit
- Опублікувати повідомлення на сторінку обговорення.
- discussiontoolsfindcomment
- Найти комментарий по его идентификатору или названию.
- discussiontoolsgetsubscriptions
- Отримайте статуси підписки на певні теми.
- discussiontoolssubscribe
- Підписатися (або скасувати підписку), щоб отримувати сповіщення про тему.
- discussiontoolsthank
- Send a public thank-you notification for a comment.
- echocreateevent
- Manually trigger a notification to a user
- echomarkread
- Позначити сповіщення як прочитані для поточного користувача.
- echomarkseen
- Позначити сповіщення як переглянуті для поточного користувача.
- echomute
- Приглушити або повернути сповіщення від деяких сторінок чи користувачів.
- edit
- Створювати і редагувати сторінки.
- editmassmessagelist
- Редагувати список доставки масових повідомлень.
- emailuser
- Надіслати електронного листа користувачеві
- expandtemplates
- Розгортає усі шаблони в межах вікірозмітки.
- featuredfeed
- Видає стрічку обраного контенту.
- feedcontributions
- Повертає стрічку внеску користувача.
- feedrecentchanges
- Видає стрічку нових редагувань.
- feedwatchlist
- Видає стрічку списку спостереження.
- filerevert
- Повернути файл до старої версії.
- globalblock
- Глобально заблокувати чи розблокувати користувача.
- globalpreferenceoverrides
- Змінити локальні заміни глобальних налаштувань для поточного користувача.
- globalpreferences
- Змінити глобальні налаштування поточного користувача.
- globaluserrights
- Додати/вилучити користувача до/з глобальних груп.
- growthmanagementorlist
- Керуйте інформацією в структурованому списку наставників (зазвичай зберігається в MediaWiki:GrowthMentors.json). Цим модулем можуть користуватися як поточні, так і майбутні наставники (щоб додати себе чи змінити свої дані), а також адміністратори (для всіх користувачів).
- growthmentordashboardupdatedata
- Запланувати позачергове оновлення модуля огляду підопічних на панелі наставника. З робочих міркувань, ви можете запланувати не більше одного оновлення упродовж двох годин.
- growthsetmenteestatus
- Задає статус наставника (дозволяє наставникам вмикати/вимикати модуль наставництва або зовсім відмовитися, що вилучить зв'язок підопічного й наставника)
- growthsetmentor
- Призначити наставника для користувача. Зміну буде записано в публічному журналі.
- growthstarmentee
- Позначити підопічного зірочкою або зняти позначку як поточний користувач (зберігається приватно і не вноситься в журнали)
- help
- Відображати довідку для зазначених модулів.
- homepagequestionstore
- Отримати форматовані запитання, опубліковані через модулі домашньої сторінки
- imagerotate
- Цей модуль було відключено.
- import
- Імпортувати сторінку з іншої вікі або з XML-файлу.
- jsonconfig
- Забезпечує прямий доступ до підсистеми JsonConfig.
- languagesearch
- Пошук назв мов у будь-якому написанні.
- linkaccount
- Пов'язати обліковий запис третьої сторони з поточним користувачем.
- login
- Увійти в систему й отримати куки автентифікації.
- logout
- Вийти й очистити дані сесії.
- managetags
- Виконати керівні завдання щодо зміни теґів.
- massmessage
- Надіслати повідомлення на список сторінок.
- mergehistory
- Об'єднання історій редагувань.
- move
- Перейменувати сторінку.
- opensearch
- Шукати у вікі з використанням протоколу OpenSearch.
- options
- Змінити налаштування поточного користувача.
- paraminfo
- Отримати інформацію про модулі API.
- parse
- Аналізує вміст і видає парсер виходу.
- patrol
- Відпатрулювати сторінку чи версію.
- protect
- Змінити рівень захисту сторінки.
- purge
- Очистити кеш для вказаних заголовків.
- query
- Вибірка даних з і про MediaWiki.
- removeauthenticationdata
- Вилучити параметри автентифікації для поточного користувача.
- resetpassword
- Відправити користувачу лист для відновлення пароля.
- revisiondelete
- Вилучити або відновити версії.
- rollback
- Скасувати останнє редагування цієї сторінки.
- rsd
- Експортувати як схему RSD (Really Simple Discovery).
- setglobalaccountstatus
- Приховати або закрити (або скасувати приховання чи закриття) глобального облікового запису користувача.
- setnotificationtimestamp
- Оновити часову мітку сповіщень для сторінок, що спостерігаються.
- setpagelanguage
- Змінити мову сторінки.
- shortenurl
- Перетворити довгу URL-адресу в коротку
- sitematrix
- Отримати список сайтів Вікімедіа.
- spamblacklist
- Перевірити одну або кілька URL-адрес у списку заблокованих спам-посилань.
- streamconfigs
- Розкриває конфігурацію потоку подій. Видає лише format=json із formatversion=2.
- strikevote
- Дозволяє адміністраторам викреслити або відновити голоси.
- sxdelete
- Delete the draft section translation and its parallel corpora from database.
- tag
- Додати або вилучити зміни міток з окремих версій або записів журналу.
- templatedata
- Отримати дані, що зберігаються розширенням TemplateData.
- thank
- Надіслати редактору сповіщення про подяку.
- titleblacklist
- Перевірити назву сторінки, файлу або ім'я користувача на наявність у чорному списку назв.
- torblock
- Перевірте, чи не заблоковано IP-адресу як вихідний вузол Tor.
- transcodereset
- Користувачі з правом «transcode-reset» можуть скинути і повторити задачу перекодування.
- unblock
- Розблокувати користувача.
- undelete
- Відновити версії вилученої сторінки.
- unlinkaccount
- Вилучити пов'язаний обліковий запис третьої сторони з поточного користувача.
- upload
- Завантажити файл, або отримати статус завантажень у процесі.
- userrights
- Змінити членство користувача у групах.
- validatepassword
- Перевірити пароль на предмет відповідності політикам вікі щодо паролів.
- watch
- Додати або вилучити сторінки з списку спостереження поточного користувача.
- webapp-manifest
- Виводить маніфест webapp.
- webauthn
- Модуль API для комунікації між сервером та клієнтом протягом процесу реєстрації/автентифікації.
- bouncehandler
- Внутрішній. Отримувати електронний лист-відмову і обробляти його для обробки невдалого одержувача.
- categorytree
- Внутрішній. Внутрішній модуль для розширення CategoryTree.
- cirrus-check-sanity
- Внутрішній. Reports on the correctness of a range of page ids in the search index
- collection
- Внутрішній. API module for performing various operations on a wiki user's collection.
- cspreport
- Внутрішній. Використовується браузерами для повідомлення порушень Правил безпеки контенту (Content Security Policy). Цей модуль не повинен використовуватися, окрім випадків автоматичного використання веб-браузером для CSP-скарги.
- cxcheckunreviewed
- Внутрішній. Check if any fast, unreviewed translation has been published recently for the current user.
- cxpublish
- Внутрішній. Зберегти сторінку, створену за допомогою розширення ContentTranslation.
- cxpublishsection
- Внутрішній. Зберегти розділ, створений функцією перекладу розділу розширення Переклад вмісту.
- cxsave
- Внутрішній. Цей модуль дає змогу зберігати чернетки перекладів за розділом, щоб зберігати ширину смуги і накопичувати паралельні переклади.
- cxsplit
- Внутрішній. Create and save a section translation to database, for every translated section of the given article translation
- discussiontoolscompare
- Внутрішній. Отримати інформацію про зміни коментарів між двома версіями сторінки.
- discussiontoolspageinfo
- Внутрішній. Повертає метадані необхідні для ініціалізації інструментів обговорення.
- discussiontoolspreview
- Внутрішній. Попередній перегляд повідомлення на сторінці обговорення.
- echopushsubscriptions
- Внутрішній. Керувати пуш-підписками для поточного користувача.
- editcheckreferenceurl
- Внутрішній. Check the status of a URL for use as a reference.
- fancycaptchareload
- Внутрішній. Отримати нову FancyCaptcha.
- growthinvalidateimagerecommendation
- Внутрішній. Позначити рекомендацію зображення як недійсну.
- growthinvalidatepersonalizedpraisesuggestion
- Внутрішній. Анулює пропозицію гідного похвали підопічного в модулі персоналізованої похвали на панелі наставника
- helppanelquestionposter
- Внутрішній. Працювати із запитаннями поточного користувача, поставленими через довідкову панель.
- jsondata
- Внутрішній. Отримати локалізовані дані JSON.
- oathvalidate
- Внутрішній. Перевірити токен двофакторної автентифікації (OATH).
- parser-migration
- Внутрішній. Розпарсити сторінку з двома різними конфігураціями парсера.
- readinglists
- Внутрішній. Дії із записування у списках читання.
- sanitize-mapdata
- Внутрішній. Виконує перевірку даних для розширення Kartographer
- scribunto-console
- Внутрішній. Внутрішній модуль обробки XHR-запитів з консолі Scribunto.
- securepollauth
- Внутрішній. Allows a remote wiki to authenticate users before granting access to vote in the election.
- stashedit
- Внутрішній. Підготувати редагування в загальний кеш.
- sxsave
- Внутрішній. Зберегти чернетку перекладу розділу та зберегти паралельні корпуси
- timedtext
- Внутрішній. Надає контент синхронізованого тексту для використання в елементах <track>
- ulslocalization
- Внутрішній. Отримати локалізацію ULS вказаною мовою.
- ulssetlang
- Внутрішній. Оновити пріоритетну мову інтерфейсу для користувача.
- visualeditor
- Внутрішній. Повертає HTML5 для сторінки від сервісу Parsoid.
- visualeditoredit
- Внутрішній. Зберегти HTML5-сторінку у MediaWiki (конвертовану у вікітекст сервісом Parsoid).
- wikimediaeventsblockededit
- Внутрішній. Log information about blocked edit attempts
- Одне з наступних значень: 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, communityconfigurationedit, compare, createaccount, createlocalaccount, cxdelete, cxsuggestionlist, cxtoken, delete, deleteglobalaccount, discussiontoolsedit, discussiontoolsfindcomment, discussiontoolsgetsubscriptions, discussiontoolssubscribe, discussiontoolsthank, echocreateevent, echomarkread, echomarkseen, echomute, edit, editmassmessagelist, emailuser, expandtemplates, featuredfeed, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, globalblock, globalpreferenceoverrides, globalpreferences, globaluserrights, growthmanagementorlist, growthmentordashboardupdatedata, growthsetmenteestatus, growthsetmentor, growthstarmentee, help, homepagequestionstore, 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, sxdelete, tag, templatedata, thank, titleblacklist, torblock, transcodereset, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, watch, webapp-manifest, webauthn, bouncehandler, categorytree, cirrus-check-sanity, collection, cspreport, cxcheckunreviewed, cxpublish, cxpublishsection, cxsave, cxsplit, discussiontoolscompare, discussiontoolspageinfo, discussiontoolspreview, echopushsubscriptions, editcheckreferenceurl, fancycaptchareload, growthinvalidateimagerecommendation, growthinvalidatepersonalizedpraisesuggestion, helppanelquestionposter, jsondata, oathvalidate, parser-migration, readinglists, sanitize-mapdata, scribunto-console, securepollauth, stashedit, sxsave, timedtext, ulslocalization, ulssetlang, visualeditor, visualeditoredit, wikimediaeventsblockededit
- Стандартно: 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 з повідомленням на зразок Очікування на $host: $lag секунд(и) затримки.
Див. Manual: Maxlag parameter для детальнішої інформації.- Тип: ціле число
- smaxage
Встановити
s-maxage
HTTP кеш-контроль заголовок на стільки секунд. Помилки ніколи не кешуються.- Тип: ціле число
- Значення має бути не меншим, ніж 0.
- Стандартно: 0
- maxage
Встановити
max-age
HTTP кеш-контроль заголовок на стільки секунд. Помилки ніколи не кешуються.- Тип: ціле число
- Значення має бути не меншим, ніж 0.
- Стандартно: 0
- assert
Перевірити, що користувач увійшов у систему (у тому числі, можливо, тимчасовий користувач), якщо задано user, не увійшов у систему, якщо задано anon, або має права бота, якщо задано bot.
- Одне з наступних значень: anon, bot, user
- assertuser
Перевірити, чи поточний користувач є найменованим користувачем.
- Тип: користувач, подано як ім'я користувача і Тимчасовий користувач
- requestid
Будь-яке значення, вказане тут, буде включене у відповідь. Може використовуватися, щоб відрізняти запити.
- servedby
Включити в результати ім'я хоста, який обробив запит.
- Тип: логічний (подробиці)
- curtimestamp
Включити в результат поточну мітку часу.
- Тип: логічний (подробиці)
- responselanginfo
Включати мови, які були використані для uselang і errorlang, у результат.
- Тип: логічний (подробиці)
- origin
При доступі до API з використанням крос-доменного AJAX-запиту (CORS), задайте параметру значення вихідного домена. Він має бути включений у будь-який попередній запит і таким чином мусить бути частиною запиту URI (не тіла POST).
Для автентифікованих запитів він повинен точно збігатися з одним із виходів у заголовку
Origin
, тобто бути заданим чимось на зразок https://uk.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.
- Тип: логічний (подробиці)
- centralauthtoken
При доступі до API з використанням міждоменного AJAX-запиту (CORS), використовуйте це для автентифікації як поточний SUL-користувач. Використовуйте action=centralauthtoken у цій вікі, аби вивести токен, перш ніж здійснювати запит CORS. Кожен токен можна використати лише раз, через 10 секунд він стає недійсним. Це має бути включено в будь-який попередній запит, і, зважаючи на це, — у запитуваний URI (не в POST-тіло).
- Довідка для головного модуля.
- api.php?action=help [відкрити в пісочниці]
- Уся довідка на одній сторінці.
- api.php?action=help&recursivesubmodules=1 [відкрити в пісочниці]
Типи даних
Введені дані в MediaWiki мають бути в NFC-нормалізованому форматі UTF-8. MediaWiki може зробити спробу конвертувати дані в будь-якому іншому форматі, але це може спричинити невдачу деяких операцій (таких як редагування з перевірками MD5).
Параметри, які допускають два і більше значень, зазвичай подаються з цими значеннями, розділеними через вертикальну риску, напр., param=значення1|значення2 або param=значення1%7Cзначення2. Якщо ж значення повинно містити вертикальну риску, використовуйте U+001F (Unit Separator) як роздільник та додавайте до значення префікс U+001F, напр., param=%1Fзначення1%1Fзначення2.
Деякі типи параметрів у запитах до API потребують додаткових пояснень:
- boolean
Логічні типи даних працюють як чекбокси з галочками в HTML: якщо параметр вказано, незалежно від значення, то він розцінюється як «true». Для значення «false», уникніть параметра цілковито.
- expiry
Час може бути відносним (напр.,5 months чи 2 weeks) або абсолютним (напр., 2014-09-18T12:34:56Z). Щоб спостерігати за сторінкою безстроково, використовуйте infinite, indefinite, infinity, чи never.
- timestamp
Мітки часу можна вказувати в різних форматах, див. формати вводу з бібліотеки міток часу, задокументовані на mediawiki.org, щоб дізнатись більше. Рекомендовано використовувати дату й час у форматі ISO 8601: 2001-01-15T14:56:00Z. Додатково можна використати рядок now для вказання поточної мітки часу.
Шаблонні параметри
Шаблонні параметри підтримують випадки, в яких модулю API необхідне значення для кожного значення якогось іншого параметра. Наприклад, якби був модуль API для запитів фруктів, у нього був би параметр fruits для зазначення, запит на які саме фрукти надсилається і шаблонний параметр {fruit}-quantity для зазначення, скільки саме кожного різновиду фруктів потрібно. Клієнт API, якому потрібні 1 яблуко, 5 бананів і 20 полуниць, таким чином, міг би надіслати запит у формі fruits=apples|bananas|strawberries&apples-quantity=1&bananas-quantity=5&strawberries-quantity=20.
Автор(и)
Розробники API:
- Roan Kattouw (головний розробник вер. 2007–2009)
- Victor Vasiliev
- Bryan Tong Minh
- Sam Reed
- Yuri Astrakhan (творець, головний розробник вер. 2006 – вер. 2007)
- Brad Jorsch (головний розробник 2013 – 2020)
Будь ласка, надсилайте свої коментарі, пропозиції та запитання на mediawiki-api@lists.wikimedia.org або подайте звіт про помилку за адресою https://phabricator.wikimedia.org/.