This workflow follows the Execute Workflow Trigger → Gmail 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 →
{
"name": "Wattlift Onboarding - Sub-J - Client Emails",
"nodes": [
{
"id": "trigger",
"name": "When called by orchestrator",
"type": "n8n-nodes-base.executeWorkflowTrigger",
"typeVersion": 1.1,
"position": [
240,
300
],
"parameters": {
"inputSource": "passthrough"
}
},
{
"id": "switch_template",
"name": "Pick email template",
"type": "n8n-nodes-base.switch",
"typeVersion": 3.2,
"position": [
460,
300
],
"parameters": {
"rules": {
"values": [
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "loose"
},
"conditions": [
{
"id": "c1",
"leftValue": "={{ $json.email_type }}",
"rightValue": "staff_welcome",
"operator": {
"type": "string",
"operation": "equals"
}
}
],
"combinator": "and"
},
"renameOutput": true,
"outputKey": "staff_welcome"
},
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "loose"
},
"conditions": [
{
"id": "c2",
"leftValue": "={{ $json.email_type }}",
"rightValue": "onboarding_doc",
"operator": {
"type": "string",
"operation": "equals"
}
}
],
"combinator": "and"
},
"renameOutput": true,
"outputKey": "onboarding_doc"
},
{
"conditions": {
"options": {
"caseSensitive": true,
"leftValue": "",
"typeValidation": "loose"
},
"conditions": [
{
"id": "c3",
"leftValue": "={{ $json.email_type }}",
"rightValue": "regulatory_request",
"operator": {
"type": "string",
"operation": "equals"
}
}
],
"combinator": "and"
},
"renameOutput": true,
"outputKey": "regulatory_request"
}
]
},
"options": {}
}
},
{
"id": "send_staff_welcome",
"name": "Send staff welcome",
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.2,
"position": [
780,
140
],
"parameters": {
"sendTo": "={{ $json.recipient }}",
"subject": "Bienvenue sur le CRM Wattlift",
"emailType": "html",
"message": "<p>Bonjour,</p>\n<p>Je suis Pauline Descottes, responsable de la strat\u00e9gie cr\u00e9ative et performance client chez Wattlift.</p>\n<p>Nous aurons tr\u00e8s prochainement l'occasion d'\u00e9changer en visioconf\u00e9rence pour faire le point ensemble sur les prochaines \u00e9tapes de votre onboarding.</p>\n<p>D'ici l\u00e0, je souhaitais vous transmettre quelques informations pratiques pour bien d\u00e9marrer.</p>\n<p>Vous avez normalement re\u00e7u un e-mail \u00ab Activate Your Account | Wattlift \u00bb exp\u00e9di\u00e9 depuis une adresse \u00ab noreply \u00bb ; il s'agit bien d'un envoi de notre part. Celui-ci contient votre lien de connexion au CRM.</p>\n<p>Pour vous aider \u00e0 prendre en main l'outil rapidement, voici une premi\u00e8re vid\u00e9o tutoriel : <a href=\"https://wattlift.com/onboarding-crm\">Onboarding - CRM Wattlift</a></p>\n<p>N'h\u00e9sitez pas \u00e0 me contacter si vous avez la moindre question en attendant notre rendez-vous.</p>\n<p>Belle journ\u00e9e \u00e0 vous,</p>\n<p>Pauline Descottes<br/>Responsable strat\u00e9gie cr\u00e9ative et performance client - Wattlift</p>",
"options": {}
},
"onError": "continueRegularOutput"
},
{
"id": "send_onboarding_doc",
"name": "Send onboarding doc",
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.2,
"position": [
780,
300
],
"parameters": {
"sendTo": "={{ $json.recipient }}",
"subject": "Onboarding - prochaines \u00e9tapes",
"emailType": "html",
"message": "<p>Re-bonjour {{ $json.recipient_name }},</p>\n<p>J'esp\u00e8re que tu vas bien.</p>\n<p>Je te fais parvenir ce document \"Onboarding\" (<a href=\"{{ $json.onboarding_doc_url }}\">lien</a>) qui te donne toutes les \u00e9tapes \u00e0 suivre afin de valider int\u00e9gralement tes acc\u00e8s au CRM. Cela va nous permettre de mettre en place les automatisations marketing et landing pages associ\u00e9es aux publicit\u00e9s Meta.</p>\n<p>Nous avons d\u00e9j\u00e0 fait ensemble les \u00e9tapes 1 \u00e0 3, tu peux donc commencer directement \u00e0 l'\u00e9tape 4. Tu trouveras un tutoriel vid\u00e9o et \u00e9crit pour chaque \u00e9tape afin de te faciliter la t\u00e2che.</p>\n<p>Si tu as la moindre question, n'h\u00e9site pas \u00e0 nous envoyer des messages sur le groupe Whatsapp, on se fera un plaisir de t'aider !</p>\n<p>Pauline<br/>Responsable strat\u00e9gie cr\u00e9ative et performance client - Wattlift</p>",
"options": {}
},
"onError": "continueRegularOutput"
},
{
"id": "send_regulatory_request",
"name": "Send regulatory docs request",
"type": "n8n-nodes-base.gmail",
"typeVersion": 2.2,
"position": [
780,
460
],
"parameters": {
"sendTo": "={{ $json.recipient }}",
"subject": "Documents requis pour ton num\u00e9ro de t\u00e9l\u00e9phone CRM",
"emailType": "html",
"message": "<p>Bonjour {{ $json.recipient_name }},</p>\n<p>Dans le cadre de l'attribution d'un num\u00e9ro de t\u00e9l\u00e9phone au sein de notre CRM, nous avons besoin des deux \u00e9l\u00e9ments suivants :</p>\n<ul><li>Extrait K-Bis</li><li>Preuve de l'adresse locale (extrait du registre du commerce indiquant l'adresse locale, facture de services publics, avis d'imposition, quittance de loyer ou titre de propri\u00e9t\u00e9)</li></ul>\n<p>Ces informations sont n\u00e9cessaires pour nous conformer \u00e0 la l\u00e9gislation en vigueur et pour acqu\u00e9rir un num\u00e9ro de t\u00e9l\u00e9phone d\u00e9di\u00e9 \u00e0 ta structure, permettant d'envoyer des SMS (et de relancer) ce qui va maximiser le taux de r\u00e9ponse.</p>\n<p>Tutoriel vid\u00e9o ici : <a href=\"https://wattlift.com/tutoriel-portable\">2 docs \u00e0 soumettre pour le portable attribu\u00e9 \u00e0 ta soci\u00e9t\u00e9</a></p>\n<p>Pauline<br/>Wattlift</p>",
"options": {}
},
"onError": "continueRegularOutput"
},
{
"id": "merge_after_send",
"name": "Merge",
"type": "n8n-nodes-base.merge",
"typeVersion": 3,
"position": [
1020,
300
],
"parameters": {
"mode": "append"
}
},
{
"id": "update_sheet",
"name": "Update tracker (subJ_status)",
"type": "n8n-nodes-base.googleSheets",
"typeVersion": 4.5,
"position": [
1240,
300
],
"parameters": {
"operation": "update",
"documentId": {
"__rl": true,
"value": "1cgb85h7bC8LKtHtE2Xkah_B1816QyHHa1fRHW0s6zUw",
"mode": "id"
},
"sheetName": {
"__rl": true,
"value": "clients",
"mode": "name"
},
"columns": {
"mappingMode": "defineBelow",
"value": {
"client_id": "={{ $('When called by orchestrator').first().json.client_id }}",
"subJ_status": "done",
"subJ_completed_at": "={{ new Date().toISOString() }}",
"last_updated": "={{ new Date().toISOString() }}"
},
"matchingColumns": [
"client_id"
],
"schema": []
},
"options": {}
}
},
{
"id": "sticky",
"name": "Sticky",
"type": "n8n-nodes-base.stickyNote",
"typeVersion": 1,
"position": [
200,
100
],
"parameters": {
"content": "## Sub-J: Client Emails\n**Input**: `{ client_id, email_type, recipient, recipient_name, onboarding_doc_url? }`\n\n**email_type values**:\n- `staff_welcome` - sent to each staff member after Sub-B creates them in GHL\n- `onboarding_doc` - sent to representative after their Drive folder is set up (requires `onboarding_doc_url`)\n- `regulatory_request` - sent before Sub-I to collect Kbis + address proof\n\nNeeds Gmail credential connected. Then updates `subJ_*` columns in tracker.",
"height": 320,
"width": 600,
"color": 6
}
}
],
"connections": {
"When called by orchestrator": {
"main": [
[
{
"node": "Pick email template",
"type": "main",
"index": 0
}
]
]
},
"Pick email template": {
"main": [
[
{
"node": "Send staff welcome",
"type": "main",
"index": 0
}
],
[
{
"node": "Send onboarding doc",
"type": "main",
"index": 0
}
],
[
{
"node": "Send regulatory docs request",
"type": "main",
"index": 0
}
]
]
},
"Send staff welcome": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 0
}
]
]
},
"Send onboarding doc": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 0
}
]
]
},
"Send regulatory docs request": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 0
}
]
]
},
"Merge": {
"main": [
[
{
"node": "Update tracker (subJ_status)",
"type": "main",
"index": 0
}
]
]
}
},
"settings": {
"executionOrder": "v1"
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Wattlift Onboarding - Sub-J - Client Emails. Uses executeWorkflowTrigger, gmail, googleSheets. Event-driven trigger; 8 nodes.
Source: https://github.com/malharlakdawala/n8n-builder/blob/8e56988946862490482d0a8c0b1cc029c341517f/workflows/J-emails.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.
Splitout Code. Uses manualTrigger, httpRequest, stickyNote, splitOut. Event-driven trigger; 46 nodes.
Automate CSV imports into HubSpot without the mess. Powered by n8n. Supercharged by Pollup AI.
Code Filter. Uses googleSheets, gmail, stickyNote, executeWorkflowTrigger. Event-driven trigger; 32 nodes.
This n8n workflow enables teams to automate and standardize multi-step onboarding or messaging workflows using Google Sheets, Forms, Gmail, and dynamic logic powered by Code and Switch nodes. It ensur
This n8n workflow is designed for marketers, sales teams, and business owners who use Facebook Lead Ads to capture customer information. It's perfect for those who want to immediately engage with lead