Risolvi 400 errori
Scopri come risolvere 400 errori.
Il codice di risposta 400 può essere restituito per diversi motivi.
Autorizzazioni e credenziali
Verifica i punti seguenti:
- I ruoli richiesti sono approvati per il profilo e l'applicazione.
- L'account venditore è attivo.
In caso contrario, viene restituito un errore 400. Contatta il venditore e chiedigli di accedere a Seller Central > Impostazioni > Informazioni sull'account > Informazioni sull'addebito. Se nella pagina viene visualizzato un banner che richiede l'aggiornamento della carta di credito, chiedi al venditore di aggiornare i relativi dati. Attendi 48 ore affinché gli aggiornamenti si propaghino su tutti i sistemi Amazon. Se un account venditore non viene utilizzato per 90 giorni o un periodo di tempo superiore, l'account verrà contrassegnato come inattivo e il venditore verrà avvisato di aggiornare la carta di credito. Per eseguire correttamente l'aggiornamento, è necessario attendere 48 ore. Successivamente, sarà possibile effettuare chiamate API da tale account.
Se le autorizzazioni e le credenziali sono corrette, è probabile che si sia verificato un problema con la richiesta.
Problemi nella richiesta
La risposta standard di SP-API è in formato application/JSON. Se ricevi una risposta in formato testo/HTML, l'errore è stato generato prima che SP-API potesse elaborare la richiesta.
Esempio:
{
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 requires that requests be consistent with HTTP RFC 7230. If you get a 400 status code with an HTML response, instead of a standard SP-API response body, make sure that your requests are consistent with RFC 7230. The most common cause of errors is the inclusion of a body or content length header for GET requests or duplicate or malformed host headers. Other possible errors include the following:
- Aggiunta di un corpo della richiesta, un'intestazione
Content-Length
oTransfer-Encoding
per le richieste GET/HEAD Content-Length
è un valore non analizzabile o un numero non valido- Intestazioni
Content-Length
multiple - Presenza di entrambe le intestazioni
Content-Length
eTransfer-Encoding
- Intestazioni
Host
duplicate o non valide - Intestazione vuota o riga con spazi vuoti
- Intestazioni multilinea non conformi a RFC
- Righe di intestazione non terminate
- La riga di intestazione non ha i due punti come separatore
- L'URI o l'intestazione contiene un carattere di ritorno a capo, un carattere nullo o un carattere di controllo (CTL)
- Riga vuota alla fine della richiesta
- Nessun URI nella richiesta
- Metodo HTTP non valido
Ispezione delle richieste
Il metodo di ispezione delle richieste dipende dal client HTTP in uso. Esamina i possibili approcci seguenti.
- Se riesci a creare un comando curl o wget simile per chiamare SP-API e non riscontri lo stesso problema, ciò potrebbe indicare un problema con il client HTTP.
- Identifica la posizione in cui vengono create le richieste HTTP da inviare a SP-API e ispeziona le richieste.
- Ispeziona tutte le intestazioni e le informazioni URI delle richieste. Alcuni client forniscono modi programmatici per ottenere le informazioni relative alle intestazioni.
- Controlla la capacità di registrazione del client HTTP o se la registrazione può essere abilitata tramite una configurazione.
- Se il client è un client HTTP open source, potresti essere in grado di visualizzare il codice per determinare la modalità di creazione della richiesta. In tal caso, verifica la presenza di eventuali ipotesi errate.
- Se utilizzi un adattatore o un plug-in prima di inviare la richiesta, assicurati che non stia modificando le richieste in modi indesiderati.
- Verifica se è possibile abilitare i registri di rete che possono fornire maggiori dettagli sulle richieste in uscita.
Se continui a ricevere risposte con messaggi di errore 400, è probabile che vi sia un problema con l'applicazione.
Problemi relativi all'applicazione
Di seguito sono riportati diversi errori che possono essere restituiti in risposta a problemi relativi all'applicazione:
Developer ID XXXX-XXXX-XXXX is not associated with the application id.
: assicurati che l'ID sviluppatore fornito per l'applicazione ibrida contenga la regione corretta e che l'applicazione sia stata inviata per una revisione.application is missing OAuth setup.
: assicurati che l'applicazione disponga dell'URI di reindirizzamento.
Se continui a ricevere risposte con messaggi di errore 400, il problema potrebbe essere dovuto ai requisiti dell'API.
Requisiti API
Assicurati di rispettare i requisiti dell'API che stai chiamando e che tutti i parametri siano stati trasmessi correttamente secondo la documentazione:
- API Logistica di Amazon: assicurati che il venditore abbia effettuato l'iscrizione a Logistica di Amazon.
- API Gestito dal venditore: è possibile che venga restituita un'eccezione 400 se si tenta la gestione logistica dell'ordine tramite l'API dopo la sua spedizione.
- API Report: se viene programmato un report che può essere solo richiesto, si genera un'eccezione 400. Ad esempio, il report
GET_MERCHANT_LISTINGS_ALL_DATA
può essere solo richiesto.- Requesting a settlement report can result in a 400 exception. Settlement reports cannot be requested or scheduled. They are automatically scheduled by Amazon. You can search for these reports using the
getReports
operation.
- Requesting a settlement report can result in a 400 exception. Settlement reports cannot be requested or scheduled. They are automatically scheduled by Amazon. You can search for these reports using the
- Feeds API: when creating feeds, the
contentType
specified in Step 3. Upload the feed data must match thecontentType
specified during Step 1. Create a feed document. Amazon recommends UTF-8 character encoding. A mismatch of the content types in these two steps will cause the feed upload to fail, and could generate a 400 exception. For more information, refer to the Feeds API use case guide. - API Feed: durante l'aggiornamento dei prezzi e delle quantità, viene restituito un errore
InvalidInput
se l'offerta non è presente nell'account venditore. - API Spedizione in uscita di gestione logistica: puoi ricevere un errore
Value for parameter SellerId is invalid. Reason: InvalidValue.
se utilizzi l'API in un marketplace diverso da AU, CA, DE, ES, FR, IT, JP, MX, UK, US o CN.
If you are still encountering issues, you can open a Support Case for help troubleshooting.
Updated 23 days ago