Integrações

Google Sheets

Google Sheets

Leia e escreva em planilhas do Google Sheets direto do app.

Pré-requisito: Service Account

  1. console.cloud.google.com → cria/seleciona projeto
  2. APIs & Services → habilita Google Sheets API
  3. IAM & Admin → Service Accounts → cria conta
  4. Na conta criada → KeysAdd KeyJSON → baixa o arquivo
  5. Compartilhe a planilha com o email da Service Account (xxx@projeto.iam.gserviceaccount.com) com permissão de Editor

Configurar

App → Integrações → Google Sheets:

  • Cola o JSON inteiro do arquivo baixado

Spreadsheet ID

Pega da URL: docs.google.com/spreadsheets/d/<ID>/edit

Ler intervalo

const { rows, columns, rowCount } = await integrations.sheets.read(
  spreadsheetId,
  "Funcionarios!A1:F"
);
// rows: [{ Nome: "Ana", CPF: "123...", Email: "ana@..." }, ...]
// (1ª linha vira keys do objeto automaticamente)

Pra valores brutos (sem objetos): passa { rawValues: true } no 3º arg.

Adicionar linhas no fim

await integrations.sheets.append(
  spreadsheetId,
  "Funcionarios!A:F",
  [
    ["Carlos", "987...", "carlos@empresa.com"],
    ["Beatriz", "456...", "beatriz@empresa.com"],
  ]
);

Atualizar célula/intervalo

await integrations.sheets.update(
  spreadsheetId,
  "Funcionarios!C5",
  [["novo@email.com"]]
);

Listar abas da planilha

const { sheets } = await integrations.sheets.listSheets(spreadsheetId);
// sheets: [{ title, sheetId, rowCount, columnCount }, ...]

Útil pra UI dinâmica que mostra abas disponíveis.

Casos de uso

  • RH usa Sheets pra cadastrar funcionários — app puxa
  • Financeiro fecha mês em Excel/Sheets — app gera relatório
  • Vendas mantém pipeline em Sheets — app dispara WhatsApp

Por que Service Account (e não OAuth pessoal)?

  • Admin configura 1x; conta não morre quando funcionário sai
  • Mais "enterprise-friendly"
  • Padrão Zapier/n8n pra integrações servidor-servidor