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": "Healthcare Email Autoresponder - Daily Outreach",
"tags": [
"email",
"healthcare",
"automation",
"outreach",
"ai-powered"
],
"nodes": [
{
"id": "705daa92-e852-4e55-b508-ffab19804356",
"name": "AI Email Generator",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-464,
208
],
"parameters": {
"text": "=Write a friendly email to {{ $json['First Name'] }}\n\nRefer to System message for Context\n",
"options": {
"systemMessage": "=You are a professional healthcare representative writing personalized outreach emails.\n\nUse the following details to craft a friendly and professional email:\n\nRecipient Name: {{ $json['First Name'] }}\n\nWrite an email with the subject line: \"Medical joke of the day\"\n\nEmail body:\nHi {{ $json['First Name'] }},\n\nWhy did the nurse carry a pencil to every shift?\nBecause charting smiles is just as important as charting vitals! \ud83e\ude7a\u270f\ufe0f\ud83d\ude04\n\nA little laughter is great medicine\u2014no co-pay required.\nWishing you a week full of wellness and giggles!\nWarm regards,\n\n[YOUR NAME HERE] \n[YOUR TITLE HERE] \n[YOUR COMPANY HERE] \n\ud83d\udcde ([YOUR PHONE NUMBER]) \n\ud83d\udce7 ([YOUR EMAIL]) \n\ud83c\udf10 ([YOUR WEBSITE])\n\nReturn only the full email body as plain text."
},
"promptType": "define"
},
"typeVersion": 1.9,
"alwaysOutputData": true
},
{
"id": "27bc7664-f669-4c7c-b5c1-1af7c7659937",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-640,
288
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini"
},
"options": {}
},
"typeVersion": 1.2
},
{
"id": "b508c9c4-2f17-4ac9-a551-373ceb833032",
"name": "Send Email",
"type": "n8n-nodes-base.gmail",
"position": [
192,
208
],
"parameters": {
"sendTo": "={{ $('Healthcare_Contact_List').item.json.Email }}",
"message": "={{ $json.output }}",
"options": {
"appendAttribution": false
},
"subject": "=Medical joke of the day",
"emailType": "text"
},
"typeVersion": 2.1
},
{
"id": "46098a2d-31cc-4fab-9921-2e3547a04d4e",
"name": "Random Wait (2-5min)",
"type": "n8n-nodes-base.wait",
"position": [
432,
208
],
"parameters": {
"unit": "minutes",
"amount": "={{ Math.floor(Math.random() * 4) + 2 }}"
},
"typeVersion": 1.1
},
{
"id": "2bf6901a-93c0-4d9f-b00a-3c3397ede2ee",
"name": "\ud83d\udccb Workflow Overview",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1136,
-304
],
"parameters": {
"color": 1,
"width": 660,
"height": 320,
"content": "## Healthcare Email Autoresponder \ud83d\udce7\n\n**What this workflow does:**\n- Sends personalized healthcare jokes daily to your contact list\n- Tracks email status in Google Sheets\n- Limits to 10 emails per run to avoid spam\n- Random delays between emails (2-5 minutes)\n\n**Setup Required:**\n1. Connect your Gmail account\n2. Connect your Google Sheets with contact list\n3. Add your OpenAI API key\n4. Customize the email template in the AI node\n\n**Double click** to edit me. [Guide](https://docs.n8n.io/workflows/sticky-notes/)"
},
"typeVersion": 1
},
{
"id": "c5efe867-8991-4abb-bd99-b714a85bb742",
"name": "\u2728 AI Personalization",
"type": "n8n-nodes-base.stickyNote",
"position": [
-704,
-16
],
"parameters": {
"color": 3,
"width": 560,
"height": 460,
"content": "## \u2728 AI Email Generation\n\nCustomizes emails with:\n- Recipient's first name\n- Healthcare-themed humor\n- Professional signature\n\n**To customize:**\n1. Edit the system message\n2. Change the email template\n3. Update contact details\n\n**Double click** to edit me. [Guide](https://docs.n8n.io/workflows/sticky-notes/)"
},
"typeVersion": 1
},
{
"id": "b8a01b3d-a9f6-4fb5-a711-eb01f497d577",
"name": "\u23f0 Rate Limiting",
"type": "n8n-nodes-base.stickyNote",
"position": [
368,
-304
],
"parameters": {
"color": 4,
"width": 200,
"height": 740,
"content": "## \u23f0 Smart Timing\n\nRandom 2-5 minute delays between emails to:\n- Avoid being flagged as spam\n- Appear more natural\n- Respect recipient inboxes\n\n**Double click** to edit me. [Guide](https://docs.n8n.io/workflows/sticky-notes/)"
},
"typeVersion": 1
},
{
"id": "13d7a01d-b426-496f-9dec-d164aec411bb",
"name": "\ud83c\udfaf Batch Control",
"type": "n8n-nodes-base.stickyNote",
"position": [
-144,
-304
],
"parameters": {
"color": 5,
"width": 220,
"height": 740,
"content": "## \ud83c\udfaf Batch Processing\n\nLimits to 10 emails per run to:\n- Prevent overwhelming your email service\n- Stay within API limits\n- Allow for manual monitoring\n\n**To adjust:** Change maxItems in Limit node\n\n**Double click** to edit me. [Guide](https://docs.n8n.io/workflows/sticky-notes/)"
},
"typeVersion": 1
},
{
"id": "8653790a-57ef-4a25-b707-cadb2648a92f",
"name": "\ud83d\udcca Progress Tracking",
"type": "n8n-nodes-base.stickyNote",
"position": [
112,
-304
],
"parameters": {
"color": 2,
"height": 740,
"content": "## \ud83d\udcca Email Tracking\n\nUpdates Google Sheet with:\n- Timestamp when email sent\n- Prevents duplicate sends\n- Tracks campaign progress\n\n**Required columns:**\n- First Name\n- Email\n- Emailed (for timestamp)\n\n**Double click** to edit me. [Guide](https://docs.n8n.io/workflows/sticky-notes/)"
},
"typeVersion": 1
},
{
"id": "1a02bc39-cd6b-467d-9f65-4a86183eea31",
"name": "\ud83d\udd04 Sequential Processing",
"type": "n8n-nodes-base.stickyNote",
"position": [
-464,
-304
],
"parameters": {
"color": 3,
"width": 300,
"height": 260,
"content": "## \ud83d\udd04 Processing Flow\n\nProcesses contacts one at a time:\n1. Validates email exists\n2. Generates personalized content\n3. Sends email\n4. Updates tracking\n5. Waits before next\n\n**Double click** to edit me. [Guide](https://docs.n8n.io/workflows/sticky-notes/)"
},
"typeVersion": 1
},
{
"id": "d9c64ea9-ebc9-4e04-9383-6ea90cc629ae",
"name": "Validate Email Address",
"type": "n8n-nodes-base.if",
"position": [
-608,
-208
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "6f8c6147-ff4d-4595-9901-920af56a9338",
"operator": {
"type": "string",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "Email",
"rightValue": ""
},
{
"id": "e69364ce-e8b3-4d15-8832-383067a26f2d",
"operator": {
"type": "string",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "={{$json[\"Email\"]}}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "60bbf82f-34f9-4d06-becb-ffbf57200447",
"name": "Skip Invalid Email",
"type": "n8n-nodes-base.noOp",
"position": [
-976,
224
],
"parameters": {},
"typeVersion": 1
},
{
"id": "f506ec0f-9104-4060-8a3f-8345ae82baa7",
"name": "Process One by One",
"type": "n8n-nodes-base.splitInBatches",
"position": [
-368,
-176
],
"parameters": {
"options": {}
},
"typeVersion": 3
},
{
"id": "1add1e3a-b8a9-4993-bbbc-f7c47e3daa26",
"name": "Prepare Email Data",
"type": "n8n-nodes-base.set",
"position": [
-80,
208
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "75df7330-f51c-4dd1-bb30-586787576d60",
"name": "Email",
"type": "string",
"value": "={{ $json.Email }}"
},
{
"id": "d9c981b6-ccd0-4083-ae4c-852d3e0f21c6",
"name": "First Name",
"type": "string",
"value": "={{ $json['First Name'] }}"
},
{
"id": "57f579f2-6b1d-4c15-ab05-a5f9231cad3a",
"name": "EmailContent",
"type": "string",
"value": "={{ $node[\"AI Email Generator\"].json[\"output\"] }}"
}
]
}
},
"typeVersion": 3.4,
"alwaysOutputData": false
},
{
"id": "a279d1d1-28f3-49ae-9481-f303771a0e29",
"name": "Limit to 10 Contacts",
"type": "n8n-nodes-base.limit",
"position": [
-768,
-208
],
"parameters": {
"maxItems": 10
},
"typeVersion": 1
},
{
"id": "0a3b8596-d0c2-481f-979a-b7e3b3b70bd3",
"name": "\ud83d\ude80 Use Cases",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1136,
-16
],
"parameters": {
"color": 6,
"width": 420,
"height": 460,
"content": "## \ud83d\ude80 Automated Healthcare Outreach\n\n**Perfect for:**\n- Healthcare professionals\n- Medical practices\n- Wellness coaches\n- Health educators\n\n**Benefits:**\n- Builds relationships through humor\n- Maintains regular contact\n- Professional yet friendly approach\n- Fully automated daily outreach\n\n**Double click** to edit me. [Guide](https://docs.n8n.io/workflows/sticky-notes/)"
},
"typeVersion": 1
},
{
"id": "12f7f1c7-e58d-4b00-91b3-8a390697426f",
"name": "Healthcare_Contact_List",
"type": "n8n-nodes-base.googleSheets",
"position": [
-944,
-208
],
"parameters": {
"options": {},
"filtersUI": {
"values": [
{
"lookupColumn": "Emailed"
}
]
},
"sheetName": {
"__rl": true,
"mode": "name",
"value": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "YOUR_GOOGLE_SHEET_ID_HERE"
}
},
"typeVersion": 4.5
},
{
"id": "66e2da4a-1b0f-462d-aad9-04d3ce778500",
"name": "Update Email Status",
"type": "n8n-nodes-base.googleSheets",
"position": [
432,
-64
],
"parameters": {
"columns": {
"value": {
"Emailed": "={{ $now }}",
"row_number": "={{ $('Healthcare_Contact_List').item.json.row_number }}"
},
"mappingMode": "defineBelow",
"matchingColumns": [
"row_number"
]
},
"options": {},
"operation": "update",
"sheetName": {
"__rl": true,
"mode": "name",
"value": "Sheet1"
},
"documentId": {
"__rl": true,
"mode": "id",
"value": "YOUR_GOOGLE_SHEET_ID_HERE"
}
},
"typeVersion": 4.5
},
{
"id": "f2c8bf61-3e37-477b-9894-e0d51d381f13",
"name": "Daily Trigger (1 PM)",
"type": "n8n-nodes-base.scheduleTrigger",
"position": [
-1104,
-208
],
"parameters": {
"rule": {
"interval": [
{
"triggerAtHour": 13
}
]
}
},
"typeVersion": 1.2
}
],
"active": false,
"settings": {
"timezone": "America/Chicago",
"executionOrder": "v1"
},
"connections": {
"Send Email": {
"main": [
[
{
"node": "Random Wait (2-5min)",
"type": "main",
"index": 0
}
]
]
},
"OpenAI Chat Model": {
"ai_languageModel": [
[
{
"node": "AI Email Generator",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"AI Email Generator": {
"main": [
[
{
"node": "Prepare Email Data",
"type": "main",
"index": 0
}
]
]
},
"Prepare Email Data": {
"main": [
[
{
"node": "Send Email",
"type": "main",
"index": 0
}
]
]
},
"Process One by One": {
"main": [
[],
[
{
"node": "AI Email Generator",
"type": "main",
"index": 0
}
]
]
},
"Daily Trigger (1 PM)": {
"main": [
[
{
"node": "Healthcare_Contact_List",
"type": "main",
"index": 0
}
]
]
},
"Limit to 10 Contacts": {
"main": [
[
{
"node": "Validate Email Address",
"type": "main",
"index": 0
}
]
]
},
"Random Wait (2-5min)": {
"main": [
[
{
"node": "Process One by One",
"type": "main",
"index": 0
},
{
"node": "Update Email Status",
"type": "main",
"index": 0
}
]
]
},
"Validate Email Address": {
"main": [
[
{
"node": "Process One by One",
"type": "main",
"index": 0
}
],
[
{
"node": "Skip Invalid Email",
"type": "main",
"index": 0
}
]
]
},
"Healthcare_Contact_List": {
"main": [
[
{
"node": "Limit to 10 Contacts",
"type": "main",
"index": 0
}
]
]
}
}
}
About this workflow
Healthcare Email Autoresponder - Daily Outreach. Uses agent, lmChatOpenAi, gmail, stickyNote. Scheduled trigger; 19 nodes.
Source: https://github.com/ScraperNode/awesome-n8n-templates/blob/main/templates/ai-and-llm/7854-send-personalized-healthcare-joke-emails-with-openai-gmail-and-google-sheets/workflow.json — original creator credit. Request a take-down →