Wikidata:Bots
This page documents a Wikidata policy. It is a widely accepted standard that all editors should normally follow. All changes made to it (except for minor edits such as fixing typos) should reflect consensus. When in doubt, discuss your idea on the project chat. |
Bots (also known as robots) are tools used to make edits without the necessity of human decision-making. Bots can add interwiki links, labels, descriptions, statements, sources, and can even create items, among other things. Bots have the ability to make edits very quickly and can disrupt Wikidata if they are incorrectly designed or operated. For these reasons a bot policy has been developed.
Bot accounts
Contributors must create a separate account in order to operate a bot. Bot accounts are generally named after either their operator or their function, combined with the word "bot" (see list of bots on the right side of this page). The bot account's user page should contain the template {{bot}}
in order to further indicate the account's status as a bot. The contributions of a bot account remain the responsibility of its operator, who should be identified on its user page. Bots should not edit while logged out, and can use the assert parameter to ensure that.
In the case of any damage caused by a bot, the bot operator is asked to stop the bot. Depending on the scale of the damage, an administrator may block the bot. The bot operator is responsible for cleaning up any damage caused by the bot. It is suggested that bot operators add this page to their watchlists, as relevant notifications and discussions may take place on the talk page.
Bot accounts should not be used for contributions that do not fall within the scope of the bot's designated tasks (see #Approval process for trials), and should never be used to make non-automated edits in the user talk namespace. Bot operators may wish to redirect a bot account's user talk page to their main account's user talk page. Bot operators should be prepared to answer questions about their bots.
Bots should respect maxlag and should follow the API etiquette guidelines.
Approval process
In order to receive approval and a bot flag, a request must be made at Wikidata:Requests for permissions/Bot detailing what task the operator wishes for the bot to perform. The bot operator should do a test run of between 50 and 250 edits, so that the community can observe that the bot is working correctly. The request for permission must be started before the test run is started. If testing is successful, and the bot task receives community support, an administrator will close the request and a bureaucrat will give the account a bot flag. If the closer is a bureaucrat, they can also flag the account at the same time.
As one bot account may perform many different tasks, it is recommended that the operator list all of the bot's tasks on the bot's user page. When working in namespaces that allow for customized edit summaries, bots should always use descriptive edit summaries that indicate what task is being performed and indicate that the action is being performed by a bot.
Bots do not need to be approved if they are only making edits in the operator/bot's userspace, the Wikidata sandbox, or the Wikidata item sandbox. However such bots should still respect maxlag and, if needed, Special:DispatchStats, the same as an approved bot would.
To request revocation of approval for a task, start a new section on Wikidata talk:Bots and provide a notification on the Wikidata:Bureaucrats' noticeboard. Bot operators do not need to request revocation of approval for tasks that become deprecated or inactive.
Bots must stay within reasonable bounds of their approved tasks. The general guideline is to use common sense, and if in doubt, file another request for approval.
Adminbots
To request approval for a bot with admin abilities (block, delete, protect, etc), a request must be approved at both Wikidata:Requests for permissions/Bot and Wikidata:Requests for permissions/Administrator before tasks using admin abilities are run.
Bot requirements
All bots
- Be able to set a limit for maximum edits per minute
- Set the botflag for all edits
Langlink import bots
- Full requirements: Import bot features
The following requirements are required to receive a bot flag, there are other suggested ones on the subpage
- Support for
action=wbgetentities
- Interwiki conflict checking
Statement adding bots
- Add sources to any statement that is added unless it has been agreed the data is 'common knowledge', in which case the bot should state where the information has been copied from.
- Bots should add instance of (P31) and/or subclass of (P279) if possible
- Bots should check that they are not adding duplicate statements (unless they are correct)
- Bots with a new source for an existing statement should add it as a new source, rather than create a new statement.
- Bots importing from Wikipedia should add imported from Wikimedia project (P143) and retrieved (P813)
- Monitor constraint violation reports for possible errors generated or propagated by your bot
See also
- Wikidata:Bot requests
- Wikidata:Creating a bot
- Wikidata:Pywikibot - Python 3 Tutorial - beware that this bot framework does not support Lexemes.
- See Wikidata:WikibaseIntegrator, a Python library supporting both Q and L entities.
- Manual of running bots in the pywikibot standard framework - beware that this bot framework does not support Lexemes.
|