MediaWiki API help

This is an auto-generated MediaWiki Action API documentation page.

General information

สถานะ: API ของมีเดียวิกิเป็นส่วนติดต่อที่พัฒนาเต็มที่และเสถียรซึ่งได้รับการสนับสนุนและปรับปรุงอย่างต่อเนื่อง ถึงแม้เราจะพยายามหลีกเลี่ยง แต่เราอาจจำเป็นต้องทำการเปลี่ยนแปลงที่มีผลกระทบกับการใช้งาน้เดิมเป็นครั้งคราว โปรดบอกรับรายชื่อผู้รับจดหมาย mediawiki-api-announce เพื่อรับการแจ้งเตือนเกี่ยวกับข่าวสารล่าสุด

คำขอที่มีข้อผิดพลาด: เมื่อมีการส่งคำขอที่มีข้อผิดพลาดมายัง API ระบบจะส่งส่วนหัวของ HTTP กลับไปพร้อมกับคีย์ "MediaWiki-API-Error" โดยที่ทั้งค่าของส่วนหัวและรหัสข้อผิดพลาดที่ส่งกลับมาจะถูกตั้งค่าให้เป็นค่าเดียวกัน สำหรับข้อมูลเพิ่มเติม โปรดดูที่API: ข้อผิดพลาดและคำเตือน

Request methods

Action API requests may use GET and POST methods. Prefer using the GET method, which allows requests to be routed to faster replica servers and responses to be cached, unless the length of the URL with parameters would exceed its length limit (commonly 8000 bytes), or a module only accepts POST requests.

Parameters for POST requests may be sent in the query part of the request URL (like in GET requests) and in the POST request body, and mixing both ways in one request is allowed. Certain parameters such as passwords must be sent in the request body. If the same parameter is sent as part of the URL and also in the request body, it must have the same value in both places.

ชนิดของข้อมูล

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. The string now may be used to specify the current time.

Limits

Most API modules can accept up to 50 inputs in multivalue parameters, and can return up to 500 results per query (50 results for slow queries).

For users with the apihighlimits right (บอต และ ผู้ดูแลระบบ), the limits are increased to 500 inputs and 5,000 results (500 results for slow queries).

Templated parameters

Templated parameters support cases where an API module needs a value for each value of some other parameter. For example, if there were an API module to request fruit, it might have a parameter fruits to specify which fruits are being requested and a templated parameter {fruit}-quantity to specify how many of each fruit to request. An API client that wants 1 apple, 5 bananas, and 20 strawberries could then make a request like fruits=apples|bananas|strawberries&apples-quantity=1&bananas-quantity=5&strawberries-quantity=20.

มอดูลหลัก

  • แหล่งที่มา: MediaWiki
  • สัญญาอนุญาต: GPL-2.0-or-later

Specify the action to perform, the format of the response, and options that apply to all API modules.

Specific parameters:
action

การกระทำที่ต้องการให้ดำเนินการ

acquiretempusername
Acquire a temporary user username and stash it in the current session, if temp account creation is enabled and the current user is logged out. If a name has already been stashed, returns the same name.
block
บล็อกผู้ใช้
changeauthenticationdata
เปลี่ยนข้อมูลการยืนยันตัวตนสำหรับผู้ใช้ปัจจุบัน
changecontentmodel
เปลี่ยนตัวแบบเนื้อหาของหน้า
checktoken
ตรวจสอบความถูกต้องของโทเค็นจาก action=query&meta=tokens
clearhasmsg
ล้างธง hasmsg สำหรับผู้ใช้ปัจจุบัน
clientlogin
เข้าสู่ระบบของวิกิโดยใช้โฟลว์เชิงโต้ตอบ
compare
รับข้อมูลความแตกต่างระหว่างสองหน้า
createaccount
สร้างบัญชีผู้ใช้ใหม่
delete
ลบหน้า
edit
สร้างและแก้ไขหน้า
emailuser
อีเมลผู้ใช้
expandtemplates
ขยายแม่แบบทั้งหมดภายในข้อความวิกิ
feedcontributions
Returns a user's contributions feed.
feedrecentchanges
Returns a recent changes feed.
feedwatchlist
Returns a watchlist feed.
filerevert
ย้อนไฟล์กลับเป็นรุ่นเก่า
help
แสดงวิธีใช้สำหรับมอดูลที่ระบุ
imagerotate
หมุนรูปภาพอย่างน้อยหนึ่งรูป
import
Import a page from another wiki, or from an XML file.
languagesearch
Search for language names in any script.
linkaccount
Link an account from a third-party provider to the current user.
login
เข้าสู่ระบบและรับคุกกี้ยืนยันตัวตน
logout
ออกจากระบบและล้างข้อมูลช่วงเวลาสื่อสาร
managetags
Perform management tasks relating to change tags.
mergehistory
ผสานประวัติหน้า
move
ย้ายหน้า
opensearch
Search the wiki using the OpenSearch protocol.
options
Change preferences of the current user.
paraminfo
ขอข้อมูลเกี่ยวกับมอดูล API
parse
Parses content and returns parser output.
patrol
ตรวจตราหน้าหรือรุ่นแก้ไข
protect
เปลี่ยนระดับการป้องกันของหน้า
purge
ล้างแคชสำหรับชื่อหน้าที่ระบุ
query
Fetch data from and about MediaWiki.
removeauthenticationdata
Remove authentication data for the current user.
resetpassword
ส่งอีเมลตั้งรหัสผ่านใหม่ให้ผู้ใช้
revisiondelete
ลบและกู้คืนรุ่นแก้ไข
rollback
Undo the last edit to the page.
rsd
Export an RSD (Really Simple Discovery) schema.
setnotificationtimestamp
Update the notification timestamp for watched pages.
setpagelanguage
เปลี่ยนภาษาของหน้า
tag
Add or remove change tags from individual revisions or log entries.
unblock
ปลดบล็อกผู้ใช้
undelete
Undelete revisions of a deleted page.
unlinkaccount
Remove a linked third-party account from the current user.
upload
Upload a file, or get the status of pending uploads.
userrights
เปลี่ยนการเป็นสมาชิกกลุ่มของผู้ใช้
validatepassword
Validate a password against the wiki's password policies.
watch
Add or remove pages from the current user's watchlist.
cspreport
Internal. Used by browsers to report violations of the Content Security Policy. This module should never be used, except when used automatically by a CSP compliant web browser.
scribunto-console
Internal. มอดูลภายในสำหรับให้บริการการร้องขอ XHR จากคอนโซล Scribunto
stashedit
Internal. Prepare an edit in shared cache.
ค่าใดค่าหนึ่งต่อไปนี้: acquiretempusername, block, changeauthenticationdata, changecontentmodel, checktoken, clearhasmsg, clientlogin, compare, createaccount, delete, edit, emailuser, expandtemplates, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, help, imagerotate, import, languagesearch, 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, scribunto-console, stashedit
Default: help
format

รูปแบบของผลลัพธ์

json
Output data in JSON format.
jsonfm
Output data in JSON format (pretty-print in HTML).
none
Output nothing.
php
Output data in serialized PHP format.
phpfm
Output data in serialized PHP format (pretty-print in HTML).
rawfm
Output data, including debugging elements, in JSON format (pretty-print in HTML).
xml
Output data in XML format.
xmlfm
Output data in XML format (pretty-print in HTML).
ค่าใดค่าหนึ่งต่อไปนี้: json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm
Default: jsonfm
maxlag

สามารถใช้ค่าการหน่วงเวลาสูงสุดเมื่อมีการติดตั้งมีเดียวิกิบนคลัสเตอร์ฐานข้อมูลแบบจำลอง พารามิเตอร์นี้สามารถทำให้ไคลเอนต์รอจนกว่าการหน่วงเวลาของการจำลองจะน้อยกว่าค่าที่ระบุ เพื่อป้องกันไม่ให้การดำเนินการต่าง ๆ ไปเพิ่มการหน่วงเวลาในการจำลองของเว็บไซต์ให้มากขึ้น ในกรณีที่มีการหน่วงเวลามากเกินไป ระบบจะส่งคืนรหัสข้อผิดพลาด maxlag พร้อมกับข้อความแจ้งเตือน เช่น Waiting for $host: $lag seconds lagged
ดูข้อมูลเพิ่มเติมได้ที่ คู่มือ: พารามิเตอร์ Maxlag

Type: integer
smaxage

ตั้งส่วนหัวควบคุมแคช HTTP s-maxage เป็นจำนวนวินาทีต่อไปนี้ ข้อผิดพลาดจะไม่ถูกแคช

Type: integer
The value must be no less than 0.
Default: 0
maxage

ตั้งส่วนหัวควบคุมแคช HTTP max-age เป็นจำนวนวินาทีต่อไปนี้ ข้อผิดพลาดจะไม่ถูกแคช

Type: integer
The value must be no less than 0.
Default: 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

When accessing the API using a cross-domain AJAX request (CORS), set this to the originating domain. This must be included in any pre-flight request, and therefore must be part of the request URL (not the POST body).

For authenticated requests, this must match one of the origins in the Origin header exactly, so it has to be set to something like https://en.wikipedia.org or https://meta.wikimedia.org. If this parameter does not match the Origin header, a 403 response will be returned. If this parameter matches the Origin header and the origin is allowed, the Access-Control-Allow-Origin and Access-Control-Allow-Credentials headers will be set.

For non-authenticated requests, specify the value *. This will cause the Access-Control-Allow-Origin header to be set, but Access-Control-Allow-Credentials will be false and all user-specific data will be restricted.

crossorigin

When accessing the API using a cross-domain AJAX request (CORS) and using a session provider that is safe against cross-site request forgery (CSRF) attacks (such as OAuth), use this instead of origin=* to make the request authenticated (i.e., not logged out). This must be included in any pre-flight request, and therefore must be part of the request URL (not the POST body).

Note that most session providers, including standard cookie-based sessions, do not support authenticated CORS and cannot be used with this parameter.

Type: boolean (details)
uselang

ภาษาที่จะใช้สำหรับการแปลข้อความ action=query&meta=siteinfo&siprop=languages แสดงรายชื่อรหัสภาษา คุณสามารถระบุ user เพื่อใช้การตั้งค่าภาษาปัจจุบันของผู้ใช้ หรือ content เพื่อใช้ภาษาเนื้อหาของวิกินี้ได้

Default: user
variant

รูปแบบย่อยของภาษา ใช้ได้ก็ต่อเมื่อภาษาฐานรองรับการแปลงรูปแบบย่อยเท่านั้น

errorformat

รูปแบบที่จะใช้สำหรับผลลัพธ์ข้อความคำเตือนและข้อผิดพลาด

plaintext
ข้อความวิกิที่นำแท็ก HTML ออกและแทนที่เอนทิตีแล้ว
wikitext
Unparsed wikitext.
html
HTML
raw
คีย์และพารามิเตอร์ของสาร
none
ไม่ต้องให้ผลลัพธ์ที่เป็นข้อความ แต่แสดงเฉพาะรหัสข้อผิดพลาดเท่านั้น
bc
Format used prior to MediaWiki 1.29. errorlang and errorsuselocal are ignored.
ค่าใดค่าหนึ่งต่อไปนี้: bc, html, none, plaintext, raw, wikitext
Default: bc
errorlang

ภาษาที่จะใช้สำหรับคำเตือนและข้อผิดพลาด action=query&meta=siteinfo&siprop=languages จะคืนค่ารายชื่อรหัสภาษาให้ ระบุ content เพื่อใช้ภาษาเนื้อหาของวิกินี้ หรือ uselang เพื่อใช้ค่าเดียวกับพารามิเตอร์ uselang

Default: uselang
errorsuselocal

ถ้าระบุไว้ ข้อความระบุข้อผิดพลาดจะใช้ข้อความที่ปรับแต่งเฉพาะที่จากเนมสเปซ มีเดียวิกิ

Type: boolean (details)
ตัวอย่าง:
วิธีใช้สำหรับมอดูลหลัก
api.php?action=help [เปิดในกระบะทราย]
วิธีใช้ทั้งหมดในหน้าเดียว
api.php?action=help&recursivesubmodules=1&toc [เปิดในกระบะทราย]

เครดิต

API developers:

  • Yuri Astrakhan (creator, lead developer Sep 2006–Sep 2007)
  • Roan Kattouw (lead developer Sep 2007–2009)
  • Victor Vasiliev
  • Bryan Tong Minh
  • Sam Reed
  • Brad Jorsch (lead developer 2013–2020)

Please send your comments, suggestions and questions to mediawiki-api@lists.wikimedia.org or file a bug report at https://phabricator.wikimedia.org/.