Criando um Backend no Google Sheets utilizando Apps Script

O Apps Script permite a criação de rotas consumíveis que retornam os dados de uma planilha.

Criando um Backend no Google Sheets utilizando Apps Script

Google Sheets é um CMS sim!

CMS é um Sistema para Gestão de Conteúdo, para pessoas não técnicas conseguirem fazer modificações e publicarem novos conteúdos.

Vou mostrar nesse artigo como você pode criar uma Rota API dentro de uma planilha no Google Sheets, e assim, transformá-lo em um CMS.

Dessa forma, você conseguirá consumir em qualquer aplicação os dados salvos em uma planilha.

Criando a planilha

Crie uma planilha normalmente em seu Drive.

Em extensões, selecione Apps Script.

Apps Script no Google Sheets

Criando a função

Você verá uma função em branco, pode excluir e criar uma base como essa:

// Pegando a planilha com informações
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Página1")

function doGet(e){
  // Pegando parametro da requisição
  var action = e.parameter.action;

  if(action == 'getInfo'){
    return getInformations(e)
  }
}

// Função que pega as informações
function getInformations(e){

}

Pronto, ou quase pronto.

O que temos que fazer agora, é uma lógica para pegar as informações da planilha e retornar como um json.

Pegando as informações e retornando em JSON

Minha planilha exemplo, está assim:

Para pegar os dados, posso fazer dessa forma:

function getInformations(e){
  var data = { 'techs':[] }

  var lastRow = sheet.getLastRow()

  for(var i = 2; i <= lastRow; i++){
    let tech = sheet.getRange(i,1).getValue()
    data.techs.push(tech)
  }

  var result = JSON.stringify(data)

  return ContentService.createTextOutput(result).setMimeType(ContentService.MimeType.JSON)
}

Ativando a API

Na página onde você está, tem um botão "Implantar", selecione-o e depois escolha "Nova Implantação" e dê um nome para a sua aplicação.

Você deve ver uma tela como essa:

Exatamente, essa URL pode ser consumida, só não esquece de adicionar a nossa action no final ?action=getInfo.

Veja você mesmo

Resumo

Vimos que de forma simples conseguimos transformar uma planilha Google Sheets em um CMS.

O exemplo foi bem simples, mas espero que você tenha entendido o quão longe podemos ir.

Tudo se baseia na sua lógica em extrair os dados da função e retorná-los como JSON.