1. 개요[편집]
the seed에 대한 자동 편집 툴과 같은 봇을 만들때 참고하실 수 있는 가이드입니다. 이 가이드는 기본적으로 공식 문서를 기반으로 작성되었습니다.
2. 기본 구성[편집]
the seed의 공개 API를 이용하는 경우 다음과 같이 작동합니다.
- 공개 API의 엔드포인트로 접속하여 발급된 API 토큰을 통해 인증
- 해당 API 토큰의 사용자가 api_accecs 권한이 있는지 확인
- 권한이 있다면 해당 엔드포인트에 알맞은 값을 반환
- 권한이 없다면 403 Forbidden 반환[error-text]
위와 같은 과정을 통해 역링크 목록, 문서 편집 및 이동, 삭제, 토론 목록 열람 등이 가능한 것이며, 그 외의 경고 해제, 자동 차단과 같은 봇은 selenium과 같은 라이브러리를 활용하여 개발된 the seed와 상관 없는 프로그램입니다.
해당 문서에 서술된 예시는 모두 더시드위키의 ‘더새드위키’ 문서를 기준으로 하였음을 알려드립니다.
3. API 유형[편집]
4. API 사용[편집]
4.1. bash[편집]
일반적인 curl과 같은 형식으로 api를 활용하는 법을 다룹니다.
4.1.1. 기본[편집]
- 입력
curl https://alphawiki.org/api/edit/더새드위키
-H "Authorization: Bearer ${API_TOKEN}"
- 출력
{
"text": "[[분류:더새드위키]]\n[include(틀:더새드위키)]\n||<-2><table align=right><:><#fedcba>'''{{{#black 더새드위키[br]The Sad Wiki}}}''' ||\n||<:><#fedcba>'''{{{#black 개설 일자}}}''' ||<#FFFFFF> 2021년 1월 25일[* [[더새드위키:가짜규칙]] 문서가 처음 \"차단회피\"라는 문서명으로 생성되고 더새드위키:가짜규칙 문서명으로 이동된 날짜 기준] ||\n||<:><#fedcba>'''{{{#black 대표색}}}''' ||<#FFFFFF> {{{#!wiki style=\"display: inline; background: #fedcba; border-radius: 3px; padding: 3px 4px\"\n{{{#000000 '''살구색''' {{{-2 (#fedcba)}}}}}}}}}[* 알파위키의 대표색인 #abcdef를 거꾸로 한 것이다.] ||\n||<:><#fedcba>'''{{{#black 언어}}}''' ||<#FFFFFF> 한국어 ||\n||<:><#fedcba>'''{{{#black 위키 엔진}}}''' ||<#FFFFFF> the seed ||\n||<:><#fedcba>'''{{{#black 라이선스}}}''' ||<#FFFFFF> CC BY-SA 4.0 ||\n||<:><#fedcba>'''{{{#black 창립자}}}''' ||<#FFFFFF> [[사용자:maca|maca]] ||\n||<:><#fedcba>'''{{{#black 소유자}}}''' ||<#FFFFFF> [[사용자:maca|maca]] ||\n||<:><#fedcba>'''{{{#black 사무관}}}''' ||<#FFFFFF> [[사용자:maca|maca]] ||\n||<:><#fedcba>'''{{{#black 상임 관리자}}}''' ||<#FFFFFF> [[사용자:maca|maca]][*+], [[사용자:Blank|Blank]] ||\n||<:><#fedcba>'''{{{#black 운영관리관}}}''' ||<#FFFFFF> [[사용자:maca|maca]], [[사용자:Blank|Blank]] ||\n||<:><#fedcba>'''{{{#black 관리자}}}''' ||<#FFFFFF> [[사용자:chodyyy|chodyyy]] ||\n[목차]\n= 개요 =\n>우리 모두가 창조해 나가는 가상의 위키, 더새드위키\n>----\n>더새드위키의 슬로건\n2021년 1월 25일 더시드위키에서 만들어진 더시드위키 내 가상의 위키이다. --더시드위키의 식민지다.-- 실제로 있는 위키는 아니다.\n\n= 트리비아 =\n * 번역하면 슬픈(sad) 위키라고 한다.\n * 네이버에 더새드위키라고 검색하면 더샌드위치(...)로 나온다.\n[각주]",
"exists": true,
"token": "Gg1GLvxEks+V3rS30qa2oelNP2VNxrGWC2HLKtBmH21/xoWCHpEdRbZ5liNh7IWI"
}
문서를 편집하기 전에 먼저 인증 과정을 거쳐야 합니다. 해당 구문은 문서 내용을 가져오며 편집 토큰을 발급하는 과정입니다.
API_TOKEN은 api_access 권한을 가진 상태로 내 정보에서 발급한 API 토큰을 기입하시면 됩니다. 또한, NAME에는 편집을 원하시는 문서 이름을 적으시면 됩니다.
4.1.1.1. 파라미터 설명[편집]
출력되는 파라미터(사항)들의 뜻과 예시입니다.
- "text" 설명
문서의 본문 내용(raw) 입니다. 줄바꿈은
\n
으로 이스케이프되어 표시됩니다. 후술하겠지만, 편집 API 요청 시에도 줄바꿈 문자는 이스케이프하여야 합니다.- "text" 예시
[[분류:더새드위키]]\n[include(틀:더새드위키)]\n||<-2><table align=right><:><#fedcba>'''{{{#black 더새드위키[br]The Sad Wiki}}}''' ||\n||<:><#fedcba>'''{{{#black 개설 일자}}}''' ||<#FFFFFF> 2021년 1월 25일[* [[더새드위키:가짜규칙]] 문서가 처음 \"차단회피\"라는 문서명으로 생성되고 더새드위키:가짜규칙 문서명으로 이동된 날짜 기준] ||\n||<:><#fedcba>'''{{{#black 대표색}}}''' ||<#FFFFFF> {{{#!wiki style=\"display: inline; background: #fedcba; border-radius: 3px; padding: 3px 4px\"\n{{{#000000 '''살구색''' {{{-2 (#fedcba)}}}}}}}}}[* 알파위키의 대표색인 #abcdef를 거꾸로 한 것이다.] ||\n||<:><#fedcba>'''{{{#black 언어}}}''' ||<#FFFFFF> 한국어 ||\n||<:><#fedcba>'''{{{#black 위키 엔진}}}''' ||<#FFFFFF> the seed ||\n||<:><#fedcba>'''{{{#black 라이선스}}}''' ||<#FFFFFF> CC BY-SA 4.0 ||\n||<:><#fedcba>'''{{{#black 창립자}}}''' ||<#FFFFFF> [[사용자:maca|maca]] ||\n||<:><#fedcba>'''{{{#black 소유자}}}''' ||<#FFFFFF> [[사용자:maca|maca]] ||\n||<:><#fedcba>'''{{{#black 사무관}}}''' ||<#FFFFFF> [[사용자:maca|maca]] ||\n||<:><#fedcba>'''{{{#black 상임 관리자}}}''' ||<#FFFFFF> [[사용자:maca|maca]][*+], [[사용자:Blank|Blank]] ||\n||<:><#fedcba>'''{{{#black 운영관리관}}}''' ||<#FFFFFF> [[사용자:maca|maca]], [[사용자:Blank|Blank]] ||\n||<:><#fedcba>'''{{{#black 관리자}}}''' ||<#FFFFFF> [[사용자:chodyyy|chodyyy]] ||\n[목차]\n= 개요 =\n>우리 모두가 창조해 나가는 가상의 위키, 더새드위키\n>----\n>더새드위키의 슬로건\n2021년 1월 25일 더시드위키에서 만들어진 더시드위키 내 가상의 위키이다. --더시드위키의 식민지다.-- 실제로 있는 위키는 아니다.\n\n= 트리비아 =\n * 번역하면 슬픈(sad) 위키라고 한다.\n * 네이버에 더새드위키라고 검색하면 더샌드위치(...)로 나온다.\n[각주]
- "exists" 설명
요청을 보낸 문서의 존재 여부입니다. 삭제되었거나 존재하지 않는다면 false, 존재한다면 true로 표시됩니다.
- "exists" 예시
true
- "token" 설명
해당 문서의 편집 토큰입니다. 일회용이며, 문서 편집에 사용되니 실제 봇 구동 시에는 값을 추출하여 이용됩니다.
- "token" 예시
Gg1GLvxEks+V3rS30qa2oelNP2VNxrGWC2HLKtBmH21/xoWCHpEdRbZ5liNh7IWI
4.1.2. 편집[편집]
- 입력
curl "https://theseed.io/api/edit/%EB%8D%94%EC%83%88%EB%93%9C%EC%9C%84%ED%82%A4" \
-XPOST \
-d "{\"text\":\"Hello, world\",\"log\":\"\",\"token\":\"Gg1GLvxEks+V3rS30qa2oelNP2VNxrGWC2HLKtBmH21/xoWCHpEdRbZ5liNh7IWI\"}" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer API_TOKEN"
- 출력
4.1.3. 역링크[편집]
4.1.4. 토론 목록 조회[편집]
4.2. HTTP 리퀘스트[편집]
HTTP 리퀘스트를 통해 api를 활용하는 방법을 다룹니다.
4.3. 주의 사항[편집]
[error-text]
{"status": "권한이 부족합니다."}
[편집경로] (위키주소)/api/edit/(문서명)[역링크경로] (위키주소)/api/backlink/문서명)[토론경로] (위키주소)/api/discuss/(문서명)