SHEETS_CREATE - Criar Nova Planilha Google Sheets
O que é este Node?
O SHEETS_CREATE é o node responsável por criar uma nova planilha Google Sheets programaticamente, incluindo definição de abas e estrutura inicial.
Por que este Node existe?
Criar planilhas automaticamente é útil para relatórios e organização. O SHEETS_CREATE existe para:
- Relatórios Automatizados: Gerar planilha mensal de vendas
- Projetos: Criar planilha para cada novo cliente
- Backups: Criar cópias de segurança periodicamente
- Templates: Instanciar estrutura pré-definida para novos casos
Como funciona internamente?
Quando o SHEETS_CREATE é executado, o sistema:
- Autentica: Valida tokens OAuth2
- Prepara estrutura: Define título e abas (sheets)
- Executa create: Chama spreadsheets.create()
- Retorna IDs: Devolve spreadsheetId e link da planilha
- Se erro: Lança exceção
Código interno (baseado na API Google Sheets):
case 'create':
const createResult = await sheets.spreadsheets.create({
requestBody: {
properties: {
title: data.title || 'Nova Planilha',
},
sheets: data.sheets || [{
properties: {
title: 'Sheet1',
},
}],
},
});
return {
success: true,
spreadsheetId: createResult.data.spreadsheetId,
spreadsheetUrl: createResult.data.spreadsheetUrl,
};
Quando você DEVE usar este Node?
Use SHEETS_CREATE quando precisar gerar nova planilha dinamicamente:
Casos de uso
- Relatório Mensal: "Criar planilha 'Vendas_Janeiro_2025'"
- Cliente Novo: "Gerar planilha de controle para novo projeto"
- Backup: "Criar cópia de dados importantes"
- Template: "Instanciar estrutura padrão para novo caso"
Quando NÃO usar SHEETS_CREATE
- Trabalhar em existente: Use outros nodes SHEETS_*
- Criar aba em planilha existente: Use operação addSheet
Parâmetros
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
| operation | string | Sim | Deve ser "create" |
| title | string | Não | Título da planilha (padrão: "Nova Planilha") |
| sheets | array | Não | Array de definições de abas |
| accessToken | string | Sim | Token OAuth2 |
| refreshToken | string | Sim | Token OAuth2 refresh |
Exemplo 1: Criar Relatório Mensal
Objetivo: Gerar planilha de relatório do mês
JSON para Importar
{
"name": "Criar Relatório Mensal",
"nodes": [
{
"id": "start_1",
"type": "start",
"position": { "x": 100, "y": 100 },
"data": { "label": "Início" }
},
{
"id": "variable_1",
"type": "variable",
"position": { "x": 300, "y": 100 },
"data": {
"label": "Definir Título",
"parameters": {
"variableName": "titulo_relatorio",
"value": "Relatório_Vendas_{{MONTH}}_{{YEAR}}"
}
}
},
{
"id": "sheets_1",
"type": "google_sheets",
"position": { "x": 500, "y": 100 },
"data": {
"label": "Criar Planilha",
"parameters": {
"operation": "create",
"title": "{{titulo_relatorio}}",
"sheets": [
{ "properties": { "title": "Resumo" } },
{ "properties": { "title": "Detalhes" } },
{ "properties": { "title": "Gráficos" } }
],
"accessToken": "{{google_access_token}}",
"refreshToken": "{{google_refresh_token}}"
}
}
},
{
"id": "message_1",
"type": "message",
"position": { "x": 700, "y": 100 },
"data": {
"label": "Enviar Link",
"parameters": {
"message": "📊 Relatório criado!\n\nAcesse: {{sheets_1.spreadsheetUrl}}"
}
}
},
{
"id": "end_1",
"type": "end",
"position": { "x": 900, "y": 100 },
"data": { "label": "Fim" }
}
],
"edges": [
{ "source": "start_1", "target": "variable_1" },
{ "source": "variable_1", "target": "sheets_1" },
{ "source": "sheets_1", "target": "message_1" },
{ "source": "message_1", "target": "end_1" }
]
}
Saída esperada:
Sistema: 📊 Relatório criado!
Acesse: https://docs.google.com/spreadsheets/d/ABC123XYZ/edit
Resposta do Node
{
"success": true,
"spreadsheetId": "1ABC123XYZ",
"spreadsheetUrl": "https://docs.google.com/spreadsheets/d/1ABC123XYZ/edit"
}
Boas Práticas
✅ SIM: - Use títulos descritivos e únicos - Crie múltiplas abas se necessário - Salve spreadsheetId para operações futuras - Configure permissões após criar
❌ NÃO: - Não crie planilhas sem necessidade (custoso) - Não esqueça de compartilhar se for para outros usuários - Não deixe de salvar o ID retornado
Dicas
💡 Dica 1: Salve o spreadsheetId retornado em variável para usar em nodes SHEETS_WRITE, SHEETS_APPEND, etc.
💡 Dica 2: A planilha é criada na conta do usuário autenticado. Configure compartilhamento separadamente.
Próximo Node
→ SHEETS_WRITE - Escrever dados na planilha criada → SHEETS_FORMAT - Formatar a planilha