Creación de refresh token para google apis

Martin
Tips de programación
2 min readApr 22, 2024

Con este artículo aprenderás como generar un refresh token que luego te permitirá crear, de manera autónoma, tokens para poder utilizar las apis de google sin tener que logearte cada vez con tu usuario.

¡Empecemos!

Lo primero es ir a la consola de developers de google y registrar nuestra app. https://console.developers.google.com/apis/

Después crearemos unas credenciales de tipo Web application donde indicaremos como url de redirección valida la url https://developers.google.com/oauthplayground

Ahora abrimos en un navegador la url https://developers.google.com/oauthplayground. Abrimos el settings que tenemos a la derecha y ponemos estas opciones:

  • OAuth flow: Server-side
  • Access type: Offline
  • Use your own OAuth credentials: TICK
  • Ponemos el client id y el client secret generados al crear las credenciales para Web application

Buscamos y seleccionamos la api que queremos utilizar y luego le damos al botón ‘Authorize apis’ y nos logeamos con nuestro usuario.

Ahora vamos al Step 2 y clicamos en el botón Exchange authorization code for tokens. Guardamos el refresh token generado

Ahora veamos como utilizar el refresh token para generar un token valido para llamar a las apis de google. Para ello utilizaremos código javascript

      const refresh_token = "refresh_token_generated";
const client_id = "client_id";
const client_secret = "client_secret";
const refresh_url = "https://www.googleapis.com/oauth2/v4/token";

const post_body = `grant_type=refresh_token&client_id=${encodeURIComponent(client_id)}&client_secret=${encodeURIComponent(client_secret)}&refresh_token=${encodeURIComponent(refresh_token)}`;

let refresh_request = {
body: post_body,
method: "POST",
headers: new Headers({
'Content-Type': 'application/x-www-form-urlencoded'
})
}

fetch(refresh_url, refresh_request).then( response => {
return(response.json());
}).then( response_json => {
console.log(response_json.access_token)

});

¡Ya lo tenemos!

Ahora ya tienes el access_token para poder llamar a las apis de google automáticamente.

Ya sabes que si te ha gustado el artículo me puedes invitar a un café ;-)

https://ko-fi.com/arekjaar

--

--

Martin
Tips de programación

Experto en integración de aplicaciones con más de 5 años de experiencia con IBM WMB y IIB y en la creación de flujos para Mule ESB con Anypoint Studio