Google Sheets
Leia e escreva em planilhas do Google Sheets direto do app.
Pré-requisito: Service Account
- console.cloud.google.com → cria/seleciona projeto
- APIs & Services → habilita Google Sheets API
- IAM & Admin → Service Accounts → cria conta
- Na conta criada → Keys → Add Key → JSON → baixa o arquivo
- 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