Home
Button Mobile Webdesign em Foco
Newsletter Webdesign em Foco
Support Webdesign em Foco
Contribuition Webdesign em Foco
Doe para a Webdesign em Foco
Suporte da Webdesign em Foco
Fechar

Google Planilhas Avançado - #124 API Versão 3 do Bling

12/09/2023

No tutorial de hoje aprenderemos como atualizar a API do Bling para a versão 3.

Versão 3 da API do Bling

API (Application Programming Interface) é um conjunto de protocolos e ferramentas que facilitam a integração entre softwares e permitem que uma solução se comunique com outros produtos e serviços sem precisar acessar a interface gráfica da solução diretamente, tudo isso através do que chamamos de interface.

O intuito de uma API é a troca de dados entre sistemas implementados em diferentes tecnologias que utilizam o mesmo protocolo de comunicação.

No Bling, usamos a API para integrar as nossas soluções com nossos parceiros, sendo possível criar processos de automatização, atualização ou análise de registros, criação de novos aplicativos e uma vasta gama de soluções podem ser criadas para facilitar a vida dos nossos clientes.

O primeiro passo é a criação do aplicativo para o processo de autenticação que pode ser encontrado neste link.

O script final ficou assim:

let app = SpreadsheetApp;
let spreadsheet = app.getActiveSpreadsheet();
let sheet = spreadsheet.getSheets()[0];
let sheetConfig = spreadsheet.getSheets()[1];
let clientId = 'SEU_CLIENT_ID';
let secretKey = 'SEU_SECRET_KEY';
let code = sheetConfig.getRange('B2').getValue();
let accessToken = sheetConfig.getRange('B3').getValue();
let refreshToken = sheetConfig.getRange('B4').getValue();

/**
 * Retorna o token de acesso
 */
function getToken(token='token')
{
  let credentials = Utilities.base64Encode(clientId+':'+secretKey);
  if(token == 'token'){
    let options = {
      'method' : 'post',
      'payload' : {
        'grant_type':'authorization_code',
        'code':code
      },
      'headers':{
          'Content-Type': 'application/x-www-form-urlencoded',
          'Authorization': `Basic ${credentials}`
      }
    };
    let reqs = UrlFetchApp.fetch('https://www.bling.com.br/Api/v3/oauth/token', options);
    let ress = JSON.parse(reqs.getContentText());
  }else if(token == 'refresh'){
    let options = {
      'method' : 'post',
      'payload' : {
        'grant_type':'refresh_token',
        'refresh_token':refreshToken
      },
      'headers':{
          'Content-Type': 'application/x-www-form-urlencoded',
          'Authorization': `Basic ${credentials}`
      }
    };
    let reqs = UrlFetchApp.fetch('https://www.bling.com.br/Api/v3/oauth/token', options);
    let ress = JSON.parse(reqs.getContentText());
    sheetConfig.getRange('B4').setValue(ress.refresh_token);
    sheetConfig.getRange('B3').setValue(ress.access_token);
  }
}

function teste()
{
  getToken('refresh');
}

Por hoje é só! Fiquem todos com Deus! Sucesso nos códigos e na vida!

Precisa de ajuda? webdesignemfoco@gmail.com

"Ela fala com sabedoria e a instrução amorosa está em sua língua." Provérbios 31:26

Receba as aulas da Webdesign em Foco em Seu Email
Suporte Webdesign em Foco

Posts Relacionados

Google Planilhas Avançado - #123 Exportando Aniversários para o Google Agenda
Neste tutorial aprenderemos como exportar as datas de aniversário para o Google Agenda gerando eventos anuais de lembrete de aniversário.
Saiba mais!
Google Planilhas Avançado - #125 Dashboard de Formatações
Neste tutorial montaremos um painel para criação bem ágil de formatações condicionais. Neste mesmo painel também colocaremos a opção de limpar as formatações.
Saiba mais!
Google Planilhas
Neste curso abordaremos a fundo as funcionalidades do Google Planilha. Adentraremos no Google App Script e na API do Google Sheet. Aproveite.
Saiba mais!