Résoudre 400 erreurs
Découvrez comment résoudre 400 erreurs.
Une réponse 400 peut avoir de nombreuses causes.
Autorisations et informations d'identification
Assurez-vous de ce qui suit :
- Les rôles requis sont approuvés pour votre profil et votre application.
- Le compte du vendeur est actif.
S'il ne l'est pas et qu'une erreur 400 est renvoyée pour ce vendeur, contactez-le et demandez-lui de se rendre dans Seller Central > Paramètres > Informations sur le compte > Informations sur les frais. Si la page Informations sur les frais affiche une bannière demandant une mise à jour de la carte de crédit, demandez au vendeur de mettre à jour les informations relatives à sa carte de crédit. Patientez 48 heures pour que les mises à jour se propagent dans tous les systèmes d'Amazon. Si un compte vendeur n'a pas été utilisé pendant 90 jours ou plus, le compte sera considéré comme inactif et le vendeur sera invité à mettre à jour sa carte de crédit. Patientez environ 48 heures pour que la mise à jour soit réussie. Ensuite, vous pourrez effectuer des appels aux API à partir de ce compte.
Si les autorisations et les informations d'identification sont correctes, il y a probablement une problématique au niveau des demandes.
Problématiques liées aux demandes
La réponse standard de SP-API est au format application/JSON. Si vous recevez une réponse au format texte/HTML, l'erreur a été soulevée avant que SP-API ne puisse traiter la demande.
Exemple :
{
HTTP/1.1 400 Bad Request Server:
Server Date: Tue, 16 May 2023 06:02:44 GMT
Content-Type: text/html
Transfer-Encoding: chunked Connection: close
}
SP-API exige que les demandes soient conformes à la norme HTTP RFC 7230. Si vous obtenez un code de statut 400 avec une réponse HTML, au lieu d'un corps de réponse SP-API standard, assurez-vous que vos demandes sont conformes à la RFC 7230. La cause la plus fréquente d'erreurs est l'inclusion d'un en-tête de longueur de corps ou de contenu pour les demandes GET ou des en-têtes d'hôte dupliqués ou mal formés. Les autres erreurs possibles sont les suivantes :
- Inclusion d'un corps, d'un en-tête
Content-Length
ou d'un en-têteTransfer-Encoding
pour les demandes GET/HEAD Content-Length
est une valeur non analysable ou un nombre non valide.- Plusieurs en-têtes
Content-Length
. - Présence d'en-têtes à la fois
Content-Length
etTransfer-Encoding
- En-têtes
Host
dupliqués ou mal formés - Un en-tête vide ou une ligne avec des espaces vides
- En-têtes de plusieurs lignes non conformes à la norme RFC
- Lignes d'en-tête non terminées
- La ligne d'en-tête n'a pas de deux-points en tant que séparateurs
- L'URI ou l'en-tête contient un retour à la ligne, un caractère nul ou un caractère de contrôle (CTL)
- Ligne vide à la fin de la demande
- Pas d'URI dans la requête
- Méthode HTTP mal formée
Inspection des demandes
La méthode d'inspection des demandes dépend de votre client HTTP. Vérifiez les approches possibles suivantes.
- Si vous parvenez à créer une commande curl ou wget similaire pour appeler SP-API et que vous ne rencontrez pas le même problème, cela peut indiquer une problématique au niveau de votre client HTTP.
- Identifiez l'endroit où les demandes HTTP sont créées pour être envoyées à SP-API et inspectez les demandes.
- Examinez toutes les informations sur les en-têtes et les URI des demandes. Certains clients proposent des méthodes pour récupérer les informations des en-têtes par programmation.
- Vérifiez la capacité de journalisation du client HTTP ou si la journalisation peut être activée via une configuration.
- Si le client est un client HTTP open source, vous pouvez peut-être en consulter le code pour déterminer comment la demande est créée. Si c'est le cas, vérifiez qu'il n'y a pas d'hypothèses erronées.
- Si vous utilisez un adaptateur ou un plugin avant d'envoyer la demande, assurez-vous qu'ils ne modifient pas les demandes de manière indésirable.
- Vérifiez s'il est possible d'activer les journaux de suivi pour obtenir plus de détails sur les requêtes sortantes.
Si vous recevez toujours une réponse 400, la problématique peut être due à des problèmes au niveau de l'application.
Problématiques liées à l'application
Plusieurs erreurs peuvent être renvoyées en réponse à des problématiques liées à l'application :
Developer ID XXXX-XXXX-XXXX is not associated with the application id.
: assurez-vous que l'identifiant du développeur a été fourni pour l'application hybride pour la bonne région et que la demande est soumise à une vérification.application is missing OAuth setup.
: assurez-vous que l'application dispose de l'URI de redirection.
Si vous recevez toujours des réponses 400, la problématique peut être due aux exigences de l'API.
Exigences relatives à l'API
Assurez-vous que tous les paramètres sont transmis correctement conformément à la documentation et que vous respectez les exigences de l'API que vous appelez :
- API Distribution Amazon : assurez-vous que le vendeur s'est inscrit à Expédié par Amazon.
- API Merchant Fulfillment : une exception 400 peut être renvoyée si l'exécution via l'API est tentée après la livraison de la commande.
- API Rapports : une exception 400 peut être déclenchée si un rapport qui ne peut être que demandé est programmé. Par exemple, le rapport
GET_MERCHANT_LISTINGS_ALL_DATA
ne peut être que demandé.- La demande d'un rapport sur les versements peut entraîner une exception 400. Les rapports sur les versements ne peuvent pas être demandés ou planifiés. Ils sont automatiquement programmés par Amazon. Vous pouvez rechercher ces rapports à l'aide de l'opération
getReports
.
- La demande d'un rapport sur les versements peut entraîner une exception 400. Les rapports sur les versements ne peuvent pas être demandés ou planifiés. Ils sont automatiquement programmés par Amazon. Vous pouvez rechercher ces rapports à l'aide de l'opération
- API Flux : lors de la création de flux, le
contentType
spécifié à l'Étape 3. Charger les données du flux doit correspondre aucontentType
spécifié lors de l'Étape 1. Créer un document de flux. Amazon recommande le codage des caractères UTF-8. Si ces types de contenu ne correspondent pas dans ces deux étapes, le téléchargement du flux sera un échec et pourrait générer une exception 400. Pour plus d'informations, consultez le guide des cas d'utilisation de l'API Flux. - API Flux : lors de la mise à jour des prix et des quantités, si l'offre est absente du compte du vendeur, une erreur
InvalidInput
sera renvoyée. - API Expédition sortante : vous pouvez recevoir une erreur
Value for parameter SellerId is invalid. Reason: InvalidValue.
si vous utilisez l'API dans un site de vente autre que AU, CA, DE, ES, FR, IT, JP, MX, UK, US ou CN.
Si vous rencontrez toujours des problématiques, vous pouvez ouvrir un dossier d'assistance pour obtenir de l'aide pour le dépannage.
Updated 23 days ago