API:Errors and warnings/fr

Si une requête à l'API ne se déroule pas correctement, une erreur ou un avertissement est retourné. Les avertissements sont retournés pour les anomalies non fatales telles que des paramètres invalides, tandis que les erreurs sont retournées pour les anomalies fatales.

Avertissements
Les avertissements sont retournés sous la forme suivante :

Comme illustré par cet exemple, les avertissements sont groupés par le nom du module qui les a généré. Plusieurs avertissement provenant d'un même module sont séparés par un retour à la ligne.

Modules désactivés
Les sous-modules désactivés de  retournent l'avertissement suivant :
 * The ``modulename '' module has been disabled.

Avertissement de validation des paramètres
Les avertissements suivants peuvent être générés lors de la validation des paramètres, et peuvent donc être généré par tous les modules. est remplacé par le nom du paramètre.


 * Too many values supplied for parameter ' paramname ' : the limit is limit
 * Unrecognized value for parameter ' paramname ' : value
 * Unrecognized values for parameter ' paramname ' : value1, value2, value3

Erreurs
Les erreurs sont générées dans le format suivant : Où  est remplacé par le code d'erreur court (pas nécessairement unique à l'erreur) et   par une description plus élaborée de l'erreur (unique).

Messages d'erreur dans la documentation
Les messages d'erreur sont documentés comme suit :
 * code: apparams
 * info: prlevel may not be used without prtype

Qui correspond à:

Modules désactivés
Les modules désactivés  échouent avec l'erreur suivante :
 * code: moduledisabled
 * info: The ``modulename '' module has been disabled.

Erreurs de validation des paramètres
Les erreurs suivantes peuvent être générés lors de la validation des paramètres, et peuvent donc être généré par tous les modules. est remplacé par le nom du paramètre.


 * code: multival_paramname
 * info: Only one of ' value1 ', ' value2 ' , ' value3 ' is allowed for parameter ' paramname '
 * code: unknown_paramname
 * info: Unrecognized value for parameter ' paramname ' : value
 * code: paramname
 * info: paramname may not be set to less than min (set to value)
 * code: paramname
 * info: paramname may not be set over max (set to value) for bots and sysops
 * code: paramname
 * info: paramname may not be set over max (set to value) for users
 * code: badtimestamp_paramname
 * info: Invalid value value for timestamp parameter paramname
 * code: baduser_paramname
 * info: Invalid value value for user parameter paramname
 * code: invalidparammix
 * info: The parameters param1, param2, param3 cannot be used together
 * code: missingparam
 * info: One of the parameters param1, param2, param3 is required
 * code: _badcontinue
 * info: Invalid continue param. You should pass the original value returned by the previous query

Messages d'erreur standards
Quelques messages d'erreur génériques sont partagés entre les modules. Si un module peut lancer ce type d'erreur, celle-ci est explicitement mentionnée dans la desction.


 * code: unknownerror
 * info: Unknown error
 * Cela signifie généralement que quelque chose de bizarre s'est produit (ex: race condition). Si vous obtenez cette erreur, retentez la requête jusqu'à ce qu'elle soit réussie ou qu'elle retourne un message d'erreur plus explicite.
 * code: unknownerror
 * info: Unknown error errorcode
 * code: unsupportednamespace
 * info: Pages in the Special namespace can't be edited
 * code: protectednamespace-interface
 * info: You're not allowed to edit interface messages
 * code: protectednamespace
 * info: You're not allowed to edit pages in the ``namespace '' namespace
 * code: customcssjsprotected
 * info: You're not allowed to edit custom CSS and JavaScript pages
 * code: cascadeprotected
 * info: The page you're trying to edit is protected because it's included in a cascade-protected page
 * code: protectedpage
 * info: The ``right '' right is required to edit this page
 * code: permissiondenied
 * info: Permission denied
 * code: confirmemail
 * info: You must confirm your e-mail address before you can edit
 * code: blocked
 * info: You have been blocked from editing
 * code: autoblocked
 * info: Your IP address has been blocked automatically, because it was used by a blocked user
 * code: ratelimited
 * info: You've exceeded your rate limit. Please wait some time and try again
 * code: readonly
 * info: The wiki is currently in read-only mode
 * code: badtoken
 * info: Invalid token
 * code: missingtitle
 * info: The page you requested doesn't exist
 * code: mustbeposted
 * info: Type of your HTTP request message must be POST
 * code: hookaborted
 * info: The modification you tried to make was aborted by an extension hook
 * code: nosuchpageid
 * info: There is no page with ID id
 * code: nosuchrevid
 * info: There is no revision with ID id
 * code: nosuchrcid
 * info: There is no change with rcid ``id ''
 * code: nosuchuser
 * info: The user you specified doesn't exist
 * code: invalidtitle
 * info: Bad title ``title ''
 * code: invaliduser
 * info: Invalid username ``username ''