미디어위키 API 도움말

이 페이지는 자동으로 생성된 미디어위키 API 도움말 문서입니다.

설명 문서 및 예시: https://www.mediawiki.org/wiki/Special:MyLanguage/API:Main_page

메인 모듈

상태: 이 페이지에 보이는 모든 기능은 정상적으로 작동하지만, API는 여전히 활발하게 개발되고 있으며, 언제든지 변경될 수 있습니다. 업데이트 공지를 받아보려면 mediawiki-api-announce 메일링 리스트를 구독하십시오.

잘못된 요청: API에 잘못된 요청이 전송되면 "MediaWiki-API-Error" 키가 포함된 HTTP 헤더가 전송되며 반환되는 헤더와 오류 코드의 값은 모두 동일한 값으로 설정됩니다. 자세한 정보에 대해서는 API:오류와 경고를 참조하십시오.

테스트하기: API 요청 테스트를 용이하게 하려면, Special:ApiSandbox를 보십시오.

특정 변수:
action

수행할 동작

abusefiltercheckmatch
편집 필터가 변수 집합, 편집, 또는 기록된 편집 필터 이벤트와 일치하는지 확인합니다.
abusefilterchecksyntax
편집 필터의 구문을 검사합니다.
abusefilterevalexpression
편집 필터의 식을 검사합니다.
abusefilterunblockautopromote
편집 필터 동작으로 인해 자동 인증을 받지 못하도록 제한된 사용자의 제한을 해제합니다.
abuselogprivatedetails
악용 기록 항목의 비공개 세부 사항을 봅니다.
block
사용자를 차단합니다.
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
상호작용 플로우를 이용하여 위키에 로그인합니다.
compare
두 문서 간의 차이를 가져옵니다.
createaccount
새 사용자 계정을 만듭니다.
delete
문서를 삭제합니다.
echomarkread
현재 사용자의 알림을 읽은 것으로 표시합니다.
echomarkseen
현재 사용자가 알림을 본 것으로 표시합니다.
echomute
특정 사용자나 문서로부터 오는 알림을 끄거나 다시 켭니다.
edit
문서를 만들고 편집합니다.
emailuser
사용자에게 이메일을 보냅니다.
expandtemplates
위키텍스트 안에 모든 틀을 확장합니다.
feedcontributions
사용자 기여 피드를 반환합니다.
feedrecentchanges
최근 바뀜 피드를 반환합니다.
feedwatchlist
주시문서 목록 피드를 반환합니다.
filerevert
파일을 이전 판으로 되돌립니다.
help
지정된 모듈의 도움말을 표시합니다.
imagerotate
하나 이상의 그림을 회전합니다.
import
다른 위키나 XML 파일로부터 문서를 가져옵니다.
linkaccount
서드파티 제공자의 계정을 현재 사용자와 연결합니다.
login
로그인한 다음 인증 쿠키를 가져옵니다.
logout
로그아웃하고 세션 데이터를 지웁니다.
managetags
변경 태그에 관한 관리 작업을 수행합니다.
mergehistory
문서 역사를 합칩니다.
move
문서 이동하기.
opensearch
OpenSearch 프로토콜을 이용하여 위키를 검색합니다.
options
현재 사용자의 환경 설정을 변경합니다.
paraminfo
API 모듈의 정보를 가져옵니다.
parse
내용을 변환하고 출력을 반환합니다.
patrol
문서나 판을 점검하기.
protect
문서의 보호 수준을 변경합니다.
purge
주어진 제목을 위한 캐시를 새로 고침.
query
미디어위키의 데이터 및 정보를 가져옵니다.
removeauthenticationdata
현재 사용자의 인증 데이터를 제거합니다.
resetpassword
비밀번호 재설정 이메일을 사용자에게 보냅니다.
revisiondelete
판을 삭제하거나 되살립니다.
rollback
문서의 마지막 편집을 취소합니다.
rsd
RSD (Really Simple Discovery) 스키마를 내보냅니다.
setnotificationtimestamp
주시 중인 문서의 알림 타임스탬프를 업데이트합니다.
setpagelanguage
문서의 언어를 변경합니다.
spamblacklist
스팸 차단 목록에 대해 하나 이상의 URL의 유효성을 확인합니다.
tag
개별 판이나 기록 항목에서 변경 태그를 추가하거나 제거합니다.
thank
편집자에게 감사 알림을 보냅니다.
unblock
사용자를 차단 해제합니다.
undelete
삭제된 문서의 판을 복구합니다.
unlinkaccount
현재 사용자에 연결된 타사 계정을 제거합니다.
upload
파일을 업로드하거나 대기 중인 업로드의 상태를 가져옵니다.
userrights
사용자의 그룹 권한을 변경합니다.
validatepassword
위키의 비밀번호 정책에 근간하여 비밀번호를 확인합니다.
watch
현재 사용자의 주시목록에서 문서를 추가하거나 제거합니다.
cspreport
내부 변수입니다. 브라우저가 콘텐츠 보안 정책의 위반을 보고하기 위해 사용합니다. 이 모듈은 SCP를 준수하는 웹 브라우저에 의해 자동으로 사용될 때를 제외하고는 사용해서는 안 됩니다.
stashedit
내부 변수입니다. 공유된 캐시에서 편집을 준비합니다.
다음 값 중 하나: abusefiltercheckmatch, abusefilterchecksyntax, abusefilterevalexpression, abusefilterunblockautopromote, abuselogprivatedetails, block, changeauthenticationdata, changecontentmodel, checktoken, cirrus-config-dump, cirrus-mapping-dump, cirrus-profiles-dump, cirrus-settings-dump, clearhasmsg, clientlogin, compare, createaccount, delete, echomarkread, echomarkseen, echomute, 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, spamblacklist, tag, thank, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, watch, cspreport, stashedit 또는 다른 문자열: abusefiltercheckmatch, abusefilterchecksyntax, abusefilterevalexpression, abusefilterunblockautopromote, abuselogprivatedetails, block, changeauthenticationdata, changecontentmodel, checktoken, cirrus-config-dump, cirrus-mapping-dump, cirrus-profiles-dump, cirrus-settings-dump, clearhasmsg, clientlogin, compare, createaccount, delete, echomarkread, echomarkseen, echomute, 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, spamblacklist, tag, thank, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, watch, cspreport, stashedit
기본값: 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 또는 다른 문자열: json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm
기본값: jsonfm
maxlag

최대 랙은 미디어위키가 데이터베이스 복제된 클러스터에 설치되었을 때 사용될 수 있습니다. 특정한 행동이 사이트 복제 랙을 유발할 때, 이 변수는 클라이언트가 복제 랙이 설정된 숫자 아래로 내려갈 때까지 기다리도록 지시합니다. 과도한 랙의 경우, maxlag 오류 코드와 $host 대기 중: $lag초 지연되었습니다 메시지가 제공됩니다.
매뉴얼: Maxlag 변수에서 더 많은 정보를 얻을 수 있습니다.

유형: 정수
smaxage

s-maxage HTTP 캐시 컨트롤 헤더를 설정합니다. 오류는 캐시되지 않습니다.

유형: 정수
기본값: 0
maxage

max-age HTTP 캐시 컨트롤 헤더를 설정합니다. 오류는 캐시되지 않습니다.

유형: 정수
기본값: 0
assert

user 플래그가 설정되어 있다면 로그인 여부를 체크하며, anon 플래그가 설정되어 있다면 로그인되지 않았는지 확인하고, bot 플래그가 설정되어 있다면 봇 사용자 권한이 설정되어 있는지 확인합니다.

다음 값 중 하나: anon, bot, user 또는 다른 문자열: anon, bot, user
assertuser

현재 사용자가 지명된 사용자인지 확인합니다.

형태: 使用者 이름에 따른 사용자
requestid

주어진 요청 값은 응답에 포함됩니다. 요청을 구분하기 위해 사용될 수 있습니다.

servedby

결과에 요청을 처리한 호스트네임을 포함합니다.

유형: 불리언 (자세한 정보)
curtimestamp

결과의 타임스탬프를 포함합니다.

유형: 불리언 (자세한 정보)
responselanginfo

uselangerrorlang에 사용되는 언어를 결과에 포함합니다.

유형: 불리언 (자세한 정보)
origin

크로스 도메인 AJAX 요청 (CORS)을 사용하여 API에 접근할 때, 이것을 발신 도메인으로 설정하십시오. 모든 pre-flight 요청에 포함되어야 하며, 이에 따라 (POST 본문이 아닌) 요청 URI의 일부여야 합니다.

인증된 요청의 경우, Origin 헤더의 발신지들 중 하나와 정확히 일치해야 하므로 https://en.wikipedia.org 또는 https://meta.wikimedia.org와 같이 설정되어야 합니다. 이 변수가 Origin 헤더와 일치하지 않으면 403 응답이 반환됩니다. 이 변수가 Origin 헤더와 일치하고 발신지가 허용된 경우 Access-Control-Allow-OriginAccess-Control-Allow-Credentials 헤더가 설정됩니다.

인증되지 않은 요청의 경우, * 값을 지정하십시오. 이를 통해 Access-Control-Allow-Origin 헤더가 설정되지만 Access-Control-Allow-Credentialsfalse로 설정되어 모든 사용자 지정 데이터가 제한을 받게 됩니다.

uselang

메시지 번역을 위한 언어입니다. action=query&meta=siteinfosiprop=languages를 함께 사용하면 언어 코드의 목록을 반환하고, user를 지정하면 현재 사용자의 언어 환경 설정을 사용하며, content를 지정하면 이 위키의 콘텐츠 언어를 사용합니다.

기본값: user
variant

언어의 변종입니다. 기본 언어가 변종 변환을 지원하는 경우에만 동작합니다.

errorformat

경고 및 오류 텍스트 출력을 위해 사용할 형식

plaintext
HTML 태그를 제거하고 엔티티가 치환된 위키텍스트입니다.
wikitext
구문 분석이 되지 않은 위키텍스트입니다.
html
HTML
raw
메시지 키와 변수입니다.
none
텍스트 출력 없이 오류 코드만 출력합니다.
bc
미디어위키 1.29 이전에 사용된 포맷입니다. errorlangerrorsuselocal은 무시됩니다.
다음 값 중 하나: bc, html, none, plaintext, raw, wikitext 또는 다른 문자열: bc, html, none, plaintext, raw, wikitext
기본값: bc
errorlang

경고와 오류를 위해 사용할 언어입니다. siprop=languages가 포함된 action=query&meta=siteinfo는 언어 코드의 목록을 반환하고, content를 지정하면 이 위키의 내용 상의 언어를 사용하며, uselang을 지정하면 uselang 변수와 동일한 값을 사용합니다.

기본값: uselang
errorsuselocal

지정하면 오류 텍스트가 미디어위키 이름공간에서 지역적으로 정의된 메시지를 사용합니다.

유형: 불리언 (자세한 정보)
예시:
메인 모듈의 도움말입니다.
api.php?action=help [연습장에서 열기]
모든 도움말을 한 페이지로 모읍니다.
api.php?action=help&recursivesubmodules=1 [연습장에서 열기]
권한:
writeapi
쓰기 API 使用
다음 그룹에 부여됨: all, user, bot
apihighlimits
API 쿼리에서 더 높은 제한 사용 (느린 쿼리: 500, 빠른 쿼리: 5000) 느린 쿼리에 대한 제한은 다중값 매개변수에도 적용됩니다.
다음 그룹에 부여됨: bot, sysop

데이터 유형

미디어위키의 입력은 NFC 정규화 UTF-8인 것이 좋습니다. 미디어위키는 다른 입력의 변환을 시도할 수 있지만 일부 동작(MD5 검사를 수반한 편집 등)을 실패할 수 있습니다.

여러 값을 받는 변수는 보통 파이프 문자를 사용하여 구분되는 값으로 제출합니다. (예: param=value1|value2 또는 param=value1%7Cvalue2) 값에 파이프 문자가 포함되어야 하는 경우 U+001F(단위 구분자)를 구분자로, 값의 접두사를 U+001F로 사용하십시오. (예: param=%1Fvalue1%1Fvalue2)

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를 사용하여 요청할 과일의 수를 지정할 수 있습니다. 사과 1개, 바나나 5개, 딸기 20개를 원하는 API 클라이언트는 fruits=apples|bananas|strawberries&apples-quantity=1&bananas-quantity=5&strawberries-quantity=20와 같은 요청을 수행할 수 있습니다.

크레딧

API 개발자:

  • Yuri Astrakhan (만든이, 선임 개발자 2006년 9월~2007년 9월)
  • Roan Kattouw (선임 개발자, 2007년 9월–2009년)
  • Victor Vasiliev
  • Bryan Tong Minh
  • Sam Reed
  • Brad Jorsch (선임 개발자 2013년–2020년)

당신의 의견이나 제안, 질문은 mediawiki-api@lists.wikimedia.org 로 보내주시고, 버그 보고는 https://phabricator.wikimedia.org/ 에 해주시기 바랍니다.