| Cette page fait partie de la documentation de l'API REST de MediaWiki. |
L'API REST vous permet d'interagir avec MediaWiki en envoyant des requêtesHTTP vers des URLsrest.php.Vous pouvez utiliser l'API pour construire des applications et des scripts qui exécutent des recherches et affichent des pages wiki, récupèrent des fichiers de médias, et exploitent l'historique des pages.
# Rechercher un article à propos de la terre (Earth), sur la Wikipedia anglophone$ curl"https://en.wikipedia.org/w/rest.php/v1/search/page?q=earth&limit=1"
Les points d'accès de l'API REST renvoient les données au formatJSON ouHTML.Voir lesréférences de l'API pour le type de contenu pris en charge par chaque point d'accès.
L'API prend en charge lesméthodes des requêtes HTTP usuelles.
| GET | Récupérer la ressource |
|---|---|
| HEAD | Renvoie lesentêtes HTTP pour une requête GET sans données dans la réponse |
| POST | Créer une ressource |
| PUT | Mettre à jour ou créer une ressource |
Les points d'accès de l'API partagent une structure cohérente d'URL qui inclut l'URL de base du wiki, lechemin du script du wiki, et la version de l'API.
# structure de l'URL[URLduprojet]/[cheminduscript]/rest.php/v[numérodeversion]/# Exemple d'URL : obtenir l'historique de la page d'accueil de la Wikipedia anglophonehttps://en.wikipedia.org/w/rest.php/v1/page/Main_Page/history
Conçue pour fournir une stabilité à long terme pour les développeurs, l'API REST de MediaWiki est versionnée en utilisant un numéro de version global dans le chemin de l'API (par exemple :/v1/).
For additional details about how versions and deprecations are managed for this API, seeAPI/Deprecation.
L'API REST est conçue pour être utilisée avec l'extensionOAuth pour l'authentification des utilisateurs et les permissions.Néanmoins, sans tenir compte de la méthode d'authentification, l'API répond à la présence d'un utilisateur connecté et renvoie le contenu autorisé par les droits de cet utilisateur.
Vous pouvez utiliser l'API REST pour accéder àWikipedia,auWiktionnaire, et à d'autres projets Wikimedia dans diverses langues.Pour une liste complète des URLs des projets Wikimedia, voir lamatrice des sites Meta-Wiki.
Il n'existe aucune limite fixée quant aux requêtes de l'API, mais votre client peut être bloqué si vous attentez à la stabilité d'un site.Pour rester à un niveau sécuritaire de requête, attendez que chaque requête se termine avant d'envoyer la requête suivante.
Les sites Wikimedia nécessitent unentête d'agent utilisateur HTTP pour chaque requête d'API.Cela permet d'identifier votre application et de s'assurer que les administrateurs système peuvent vous contacter si un problème apparait.Les clients qui émettent des requêtes sans utiliser l'entête des agents utilisateurs peuvent voir leur adresse IP bloquée sans préavis.
L'entête de l'agent utilisateur peut contenir une page utilisateur du wiki local, d'un autre wiki relatif en utilisant lasyntaxe des liens interwikis, une URL de site web externe appropriée, ou une adresse courriel.
# Format préféré pour les entêtes des agents utilisateurs<nomduclient>/<version>(<nouscontacter>)<nomdebibliothèque/environnement>/<version>
Si l'API est appelée à partir du JavaScript de votre navigateur, il est possible que vous ne puissiez pas intervenir sur l'entête de l'agent utilisateur (cela dépend du navigateur).Pour contourner cela, utilisez l'entêteApi-User-Agent.Voir lapolitique des agents utilisateur de Meta-Wiki pour plus d'information.
Pour autoriser votre application à agir pour le compte d'un utilisateur, suivez leguide du développeur OAuth pour l'enregistrer et faire des requêtes en utilisant les jetons OAuth.
Le contenu Wikimedia est libre d'être réutilisé sous les termes spécifiés par la licence utilisée.Les licenses peuvent être différentes selon les projets, donc vérifiez les projets individuels pour les informations relatives aux licences et la réutilisation du contenu.Par exemple, le texte du Wikipédia anglophone peut être utilisé selon les termes de lalicence Creative Commons Attribution - Partage dans les mêmes conditions, alors que les fichiers médias deWikimédia Commons ont des licences individuelles telles qu'indiquées sur la page d'information des fichiers.Pour d'autres informations concernant l'utilisation de la licence et des marques commerciales, voirrecommandations MetaWiki pour les développeurs d'applications.
Alors que l'API REST est disponible dans les projets Wikimedia, elle n'est pas complètement prise en charge par Wikidata.Au moment où nous écrivons ces lignes, certains des points d'accès peuvent renvoyer des erreurs inattendues.Remplacer par l'API Wikidata REST.
Les extensions MediaWiki peuvent couvrir les points de terminaison de l'API spécifiques aux extensions en utilisant l'interface REST API.Voir lesdocuments d'interface de l'extension de l'API REST pour débuter.DansMediaWiki 1.35 et ultérieur, l'interface de l'extension API REST est disponible par défaut.
| API | Disponibilité | Base de l'URL | Exemple |
|---|---|---|---|
| Inclus dans MediaWiki Activé sur lesprojets Wikimedia | /api.php | https://fr.wikipedia.org/w/api.php?action=query&prop=info&titles=Terre | |
| Inclus dans MediaWiki 1.35+ Activé sur lesprojets Wikimedia | /rest.php | https://fr.wikipedia.org/w/rest.php/v1/page/Terre | |
| Non inclus dans MediaWiki Disponible uniquement dans lesprojets Wikimedia | /api/rest | https://fr.wikipedia.org/api/rest_v1/page/title/Terre | |
Ces documents ont été écrits manuellement en se basant sur lecode source du noyau MediaWiki.Les corrections et les ajouts restent les bienvenus !Pour partager un tutoriel ou une application qui utiliser l'API REST de MediaWiki, ajoutez un lien aumodèle REST API.