Service provider
Name: Wikipedia/MediaWiki
Short description: Wikipedia or any other MediaWiki wiki.
Website: https://en.wikipedia.org among others
API documentation: https://en.wikipedia.org/api/ (for the English Wikipedia)
Proposed verification mechanism
Proposal 1
- Add a template called
{{Keyoxide proof}} or similar to any wiki. This template will be empty.
- To any user page, add
{{Keyoxide proof|PROOF}}, where PROOF is the proof
- If it's on
User: Example's page, then we query https://en.wikipedia.org/wiki/User:Example?action=raw to get the raw Wikitext, and see if there are any proofs
Example
{{Keyoxide proof|First proof}}
{{Keyoxide proof|Second proof}}
<!-- Rest of the user page -->
Proposal 2
- Add a
<span class="keyoxide-proof"> to the userpage, containing a proof.
- If it's on
User: Example's page, then we query https://en.wikipedia.org/wiki/User:Example?action=raw to get the raw Wikitext, and see if there are any proofs
Example
<span class="keyoxide-proof" style="display: none">First proof</span>
<span class="keyoxide-proof" style="display: none">Second proof</span>
<!-- Rest of the user page -->
Proposal 3
- Add a subpage to your userpage called
/Keyoxide proof
- Edit it to only contain the proof(s). If the user wants multiple proofs, they can put each proof on a new line.
- If it's on
User: Example's page, then we query https://en.wikipedia.org/wiki/User:Example/Keyoxide_proof?action=raw to get the raw Wikitext, which should just be the proof(s) in plaintext.
Example
First proof
Second proof
Proposal 4
- Add a subpage to your userpage called
/Keyoxide proof.json
- Edit it to contain the proof(s) in JSON format
- If it's on
User: Example's page, then we query https://en.wikipedia.org/wiki/User:Example/Keyoxide_proof.json?action=raw to get the raw JSON, which should contain the proof(s) in JSON.
Example
[
"First proof",
"Second proof"
]
- This was proposed previously in the forum, where they suggested using the RealMe MediaWiki extension, but I dislike that for several reasons:
- You can only add HTTP(S) URLs
- Not every wiki has that extension installed
- Proposal 1 is suboptimal, because not all wikis allow for template creation by all users, and creating a new template on every wiki will be exhausting
- Proposals 1 and 2 and 3 are suboptimal, because any user can edit them
- Proposal 4 is my favourite, because it's the most universal and machine-readable
- The template and subpage names are arbitrary, they don't necessarily need to be
Keyoxide proof
- At least on the English Wikipedia, JSON user pages can only be edited by the user themselves, or by an interface admin
- I am still quite unfamiliar with Keyoxide, so please tell me if I missed something here!
Tasks
### Service provider
Name: Wikipedia/MediaWiki
Short description: Wikipedia or any other MediaWiki wiki.
Website: https://en.wikipedia.org among others
API documentation: https://en.wikipedia.org/api/ (for the English Wikipedia)
### Proposed verification mechanism
#### Proposal 1
* Add a template called `{{Keyoxide proof}}` or similar to any wiki. This template will be empty.
* To any user page, add `{{Keyoxide proof|PROOF}}`, where `PROOF` is the proof
* If it's on `User: Example`'s page, then we query `https://en.wikipedia.org/wiki/User:Example?action=raw` to get the raw Wikitext, and see if there are any proofs
##### Example
```mediawiki
{{Keyoxide proof|First proof}}
{{Keyoxide proof|Second proof}}
<!-- Rest of the user page -->
```
#### Proposal 2
* Add a `<span class="keyoxide-proof">` to the userpage, containing a proof.
* If it's on `User: Example`'s page, then we query `https://en.wikipedia.org/wiki/User:Example?action=raw` to get the raw Wikitext, and see if there are any proofs
##### Example
```html
<span class="keyoxide-proof" style="display: none">First proof</span>
<span class="keyoxide-proof" style="display: none">Second proof</span>
<!-- Rest of the user page -->
```
#### Proposal 3
* Add a subpage to your userpage called `/Keyoxide proof`
* Edit it to only contain the proof(s). If the user wants multiple proofs, they can put each proof on a new line.
* If it's on `User: Example`'s page, then we query `https://en.wikipedia.org/wiki/User:Example/Keyoxide_proof?action=raw` to get the raw Wikitext, which should just be the proof(s) in plaintext.
##### Example
```
First proof
Second proof
```
#### Proposal 4
* Add a subpage to your userpage called `/Keyoxide proof.json`
* Edit it to contain the proof(s) in JSON format
* If it's on `User: Example`'s page, then we query `https://en.wikipedia.org/wiki/User:Example/Keyoxide_proof.json?action=raw` to get the raw JSON, which should contain the proof(s) in JSON.
##### Example
```json
[
"First proof",
"Second proof"
]
```
<!-- Optional, only fill in if you already know which APIs to use, etc -->
### Remarks
* [This was proposed previously in the forum](https://community.keyoxide.org/d/338-add-mediawiki), where they suggested using the RealMe MediaWiki extension, but I dislike that for several reasons:
1. You can only add HTTP(S) URLs
2. Not every wiki has that extension installed
* Proposal 1 is suboptimal, because not all wikis allow for template creation by all users, and creating a new template on every wiki will be exhausting
* Proposals 1 and 2 and 3 are suboptimal, because any user can edit them
* Proposal 4 is my favourite, because it's the most universal and machine-readable
* The template and subpage names are arbitrary, they don't necessarily need to be `Keyoxide proof`
* At least on the English Wikipedia, JSON user pages can only be edited by the user themselves, or by an interface admin
* I am still quite unfamiliar with Keyoxide, so please tell me if I missed something here!
### Tasks
<!-- Leave the following unchecked -->
- [ ] Verification mechanism tested
- [ ] Added to [doip-js](https://codeberg.org/keyoxide/doipjs)
- [ ] Added to [doip-rs](https://codeberg.org/keyoxide/doip-rs)
- [ ] Added proxy routes (if needed)
- [ ] Added to [keyoxide-brands](https://codeberg.org/keyoxide/keyoxide-brands)
- [ ] Added to [documentation](https://codeberg.org/keyoxide/keyoxide-docs)