미디어위키 API 도움말
이 페이지는 자동으로 생성된 미디어위키 API 도움말 문서입니다.
설명 문서 및 예시: https://www.mediawiki.org/wiki/API
메인 모듈
- 출처: MediaWiki
 - 라이선스: GPL-2.0-or-later
 
상태: 이 페이지에 보이는 모든 기능은 정상적으로 작동하지만, API는 여전히 활발하게 개발되고 있으며, 언제든지 변경될 수 있습니다. 업데이트 공지를 받아보려면 mediawiki-api-announce 메일링 리스트를 구독하십시오.
잘못된 요청: API에 잘못된 요청이 전송되면 "MediaWiki-API-Error" 키가 포함된 HTTP 헤더가 전송되며 반환되는 헤더와 오류 코드의 값은 모두 동일한 값으로 설정됩니다. 자세한 정보에 대해서는 API:오류와 경고를 참조하십시오.
테스트하기: API 요청 테스트를 용이하게 하려면, Special:ApiSandbox를 보십시오.
- action
 수행할 동작
- abusefiltercheckmatch
 - 편집 필터가 변수 집합, 편집, 또는 기록된 편집 필터 이벤트와 일치하는지 확인합니다.
 - abusefilterchecksyntax
 - 편집 필터의 구문을 검사합니다.
 - abusefilterevalexpression
 - 편집 필터의 식을 검사합니다.
 - abusefilterunblockautopromote
 - 편집 필터 동작으로 인해 자동 인증을 받지 못하도록 제한된 사용자의 제한을 해제합니다.
 - abuselogprivatedetails
 - 악용 기록 항목의 비공개 세부 사항을 봅니다.
 - antispoof
 - 안티스푸프의 표준화 검사를 사용하여 사용자명을 검사합니다.
 - block
 - 사용자를 차단합니다.
 - categorytree
 - CategoryTree 확장 기능을 위한 내부 모듈입니다.
 - changeauthenticationdata
 - 현재 사용자의 인증 데이터를 변경합니다.
 - checktoken
 - action=query&meta=tokens의 토큰의 유효성을 확인합니다.
 - clearhasmsg
 - 현재 사용자의 
hasmsg플래그를 비웁니다. - clientlogin
 - 상호작용 플로우를 이용하여 위키에 로그인합니다.
 - compare
 - 두 문서 간의 차이를 가져옵니다.
 - createaccount
 - 새 사용자 계정을 만듭니다.
 - cspreport
 - 브라우저가 콘텐츠 보안 정책의 위반을 보고하기 위해 사용합니다. 이 모듈은 SCP를 준수하는 웹 브라우저에 의해 자동으로 사용될 때를 제외하고는 사용해서는 안 됩니다.
 - delete
 - 문서를 삭제합니다.
 - edit
 - 문서를 만들고 편집합니다.
 - emailuser
 - 사용자에게 이메일을 보냅니다.
 - embedvideo
 - Get generated video embed code for given parameters.
 - expandtemplates
 - 위키텍스트 안에 모든 틀을 확장합니다.
 - feedcontributions
 - 사용자 기여 피드를 반환합니다.
 - feedrecentchanges
 - 최근 바뀜 피드를 반환합니다.
 - feedwatchlist
 - 주시문서 목록 피드를 반환합니다.
 - filerevert
 - 파일을 이전 판으로 되돌립니다.
 - help
 - 지정된 모듈의 도움말을 표시합니다.
 - imagerotate
 - 하나 이상의 그림을 회전합니다.
 - import
 - 다른 위키나 XML 파일로부터 문서를 가져옵니다.
 - linkaccount
 - 서드파티 제공자의 계정을 현재 사용자와 연결합니다.
 - login
 - 로그인한 다음 인증 쿠키를 가져옵니다.
 - logout
 - 로그아웃하고 세션 데이터를 지웁니다.
 - managetags
 - 변경 태그에 관한 관리 작업을 수행합니다.
 - mergehistory
 - 문서 역사를 합칩니다.
 - move
 - 문서 이동하기.
 - oathvalidate
 - 2요소 인증 (OATH) 토큰을 검사합니다.
 - opensearch
 - OpenSearch 프로토콜을 이용하여 위키를 검색합니다.
 - options
 - 현재 사용자의 환경 설정을 변경합니다.
 - paraminfo
 - API 모듈의 정보를 가져옵니다.
 - parse
 - 내용을 변환하고 출력을 반환합니다.
 - patrol
 - 문서나 판을 점검하기.
 - protect
 - 문서의 보호 수준을 변경합니다.
 - purge
 - 주어진 제목을 위한 캐시를 새로 고침.
 - query
 - 미디어위키의 데이터 및 정보를 가져옵니다.
 - removeauthenticationdata
 - 현재 사용자의 인증 데이터를 제거합니다.
 - resetpassword
 - 비밀번호 재설정 이메일을 사용자에게 보냅니다.
 - revisiondelete
 - 판을 삭제하거나 되살립니다.
 - rollback
 - 문서의 마지막 편집을 취소합니다.
 - rsd
 - RSD (Really Simple Discovery) 스키마를 내보냅니다.
 - scribunto-console
 - Scribunto 콘솔에서 XHR 요청을 서비스하기 위한 내부 모듈입니다.
 - setnotificationtimestamp
 - 주시 중인 문서의 알림 타임스탬프를 업데이트합니다.
 - setpagelanguage
 - 문서의 언어를 변경합니다.
 - spamblacklist
 - SpamBlacklist에 대해 하나 이상의 URL의 유효성을 확인합니다.
 - stashedit
 - 공유된 캐시에서 편집을 준비합니다.
 - tag
 - 개별 판이나 기록 항목에서 변경 태그를 추가하거나 제거합니다.
 - titleblacklist
 - TitleBlacklist에 대해 문서 제목, 파일 이름, 사용자 이름을 검사합니다.
 - unblock
 - 사용자를 차단 해제합니다.
 - undelete
 - 삭제된 문서의 판을 복구합니다.
 - unlinkaccount
 - 현재 사용자에 연결된 타사 계정을 제거합니다.
 - upload
 - 파일을 업로드하거나 대기 중인 업로드의 상태를 가져옵니다.
 - userrights
 - 사용자의 그룹 권한을 변경합니다.
 - validatepassword
 - 위키의 비밀번호 정책에 근간하여 비밀번호를 확인합니다.
 - visualeditor
 - Parsoid 서비스에서 문서를 위해 HTML5를 반환합니다.
 - visualeditoredit
 - HTML5 페이지를 미디어위키로 저장합니다. (Parsoid 서비스를 통해 위키텍스트로 변환)
 - watch
 - 현재 사용자의 주시목록에서 문서를 추가하거나 제거합니다.
 - tokens
 - 구식입니다. 데이터 수정 작업을 위해 토큰을 가져옵니다.
 
- 다음 값 중 하나: abusefiltercheckmatch, abusefilterchecksyntax, abusefilterevalexpression, abusefilterunblockautopromote, abuselogprivatedetails, antispoof, block, categorytree, changeauthenticationdata, checktoken, clearhasmsg, clientlogin, compare, createaccount, cspreport, delete, edit, emailuser, embedvideo, expandtemplates, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, help, imagerotate, import, linkaccount, login, logout, managetags, mergehistory, move, oathvalidate, opensearch, options, paraminfo, parse, patrol, protect, purge, query, removeauthenticationdata, resetpassword, revisiondelete, rollback, rsd, scribunto-console, setnotificationtimestamp, setpagelanguage, spamblacklist, stashedit, tag, titleblacklist, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, visualeditor, visualeditoredit, watch, tokens 또는 다른 문자열: abusefiltercheckmatch, abusefilterchecksyntax, abusefilterevalexpression, abusefilterunblockautopromote, abuselogprivatedetails, antispoof, block, categorytree, changeauthenticationdata, checktoken, clearhasmsg, clientlogin, compare, createaccount, cspreport, delete, edit, emailuser, embedvideo, expandtemplates, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, help, imagerotate, import, linkaccount, login, logout, managetags, mergehistory, move, oathvalidate, opensearch, options, paraminfo, parse, patrol, protect, purge, query, removeauthenticationdata, resetpassword, revisiondelete, rollback, rsd, scribunto-console, setnotificationtimestamp, setpagelanguage, spamblacklist, stashedit, tag, titleblacklist, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, visualeditor, visualeditoredit, watch, tokens
 - 기본값: help
 - format
 출력값의 형식.
- 다음 값 중 하나: json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm 또는 다른 문자열: json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm
 - 기본값: jsonfm
 - maxlag
 최대 랙은 미디어위키가 데이터베이스 복제된 클러스터에 설치되었을 때 사용될 수 있습니다. 특정한 행동이 사이트 복제 랙을 유발할 때, 이 변수는 클라이언트가 복제 랙이 설정된 숫자 아래로 내려갈 때까지 기다리도록 지시합니다. 과도한 랙의 경우, maxlag 오류 코드와 $host 대기 중: $lag초 지연되었습니다 메시지가 제공됩니다.
매뉴얼: Maxlag 변수에서 더 많은 정보를 얻을 수 있습니다.- 유형: 정수
 - smaxage
 s-maxageHTTP 캐시 컨트롤 헤더를 설정합니다. 오류는 캐시되지 않습니다.- 유형: 정수
 - 기본값: 0
 - maxage
 max-ageHTTP 캐시 컨트롤 헤더를 설정합니다. 오류는 캐시되지 않습니다.- 유형: 정수
 - 기본값: 0
 - assert
 user 플래그가 설정되어 있다면 로그인 여부를 체크하며, bot 플래그가 설정되어 있다면 봇 사용자 권한이 설정되어 있는지 확인합니다.
- 다음 값 중 하나: user, bot 또는 다른 문자열: user, bot
 - assertuser
 현재 사용자가 지명된 사용자인지 확인합니다.
- 유형: 사용자 이름
 - requestid
 주어진 요청 값은 응답에 포함됩니다. 요청을 구분하기 위해 사용될 수 있습니다.
- servedby
 결과에 요청을 처리한 호스트네임을 포함합니다.
- 유형: 불리언 (자세한 정보)
 - curtimestamp
 결과의 타임스탬프를 포함합니다.
- 유형: 불리언 (자세한 정보)
 - responselanginfo
 uselang 및 errorlang에 사용되는 언어를 결과에 포함합니다.
- 유형: 불리언 (자세한 정보)
 - origin
 크로스 도메인 AJAX 요청 (CORS)을 사용하여 API에 접근할 때, 이것을 발신 도메인으로 설정하십시오. 모든 pre-flight 요청에 포함되어야 하며, 이에 따라 (POST 본문이 아닌) 요청 URI의 일부여야 합니다.
인증된 요청의 경우,
Origin헤더의 발신지들 중 하나와 정확히 일치해야 하므로 https://en.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
 - errorformat
 경고 및 오류 텍스트 출력을 위해 사용할 형식입니다.
- plaintext
 - HTML 태그가 제거되고 엔티티가 치환된 위키텍스트입니다.
 - wikitext
 - 구문 분석되지 않은 위키텍스트입니다.
 - html
 - HTML입니다.
 - raw
 - 메시지 키와 변수입니다.
 - none
 - 텍스트 없이 오류 코드만 출력합니다.
 - bc
 - 미디어위키 1.29 이전에 사용된 형식입니다. errorlang 및 errorsuselocal은 무시됩니다.
 
- 다음 값 중 하나: plaintext, wikitext, html, raw, none, bc 또는 다른 문자열: plaintext, wikitext, html, raw, none, bc
 - 기본값: bc
 - errorlang
 경고와 오류를 위해 사용할 언어입니다. siprop=languages가 포함된 action=query&meta=siteinfo는 언어 코드의 목록을 반환하고, content를 지정하면 이 위키의 내용 상의 언어를 사용하며, uselang을 지정하면 uselang 변수와 동일한 값을 사용합니다.
- 기본값: uselang
 - errorsuselocal
 지정하면 오류 텍스트가 미디어위키 이름공간에서 지역적으로 정의된 메시지를 사용합니다.
- 유형: 불리언 (자세한 정보)
 
- 메인 모듈의 도움말입니다.
 - api.php?action=help [연습장에서 열기]
 - 모든 도움말을 한 페이지로 모읍니다.
 - api.php?action=help&recursivesubmodules=1 [연습장에서 열기]
 
데이터 유형
API 요청 내 몇몇 매개변수형에 대해 더 자세히 설명해보겠습니다:
- boolean
 - Boolean 매개변수들은 HTML 체크박스처럼 동작합니다: 만약 매개변수가 지정되었다면, 값에 상관없이 참의 값으로 여겨집니다. 거짓값은 매개변수 전체를 생략하세요.
 - timestamp
 - 타임스탬프들은 여러 형식으로 표현될 수 있으나 ISO 8601 날짜와 시간이 추천됩니다. 모든 시간은 UTC이어야 하며, 포함된 시간대는 모두 무시됩니다.
- ISO 8601 날짜와 시간, 2001-01-15T14:56:00Z (구두점과 Z는 선택입니다.)
 - ISO 8601 날짜와 시간과 (무시되는) 소수 초, 2001-01-15T14:56:00.00001Z (대시, 콜론과 Z는 선택입니다.)
 - 미디어위키 형식, 20010115145600
 - 일반적인 수 형식 2001-01-15 14:56:00 (GMT, +##, 또는 -##와 같은 선택적 시간대는 무시됩니다)
 - RFC 2822 형식 (시간대는 생략될 수 있음), Mon, 15 Jan 2001 14:56:00
 - RFC 850 형식 (시간대는 생략될 수 있음), Monday, 15-Jan-2001 14:56:00
 - C ctime 형식, Mon Jan 15 14:56:00 2001
 - 1부터 13자리까지의 숫자로 표현된 1970-01-01T00:00:00Z부터 흐른 시간(초) (0을 제외)
 - 문자열 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년–현재)
 
당신의 의견이나 제안, 질문은 mediawiki-api@lists.wikimedia.org 로 보내주시고, 버그 보고는 https://phabricator.wikimedia.org/ 에 해주시기 바랍니다.