API:Errors and warnings/fr
Cette page fait partie de la documentation de l'API MediaWiki Action. |
Si la requête à l'API pose problème, une erreur ou un avertissement sera émis (bien que la réponse HTTP soit habituellement encore 200 OK
).
Les avertissements sont émis pour des conditions non fatales comme rencontrer des paramètres non valides, alors que les erreurs n'apparaissent qu'avec des conditions fatales.
Avertissements
Les avertissements sont groupés en fonction du nom du module qui les a émis. Les avertissements multiples à partir d'un même module sont séparés par un saut de ligne. Dans l'ancien mode de formatage des erreurs (voir ci-dessous), qui est le mode par défaut, les avertissements sont fournis dans le format suivant :
"warnings": {
"modulename": {
"*": "warning text"
}
}
(*
est remplacé par warnings
quand formatversion=2
est utilisé.)
Si une option non ancienne de formatage des erreurs est utilisée, les avertissements sont émis au même format que les erreurs.
Par exemple avec errorformat=wikitext
le format sera le suivant :
"warnings": [
{
"code": "warning message key",
"*": "text of warning",
"module": "API module which caused the warning"
}
]
(*
will be replaced with text
when formatversion=2
is used.)
Messages d'avertissement
Type | Description | Message(s) d'avertissement |
---|---|---|
Disabled submodule | The action=query submodule has been disabled in the wiki. To check if a module is available before invoking it, see How do I check if an API module is available? in the FAQ.
|
The submodulename module has been disabled. |
Missing submodule | The list , prop or meta submodule is not present in the wiki, for example if it is implemented by an extension that isn't loaded. |
Unrecognized value for parameter list=submodule. |
Parameter validation | Warnings thrown when validating parameters of any API module. paramname is replaced by the name of the parameter. |
|
Errors
Error formats
Since MediaWiki 1.29 errors are localizable, and available in multiple formats. An error (or warning) is expected to consist of a message, an error code (an arbitrary string, usually generated from the message key; see also #Standard error messages below), and optional extra data (an associative array). An API response with errors will look like this:
{
"errors": [
{
"code": "error-code",
/* ...error message..., */
"data": [ /* ...any extra data... */ ],
"module": "path to the API module that generated the error"
},
/* ...more errors... */
],
"docref": "human-readable message on where to find help"
}
The data
key in the output above will be missing if there is no extra data to display.
The way the error message in the output above is returned to the client is controlled by the errorformat
API parameter. The various error formats available are:
Format | Description | Output |
---|---|---|
html | Intended for human display in HTML-capable clients |
"html": "the message, interpreted as wikitext and parsed into HTML"
|
wikitext |
"text": "the message as-is, with parameter substitution but without any parsing"
| |
plaintext | Intended for human display in HTML-incapable clients. Plaintext conversion is a minimal, best-effort transformation to make the message (assumed to contain wikitext) more readable: tags are removed, HTML entities are replaced, certain HTML tags are intelligently replaced with punctuation. |
"text": "the message, like wikitext, but with added plaintext conversion"
|
raw | Intended as a machine-readable format (note that the error key is more unique than the error code). Parameters can themselves be objects with key and params fields. |
"key": "message key",
"params": [ /* ...message parameters... */ ]
|
none | No message information at all. | |
bc | The default, for backward compatibility. There’s no point in specifying this value, use one of the non-legacy formats instead. | See #Legacy format |
For the formatting modes which involve message lookup (html
, wikitext
and plaintext
) the API parameter errorlang
can be used to set the language (only needed when different from the content language) and errorsuselocal
to set whether the MediaWiki: namespace can be used to override default error messages.
Error codes are also returned in the MediaWiki-API-Error
response HTTP header, separated by commas when there are multiple errors.
For an example error response or to test your client's error handling, visit https://en.wikipedia.org/w/api.php?action=blah&errorformat=plaintext&format=jsonfm&formatversion=2
When errorformat
is not set (or set to bc
), errors will be displayed in the legacy format instead.
Legacy format
In the legacy error format, there is always at most one error; additional ones are discarded. The response looks like this:
{
"error": {
"code": "error-code",
"info": "the message as-is, with parameter substitution but without any parsing",
/* ...any extra data... */
}
}
The extra data in the output above is spliced into the object instead of being under the data
key.
Error messages in documentation
Error messages are documented in this wiki as shown below, which corresponds to the json error response in #Legacy format above:
Code | Info |
---|---|
errorcode | error message |
The various error messages are:
Type | Description | Error message(s) | |
---|---|---|---|
Code | Info | ||
Disabled module | The action module has been disabled in the wiki. To check if a module is available before invoking it, see How do I check if an API module is available? in the FAQ. | moduledisabled | The modulename module has been disabled. |
Missing module | The action module is not present in the wiki, for example if it is implemented by an extension that isn't loaded | unknown_action | Unrecognized value for parameter action: modulename. |
Parameter validation | Errors thrown when validating parameters of any API module. paramname is replaced by the name of the parameter. | multival_paramname | Only one of 'value1', 'value2', 'value3' is allowed for parameter 'paramname' |
unknown_paramname | Valeur non reconnue du paramètre paramname: value. | ||
paramname | paramname ne peut pas être inférieur à min (fixé à value). | ||
paramname | paramname ne peut pas dépasser max (fixé à value) pour les robots ou les opérateurs système. | ||
paramname | paramname ne peut pas dépasser max (fixé à value) pour les utilisateurs. | ||
badtimestamp_paramname | Valeur non valide « value » pour le paramètre de référence horaire paramname. | ||
baduser_paramname | Valeur « value » non valide pour le paramètre utilisateur paramname. | ||
invalidparammix | The parameters param1, param2, param3 cannot be used together | ||
missingparam | One of the parameters param1, param2, param3 is required | ||
_badcontinue | Invalid continue param. You should pass the original value returned by the previous query |
Messages d'erreur standard
Certains messages d'erreur génériques sont partagés entre les modules.
Si un module peut générer ces erreurs, elle sont explicitement indiquées dans sa section Possible errors
.
Code | Information |
---|---|
unknownerror | Erreur inconnue : cela indique habituellement qu'une chose bizarre s'est produite comme un conflit rare entre conditions. Si ce type d'erreur apparaît, soumettez à nouveau votre requête tant qu'elle est en échec, ou que vous n'avez aucun message plus précis. |
unknownerror | Erreur inconnue : « code d'erreur ». |
unknownerror-nocode | Erreur inconnue. |
unsupportednamespace | Pages in the Special namespace can't be edited |
protectednamespace-interface | You're not allowed to edit interface messages |
protectednamespace | You're not allowed to edit pages in the "namespace" namespace |
customcssjsprotected | You're not allowed to edit custom CSS and JavaScript pages |
cascadeprotected | Cette page est protégée contre les modifications car elle est incluse par la page suivante, qui a été protégée avec l’option « protection en cascade » activée :
liste des pages protégées en cascade |
protectedpage | The "right" right is required to edit this page |
permissiondenied | Autorisation refusée. |
confirmemail | Vous devez confirmer votre adresse de courriel avant de modifier des pages.
Veuillez définir et valider votre adresse de courriel via vos préférences d’utilisateur. |
blocked | You have been blocked from editing |
autoblocked | Your IP address has been blocked automatically, because it was used by a blocked user |
ratelimited | You've exceeded your rate limit. Please wait some time and try again |
readonly | The wiki is currently in read-only mode |
badtoken | Invalid token (did you remember to urlencode it?) |
missingtitle | The page you requested doesn't exist |
mustbeposted | Type of your HTTP request message must be POST |
hookaborted | The modification you tried to make was aborted by an extension hook |
nosuchpageid | There is no page with ID id |
nosuchrevid | There is no revision with ID id |
nosuchrcid | There is no change with rcid "id" |
nosuchuser | The user you specified doesn't exist |
invalidtitle | Bad title "title" |
invaliduser | Invalid username "username" |
assertbotfailed | "assert=bot" has been used, but logged in user is not a bot |
assertuserfailed | "assert=user" has been used, but user is not logged in |
readapidenied | You need read permission to use this module |
noapiwrite | Editing of this wiki through the API is disabled. Make sure the $wgEnableWriteAPI=true; statement is included in the wiki's LocalSettings.php file
|
Notes supplémentaires
- Toutes les sorties d'erreurs et les avertissements utilisent
format=json&formatversion=2
. Pourformatversion=1
, le champdocref
est remplacé par*
.
Core Platform Team assure la maintenance de cette page ou ce projet.
Obtenir de l'aide :
|