Lire un code d’erreur Connect
Deux conventions coexistent dans les corps d’erreur, et il faut le savoir avant d’écrire unswitch :
Certains refus n’ont aucun
code : les refus de cible portent seulement
{"message": "Forbidden"} ou {"message": "Unauthorized"}. C’est délibéré : ils ne doivent
rien révéler sur les comptes d’autrui.
Refus de cible (401 / 403)
Quatre causes, deux réponses seulement.Les trois premiers sont byte-identiques : l’API ne dira jamais si un
acct_ existe. Sinon
elle deviendrait un moyen d’énumérer les comptes des autres marketplaces.Refus de validation (400 / 422)
Fonds insuffisants (402)
Les deux corps portent
required, seller_available, shortfall, currency. Le refus de
remboursement porte en plus available et marketplace_balance.
402 et non 422 : la requête est bien formée, ce sont les fonds qui manquent.Conflits d’idempotence (409)
Limitation de débit (429)
E_TOO_MANY_REQUESTS sur POST /v1/connect/accounts : 20 requêtes par minute. Aucune
autre route Connect n’est limitée.
Indisponibilité (502 / 503)
Surface (400)
L’en-tête
Yabetoo-Account est réservé et n’est consommé par aucune route Connect
aujourd’hui. Ne l’envoyez pas.