Resolver 400 erros

Saiba como resolver 400 erros.

Há muitos motivos possíveis para uma resposta de 400.

Permissões e credenciais

Garanta o seguinte:

  • As funções necessárias são aprovadas para seu perfil e inscrição.
  • A conta do vendedor está ativa.
    Se não estiver, e um erro 400 estiver sendo devolvido para esse vendedor, entre em contato com o vendedor e solicite que ele navegue até Central do vendedor > Configurações do programa FBA - Logística da Amazon > Informações da conta > Informações de cobrança. Se a página de informações de cobrança exibir um banner solicitando a atualização do cartão de crédito, peça ao vendedor que atualize as informações do cartão de crédito. Aguarde 48 horas para que as atualizações se propaguem por todos os sistemas da Amazon. Se a conta do vendedor não for usada por 90 dias ou mais, a conta será marcada como inativa e o vendedor será aconselhado a atualizar seu cartão de crédito. Aguarde um período de espera de 48 horas para garantir uma atualização bem-sucedida. Depois disso, as chamadas de API podem ser feitas por essa conta.

Se as permissões e credenciais estiverem corretas, é provável que haja um problema com as solicitações.

Problemas de solicitação

A resposta padrão do SP-API está no formato Application/JSON. Se você receber uma resposta no formato texto/HTML, o erro foi gerado antes que a SP-API pudesse processar a solicitação.

Por exemplo:

{ 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 }

O SP-API exige que as solicitações sejam consistentes com HTTP: RFC 7230. Se você receber um código de status 400 com uma resposta HTML, em vez de um corpo de resposta padrão da SP-API, certifique-se de que suas solicitações sejam consistentes com a RFC 7230. A causa mais comum de erros é a inclusão de um cabeçalho de corpo ou tamanho de conteúdo para solicitações GET ou cabeçalhos de host duplicados ou malformados. Outros erros possíveis incluem o seguinte:

  • Inclusão de um corpo, Content-Length cabeçalho, ou Transfer-Encoding cabeçalho para solicitações GET/HEAD
  • Content-Length é um valor não analisável ou um número inválido
  • Múltiplo Content-Length cabeçalhos
  • Presença de ambos Content-Length e Transfer-Encoding cabeçalhos
  • Duplicado ou malformado Host cabeçalhos
  • Um cabeçalho vazio ou uma linha com espaços vazios
  • Cabeçalhos de várias linhas não compatíveis com RFC
  • Linhas de cabeçalho não terminadas
  • A linha de cabeçalho não tem separador de dois pontos
  • O URI ou cabeçalho contém um caractere de retorno de carro, caractere nulo ou caractere de controle (CTL)
  • Linha vazia no final da solicitação
  • Nenhum URI na solicitação
  • Método HTTP inválido

Inspecionando solicitações

O método para inspecionar solicitações depende do seu cliente HTTP. Analise as seguintes abordagens possíveis.

  • Se você conseguir criar um comando curl ou wget semelhante para chamar a SP-API e não estiver vendo o mesmo problema, isso pode indicar um problema com seu cliente HTTP.
  • Identifique onde as solicitações HTTP são criadas para serem enviadas à SP-API e inspecione as solicitações.
  • Inspecione todos os cabeçalhos e informações de URI para as solicitações. Alguns clientes oferecem formas programáticas de obter informações de cabeçalho.
  • Verificar o cliente HTTP quanto à capacidade de registro ou se o registro pode ser ativado por meio de uma configuração.
  • Se o cliente for um cliente HTTP de código aberto, você poderá visualizar o código para determinar como a solicitação está sendo criada ou se há alguma suposição errada.
  • Se você estiver usando um adaptador ou plug-in antes de enviar a solicitação, verifique se eles não estão modificando as solicitações de maneiras indesejadas.
  • Verifique se é possível ativar registros de conexão que possam fornecer mais detalhes sobre as solicitações de saída.

Se você ainda estiver recebendo 400 respostas, o problema pode ser devido a problemas com o aplicativo.

Problemas com o aplicativo

Há vários erros que podem ser retornados em resposta a problemas com o aplicativo:

  • Developer ID XXXX-XXXX-XXXX is not associated with the application id.: verifique se o ID do desenvolvedor foi fornecido para o aplicativo híbrido na região correta e se o aplicativo foi enviado para análise.
  • application is missing OAuth setup.: certifique-se de que o aplicativo tenha o URI de redirecionamento.

Se você ainda estiver recebendo 400 respostas, o problema pode ser devido aos requisitos da API.

Requisitos da API

Certifique-se de que todos os parâmetros sejam passados corretamente de acordo com a documentação e de que você esteja cumprindo os requisitos da API que está chamando:

  • APIs de atendimento da Amazon: certifique-se de que o vendedor tenha se inscrito no Fulfillment by Amazon.
  • APIs de atendimento de lojistas: uma exceção de 400 pode ser devolvida se o atendimento via API for tentado após o envio do pedido.
  • API de relatórios: uma exceção 400 pode ser lançada se um relatório que só pode ser solicitado for agendado. Por exemplo, o GET_MERCHANT_LISTINGS_ALL_DATA o relatório só pode ser solicitado.
    • Solicitar um relatório de liquidação pode resultar em uma exceção de 400. Os relatórios de liquidação não podem ser solicitados ou agendados. Eles são programados automaticamente pela Amazon. Você pode pesquisar esses relatórios usando o getReports operação.
  • API de feeds: ao criar feeds, o contentType especificado em Etapa 3. Carregue os dados do feed deve corresponder ao contentType especificado durante Etapa 1. Criar um documento de feed. A Amazon recomenda a codificação de caracteres UTF-8. Uma incompatibilidade dos tipos de conteúdo nessas duas etapas fará com que o upload do feed falhe e poderá gerar uma exceção de 400. Para obter mais informações, consulte o Guia de casos de uso da API Feeds.
  • API de feeds: ao atualizar o preço e as quantidades, se o anúncio estiver ausente na conta do vendedor, um InvalidInput o erro será retornado.
  • API de envio de pedidos: você pode receber um Value for parameter SellerId is invalid. Reason: InvalidValue. erro se você usar a API em um mercado diferente de AU, CA, DE, ES, FR, IT, JP, MX, UK, US ou CN.

Se você ainda estiver enfrentando problemas, você pode abrir um Caso de suporte para obter ajuda na solução de problemas.


Esta página ajudou você?