Mediawiki API
Introduction to Mediawiki API
API stands for Application Programmer Interface, is one way of communicating through a system using a standard way of communication between applications. API Services of this mediawiki can be found in | API Documentation.
Process Flow
This process flow is to documenting on how the front-end application can communicate with instance of Mediawiki, in this context is PKC.
Login Process
Mediawiki API have two different scenarios for handling login process.
1. Using Robot Account
This scenario is to acommodate automation process on behalf of specified user. To enable the process, you will need to prepare your bot account, which can be done by visiting [Special:BotPasswords], then you decide the bot name and Mediawiki will prepare the username and password that can be use to access the API. Please see the right image for reference.
First API to call Type: GET Endpoint: /api.php?
key | value |
---|---|
action | query |
meta | tokens |
format | json |
type | login |
Response:
{ "batchcomplete": "", "query": { "tokens": { "logintoken": "ed965e6288be0ab007b8eab63637cca762eb3af1+\\" } } }
Second API To Call Type: POST Endpoint: /api.php?
key | value | location |
---|---|---|
action | login | parameter |
format | json | parameter |
lgname | [your-bot-username] | body |
lgpassword | [your-bot-password] | body |
lgtoken | {from prev API} | body |
Response
{ "login": { "result": "Success", "lguserid": 9, "lgusername": "[your-bot-username]" } }
Please noted on token value, as a response result from first API, you will need to pass excludes the last '\' character.
examples response : ed965e6288be0ab007b8eab63637cca762eb3af1+\\ sending as : ed965e6288be0ab007b8eab63637cca762eb3af1+\
Once you have API login replied as success, you can start the transaction using the same login token that is sent on second API.
2. Using Your Account
This scenario is to acommodate fully interactive process to Mediawiki, and positioning Mediawiki as the backend.