API:Edit/fr
| Cette page fait partie de la documentation de l'API de MediaWiki. |
| Langue : | English • Deutsch • Español • Français • 日本語 • Tiếng Việt |
|---|
- Formats
- Erreurs retournées
- Restriction de l'utilisation (en)
- Authentification
- Requêtes (en)
- Meta information (en)
- Propriétés (en)
- Révisions (en)
- Informations sur les pages (en)
- Listes (en)
- Expansion des modèles et rendu (en)
- Purger le cache des pages (en)
- Information sur les paramètres (en)
- Modifications (en)
- Création de compte (en)
- Modification/création de pages
- Renommage de pages (en)
- Rollback (en)
- Import de fichiers (en)
- Import de pages (en)
- Suppression de pages (en)
- Restaurer des versions supprimées (en)
- (Dé)protection de pages (en)
- (Dé)blocage d'utilisateurs (en)
- (Ne plus) Suivre les pages (en)
- Envoyer les courriels (en)
- Patrouiller les modifications (en)
- Gestion des groupes d'utilisateurs (en)
- Extensions de l'API (en)
- Usage interne (en)
- Autres
- Implémentation (en)
- Code client (en)
| MediaWiki version: | 1.13 |
Contents |
[edit] Token
Pour éditer une page, un jeton d'édition (edit token) est requis. Ce token est le même pour toutes les pages - bien qu'il change à chaque connexion. Si vous voulez vous prémunir contre les conflits d'édition (ce qui serait sage), vous avez aussi besoin d'obtenir le timestamp de la dernière modification. Vous pouvez obtenir ces informations ainsi : Obtention du jeton d'édition
<?xml version="1.0" encoding="utf-8"?> <api> <query> <pages> <page pageid="15580374" ns="0" title="Main Page" touched="2008-03-27T21:15:39Z" lastrevid="199631190" counter="0" length="4712" edittoken="000000000000000000+\"> <revisions> <rev revid="199631190" user="David Levy" timestamp="2008-03-20T17:26:39Z" comment="Have you tested it in every major browser at every resolution." /> </revisions> </page> </pages> </query> </api>
[edit] Édition de pages
Les pages peuvent être créées et éditées en utilisant le parmètre action=edit.
[edit] Paramètres
title: Page à éditer.section: Section à éditer. Utilisez « 0 » pour la section d'introduction, « new » pour une nouvelle section.text: Nouveau contenu de la page (ou de la section).token: Jeton d'édition.summary: Commentaire d'édition.- Avec
section=new, ce paramètre sera utilisé pour le titre de la section.
- Avec
minor: Si fourni, marque l'édition comme mineur.notminor: Si fourni, ne marque pas l'édition comme mineur, même si vous avez l'option « Considérer mes modifications comme mineures par défaut » activée dans vos préférences.bot: Si fourni, marque l'édition comme ayant été réalisée par un bot. Même si vous utilisez un compte avec le statut de bot, les éditions ne seront pas marquées comme telles sans ce paramètre.basetimestamp: Timestamp de la dernière modification, utilisé pour détecter les conflits d'éditions. Ne pas fournir pour ignorer les conflits.starttimestamp: Timestamp de l'obtention du jeton d'édition, utilisé pour détecter les conflits d'éditions. Ne pas fournir pour ignorer les conflits.recreate: Si fourni, supprime les erreurs à propos des pages ayant été supprimés entre-temps et les recrée.createonly: Si fourni, déclenche une erreur lorsque la page existe déjà.nocreate: Si fourni, déclenche une erreur si la page n'existe pas encore.watch: Si fourni, ajoute la page à la liste de suivi.unwatch: Si fourni, supprime la page de la liste de suivi, ou ne l'ajoute pas même si vous avez l'option « Ajouter les pages que je modifie à ma liste de suivi » activée dans vos préférences.md5: hash MD5 du paramètretext. Si ce paramètre est fourni et que les hash ne correspondent pas, l'édition est refusée. Ceci est utile pour se protéger des corruptions de données.captchaid: ID du CAPTCHA de la précédente requête.captchaword: Réponse au CAPTCHAundo: ID de la modification à défaire. Passe outre les paramètrestext,prependtextetappendtext.undoafter: Défait toutes les modifications deundojusqu'àundoafter, mais sans inclure ce dernier. Si non fourni, ne défait que la révisionundo.
[edit] Exemple
Note: Dans cet exemple, tous les paramètres sont passés dans une requête GET, pour des raisons de simplicité. Toutefois, action=edit nécessite des requêtes POST ; les requêtes GET causeront une erreur. N'oubliez pas de mettre l'header Content-Type de votre requête à la valeur application/x-www-form-urlencoded. Le jeton que vous recevez se termine par +\ : il doit être encodé (et donc terminé réellement par %2B%5C) avant d'être envoyé. Ajoute une nouvelle section à en:Talk:Main Page
<?xml version="1.0" encoding="utf-8"?> <api> <edit result="Success" pageid="12" title="Talk:Main Page" oldrevid="465" newrevid="471" /> </api>
[edit] CAPTCHAs et erreurs des extensions
Si une édition nécessite un CAPTCHA, vous obtiendrez quelque chose comme ceci :
<?xml version="1.0" encoding="utf-8"?> <api> <edit result="Failure"> <captcha type="math" mime="text/tex" id="509895952" question="36 + 4 = " /> </edit> </api>
Dans la majorité des cas, vous n'obtiendrez pas un CAPTCHA mathématique, mais l'URL d'une image CAPTCHA (dans le champ url). Quand vous avez résolu le CAPTCHA, réessayer la requête (en l'occurence, avec captchaid=509895952&captchaword=40)
Les autres extensions qui utilisent l'APIEditBeforeSave-Hook peuvent retournez les erreurs dans le format décrit sur cette page ou bien dans le format d'erreur classique.
[edit] Erreurs possibles
En plus des erreurs classiques, les erreurs suivantes peuvent être rencontrées :
- code: notitle
- info: Le paramètre
titledoit être fourni.
- info: Le paramètre
- code: notext
- info: Un des paramètres
text,appendtext,prependtextouundodoit être fourni.
- info: Un des paramètres
- code: notoken
- info: Le paramètre
tokendoit être fourni.
- info: Le paramètre
- code: invalidsection
- info: Le paramètre
sectiondoit être un entier ou la chaine new
- info: Le paramètre
- code: protectedtitle
- info: Ce titre est protégé et la page ne peut être créée.
- code: cantcreate
- info: Vous n'avez pas la permission de créer de nouvelles pages.
- code: cantcreate-anon
- info: Les utilisateurs anonymes ne peuvent créer de nouvelles pages.
- code: articleexists
- info: L'article que vous tentez de créer existe déjà.
- code: noimageredirect-anon
- info: Les utilisateurs anonymes ne peuvent créer de redirections d'images.
- code: noimageredirect
- info: Vous n'avez pas la permission de créer des redirections d'images.
- code: spamdetected
- info: Votre édition a été refusée car elle contient un élément de spam : ``wikitext''
- code: filtered
- info: La fonction de filtre a refusé votre édition.
- code: contenttoobig
- info: Le contenu que vous envoyez dépasse la taille limite autorisée de bytes bytes.
- code: noedit-anon
- info: Les utilisateurs anonymes ne peuvent éditer d'articles.
- code: noedit
- info: Vous n'avez pas la permission d'éditer des articles
- code: pagedeleted
- info: La page a été supprimé entre-temps
- code: emptypage
- info: Créer une nouvelle page vide n'est pas autorisée.
- code: emptynewsection
- info: Créer une nouvelle section vide n'est pas autorisée.
- code: editconflict
- info: Un conflit d'édition a été détecté.
- code: revwrongpage
- info: rrevid n'est pas une modification de la page ``pagename''
- (Apparait lorsqu'un ID invalide est fourni pour
undoouundoafter)
- (Apparait lorsqu'un ID invalide est fourni pour
- info: rrevid n'est pas une modification de la page ``pagename''
- code: undo-failure
- info: La modification n'a pas pu être défaite à cause d'éditions intermédiaires.