Search the Community

Showing results for tags 'refresh_token'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • Português
    • Autenticação e Autorização
    • Gerenciamento de perguntas e respostas
    • Gerenciamento de produtos
    • Gerenciamento de vendas
    • Gerenciamento de envios
    • Gerenciamento de usuário
    • Controle de notificações
    • Gerenciamento de mensagens pós-venda
  • Español
    • Autenticación y Autorización
    • Gestión de preguntas y respuestas
    • Gestión de productos
    • Gestión de ventas
    • Gestión de envíos
    • Gestión de usuario
    • Control de notificaciones
    • Gestión de mensajes post-venta
  • English
    • Authentication and Authorization
    • Question & Answer Management
    • Product Management
    • Sales Management
    • Shipment Management
    • User Management
    • Notification control
    • Post Sale Message Management
  • Off Topic
    • Events
    • Off Topic
    • Documentation improvements
    • Jobs

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


AIM


MSN


Website URL


ICQ


Yahoo


Jabber


Skype


Location


Interests

Found 13 results

  1. Buenas tardes, Tengo una aplicacion para publicar, gestionar preguntas y administrar ventas, para multiples cuentas de MELI. Tengo implementado una tarea para renovar los AT y los RT cada una hora. Pero eventualmente tengo cuentas que no se renuevan y arrojan el siguiente error: " Error validating grant. Your authorization code or refresh token may be expired or it was already used" El problema radica en que la unica forma que encuentro de "reconectar" la cuenta, es volviendo a hacer todo el proceso de autorizacion de la app de nuevo. Lo cual requiere que el usuario logueado, haga click en la url y genere un RT nuevo. Hay forma de hacerlo sin la necesidad del usuario? Tal vez alguna funcion de la api con el RT vencido? Quedo a la espera y gracias
  2. Olá, eu tenho várias contas vinculadas no meu aplicativo. O que está acontecendo é que algumas contas não estão conseguindo gerar um novo acess token, quando o memso expira. A requisição que estou fazendo é: https://api.mercadolibre.com/oauth/token?grant_type=refresh_token&client_id={myClientId}&client_secret={myClientSecret}&refresh_token={myRefreshToken} Obtenho como resposta um erro 400 com o seguinte payload: Segundo a mensagem de erro o meu refresh token pode ter sido usado ou expirado, mas até sei, o refresh token não expira e sim o acess token (que tem um prazo de 6h). Se o o refresh token expira, qual o prazo dele e como renovo ele? Toda vez que eu realizo a requisição obter um novo acess token, eu sempre guardo o novo refresh token, caso a api retorne um diferente para que eu possa usa-lo novamente quando necessário. A minha conta do ML não houve auteração de senha ou nenhuma ação (que eu saíba) que causasse o bloqueio de renovar o acess token. Então eu gostaria de saber, por qual motivo eu não consigo renovar o acess token. Um detalhe, é que outras contas, conectada n omesmo app consegue renovar o acess token e outras não. Eu achei até que poderia ser um problema com a URI, todavia se o problema fosse esse, nenhuma conta conseguiria renovar o acess token. Alguém, por favor, consegue me listar por quais motivos eu não conseguiria renovar o acess token? Estou tendo que pedir pro meu cliente toda vez desvincular a conta no app e vincular novamente a cada 6h!!!!!!
  3. recentemente me deparei com o problema de expiração do access_token e vi que poderia criar um novo através do refresh_token e que na documentação, mostra que a URL que deve ser feita a requisição é "https://api.mercadolibre.com/oauth/token?grant_type=refresh_token&client_id=APP_ID&client_secret=SECRET_KEY&refresh_token=REFRESH_TOKEN", porém quando acesso ela, mesma com as credenciais corretas, o resultado é 404, que a página não existe, como proceder?
  4. Hola he leido la documentación y no entiendo porque no pasa este comando para poder refrescar el token. Favor si me pueden ayudar. $body = array( "grant_type" => "refresh_token", "client_id" => $ml_id, // esto lo saco de la base de datos. "client_secret" => $ml_key, // esto lo saco de la base de datos. "refresh_token" => $ml_refresh_token // esto lo saco de la base de datos, lo guardo cuando obtengo el access token. ); $headers = array( "Accept" => "application/json", "Content-Type" => "application/x-www-form-urlencoded" ); $tuCurl = curl_init(); curl_setopt($tuCurl, CURLOPT_URL, 'https://api.mercadolibre.com/oauth/token'); curl_setopt($tuCurl, CURLOPT_TIMEOUT , 60); curl_setopt($tuCurl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($tuCurl, CURLOPT_CONNECTTIMEOUT, 10); curl_setopt($tuCurl, CURLOPT_SSL_VERIFYPEER, true); curl_setopt($tuCurl, CURLOPT_USERAGENT, "MELI-PHP-SDK-1.1.0"); curl_setopt($tuCurl, CURLOPT_POST, true); curl_setopt($tuCurl, CURLOPT_POSTFIELDS, $body); curl_setopt($tuCurl, CURLOPT_HTTPHEADER, $headers); $tuData = curl_exec($tuCurl); echo $tuData; Respuesta: {"message":"User has no valid scopes for application","error":"unauthorized","status":401,"cause":[]} 1) En https://applications.mercadolibre.cl/list?platform=ml -> Mi aplicación tiene los Scopes: write, read, offline_access 2) La cuenta que autorizo la aplicación es el master 3) En Seguridad / Permisos / https://myml-applications.mercadolibre.cl/list -> Tengo Administrar tus compras y ventas Acceder a tu información básica 4) Intente tambien directamente con el SDK y es lo mismo. No se que esta mal ? Gracias de antemano toda la ayuda.
  5. buenas tardes, estoy trabajando en una aplicación y uso actualmente el sdk de python y al hacer la autorización, solo obtengo el acces_token, este es mi codigo: meli = Meli(client_id=ml_conf_data[0]['client_id'], client_secret=ml_conf_data[0]['client_secret']) token = meli.authorize(code='code from mercadolibre', redirect_URI=ml_conf_data[0]['redirect_uri']) print token al hacer un print de la variable token, para ver su contenido me devuelve solo el acces_token, al hacer la consulta a travez de Postman, si obtengo la respuesta completa, access_token, refresh_token, etc. de verdad me vendria bien algo de ayuda, no se que podre ser los valores de client_id, client_secret y redirect_URI estan almacenados en la base de datos, y de alli los obtengo, el dato code lo obtengo de mercadolibre en la etapa 1 de la autorización, de hecho puedo hacer todas las operaciones pero necesito el refresh_token y no puedo obtenerlo gracias de antemano
  6. Estou tentando fazer o processo de autenticação e consegui obter o access_token e o refresh_refresh token. Porém quando solicito a atualização do token, recebo o erro HTTPError: 401 Client Error: Unauthorized for url. Estou utilizando o sdk para python e chamo o get_refresh_token na mesma instância que fiz a autorização. Coloquei o código em anexo. Alguém já encontrou algo similar e consegue me ajudar? Desde já agradeço. login.py
  7. Olá pessoal, bom primeiramente deixa eu dizer que meu conhecimento em PHP é bem básico, por isso meu aplicativo é uma enorme POG. Estou aprendendo com a necessidade. Eu tenho um aplicativo em javascript (um complemento do Chrome) para pegar o código de rastreamento das vendas e cadastrar num serviço de rastreamento, a aplicação não "trabalha sozinha", eu abro os detalhes de cada venda e o Javascript pega o ID da venda e faz um request no meu PHP que por sua vez captura as informações da venda na API no ML. A rotina no JS primeiro verifica se o pacote já foi adicionado, se já tiver sido nem continua a execução pois não precisa (quando ele executa armazena uma variável local no navegador para posterior checagem). Então supondo que o pacote ainda não foi adicionado, o JS faz uma requisição com Ajax no PHP hospedado no meu servidor que tenta capturar o tracking_number na API, se não tiver esta informação geralmente é porque meu acesso expirou então ele abre uma janela chamando o PHP que me autentica na aplicação, e em seguida tenta novamente obter o tracking_number. Blz funciona, só que toda vez (se passar de 6 horas) ele não consegue obter o rastreamento e abre a janela para me re-autenticar. Gostaria de uma ajuda de como usar o refresh_token para o próprio servidor requisitar o novo access_token sem a necessidade desse vai-e-vem que eu estou fazendo. Este é o PHP que faz a autenticação e grava o acess_token num TXT que é lido pelo outro PHP que tenta obter o tracking_number: <?php session_start('Login'); require 'meli.php'; $meli = new Meli('1234567890', 'abcdefg', $_SESSION['access_token'], $_SESSION['refresh_token']); if($_GET['code'] || $_SESSION['access_token']) { // If code exist and session is empty if($_GET['code'] && !($_SESSION['access_token'])) { // If the code was in get parameter we authorize $user = $meli->authorize($_GET['code'], 'https://www.meusite.com/index.php'); // Now we create the sessions with the authenticated user $_SESSION['access_token'] = $user['body']->access_token; $_SESSION['expires_in'] = time() + $user['body']->expires_in; $_SESSION['refresh_token'] = $user['body']->refresh_token; } else { // We can check if the access token in invalid checking the time if($_SESSION['expires_in'] < time()) { try { // Make the refresh proccess $refresh = $meli->refreshAccessToken(); // Now we create the sessions with the new parameters $_SESSION['access_token'] = $refresh['body']->access_token; $_SESSION['expires_in'] = time() + $refresh['body']->expires_in; $_SESSION['refresh_token'] = $refresh['body']->refresh_token; } catch (Exception $e) { echo "Exception: ", $e->getMessage(), "\n"; } } } //armazena dados da sessão unlink("token.txt"); //primeiro apaga o arquivo $fp = fopen("token.txt", 'a'); fwrite($fp, $_SESSION['access_token']); fclose($fp); //grava nome do usuario date_default_timezone_set('America/Sao_Paulo'); $datahora = date("d/m/y - G:i"); $params = array('access_token' => $_SESSION['access_token']); $userinfo = "/users/me"; $user_info = $meli->get($userinfo, $params); $username = $user_info['body']->nickname; $email = $user_info['body']->email; $fp = fopen("users.html", 'a'); fwrite($fp, "<p>" .$datahora. " - " .$username. " - " .$email. "</p>\n"); fclose($fp); //exibe informações da sessão echo '<pre>'; print_r($_SESSION); echo '</pre>'; echo '<body onload="javascript: window.close()"></body>'; } else { echo '<body onload="javascript: location.href=\'' . $meli->getAuthUrl('https://www.meusite.com/index.php') . '\'"></body>'; }
  8. Bom dia, Estou implementando uma rotina para atualização de access_token e percebi que quando recebo um novo refresh_token ao submeter um POST para https://api.mercadolibre.com/oauth/token?grant_type=refresh_token&client_id=00000000&client_secret=0000000&refresh_token=REFRESH_TOKEN não faz com que o anterior (passado como parâmetro no POST) perca a "validade", ou seja, todos os refresh_token continuam gerando novos access_token. Em outras palavras, eu nunca preciso mudar a URL do POST porque o refresh_token nunca expira. Esse comportamento da API é normal? Ou a partir do momento que um novo refresh_token é gerado o anterior deveria expirar?
  9. Boa Tarde, Estou tendo o seguinte erro ao tentar atualizar meu token: Método: oauth/token Params: 'grant_type' => 'refresh_token', 'client_id' => '6539736481180978', 'client_secret' => 'XXXXXXXXX', 'refresh_token' => 'TG-5861662ce4b0e12ca2fd319e-191175585', object(stdClass)#489 (4) { ["message"] => string(40) "User has no valid scopes for application" ["error"] => string(12) "unauthorized" ["status"] => int(401) ["cause"] => array(0) { } } Consegui fazer a autorização do meu usuário na aplicação, e requesitar métodos privados, porém, é uma rotina que irá fazer tudo, e preciso usar o refresh_token para isso. O ML não está expirando meu token, pois esse erro eu tenho, dentro do período de 6 horas de token válido, e fora também. Minha aplicação tem os escopos (read write offline_access). E na minha aplicação, está em Redirect URI = ""http" para desenvolvimento local. Gostaria de alguma ajuda se possível, obrigado!
  10. I would like to explain about the refresh_token . What is ? How to purchase ?
  11. Tengo un problema pense que era la adaptacion que hacia en Codeigniter pero en realidad no habilite localmente un dominio virtual para probar los ejemplos de login de la api con mi codigos y resulta me que me el mismo errror Array ( [access_token] => [expires_in] => 1450097114 [refresh_token] => ) ese error me lo da de igual manera en Codeigniter tengo la version PHP 5.6.12 En el Curl curl cURL support enabled cURL Information 7.42.1 Age 3 Features AsynchDNS Yes CharConv No Debug No GSS-Negotiate No IDN Yes IPv6 Yes krb4 No Largefile Yes libz Yes NTLM Yes NTLMWB No SPNEGO Yes SSL Yes SSPI Yes TLS-SRP No Protocols dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, pop3, pop3s, rtsp, scp, sftp, smtp, smtps, telnet, tftp Host i386-pc-win32 SSL Version OpenSSL/1.0.1p ZLib Version 1.2.7.3 libSSH Version libssh2/1.5.0 openssl OpenSSL support enabled OpenSSL Library Version OpenSSL 1.0.1p 9 Jul 2015 OpenSSL Header Version OpenSSL 1.0.1p 9 Jul 2015 El ejemplo de Login no lo coloco ya que es el mismo de meli que usan como ejemplo
  12. Pedro Queluz

    Problema de login

    quando tento fazer o login para obter o accessToken a pagina retorna apenas: Array ( [access_token] => [expires_in] => 1430845033 [refresh_token] => ) Aguem pode me ajudar?
  13. Al hacer un POST a la siguiente url, obtengo una respuesta de error https://api.mercadolibre.com/oauth/token?grant_type=refresh_token&client_id={ID_CLIENTE}&client_secret={PASSWORD}&refresh_token={REFRESH_TOKEN} Respuesta: { "message": "Oops! Something went wrong...", "error": "internal_error", "status": 500, "cause": [] } En principio pienso que los datos que especifico, son correctos, pero independientemente de esto, me suena raro el error ya que si alguno de los datos ingresados fuese incorrecto creo que la respuesta del servidor deberia ser otra como "Acceso denegado" o "Los datos no son validos". Busque tanto en la documentacion de la API, asi como en el foro el "internal_error" pero no encontre nada al respecto. Si alguien me puede dar alguna pista de donde esta el error o que puedo estar haciendo mal, bienveido sea. Muchas gracias.