This workflow follows the Google Sheets → Googlesheetstrigger recipe pattern — see all workflows that pair these two integrations.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"active": true,
"connections": {
"Split In Batches": {
"main": [
[
{
"node": "Nome e telefone para validar",
"type": "main",
"index": 0
}
]
]
},
"Cadastrando na Audi\u00eancia": {
"main": [
[
{
"node": "Wait",
"type": "main",
"index": 0
}
]
]
},
"Nome e telefone para validar": {
"main": [
[
{
"node": "Formatando Nome e Telefone",
"type": "main",
"index": 0
}
]
]
},
"Formatando Nome e Telefone": {
"main": [
[
{
"node": "Cadastrando na Audi\u00eancia",
"type": "main",
"index": 0
},
{
"node": "Google Sheets",
"type": "main",
"index": 0
}
]
]
},
"Wait": {
"main": [
[
{
"node": "Split In Batches",
"type": "main",
"index": 0
}
]
]
},
"telefone vazio": {
"main": [
[
{
"node": "Split In Batches",
"type": "main",
"index": 0
}
]
]
},
"Webhook": {
"main": [
[
{
"node": "Google Sheets1",
"type": "main",
"index": 0
}
]
]
},
"Google Sheets Trigger": {
"main": [
[
{
"node": "telefone vazio",
"type": "main",
"index": 0
}
]
]
},
"enviar fluxo": {
"main": [
[]
]
}
},
"createdAt": "2023-12-05T23:14:31.367Z",
"id": "4FZXeczPXpD1WPDZ",
"meta": null,
"name": "Sebastian",
"nodes": [
{
"parameters": {
"documentId": {
"__rl": true,
"value": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit#gid=482129188",
"mode": "url",
"__regex": "https:\\/\\/(?:drive|docs)\\.google\\.com(?:\\/.*|)\\/d\\/([0-9a-zA-Z\\-_]+)(?:\\/.*|)"
},
"sheetName": {
"__rl": true,
"value": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit#gid=482129188",
"mode": "url",
"__regex": "https:\\/\\/docs\\.google\\.com/spreadsheets\\/d\\/[0-9a-zA-Z\\-_]+\\/edit\\#gid=([0-9]+)"
},
"filtersUI": {
"values": [
{
"lookupColumn": "TELEFONE FORMATADO",
"lookupValue": "={{ $json.body.telefone }}"
}
]
},
"options": {}
},
"id": "d012b1f1-848c-4e3d-a8a8-5d36e121dd29",
"name": "Google Sheets1",
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4,
"position": [
720,
1100
],
"retryOnFail": true,
"waitBetweenTries": 3000,
"maxTries": 5,
"alwaysOutputData": true,
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"documentId": {
"__rl": true,
"value": "1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI",
"mode": "list",
"cachedResultName": "BOT-SEBASTIAN",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": 482129188,
"mode": "list",
"cachedResultName": "n8n",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit#gid=482129188"
},
"options": {
"columnsToWatch": [
"NOME"
]
}
},
"id": "a3e2a573-46d3-4318-ba97-71e61c056d60",
"name": "Google Sheets Trigger",
"type": "n8n-nodes-base.googleSheetsTrigger",
"typeVersion": 1,
"position": [
520,
640
],
"credentials": {
"googleSheetsTriggerOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"batchSize": 1,
"options": {}
},
"id": "8fcfdcf7-b230-4d49-bc93-4cfb8502dc32",
"name": "Split In Batches",
"type": "n8n-nodes-base.splitInBatches",
"typeVersion": 2,
"position": [
1040,
660
]
},
{
"parameters": {
"operation": "update",
"documentId": {
"__rl": true,
"value": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit#gid=482129188",
"mode": "url",
"__regex": "https:\\/\\/(?:drive|docs)\\.google\\.com(?:\\/.*|)\\/d\\/([0-9a-zA-Z\\-_]+)(?:\\/.*|)"
},
"sheetName": {
"__rl": true,
"value": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit#gid=482129188",
"mode": "url",
"__regex": "https:\\/\\/docs\\.google\\.com/spreadsheets\\/d\\/[0-9a-zA-Z\\-_]+\\/edit\\#gid=([0-9]+)"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"TELEFONE": "={{ $('Split In Batches').item.json.TELEFONE }}",
"TELEFONE FORMATADO": "={{ $json.whatsapp }}"
},
"matchingColumns": [
"TELEFONE"
],
"schema": [
{
"id": "TELEFONE FORMATADO",
"displayName": "TELEFONE FORMATADO",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "TELEFONE",
"displayName": "TELEFONE",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": false
},
{
"id": "NOME",
"displayName": "NOME",
"required": false,
"defaultMatch": false,
"display": true,
"type": "string",
"canBeUsedToMatch": true,
"removed": true
}
]
},
"options": {
"locationDefine": {
"values": {
"firstDataRow": "={{ $('Split In Batches').item.json.row_number }}"
}
}
}
},
"id": "32e8c1ca-4ab7-4bb9-8d7e-89bacb17b9f0",
"name": "Google Sheets",
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4,
"position": [
1760,
560
],
"retryOnFail": true,
"maxTries": 5,
"waitBetweenTries": 5000,
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"authentication": "headerAuth",
"requestMethod": "POST",
"url": "https://conectawebhook.com.br/api/v1/webhook/subscriber/",
"options": {},
"bodyParametersUi": {
"parameter": [
{
"name": "phone",
"value": "={{ $json.whatsapp }}"
},
{
"name": "first_name",
"value": "={{ $json.Nome }}"
},
{
"name": "last_name",
"value": "={{ $json.Sobrenome }}"
}
]
}
},
"name": "Cadastrando na Audi\u00eancia",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 1,
"position": [
1760,
760
],
"id": "16ed68c1-58a5-4ada-bb9d-853231434903",
"retryOnFail": true,
"maxTries": 5,
"waitBetweenTries": 5000,
"credentials": {
"httpHeaderAuth": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"keepOnlySet": true,
"values": {
"string": [
{
"name": "telefone",
"value": "={{ $json.TELEFONE.toString() }}"
},
{
"name": "nomeCompleto",
"value": "={{ $json.NOME }}"
}
]
},
"options": {}
},
"id": "cd43cc5f-fa3f-475a-8b1f-ea81c21710ca",
"name": "Nome e telefone para validar",
"type": "n8n-nodes-base.set",
"position": [
1280,
660
],
"typeVersion": 1
},
{
"parameters": {
"jsCode": "// Obter a string de nome completo do n\u00f3 anterior\nconst nomeCompleto = items[0].json.nomeCompleto;\n\n// Fun\u00e7\u00e3o para separar o nome completo em nome e sobrenome\nfunction separarNomeSobrenome(nomeCompleto) {\n // Verificar se o nome completo \u00e9 uma string\n if (typeof nomeCompleto !== 'string') {\n throw new Error('O nome completo deve ser uma string.');\n }\n\n // Dividir o nome completo em palavras\n const palavras = nomeCompleto.trim().split(' ');\n\n // Verificar se h\u00e1 mais de uma palavra\n if (palavras.length === 0) {\n throw new Error('O nome completo deve conter pelo menos um nome.');\n }\n\n // Extrair o primeiro nome\n const primeiroNome = palavras.shift();\n\n // Extrair o sobrenome\n const sobrenome = palavras.length > 0 ? palavras.join(' ') : '.';\n\n // Formatar o nome e sobrenome com a primeira letra de cada palavra em mai\u00fascula\n const nomeFormatado = formatarNome(primeiroNome);\n const sobrenomeFormatado = formatarNome(sobrenome);\n\n return {\n nome: nomeFormatado,\n sobrenome: sobrenomeFormatado\n };\n}\n\nfunction formatarNome(nome) {\n return nome\n .toLowerCase()\n .split(' ')\n .map((palavra) => palavra.charAt(0).toUpperCase() + palavra.slice(1))\n .join(' ');\n}\n\n// Separar o nome completo em nome e sobrenome\nconst resultado = separarNomeSobrenome(nomeCompleto);\n\nvar whatsapp = items[0].json.telefone.replace(/\\D/g, '');\nvar ddd = whatsapp.slice(2,4);\nvar ddi = whatsapp.charAt(0);\nvar ddx = whatsapp.slice(0,2);\nvar length = whatsapp.length;\nif (length >= 12){\n if (ddi == '+'){\n ddi = whatsapp.slice(0,3);\n whatsapp = parseInt(whatsapp.slice(3)).toString();\n } else {\n if (ddx == '55'){\n whatsapp = parseInt(whatsapp.slice(2)).toString();\n ddi = \"+55\";\n } else {\n whatsapp = parseInt(whatsapp).toString();\n ddi = 'n\u00e3o informado';\n }\n }\n} else {\n whatsapp = parseInt(whatsapp).toString();\n ddi = 'n\u00e3o informado';\n}\n\nddd = whatsapp.slice(0,2);\nwhatsapp = whatsapp.slice(2);\nif (ddd > 28){\n whatsapp = whatsapp.slice(-8);\n} else {\n whatsapp = '9'+whatsapp.slice(-8);\n}\nvar whatsapp = '+55'+ddd+whatsapp;\n\n// Armazenar o nome e sobrenome nos campos desejados\nreturn {\n json: {\n Nome: resultado.nome,\n Sobrenome: resultado.sobrenome,\n NomeCompleto: resultado.nome+' '+resultado.sobrenome,\n whatsapp\n }\n};\n"
},
"id": "6e755cfb-604b-493f-946d-1219fa14d0ec",
"name": "Formatando Nome e Telefone",
"type": "n8n-nodes-base.code",
"typeVersion": 1,
"position": [
1480,
660
]
},
{
"parameters": {
"authentication": "headerAuth",
"requestMethod": "POST",
"url": "=https://conectawebhook.com.br/api/v1/webhook/subscriber/{{ $json[\"id\"] }}/send_flow/",
"options": {},
"bodyParametersUi": {
"parameter": [
{
"name": "flow",
"value": "=206746"
}
]
}
},
"name": "enviar fluxo",
"type": "n8n-nodes-base.httpRequest",
"typeVersion": 1,
"position": [
2000,
620
],
"id": "fea4dd41-aaff-4465-b6d5-fb23537552fc",
"retryOnFail": true,
"maxTries": 5,
"waitBetweenTries": 5000,
"credentials": {
"httpHeaderAuth": {
"name": "<your credential>"
}
},
"disabled": true
},
{
"parameters": {
"amount": 10,
"unit": "seconds"
},
"id": "15ff5acb-161f-4ea2-9555-f376dcc78ae8",
"name": "Wait",
"type": "n8n-nodes-base.wait",
"typeVersion": 1,
"position": [
2240,
760
]
},
{
"parameters": {
"conditions": {
"string": [
{
"value1": "={{ $json['TELEFONE FORMATADO'] }}",
"operation": "isEmpty"
}
]
}
},
"id": "0f079c9b-f879-42da-b41b-6481706ed98b",
"name": "telefone vazio",
"type": "n8n-nodes-base.if",
"typeVersion": 1,
"position": [
760,
640
]
},
{
"parameters": {
"operation": "delete",
"documentId": {
"__rl": true,
"value": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit#gid=482129188",
"mode": "url",
"__regex": "https:\\/\\/(?:drive|docs)\\.google\\.com(?:\\/.*|)\\/d\\/([0-9a-zA-Z\\-_]+)(?:\\/.*|)"
},
"sheetName": {
"__rl": true,
"value": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit#gid=482129188",
"mode": "url",
"__regex": "https:\\/\\/docs\\.google\\.com/spreadsheets\\/d\\/[0-9a-zA-Z\\-_]+\\/edit\\#gid=([0-9]+)"
},
"startIndex": "={{ $json.row_number }}"
},
"id": "b9bf2be6-ff45-4330-8cbb-d43c0caf7ce8",
"name": "Google Sheets2",
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4,
"position": [
1080,
1040
],
"credentials": {
"googleSheetsOAuth2Api": {
"name": "<your credential>"
}
}
},
{
"parameters": {
"httpMethod": "POST",
"path": "verificar-planilha-sebastian",
"responseMode": "lastNode",
"options": {}
},
"id": "6a4cf46e-8bdc-4169-afcb-ff894fc47eb7",
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"typeVersion": 1,
"position": [
520,
1100
]
},
{
"parameters": {
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
},
"documentId": {
"__rl": true,
"value": "1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI",
"mode": "list",
"cachedResultName": "BOT-SEBASTIAN",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit?usp=drivesdk"
},
"sheetName": {
"__rl": true,
"value": 482129188,
"mode": "list",
"cachedResultName": "n8n",
"cachedResultUrl": "https://docs.google.com/spreadsheets/d/1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI/edit#gid=482129188"
},
"options": {
"columnsToWatch": []
}
},
"id": "d185a353-abdc-4b2d-b1f8-7fa9d4554da5",
"name": "Google Sheets Trigger1",
"type": "n8n-nodes-base.googleSheetsTrigger",
"typeVersion": 1,
"position": [
220,
860
],
"credentials": {
"googleSheetsTriggerOAuth2Api": {
"name": "<your credential>"
}
}
}
],
"settings": {
"executionOrder": "v1"
},
"staticData": {
"node:Google Sheets Trigger1": {
"documentId": "1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI",
"sheetId": 482129188,
"lastRevision": 66502,
"lastRevisionLink": "https://docs.google.com/spreadsheets/export?id=1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI&revision=66502&exportFormat=xlsx",
"lastIndexChecked": 325
},
"node:Google Sheets Trigger": {
"documentId": "1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI",
"sheetId": 482129188,
"lastRevision": 66501,
"lastRevisionLink": "https://docs.google.com/spreadsheets/export?id=1KQv8Vi4voiUpuIVjmvqm1pgG4Kh7ccoucEdJSSrepGI&revision=66501&exportFormat=xlsx"
}
},
"tags": [],
"triggerCount": 3,
"updatedAt": "2024-01-15T14:21:57.000Z",
"versionId": "18fa0da5-7cc7-4aeb-96f7-926449599324"
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
googleSheetsOAuth2ApigoogleSheetsTriggerOAuth2ApihttpHeaderAuth
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Sebastian. Uses googleSheets, googleSheetsTrigger, httpRequest. Event-driven trigger; 13 nodes.
Source: https://github.com/KleyvisonVasconcelos/backup-n8n-maya/blob/388ad413f36f1ea2237fc95f9f958847cfca0dcf/workflows/Sebastian.json — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
Stickynote Workflow. Uses googleTranslate, googleSheetsTrigger, googleDrive, httpRequest. Event-driven trigger; 22 nodes.
Automate IT asset allocation for new hires with an intelligent, AI-powered workflow 🤖. This automation reads employee data from Google Sheets, determines role-based requirements, and intelligently ass
This powerful no-code workflow automates plagiarism detection using Plagiarism Checker AI Powered. Users submit text through Google Sheets. The system checks for duplication using the API, sends a det
This n8n workflow automates outbound phone calls to new leads using VAPI, with built-in timezone detection to ensure you're only calling during business hours.
Julia. Uses googleSheetsTrigger, googleSheets, httpRequest. Event-driven trigger; 16 nodes.