Mudanças entre as edições de "Problemas Mercado Livre"
Linha 45: | Linha 45: | ||
<p id="774139d7-2378-4660-84ac-b15be062887a" class="">Ao acessar a URL, fará com que retorne o code | <p id="774139d7-2378-4660-84ac-b15be062887a" class="">Ao acessar a URL, fará com que retorne o code | ||
(que é o token que estamos utilizando aqui). Exemplo:</p> | (que é o token que estamos utilizando aqui). Exemplo:</p> | ||
[[File:get_token.png|options|caption]] | |||
<p id="37b5a5e9-8871-424a-8b4d-a738f8f8a948" class=""> Guarde este código do token.</p> | <p id="37b5a5e9-8871-424a-8b4d-a738f8f8a948" class=""> Guarde este código do token.</p> | ||
<p id="82bb8e57-b7a6-49d8-9a94-607b7962f43f" class=""> | <p id="82bb8e57-b7a6-49d8-9a94-607b7962f43f" class=""> |
Edição das 13h27min de 8 de junho de 2022
Access token não processado: invalid_grant
Pode acontecer no cliente o seguinte erro quanto for executar algum processamento do ML:
Documento -1: Retorno do Canal MERCADOLIVRE: Access token não processado: invalid_grant
Essa mensagem indica que o authorization_code ou refresh_token não existem, ou foram excluídos. Alguns dos motivos são:
- Tempo de Expiração (6 meses).
- Revogação da autorização.
- Revogação interna.
Detalhes de cada um pode ser visto em: https://developers.mercadolivre.com.br/pt_br/autenticacao-e-autorizacao#Erro-invalid-grant
Solução do problema Tempo de Expiração: Passado o tempo de duração do refresh_token (6 meses), vai expirar automaticamente e será necessário fazer de novo o fluxo para obter um novo refresh_token.
- Acessar o computador que está logado no mercado livre.
- Coloque o seguinte URL na janela do navegador do cliente para obter a autorização:
onde os parâmetros da url client_id e redirect_url estão na "http://ecommerces.teksystem.com.br/">, dentro de Integrações -> MarketPlace/Ecommerce.
Pesquise o cliente, e na edição da integração, é possível visualizar as configurações.
Detalhe: O clientId e o ClientSecret é o mesmo para todos.
Ao acessar a URL, fará com que retorne o code (que é o token que estamos utilizando aqui). Exemplo:
Guarde este código do token.
- Para fazer o refresh do token, uma solução realizada foi fazer uma requisição POST para a url https://api.mercadolibre.com/oauth/token, com o seguinte conteúdo no body:
{ "grant_type": "authorization_code", "client_id": "3451660131473474", "client_secret": "0omS1zrGleEhaCpP6zR3hxQOZGCfA3tH", "code": "TG-629f779f51e4ca0013b727f0-210860189", "redirect_uri": "https://www.teksystem.com.br/callback" }
Os parâmetros são os mesmos para todos os clientes(grant_type, client_id, client_secret, redirect_uri), dados adquiridos no endereço href="http://ecommerces.teksystem.com.br/">, como explicado no passo 2 acima.
Somente o “code” deve ser alterado para o token retornado no cliente, também explicado no passo 2.
Realizado os passos, o refresh token foi concluído com sucesso e será possível executar os processamentos do mercado livre.