Aide de l’API MediaWiki
Ceci est une page d’aide de l’API de MediaWiki générée automatiquement.
Documentation et exemples : https://www.mediawiki.org/wiki/Special:MyLanguage/API:Main_page
Module principal
- Source : MediaWiki
- Licence : GPL-2.0-or-later
État : l’API de MediaWiki est une interface stable et mature qui est prise en charge et améliorée de façon active. Bien que nous essayions de l’éviter, nous avons parfois besoin de faire des modifications non rétrocompatibles ; inscrivez-vous à la liste de diffusion mediawiki-api-announce pour être informé des mises à jour.
Requêtes erronées : si des requêtes erronées sont envoyées à l’API, un entête HTTP sera renvoyé avec la clé « MediaWiki-API-Error ». La valeur de cet entête et le code d’erreur renvoyé prendront la même valeur. Pour plus d’informations, voyez API:Erreurs et avertissements.
Test : pour faciliter le test des requêtes à l’API, utilisez le bac à sable de l’API.
- action
Quelle action effectuer.
- abusefiltercheckmatch
- Vérifier pour voir si un AbuseFilter correspond à un ensemble de variables, à une modification ou à un événement AbuseFilter du journal.
- abusefilterchecksyntax
- Vérifier la syntaxe d’un filtre anti-abus.
- abusefilterevalexpression
- Évalue une expression de filtre anti-abus.
- abusefilterunblockautopromote
- Annule le blocage par un filtre anti-abus des promotions automatiques de statut d’un utilisateur.
- abuselogprivatedetails
- Afficher les détails privés d’une entrée de AbuseLog.
- acquiretempusername
- Obtenir un nom d’utilisateur temporaire et le stocker dans la session en cours, si la création de comptes temporaires est activée et si l’utilisateur actuel est déconnecté. Si un nom a déjà été stocké, renvoie ce même nom.
- antispoof
- Contrôler un nom d’utilisateur d’après les règles de normalisation d’AntiSpoof.
- block
- Bloquer un utilisateur.
- centralauthtoken
- Récupérer un jeton central d’authentification pour faire une requête authentifiée vers un wiki attaché.
- centralnoticecdncacheupdatebanner
- Demander la purge du contenu du bandeau stocké dans le cache CDN (côté utilisateur) pour les utilisateurs anonymes, pour le bandeau et la langue spécifiés
- centralnoticechoicedata
- Obtenir les données nécessaires pour choisir un bandeau pour un projet et une langue donnés
- centralnoticequerycampaign
- Obtenir tous les paramètres de configuration d’une campagne.
- changeauthenticationdata
- Modifier les données d’authentification pour l’utilisateur actuel.
- changecontentmodel
- Modifier le modèle de contenu d’une page
- checktoken
- Vérifier la validité d’un jeton de action=query&meta=tokens.
- cirrus-config-dump
- Dump de la configuration de CirrusSearch.
- cirrus-mapping-dump
- Vidage de la table de correspondance de CirrusSearch pour ce wiki.
- cirrus-profiles-dump
- Vidage des profils CirrusSearch de ce wiki.
- cirrus-settings-dump
- Vidage des paramètres de CirrusSearch pour ce wiki.
- clearhasmsg
- Efface le drapeau
hasmsg
pour l’utilisateur actuel. - clientlogin
- Se connecter au wiki en utilisant la procédure interactive.
- compare
- Obtenir la différence entre deux pages.
- createaccount
- Créer un nouveau compte d’utilisateur.
- createlocalaccount
- Créez de force un compte local. Le compte central doit exister.
- delete
- Supprimer une page.
- deleteglobalaccount
- Supprimer un utilisateur global.
- discussiontoolsedit
- Créer un message sur une page de discussion.
- discussiontoolsfindcomment
- Trouver un commentaire par son identifiant ou son nom.
- discussiontoolsgetsubscriptions
- Obtenir les états d’inscription des sujets donnés.
- discussiontoolssubscribe
- S’abonner (ou se désinscrire) pour recevoir des notifications sur un sujet.
- discussiontoolsthank
- Envoyer publiquement une notification de remerciement pour un commentaire.
- echocreateevent
- Déclencher manuellement l'envoi de notification à un utilisateur
- echomarkread
- Marquer les notifications comme lues pour l’utilisateur actuel.
- echomarkseen
- Marquer les notifications comme vues pour l’utilisateur courant.
- echomute
- Faire taire ou non les notifications issues de certains utilisateurs ou pages.
- edit
- Créer et modifier des pages.
- editmassmessagelist
- Modifier une liste de diffusion de messages en masse.
- emailuser
- Envoyer un courriel à un utilisateur.
- expandtemplates
- Réalise l’expansion de tous les modèles en wikicode.
- featuredfeed
- Renvoie un flux du contenu mis en vedette.
- feedcontributions
- Renvoie le fil des contributions d’un utilisateur.
- feedrecentchanges
- Renvoie un fil de modifications récentes.
- feedwatchlist
- Renvoie un flux de liste de suivi.
- filerevert
- Rétablir un fichier dans une ancienne version.
- flow
- Permet d’effectuer des actions sur les pages de Discussions Structurées.
- flow-parsoid-utils
- Conversion de wikicode en HTML et réciproquement.
- flowthank
- Envoyer une notification publique de remerciement pour un commentaire Flow.
- globalblock
- Bloquer ou débloquer globalement un utilisateur.
- globalpreferenceoverrides
- Réinitialiser les remplacements locaux avec les préférences globales pour l’utilisateur actuel.
- globalpreferences
- Modifier les préférences globales de l’utilisateur actuel.
- globaluserrights
- Ajouter / retirer un utilisateur de / à des groupes globaux.
- help
- Afficher l’aide pour les modules spécifiés.
- imagerotate
- Ce module a été désactivé.
- import
- Importer une page depuis un autre wiki ou depuis un fichier XML.
- jsonconfig
- Permet l’accès direct au sous-système JsonConfig.
- languagesearch
- Rechercher des noms de langage dans n’importe quel script.
- linkaccount
- Lier un compte d’un fournisseur tiers à l’utilisateur actuel.
- login
- Se connecter et récupérer les témoins (cookies) d’authentification.
- logout
- Se déconnecter et effacer les données de session.
- managetags
- Effectuer des tâches de gestion relatives aux balises de modification.
- massmessage
- Envoyer un message à une liste de pages.
- mergehistory
- Fusionner les historiques des pages.
- move
- Déplacer une page.
- opensearch
- Rechercher dans le wiki en utilisant le protocole OpenSearch.
- options
- Modifier les préférences de l'utilisateur actuel.
- paraminfo
- Obtenir des informations sur les modules de l’API.
- parse
- Analyse le contenu et renvoie le résultat de l’analyseur.
- patrol
- Patrouiller une page ou une version.
- protect
- Modifier le niveau de protection d’une page.
- purge
- Vider le cache des titres fournis.
- query
- Récupérer des données de MediaWiki et à propos de celui-ci.
- removeauthenticationdata
- Supprimer les données d’authentification pour l’utilisateur actuel.
- resetpassword
- Envoyer un courriel de réinitialisation du mot de passe à un utilisateur.
- revisiondelete
- Supprimer et rétablir des révisions.
- rollback
- Annuler les dernières modifications de la page.
- rsd
- Exporter un schéma RSD (Découverte Très Simple).
- setglobalaccountstatus
- Masque ou verrouille (ou affiche ou déverrouille) un compte utilisateur global.
- setnotificationtimestamp
- Mettre à jour l’horodatage de notification pour les pages suivies.
- setpagelanguage
- Modifier la langue d’une page.
- shortenurl
- Raccourcir une longue URL en une autre plus courte.
- sitematrix
- Obtenir la liste des sites de Wikimedia.
- spamblacklist
- Valider une ou plusieurs URL selon la liste de blocage du pollupostage.
- streamconfigs
- Expose la configuration du flux d’événements. Renvoie uniquement « format=json » avec « formatversion=2 ».
- strikevote
- Permet aux administrateurs d’annuler ou de réintégrer un vote.
- tag
- Ajouter ou retirer des balises de modification aux révisions ou aux entrées de journal individuelles.
- templatedata
- Récupérer les données stockées par l’extension TemplateData.
- thank
- Envoyer une notification de remerciement à un rédacteur.
- titleblacklist
- Valider un titre de page, un nom de fichier ou un nom d’utilisateur d’après la liste des titres interdits.
- torblock
- Vérifier si une adresse IP est bloquée en tant que nœud de sortie de Tor.
- transcodereset
- Les utilisateurs avec le droit 'transcode-reset' peuvent réinitialiser et relancer une tâche de transcodage.
- unblock
- Débloquer un utilisateur.
- undelete
- Restaurer des versions d’une page supprimée.
- unlinkaccount
- Supprimer un compte tiers lié de l’utilisateur actuel.
- upload
- Téléverser un fichier, ou obtenir l’état des téléversements en cours.
- userrights
- Modifier l’appartenance d’un utilisateur à un groupe.
- validatepassword
- Valider un mot de passe conformément aux règles concernant les mots de passe du wiki.
- watch
- Ajouter ou supprimer des pages de la liste de suivi de l’utilisateur actuel.
- webapp-manifest
- Retourne un manifeste de « webapp ».
- webauthn
- API Module to communicate between server and client during registration/authentication process.
- bouncehandler
- Interne. Recevoir un courriel de rebond et le traiter pour gérer le destinataire erroné.
- categorytree
- Interne. Module interne pour l’extension CategoryTree.
- cirrus-check-sanity
- Interne. Reports on the correctness of a range of page ids in the search index
- collection
- Interne. Module d’API pour effectuer diverses opérations sur la collection de l’utilisateur du wiki.
- cspreport
- Interne. Utilisé par les navigateurs pour signaler les violations de la politique de confidentialité du contenu. Ce module ne devrait jamais être utilisé, sauf quand il est utilisé automatiquement par un navigateur web compatible avec CSP.
- discussiontoolscompare
- Interne. Obtient des informations au sujet des changements de commentaire entre deux révisions de page.
- discussiontoolspageinfo
- Interne. Renvoie les métadonnées nécessaires pour initialiser les outils de discussion.
- discussiontoolspreview
- Interne. Afficher l’aperçu d’un message sur une page de discussion.
- editcheckreferenceurl
- Interne. Check the status of a URL for use as a reference.
- fancycaptchareload
- Interne. Vey èn ôte FancyCaptcha.
- jsondata
- Interne. Récupérer les données JSON régionalisées.
- oathvalidate
- Interne. Valider un jeton d’authentification à deux facteurs (OATH).
- parser-migration
- Interne. Analyser une page avec deux configurations d’analyseur différentes.
- readinglists
- Interne. Opérations d’écriture des listes de lecture.
- sanitize-mapdata
- Interne. Effectue la validation des données pour l’extension Kartographer
- scribunto-console
- Interne. Module interne pour répondre aux requêtes XHR à partir de la console Scribunto.
- securepollauth
- Interne. Autorise un wiki distant à authentifier les utilisateurs avant d’accorder l’accès et leur permettre de voter à l’élection.
- stashedit
- Interne. Préparer des modifications dans le cache partagé.
- timedtext
- Interne. Fournit un contenu texte horodaté pour être utilisé par les éléments $lt;track>
- ulslocalization
- Interne. Obtenir la traduction de ULS dans la langue donnée.
- ulssetlang
- Interne. Mettre à jour la langue d’interface préférée de l’utilisateur.
- visualeditor
- Interne. Renvoie une page HTML5 du service Parsoid.
- visualeditoredit
- Interne. Enregistrer une page HTML5 en MediaWiki (convertie en wikicode via le service Parsoid).
- wikimediaeventsblockededit
- Interne. Tracer les informations sur les tentatives de modification bloquées
- Une des valeurs suivantes : abusefiltercheckmatch, abusefilterchecksyntax, abusefilterevalexpression, abusefilterunblockautopromote, abuselogprivatedetails, acquiretempusername, antispoof, block, centralauthtoken, centralnoticecdncacheupdatebanner, centralnoticechoicedata, centralnoticequerycampaign, changeauthenticationdata, changecontentmodel, checktoken, cirrus-config-dump, cirrus-mapping-dump, cirrus-profiles-dump, cirrus-settings-dump, clearhasmsg, clientlogin, compare, createaccount, createlocalaccount, delete, deleteglobalaccount, discussiontoolsedit, discussiontoolsfindcomment, discussiontoolsgetsubscriptions, discussiontoolssubscribe, discussiontoolsthank, echocreateevent, echomarkread, echomarkseen, echomute, edit, editmassmessagelist, emailuser, expandtemplates, featuredfeed, feedcontributions, feedrecentchanges, feedwatchlist, filerevert, flow-parsoid-utils, flow, flowthank, globalblock, globalpreferenceoverrides, globalpreferences, globaluserrights, help, imagerotate, import, jsonconfig, languagesearch, linkaccount, login, logout, managetags, massmessage, mergehistory, move, opensearch, options, paraminfo, parse, patrol, protect, purge, query, removeauthenticationdata, resetpassword, revisiondelete, rollback, rsd, setglobalaccountstatus, setnotificationtimestamp, setpagelanguage, shortenurl, sitematrix, spamblacklist, streamconfigs, strikevote, tag, templatedata, thank, titleblacklist, torblock, transcodereset, unblock, undelete, unlinkaccount, upload, userrights, validatepassword, watch, webapp-manifest, webauthn, bouncehandler, categorytree, cirrus-check-sanity, collection, cspreport, discussiontoolscompare, discussiontoolspageinfo, discussiontoolspreview, editcheckreferenceurl, fancycaptchareload, jsondata, oathvalidate, parser-migration, readinglists, sanitize-mapdata, scribunto-console, securepollauth, stashedit, timedtext, ulslocalization, ulssetlang, visualeditor, visualeditoredit, wikimediaeventsblockededit
- Par défaut : help
- format
Le format de sortie.
- json
- Sortir les données au format JSON.
- jsonfm
- Extraire les données au format JSON (HTML mis en forme améliorée pour l’impression).
- none
- Ne rien extraire.
- php
- Extraire les données au format sérialisé de PHP.
- phpfm
- Extraire les données au format sérialisé de PHP (mise en forme HTML améliorée pour l'impression).
- rawfm
- Extraire les données, y compris les éléments de débogage, au format JSON (mise en forme HTML améliorée pour l'impression).
- xml
- Extraire les données au format XML.
- xmlfm
- Extraire les données au format XML (affiché proprement en HTML).
- Une des valeurs suivantes : json, jsonfm, none, php, phpfm, rawfm, xml, xmlfm
- Par défaut : jsonfm
- maxlag
La latence maximale peut être utilisée quand MediaWiki est installé sur une grappe de réplication de bases de données. Pour éviter des actions provoquant un supplément de latence de réplication de site, ce paramètre peut faire attendre le client jusqu’à ce que la latence de réplication soit inférieure à une valeur spécifiée. En cas de latence excessive, le code d’erreur maxlag est renvoyé avec un message tel que Attente de $host : $lag secondes de délai.
Voyez Manuel : paramètre Maxlag pour plus d’informations.- Type: entier
- smaxage
Fixer l’entête HTTP de contrôle de cache
s-maxage
à ce nombre de secondes. Les erreurs ne sont jamais mises en cache.- Type: entier
- La valeur ne peut pas être inférieure à 0.
- Par défaut : 0
- maxage
Fixer l’entête HTTP de contrôle de cache
max-age
au nombre indiqué de secondes. Les erreurs ne sont jamais mises en cache.- Type: entier
- La valeur ne peut pas être inférieure à 0.
- Par défaut : 0
- assert
Vérifiez que l’utilisateur est connecté (y compris éventuellement en tant qu’utilisateur temporaire) s’il est défini sur user, qu’il n’est pas connecté s’il est défini sur anon, ou qu’il dispose des droits d’utilisateur du bot s’il est bot.
- Une des valeurs suivantes : anon, bot, user
- assertuser
Vérifier que l’utilisateur actuel est l’utilisateur nommé.
- Type : utilisateur, parmi nom d’utilisateur eyet Utilisateur temporaire
- requestid
Toute valeur fournie ici sera incluse dans la réponse. Peut être utilisé pour distinguer des demandes.
- servedby
Inclure le nom d’hôte qui a renvoyé la requête dans les résultats.
- Type : booléen (détails)
- curtimestamp
Inclure l’horodatage actuel dans le résultat.
- Type : booléen (détails)
- responselanginfo
Inclure les langues utilisées pour uselang et errorlang dans le résultat.
- Type : booléen (détails)
- origin
En accédant à l’API au moyen d’une requête AJAX inter-domaines (CORS), indiquez le protocole et le nom de domaine d’origine dans ce paramètre. Celui-ci doit être inclus dans toute requête de pré-envol et doit donc faire partie de l’URI de la requête (pas du corps de la requête POST).
Pour les requêtes authentifiées, cela doit correspondre exactement à une des origines dans l’entête
Origin
, il doit donc être fixé avec quelque chose comme https://en.wikipedia.org ou https://meta.wikimedia.org. Si ce paramètre ne correspond pas à l’entêteOrigin
, une réponse 403 sera renvoyée. Si ce paramètre correspond à l’entêteOrigin
et l’origine indiquée est autorisée, l’API renseignera les entêtesAccess-Control-Allow-Origin
etAccess-Control-Allow-Credentials
dans sa réponse.Pour les requêtes non authentifiées, indiquez la valeur *. L’API renseignera l’entête
Access-Control-Allow-Origin
dans sa réponse, maisAccess-Control-Allow-Credentials
vaudrafalse
et toutes les données spécifiques à l’utilisateur seront restreintes.- uselang
Langue à utiliser pour les traductions de message : utilisez la requête de l’API action=query&meta=siteinfo avec siprop=languages pour renvoyer une liste de codes de langue, sinon indiquez user pour utiliser la langue préférée de l’utilisateur actuel, ou bien content pour utiliser la langue du contenu de ce wiki.
- Par défaut : user
- variant
Variante de la langue. Ne fonctionne que si la langue de base prend en charge la conversion en variante.
- errorformat
Format à utiliser pour la sortie de texte d’avertissement et d’erreur
- plaintext
- Wikicode avec les balises HTML supprimés et les entités remplacées.
- wikitext
- Wikicode non analysé.
- html
- HTML
- raw
- Clé et paramètres du message.
- none
- Sortie sans texte, seulement les codes d’erreur.
- bc
- Format utilisé avant MediaWiki 1.29. errorlang et errorsuselocal sont ignorés.
- Une des valeurs suivantes : bc, html, none, plaintext, raw, wikitext
- Par défaut : bc
- errorlang
Langue à utiliser pour les avertissements et les erreurs. Spécifier un des codes langues utilisables renvoyés par action=query&meta=siteinfo avec siprop=languages, sinon content pour utiliser la langue du contenu de ce wiki, ou encore uselang pour utiliser la même valeur que le paramètre uselang (la langue préférée pour l’interface utilisateur).
- Par défaut : uselang
- errorsuselocal
S’il est fourni, les textes d’erreur utiliseront des messages adaptés à la langue dans l’espace de noms MediaWiki.
- Type : booléen (détails)
- centralauthtoken
Lors de l’accès à l’API en utilisant une requête AJAX inter-domaines (CORS), utiliser ceci pour s’authentifier comme l’utilisateur SUL actuel. Utiliser action=centralauthtoken sur ce wiki pour récupérer le jeton, avant de faire la requête CORS. Chaque jeton ne peut être utilisé qu’une fois et expire après 10 secondes. Cela devrait être inclus dans toute requête de survol préalable et donc dans l’URI de la requête (et non le corps du POST).
- Aide pour le module principal.
- api.php?action=help [ouvrir dans le bac à sable]
- Toute l’aide sur une page.
- api.php?action=help&recursivesubmodules=1 [ouvrir dans le bac à sable]
Type de données
Toute entrée de texte dans MediaWiki devrait être encodée en UTF-8 sous forme normalisée canonique précomposée (NFC). MediaWiki peut tenter de convertir d’autres entrées, mais cela peut faire échouer certaines opérations (comme des modifications de pages avec les vérifications MD5).
Les paramètres qui prennent plusieurs valeurs sont normalement soumis avec les valeurs séparées par des barres verticales, par ex. param=valeur1|valeur2 ou param=valeur1%7Cvaleur2. Si une valeur doit contenir une barre verticale, utiliser le contrôle U+001F (séparateur d’unité) comme séparateur et préfixer la valeur par U+001F, par ex. param=%1Fvaleur1%1Fvaleur2.
Certains types de paramètre dans les requêtes de l’API nécessitent plus d’explications :
- boolean
Les paramètres booléens fonctionnent comme des cases à cocher HTML : si le paramètre est spécifié, quelle que soit sa valeur, il est considéré comme vrai. Pour une valeur fausse, omettre complètement le paramètre.
- expiry
Les valeurs d’expiration peuvent être relatives (par ex. 5 months pour 5 mois ou 2 weeks pour 2 semaines) ou absolues (par ex. 2014-09-18T12:34:56Z). Pour ne pas avoir d’expiration, utiliser infinite (infini), indefinite (non défini), infinity (infinité) ou never (jamais).
- timestamp
Les horodatages peuvent être spécifiés sous plusieurs formes, voir les formats d’entrée de la bibliothèque Timestamp documentés sur mediawiki.org pour plus de détails. La date et l’heure ISO 8601 sont recommandés : 2001-01-15T14:56:00Z. De plus, la chaîne now peut être utilisée pour spécifier l’horodatage courant.
Paramètres de modèle
Les paramètres dynamiques (nommés selon un format modèle) prennent en charge les cas où un module d’API a besoin d’une valeur pour chaque valeur d’un autre paramètre quelconque. Par exemple, s’il y avait un module d’API pour demander un fruit, il pourrait avoir un paramètre statique fruits pour spécifier quels fruits sont demandés et un paramètre dynamique {fruit}-quantité pour spécifier la quantité demandée de chacun des fruits. Un client de l’API qui voudrait une pomme, cinq bananes et vingt fraises pourrait alors faire une requête comme fruits=pommes|bananes|fraises&pommes-quantité=1&bananes-quantité=5&fraises-quantité=20.
Remerciements
Développeurs de l’API :
- Yuri Astrakhan (créateur, développeur en chef de sept. 2006 à sept. 2007)
- Roan Kattouw (développeur en chef de sept. 2007 à 2009)
- Victor Vasiliev
- Bryan Tong Minh
- Sam Reed
- Brad Jorsch (développeur en chef de 2013 à 2020)
Veuillez envoyer vos commentaires, suggestions et questions à [email protected] ou remplir un rapport de bogue sur https://phabricator.wikimedia.org/.