Erro atualização de produtos pela API

É simplesmente absurdo vocês não prestarem suporte da API que é de vocês mesmo! Se o erro retornado é da própria API de vocês como mencionado acima, como vocês não vão prestar suporte a isso?

Tenho vários clientes meus que utilizam nossa integração com vocês e reportam frequentemente essas mensagens de instabilidade (fora outras de Internal Server Error). Sou somente eu que acho isso um absurdo?

1 curtida

Pelo visto o problema persiste até hoje.
Também estou tentando atualizar produtos pela API e o erro é o mesmo até hoje:
{“error_message”: “Sorry, this request could not be processed. Please try again later.”}

A Loja Integrada parou no tempo. Não tem mais atualizações ou correções dos Bugs, me parece.
Há também um problema crônico de integração com o Google Merchant que dura mais de 3 anos e até hoje não quiseram resolver.

Pelo visto a solução é ir pra Tray Commerce mesmo.

Consegui!

Depois de muito pesquisar e testar uma infinidade de combinações, descobri o problema.
Infelizmente a equipe da LI mesmo não ajudou em nada. A documentação é falha e induz a gente ao erro.

Peguei a observação do colega @Matheus_Aguilera de que alguns campos não podem ser NULL ou vazios, apesar de a documentação exemplificar que pode. Daí em diante foi tentativa e erro sem fim.

No meu caso o problema era o “id_externo”. Eu estava passando ele vazio… e só funcionou quando passei como FALSE. Não aceitava vazio nem null. Muito menos se deixar de informá-lo.

Lembrando que é necessário passar TODOS os campos do produto. Então, antes de fazer o PUT, eu fiz um GET para ver todos os campos e valores que a API retorna (são 31 no total), e enviei todos de volta. O problema é que se vc enviar os valores que o próprio GET retorna, não vai funcionar! Pois alguns ele retorna alguns vazios (como o caso do id_externo), mas como mencionei, vc não pode enviar vazio.

1 curtida

Apenas complementando… essa API é meio doida! hahaha

Eu fiz o teste com uma variação de um produto. Tamanho P.
Fui atualizar o tamanho M e os demais, com praticamente todos os dados iguais, e não funcionava. De jeito nenhum.

Como funcionou? Mudando o “id_externo” de false para null. Vai entender!!!
Na variação P do meu produto, só funcionou com false. Já na variação M só funcionou com null.
Assim fica difícil manter um padrão. Toda hora precisamos testar valores diferentes para um mesmo campo.

Pelo que me parece, dependendo do que vc colocar nos demais campos, ora vc usa FALSE ora NULL… Agora só tá funcionando com NULL. :face_with_raised_eyebrow:

Mas enfim. O grande problema é que a documentação não informa quais campos podem ficar vazios, receber false ou null. Então cabe ao desenvolvedor ficar testando uma infinidade de combinações até acertar… De preferência, preencha tudo que for possível, mesmo que tenha que inventar.

1 curtida

estou tendo problema similar ao tentar atualizar um produto por chamada curl na API, algum usuário obteve erro de resposta da API para o campo marca?

estou tendo o erro especifico: “Could not find the provided object via resource URI ‘/api/v1/marca/891098’.”

já tentei passar o campo marca o valor nulo, como vi em outros exemplo aqui, mas sem sucesso, passando um valor falso ou string vazia também dá erro, mas que o campo em questão não é uma URI válida ou a requisição não pode ser processada e para tentar novamente mais tarde

o valor em questão que estou passando é o mesmo obtido anteriormente de uma chamada GET de consulta do produto na API, no entanto o mesmo valor passado na chamada PUT acusa erro.

notei que passando o parametro na URI do campo marca: ?id_externo=0 o erro retornado passa a ser outro, de ID inválido… mas qual ID? removi tanto o campo id e o id_ externo do corpo do json enviado na chamada cURL no campo CURLOPT_POSTFIELDS, porém o mesmo erro é obtido, resta o ID passado no endpoint da API, estou chamando assim: “https://api.awsli.com.br/v1/produto/“.$object[‘ID’].”/?id_externo=0&descricao_completa=0

como resolver?

Deni,

O id_externo acho que não pode ser 0. Eu passo como null e funciona.
Já a marca, eu passo o código cadastrado no painel, dessa forma:
“marca”: “/api/v1/marca/2354709”

Para saber o código da marca, basta ir no painel e ver o link que foi gerado pra ela (Produtos > Marcas) e usar esse número (passe o mouse em cima da marca pra ver o link com o número).

Como eu citei no meu post acima, alguns campos aceitam ficar em branco… outros precisam ser null ou false (caso não queira informar), mas não fica claro na documentação quais podem o que.

Funciona pra mim da seguinte forma:
Em branco: categorias, imagens, imagem_principal, mpn
false: removido, usado
null: id_externo

Os demais eu informo o conteúdo.
Pelo que lembro, quando vc monta os campos para informar no POST do Curl, você precisa detalhar todos os campos, ainda que passe alguns em branco, false ou null. Senão dá erro.

1 curtida

obrigado pelas dicas @Andre_Xori, vou tentar aqui…

até então fiz alguns testes passando id_externo como 0 tanto na url e também como parametro no campo marca, estava somente passando os campos sku e nome e obtive uma resposta com status 201 e depois algumas com 200, fui fazendo uns testes adicionando os demais campos porém travei novamente em outro erro

{“error”: {“produto”: “Erro de integridade, verifique se o SKU ou ID Externo estão duplicados.”}, “error_message”: “Um ou mais campos não são válidos.”}

estranho que estes valores estão distintos, tenho conferido e o valor de id_externo no json enviado está como null, já o sku é um valor do produto que tenho recuperado do banco de dados da aplicação

bom dia pessoas estou com mtas dificudades 2 filhos pekeno estou indo procura servico mais nao tenho dinheiro pra compra o cafe da manha da minha familia se deus toca no coracao de alguem …eu vou ser mt grato
pix 45805491800 cpf wendel

Andre,

estou começando agora as integrações com a Loja Integrada e já me deparei com este erro. Não consigo atualizar produtos de forma alguma e os erros nunca retornam especificamente o que são. Você já conseguiu mapear exatamente o que cada campo deve conter para funcionar esta atualização?

Olá, João Paulo.

Os campos que eu uso são apenas estes (para cadastrar o produto PAI):
"id_externo": null,
"sku": "SKU-DO-PRODUTO",
"mpn": null,
"ncm": 61091000,
"nome": "Título do Produto",
"descricao_completa": “Descrição completa do produto”,
"ativo": false,
"destaque": false,
"peso": 0.34,
"altura": 2,
"largura": 25,
"profundidade": 2,
"tipo": "atributo",
"usado": false,
"grades": [
"/api/v1/grades/744162"
],
"marca": "/api/v1/marca/2354709",
"removido": false

Precisa ter uma atenção especial a descrição do produto, pois é bem chato quando vc envia texto formatado. O ideal é tentar enviar sem formatação alguma. Apenas espaços e quebras de linha.

Para cadastrar as variações, ou produto FILHO, uso estes campos:
"id_externo": null,
"sku": "SKU-DO-FILHO",
"mpn": null,
"ncm": "61091000",
"gtin": "789000001",
"nome": "Título do Produto",
"ativo": true,
"peso": 0.3,
"altura": 25,
"largura": 25,
"profundidade": 5,
"pai": "/api/v1/produto/ID_DO_PRODUTO_PAI_NA_LOJA_INTEGRADA",
"tipo": "atributo_opcao",
"variacoes": [
"/api/v1/grade/744162/variacao/CODIGO_DA_VARIACA_NA_LOJA_INTEGRADA"
]

Qualquer dúvida, me avise.
Abs

Boa tarde!

Criar o produto não é o problema porque estou fazendo isso através de outra integração. O grande problema que estou tendo é na hora de editar o produto.

Eu tento editar mas ele dá aquele erro genérico. Entendo que algum campo está fora do padrão exigido ou algo do tipo. Por isso perguntei se você já mapeou estes campos para me dizer quais podem ficarm em branco, quais deve ser null, false, true, etc…

Obrigado!

Desculpe, realmente não me atentei a sua necessidade de atualizar. Eu não atualizo os produtos. É algo muito raro. Após o cadastro estrar prontinho no meu ERP, eu subo e nunca mais mexo.
Atualizo apenas estoque e preço. Esses funcionam sem problemas aqui. Estes vc conseguiu?

Eu não atualizo essas 2 coisas pq está tudo integrado com o Bling, portanto controlo tudo por lá!

O problema é que estou enviando do Bling pra LI. Depois, quando já está na LI eu preciso editar os produtos principalmente no intuito de categoriza-los em massa, colocar os dados adicionais que não tem no bling, etc.