Problemas Mercado Livre

De Tek-System Wiki
Revisão de 12h46min de 8 de junho de 2022 por Henrique Bedendo (discussão | contribs) (Criou página com '# 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 MERCA...')
(dif) ← Edição anterior | Revisão atual (dif) | Versão posterior → (dif)
Ir para navegação Ir para pesquisar
  1. 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: [1](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.

1. Acessar o computador que está logado no mercado livre. 2. Coloque o seguinte URL na janela de seu navegador para obter a autorização:

   [`https://auth.mercadolivre.com.br/authorization?response_type=code&client_id=3451660131473474&redirect_uri=https://www.teksystem.com.br/callback&state=1234567890`](https://auth.mercadolivre.com.br/authorization?response_type=code&client_id=3451660131473474&redirect_uri=https://www.teksystem.com.br/callback&state=1234567890)
   
   onde os parâmetros da url client_id e redirect_url estão na [ecommerces.teksystem.com.br](http://ecommerces.teksystem.com.br/), dentro de Integrações -> MarketPlace/Ecommerce.
   
   ![Untitled](Access%20token%20na%CC%83o%20processado%20invalid_grant%20f507dabf4586433b9b93b82d9557a336/Untitled.png)
   
   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:
   
   ![Untitled](Access%20token%20na%CC%83o%20processado%20invalid_grant%20f507dabf4586433b9b93b82d9557a336/Untitled%201.png)
   
    Guarde este código do token.
   

3. Para fazer o refresh do token, uma solução realizada foi fazer uma requisição POST para a url [2](https://api.mercadolibre.com/oauth/token)

   Com o seguinte conteúdo no body:
   

```json

{    

    "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 [ecommerces.teksystem.com.br](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.