Erreurs
Chaque échec est une enveloppe JSON avec un code machine stable, une raison facultative qui le précise, un message destiné aux personnes et l’ID de requête pour le support. Les clients décident en fonction du code et de la raison, jamais du texte du message.
json
{ "code": "conflict", "reason": "version_exists", "message": "…", "requestId": "…" }Codes
| Code | Statut HTTP | Signification |
|---|---|---|
invalid_input | 400 | La requête est mal formée ou une valeur n’est pas autorisée ; corrigez la requête avant de la renvoyer. |
not_found | 404 | L’objet n’existe pas, ou l’appelant n’a pas le droit de le voir. |
conflict | 409 | La requête entre en conflit avec l’état actuel ; relisez l’état, puis décidez. |
forbidden | 403 | Le justificatif d’identité est valide mais n’a pas l’autorisation requise pour cette action. |
unauthorized | 401 | Aucun justificatif d’identité valide : absent, incorrect, expiré ou révoqué. |
capacity_exceeded | 507 | Un quota, une capacité ou une limite serait dépassé. |
integrity_mismatch | 422 | Les octets ne correspondent pas à la taille ou au SHA-256 déclarés. |
busy | 503 | Le serveur a atteint sa limite d’admission ; réessayez après le délai indiqué par Retry-After. |
unavailable | 503 | Une dépendance n’est pas disponible pour le moment ; réessayez après le délai indiqué par Retry-After. |
rate_limited | 429 | Trop de tentatives ; attendez le délai indiqué par Retry-After. |
read_only | 405 | Ce serveur ou cette passerelle n’accepte pas de modifications (passerelle de lecture ou miroir). |
internal | 500 | Défaut inattendu du serveur ; l’ID de requête aide le support à le retrouver. Ne répétez pas la requête à l’aveugle. |
Raisons
| Code | Raison | Statut HTTP | Signification |
|---|---|---|---|
invalid_input | validation | 400 | Un champ est absent ou sa valeur sort de ses règles ; details nomme le champ. |
invalid_input | malformed_json | 400 | Le corps n’est pas du JSON valide. |
invalid_input | body_too_large | 413 | Le corps est plus grand que ce que cette opération accepte. |
invalid_input | unsupported_media_type | 415 | Le Content-Type n’est pas accepté par cette opération. |
invalid_input | method_not_allowed | 405 | Le chemin existe, mais pas avec cette méthode. |
invalid_input | range_not_satisfiable | 416 | La plage d’octets demandée se situe en dehors du contenu. |
not_found | route_not_found | 404 | Cette route n’existe pas. |
conflict | upload_expired | 409 | La session de téléversement a expiré avant d’être finalisée. |
conflict | upload_state | 409 | Le téléversement n’est pas dans un état qui autorise cette étape. |
conflict | revision_mismatch | 409 | La révision attendue n’est pas la révision actuelle (une autre modification est passée avant). |
conflict | version_exists | 409 | Cette version a déjà été publiée avec un autre contenu. |
conflict | part_mismatch | 409 | Une partie ne correspond pas à sa taille ou à son SHA-256 déclarés. |
conflict | parts_incomplete | 409 | Toutes les parties du téléversement ne sont pas encore arrivées. |
conflict | idempotency_mismatch | 409 | L’Idempotency-Key a déjà été utilisée avec une requête différente. |
conflict | already_exists | 409 | Un objet portant ce nom ou ce chemin existe déjà. |
conflict | stage_limit | 409 | L’artefact a atteint le nombre maximal d’étapes. |
conflict | state_conflict | 409 | L’objet est dans un état qui n’autorise pas cette modification. |
conflict | mirror_read_only | 409 | Le dépôt est un miroir ; il ne change que par synchronisation. |
forbidden | permission_missing | 403 | Il manque au justificatif d’identité l’action dont cette opération a besoin. |
forbidden | read_only_token | 403 | Un jeton personnel en lecture seule ne peut rien modifier. |
forbidden | credential_revoked | 403 | La clé ou le jeton a été révoqué. |
forbidden | session_required | 403 | Seule une session de compte connectée peut le faire, pas une clé. |
forbidden | administrator_required | 403 | Seul un administrateur peut le faire. |
forbidden | registration_disabled | 403 | L’auto-inscription est désactivée sur ce serveur. |
forbidden | origin_not_allowed | 403 | L’origine du navigateur ne figure pas dans ARKVORY_CORS_ORIGINS. |
unauthorized | invalid_credentials | 401 | Le nom du compte ou le mot de passe est incorrect. |
unauthorized | current_password_invalid | 401 | Le mot de passe actuel est incorrect. |
unauthorized | credential_missing | 401 | La requête ne porte aucun justificatif d’identité. |
unauthorized | credential_invalid | 401 | Le justificatif d’identité n’est pas une clé, un jeton ou une session valide. |
unauthorized | session_expired | 401 | La session a expiré ; reconnectez-vous. |
unauthorized | token_expired | 401 | Le jeton personnel a expiré. |
capacity_exceeded | storage_quota | 507 | Le quota du dépôt serait dépassé. |
capacity_exceeded | storage_full | 507 | Le disque du serveur conserve sa réserve d’espace libre ; il n’y a plus de place. |
capacity_exceeded | account_limit | 507 | Le nombre de comptes a atteint sa limite. |
capacity_exceeded | group_limit | 507 | Le nombre de groupes a atteint sa limite. |
capacity_exceeded | membership_limit | 507 | Le nombre de membres de groupes a atteint sa limite. |
capacity_exceeded | grant_limit | 507 | Le nombre d’autorisations accordées a atteint sa limite. |
capacity_exceeded | key_limit | 507 | Le nombre de clés a atteint sa limite. |
capacity_exceeded | token_limit | 507 | Le nombre de jetons personnels a atteint sa limite. |
capacity_exceeded | delegation_limit | 507 | Le nombre de délégations a atteint sa limite. |
capacity_exceeded | catalog_limit | 507 | La capacité du catalogue de l’installation serait dépassée. |
capacity_exceeded | queue_full | 507 | La file de transfert est pleine. |
capacity_exceeded | transfer_limit | 507 | L’appelant a déjà le nombre maximal de transferts autorisés. |
busy | request_limit | 503 | Le serveur traite déjà autant de requêtes qu’il en admet. |
busy | download_queued | 503 | Le téléchargement attend dans la file ; revenez après Retry-After. Arkvory-Queue-Position et Arkvory-Starts-At indiquent la place et le début prévu. |
unavailable | feedback_disabled | 503 | Les commentaires sont désactivés sur ce serveur. |
unavailable | hub_unreachable | 503 | Le hub de mises à jour est injoignable. |
unavailable | replication_degraded | 503 | Un cluster HA a moins de copies complètes qu'il n'en faut pour une écriture : la modification n'a pas été confirmée ; réessayez après Retry-After. Les téléchargements fonctionnent toujours. |
rate_limited | login_attempts | 429 | Trop de tentatives de connexion ; attendez. |
rate_limited | registration_attempts | 429 | Trop de tentatives d’inscription ; attendez. |
rate_limited | password_attempts | 429 | Trop de tentatives de mot de passe ; attendez. |
rate_limited | feedback_attempts | 429 | Trop d’envois de commentaires ; attendez. |