Triaje médico con IA: clasificación inteligente, resumen para médicos y detección de emergencias
Este es unautomatización que contiene 22 nodos.Utiliza principalmente nodos como If, Set, Code, Gmail, HttpRequest. Triage médico y automatización de citas usando GPT-4 y JotForm
- •Cuenta de Google y credenciales de API de Gmail
- •Pueden requerirse credenciales de autenticación para la API de destino
- •Credenciales de API de Google Sheets
- •Clave de API de OpenAI
Nodos utilizados (22)
Categoría
{
"id": "fWklcJx1u2X1B2UA",
"meta": {
"instanceId": "277842713620d9f5554de3b1518b865a152c8c4db680008bd8aec536fc18b4a8"
},
"name": "AI Medical Intake: Smart Triage, Provider Briefs & Emergency Detection",
"tags": [
{
"id": "CWardZYJBmejoyC4",
"name": "under review",
"createdAt": "2025-10-09T18:43:37.031Z",
"updatedAt": "2025-10-09T18:43:37.031Z"
}
],
"nodes": [
{
"id": "71b9b490-6060-4af5-94e8-34525de13db5",
"name": "Extraer Datos del Paciente",
"type": "n8n-nodes-base.set",
"position": [
-1280,
240
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "patient_name",
"name": "patient_name",
"type": "string",
"value": "={{ $json.q3_fullName?.first || '' }} {{ $json.q3_fullName?.last || '' }}"
},
{
"id": "patient_email",
"name": "patient_email",
"type": "string",
"value": "={{ $json.q4_email }}"
},
{
"id": "patient_phone",
"name": "patient_phone",
"type": "string",
"value": "={{ $json.q5_phone }}"
},
{
"id": "date_of_birth",
"name": "date_of_birth",
"type": "string",
"value": "={{ $json.q6_dateOfBirth }}"
},
{
"id": "reason_for_visit",
"name": "reason_for_visit",
"type": "string",
"value": "={{ $json.q7_reasonForVisit }}"
},
{
"id": "symptoms",
"name": "symptoms",
"type": "string",
"value": "={{ $json.q8_symptoms }}"
},
{
"id": "symptom_duration",
"name": "symptom_duration",
"type": "string",
"value": "={{ $json.q9_duration }}"
},
{
"id": "pain_level",
"name": "pain_level",
"type": "string",
"value": "={{ $json.q10_painLevel || 'N/A' }}"
},
{
"id": "current_medications",
"name": "current_medications",
"type": "string",
"value": "={{ $json.q11_medications || 'None' }}"
},
{
"id": "allergies",
"name": "allergies",
"type": "string",
"value": "={{ $json.q12_allergies || 'None' }}"
},
{
"id": "medical_history",
"name": "medical_history",
"type": "string",
"value": "={{ $json.q13_medicalHistory || 'None reported' }}"
},
{
"id": "insurance_provider",
"name": "insurance_provider",
"type": "string",
"value": "={{ $json.q14_insurance || 'Self-pay' }}"
},
{
"id": "preferred_date",
"name": "preferred_date",
"type": "string",
"value": "={{ $json.q15_preferredDate }}"
},
{
"id": "preferred_time",
"name": "preferred_time",
"type": "string",
"value": "={{ $json.q16_preferredTime }}"
},
{
"id": "intake_id",
"name": "intake_id",
"type": "string",
"value": "=MED-{{ $json.submissionID }}-{{ Date.now() }}"
},
{
"id": "submission_date",
"name": "submission_date",
"type": "string",
"value": "={{ new Date().toISOString() }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "940ff4ab-345c-474c-9979-3b47f3abcbcb",
"name": "Calcular Información del Paciente",
"type": "n8n-nodes-base.code",
"position": [
-1040,
240
],
"parameters": {
"jsCode": "// Calculate patient age from date of birth\nconst items = $input.all();\nconst results = [];\n\nfor (const item of items) {\n const dob = new Date(item.json.date_of_birth);\n const today = new Date();\n let age = today.getFullYear() - dob.getFullYear();\n const monthDiff = today.getMonth() - dob.getMonth();\n \n if (monthDiff < 0 || (monthDiff === 0 && today.getDate() < dob.getDate())) {\n age--;\n }\n \n // Determine patient category\n let patientCategory = 'adult';\n if (age < 2) patientCategory = 'infant';\n else if (age < 12) patientCategory = 'child';\n else if (age < 18) patientCategory = 'adolescent';\n else if (age >= 65) patientCategory = 'senior';\n \n results.push({\n json: {\n ...item.json,\n patient_age: age,\n patient_category: patientCategory\n }\n });\n}\n\nreturn results;"
},
"typeVersion": 2
},
{
"id": "56257aaf-3cd0-4c28-bd10-ba68c746df93",
"name": "Triaje y Análisis Médico con IA",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-640,
240
],
"parameters": {
"text": "=You are an expert medical triage AI assistant helping healthcare providers prepare for patient appointments. Analyze this patient intake information and provide a comprehensive pre-appointment brief.\n\n## PATIENT INFORMATION\n\n**Name:** {{ $json.patient_name }}\n**Age:** {{ $json.patient_age }} years old ({{ $json.patient_category }})\n**DOB:** {{ $json.date_of_birth }}\n\n**Contact:**\n- Email: {{ $json.patient_email }}\n- Phone: {{ $json.patient_phone }}\n\n**Insurance:** {{ $json.insurance_provider }}\n\n---\n\n## CHIEF COMPLAINT & SYMPTOMS\n\n**Reason for Visit:** {{ $json.reason_for_visit }}\n\n**Symptoms:** {{ $json.symptoms }}\n\n**Duration:** {{ $json.symptom_duration }}\n\n**Pain Level:** {{ $json.pain_level }} (0-10 scale)\n\n---\n\n## MEDICAL BACKGROUND\n\n**Current Medications:** {{ $json.current_medications }}\n\n**Known Allergies:** {{ $json.allergies }}\n\n**Medical History:** {{ $json.medical_history }}\n\n---\n\n## YOUR TASK\n\nProvide a detailed medical analysis with the following structure:\n\n### 1. URGENCY ASSESSMENT\nClassify the urgency level based on symptoms:\n- **emergency**: Life-threatening (chest pain, severe bleeding, difficulty breathing, stroke symptoms, severe allergic reaction)\n- **urgent**: Needs same-day attention (high fever, severe pain, infection signs, injury)\n- **routine**: Can wait for regular appointment (chronic condition follow-up, preventive care)\n- **non_urgent**: Wellness visit, routine check-up, minor concerns\n\nProvide clear reasoning for the urgency classification.\n\n### 2. SYMPTOM ANALYSIS\n- Summarize primary and secondary symptoms\n- Identify any red flag symptoms requiring immediate attention\n- Note symptom patterns or progressions\n- Consider patient age and medical history context\n\n### 3. POSSIBLE CONDITIONS (Differential Diagnosis)\nList 3-5 possible conditions that could explain the symptoms, ordered by likelihood:\n1. Most likely condition with brief explanation\n2. Second possibility\n3. Third possibility\n(Continue as appropriate)\n\n**Important:** This is for provider preparation only, not a diagnosis.\n\n### 4. CRITICAL ALERTS\nFlag any of the following:\n- **Drug Interactions:** Between current medications and common treatments\n- **Allergy Concerns:** Medications/treatments to avoid\n- **Age Considerations:** Pediatric, geriatric, or pregnancy concerns\n- **Comorbidity Risks:** Existing conditions that complicate treatment\n- **Red Flags:** Symptoms suggesting serious underlying conditions\n\n### 5. RECOMMENDED PROVIDER TYPE\nWho should see this patient:\n- Primary Care Physician\n- Specialist (specify: cardiologist, dermatologist, etc.)\n- Urgent Care\n- Emergency Department\n- Telehealth appropriate\n\n### 6. PRE-APPOINTMENT PREPARATION\n\n**For Provider:**\n- Key questions to ask during visit\n- Examinations likely needed\n- Tests/labs to consider ordering\n- Reference materials to review\n\n**For Patient:**\n- What to bring (previous test results, medication list, etc.)\n- Pre-appointment instructions (fasting, medication holds, etc.)\n- What to expect during visit\n\n### 7. ESTIMATED APPOINTMENT DURATION\n- Quick visit (15 min)\n- Standard visit (30 min)\n- Extended visit (45-60 min)\n- Complex case (60+ min)\n\n### 8. APPOINTMENT PRIORITY SCORE\nRate 0-100 where:\n- 90-100: Emergency (immediate)\n- 70-89: Urgent (within 24-48 hours)\n- 40-69: Routine (within 1-2 weeks)\n- 0-39: Non-urgent (flexible scheduling)\n\nBe thorough, accurate, and prioritize patient safety. When in doubt, err on the side of caution with higher urgency levels.",
"options": {},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2.2
},
{
"id": "2af7aaa5-bf80-4bcc-9076-533ce01881e5",
"name": "OpenAI Chat Model",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-704,
496
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o"
},
"options": {
"temperature": 0.3
}
},
"credentials": {
"openAiApi": {
"id": "8IkhtT3EbXygnvcr",
"name": "Klinsman OpenAI"
}
},
"typeVersion": 1.2
},
{
"id": "a6542fce-7b17-4368-918c-e6068dd3cff6",
"name": "Structured Output Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
-416,
496
],
"parameters": {
"schemaType": "manual",
"inputSchema": "{\n \"type\": \"object\",\n \"required\": [\n \"urgency_level\",\n \"urgency_reasoning\",\n \"priority_score\",\n \"symptom_summary\",\n \"red_flag_symptoms\",\n \"possible_conditions\",\n \"critical_alerts\",\n \"recommended_provider\",\n \"recommended_specialty\",\n \"questions_for_provider\",\n \"exams_needed\",\n \"tests_to_consider\",\n \"patient_instructions\",\n \"items_to_bring\",\n \"appointment_duration\",\n \"detailed_analysis_markdown\"\n ],\n \"properties\": {\n \"urgency_level\": {\n \"type\": \"string\",\n \"enum\": [\"emergency\", \"urgent\", \"routine\", \"non_urgent\"]\n },\n \"urgency_reasoning\": {\n \"type\": \"string\",\n \"description\": \"Why this urgency level was assigned\"\n },\n \"priority_score\": {\n \"type\": \"integer\",\n \"minimum\": 0,\n \"maximum\": 100\n },\n \"symptom_summary\": {\n \"type\": \"string\",\n \"description\": \"Concise summary of key symptoms\"\n },\n \"red_flag_symptoms\": {\n \"type\": \"array\",\n \"items\": {\"type\": \"string\"},\n \"description\": \"Critical symptoms requiring attention\"\n },\n \"possible_conditions\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"condition\": {\"type\": \"string\"},\n \"likelihood\": {\"type\": \"string\"},\n \"explanation\": {\"type\": \"string\"}\n }\n }\n },\n \"critical_alerts\": {\n \"type\": \"array\",\n \"items\": {\"type\": \"string\"},\n \"description\": \"Drug interactions, allergies, age concerns\"\n },\n \"recommended_provider\": {\n \"type\": \"string\",\n \"description\": \"Type of provider needed\"\n },\n \"recommended_specialty\": {\n \"type\": \"string\",\n \"description\": \"If specialist needed, which one\"\n },\n \"questions_for_provider\": {\n \"type\": \"array\",\n \"items\": {\"type\": \"string\"}\n },\n \"exams_needed\": {\n \"type\": \"array\",\n \"items\": {\"type\": \"string\"}\n },\n \"tests_to_consider\": {\n \"type\": \"array\",\n \"items\": {\"type\": \"string\"}\n },\n \"patient_instructions\": {\n \"type\": \"array\",\n \"items\": {\"type\": \"string\"}\n },\n \"items_to_bring\": {\n \"type\": \"array\",\n \"items\": {\"type\": \"string\"}\n },\n \"appointment_duration\": {\n \"type\": \"string\",\n \"enum\": [\"15min\", \"30min\", \"45min\", \"60min\"]\n },\n \"detailed_analysis_markdown\": {\n \"type\": \"string\",\n \"description\": \"Full analysis in markdown format\"\n }\n }\n}"
},
"typeVersion": 1.3
},
{
"id": "c7ab4cf1-f684-431a-93ad-687f878bbb57",
"name": "¿Es Emergencia?",
"type": "n8n-nodes-base.if",
"position": [
-240,
240
],
"parameters": {
"options": {},
"conditions": {
"options": {},
"conditions": [
{
"id": "emergency-check",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.output.urgency_level }}",
"rightValue": "emergency"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "89a54f87-502c-4a6d-b5f3-081af34374fe",
"name": "¿Es Urgente?",
"type": "n8n-nodes-base.if",
"position": [
-240,
480
],
"parameters": {
"options": {},
"conditions": {
"options": {},
"conditions": [
{
"id": "urgent-check",
"operator": {
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $json.output.urgency_level }}",
"rightValue": "urgent"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "2162d6bc-cd96-41f7-9902-fe98ff1cc8ae",
"name": "Alertar al Equipo de Emergencias (Slack)",
"type": "n8n-nodes-base.httpRequest",
"position": [
176,
-48
],
"parameters": {
"url": "https://slack.com/api/chat.postMessage",
"method": "POST",
"options": {},
"jsonBody": "={\n \"channel\": \"medical-emergencies\",\n \"text\": \":rotating_light: *MEDICAL EMERGENCY ALERT* :rotating_light:\\n\\n*Patient:* {{ $('Extract Patient Data').item.json.patient_name }} ({{ $('Calculate Patient Info').item.json.patient_age }}yo {{ $('Calculate Patient Info').item.json.patient_category }})\\n*Priority Score:* {{ $json.output.priority_score }}/100\\n*Urgency:* {{ $json.output.urgency_level.toUpperCase() }}\\n\\n*Chief Complaint:*\\n{{ $('Extract Patient Data').item.json.reason_for_visit }}\\n\\n*Symptoms:*\\n{{ $('Extract Patient Data').item.json.symptoms }}\\n\\n*Red Flags:*\\n{{ $json.output.red_flag_symptoms.map(flag => '• ' + flag).join('\\\\n') }}\\n\\n*Recommended Action:* {{ $json.output.urgency_reasoning }}\\n\\n:hospital: *IMMEDIATE ATTENTION REQUIRED* - Contact patient immediately at {{ $('Extract Patient Data').item.json.patient_phone }}\",\n \"blocks\": [\n {\n \"type\": \"header\",\n \"text\": {\n \"type\": \"plain_text\",\n \"text\": \":rotating_light: MEDICAL EMERGENCY\"\n }\n },\n {\n \"type\": \"section\",\n \"fields\": [\n {\n \"type\": \"mrkdwn\",\n \"text\": \"*Patient:*\\\\n{{ $('Extract Patient Data').item.json.patient_name }}\"\n },\n {\n \"type\": \"mrkdwn\",\n \"text\": \"*Age:*\\\\n{{ $('Calculate Patient Info').item.json.patient_age }} years\"\n },\n {\n \"type\": \"mrkdwn\",\n \"text\": \"*Priority:*\\\\n{{ $json.output.priority_score }}/100\"\n },\n {\n \"type\": \"mrkdwn\",\n \"text\": \"*Phone:*\\\\n{{ $('Extract Patient Data').item.json.patient_phone }}\"\n }\n ]\n },\n {\n \"type\": \"section\",\n \"text\": {\n \"type\": \"mrkdwn\",\n \"text\": \"*Symptoms:*\\\\n{{ $('Extract Patient Data').item.json.symptoms }}\"\n }\n },\n {\n \"type\": \"divider\"\n },\n {\n \"type\": \"section\",\n \"text\": {\n \"type\": \"mrkdwn\",\n \"text\": \"*:warning: Red Flags:*\\\\n{{ $json.output.red_flag_symptoms.map((flag, i) => (i+1) + '. ' + flag).join('\\\\n') }}\"\n }\n }\n ]\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpHeaderAuth"
},
"typeVersion": 4.2
},
{
"id": "40c8f7d4-91f7-4aa9-ba78-52912fafa0ce",
"name": "Enviar Instrucciones de Emergencia",
"type": "n8n-nodes-base.gmail",
"position": [
368,
-48
],
"webhookId": "40e8a783-163e-4ae4-ba6b-249a965b1fb5",
"parameters": {
"sendTo": "={{ $('Extract Patient Data').item.json.patient_email }}",
"message": "=<!DOCTYPE html>\n<html>\n<head>\n<style>\nbody{font-family:Arial,sans-serif;line-height:1.6;color:#333;max-width:600px;margin:0 auto;padding:20px}\n.alert-banner{background:#dc3545;color:#fff;padding:25px;text-align:center;border-radius:8px 8px 0 0}\n.alert-banner h1{margin:0;font-size:28px}\n.content{background:#fff;padding:30px;border:3px solid #dc3545}\n.urgent-box{background:#fff3cd;border:3px solid #ffc107;padding:20px;border-radius:8px;margin:20px 0;text-align:center}\n.urgent-box h2{margin:0 0 10px 0;color:#856404}\n.contact-box{background:#f8d7da;border:2px solid #dc3545;padding:15px;border-radius:5px;margin:20px 0}\nul{margin:10px 0;padding-left:20px}\nli{margin:5px 0}\n</style>\n</head>\n<body>\n<div class=\"alert-banner\">\n<h1>🚨 IMMEDIATE ATTENTION REQUIRED</h1>\n</div>\n<div class=\"content\">\n<p><strong>Dear {{ $('Extract Patient Data').item.json.patient_name }},</strong></p>\n\n<p>Based on the symptoms you reported in your intake form, our medical AI system has flagged your case as requiring <strong>immediate medical attention</strong>.</p>\n\n<div class=\"urgent-box\">\n<h2>⚠️ PLEASE TAKE ACTION NOW</h2>\n<p style=\"font-size:18px;margin:0\"><strong>Call 911 immediately</strong> or go to the nearest Emergency Department</p>\n</div>\n\n<div class=\"contact-box\">\n<p style=\"margin:0\"><strong>📞 Our medical team will call you within 15 minutes at:</strong><br>\n<span style=\"font-size:20px;color:#dc3545\"><strong>{{ $('Extract Patient Data').item.json.patient_phone }}</strong></span></p>\n</div>\n\n<h3>Why This Is Urgent:</h3>\n<p>{{ $json.output.urgency_reasoning }}</p>\n\n<h3>⚠️ Warning Signs Detected:</h3>\n<ul>\n{{ $json.output.red_flag_symptoms.map(flag => '<li><strong>' + flag + '</strong></li>').join('') }}\n</ul>\n\n<h3>What To Do Right Now:</h3>\n<ol>\n<li><strong>Call 911 or go to ER immediately</strong> if experiencing severe symptoms</li>\n<li>Have someone stay with you</li>\n<li>Bring your medications and medical records</li>\n<li>Do NOT drive yourself if symptoms are severe</li>\n</ol>\n\n<p style=\"margin-top:30px;padding-top:20px;border-top:2px solid #dc3545\"><strong>Emergency Contact Numbers:</strong><br>\n📞 Emergency: <strong>911</strong><br>\n📞 Our Clinic: <strong>(555) 123-4567</strong><br>\n📞 After Hours: <strong>(555) 123-4568</strong></p>\n\n<p style=\"font-size:12px;color:#666;margin-top:20px\">Intake ID: {{ $('Extract Patient Data').item.json.intake_id }}</p>\n</div>\n</body>\n</html>",
"options": {},
"subject": "=🚨 URGENT: Immediate Medical Attention Needed"
},
"typeVersion": 2.1
},
{
"id": "b9c68bc5-0934-48ab-b7d7-e4d67b74c596",
"name": "Alertar al Médico de Guardia",
"type": "n8n-nodes-base.gmail",
"position": [
576,
-48
],
"webhookId": "39eda42b-0a2a-4c52-89d8-f4c447eb7fbb",
"parameters": {
"sendTo": "on-call-doctor@clinic.com",
"message": "=<!DOCTYPE html>\n<html>\n<head>\n<style>\nbody{font-family:Arial,sans-serif;line-height:1.6;color:#333;max-width:800px;margin:0 auto;padding:20px}\n.header{background:#dc3545;color:#fff;padding:20px;text-align:center;border-radius:8px 8px 0 0}\n.content{background:#fff;padding:30px;border:2px solid #dc3545}\n.patient-info{background:#f8f9fa;padding:20px;border-radius:5px;margin:20px 0}\n.vital-info{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0}\n.info-box{background:#fff3cd;padding:15px;border-left:4px solid #ffc107}\n.red-flags{background:#f8d7da;padding:20px;border-left:4px solid #dc3545;margin:20px 0}\n.analysis{background:#e7f3ff;padding:20px;border-radius:5px;margin:20px 0}\ntable{width:100%;border-collapse:collapse;margin:15px 0}\ntable th{background:#dc3545;color:#fff;padding:12px;text-align:left}\ntable td{padding:12px;border-bottom:1px solid #ddd}\n</style>\n</head>\n<body>\n<div class=\"header\">\n<h1 style=\"margin:0\">🚨 EMERGENCY PATIENT ALERT</h1>\n<p style=\"margin:5px 0 0 0;font-size:18px\">Immediate physician review required</p>\n</div>\n<div class=\"content\">\n\n<div class=\"patient-info\">\n<h2 style=\"margin-top:0;color:#dc3545\">Patient Information</h2>\n<table>\n<tr><td><strong>Name:</strong></td><td>{{ $('Extract Patient Data').item.json.patient_name }}</td></tr>\n<tr><td><strong>Age:</strong></td><td>{{ $('Calculate Patient Info').item.json.patient_age }} years ({{ $('Calculate Patient Info').item.json.patient_category }})</td></tr>\n<tr><td><strong>DOB:</strong></td><td>{{ $('Extract Patient Data').item.json.date_of_birth }}</td></tr>\n<tr><td><strong>Phone:</strong></td><td><strong style=\"font-size:18px;color:#dc3545\">{{ $('Extract Patient Data').item.json.patient_phone }}</strong></td></tr>\n<tr><td><strong>Email:</strong></td><td>{{ $('Extract Patient Data').item.json.patient_email }}</td></tr>\n<tr><td><strong>Insurance:</strong></td><td>{{ $('Extract Patient Data').item.json.insurance_provider }}</td></tr>\n</table>\n</div>\n\n<div class=\"vital-info\">\n<div class=\"info-box\">\n<strong>Priority Score:</strong><br>\n<span style=\"font-size:32px;color:#dc3545\">{{ $json.output.priority_score }}/100</span>\n</div>\n<div class=\"info-box\">\n<strong>Urgency Level:</strong><br>\n<span style=\"font-size:24px;color:#dc3545\">{{ $json.output.urgency_level.toUpperCase() }}</span>\n</div>\n</div>\n\n<h3>Chief Complaint</h3>\n<p style=\"font-size:16px\"><strong>{{ $('Extract Patient Data').item.json.reason_for_visit }}</strong></p>\n\n<h3>Symptoms Reported</h3>\n<p>{{ $('Extract Patient Data').item.json.symptoms }}</p>\n<p><strong>Duration:</strong> {{ $('Extract Patient Data').item.json.symptom_duration }}<br>\n<strong>Pain Level:</strong> {{ $('Extract Patient Data').item.json.pain_level }}/10</p>\n\n<div class=\"red-flags\">\n<h3 style=\"margin-top:0;color:#dc3545\">🚨 RED FLAG SYMPTOMS</h3>\n<ul style=\"margin:0;padding-left:20px\">\n{{ $json.output.red_flag_symptoms.map(flag => '<li style=\"margin:8px 0;font-size:16px\"><strong>' + flag + '</strong></li>').join('') }}\n</ul>\n</div>\n\n<h3>⚠️ Critical Alerts</h3>\n<ul>\n{{ $json.output.critical_alerts.map(alert => '<li><strong>' + alert + '</strong></li>').join('') }}\n</ul>\n\n<h3>Medical Background</h3>\n<p><strong>Current Medications:</strong> {{ $('Extract Patient Data').item.json.current_medications }}<br>\n<strong>Known Allergies:</strong> <span style=\"color:#dc3545;font-weight:bold\">{{ $('Extract Patient Data').item.json.allergies }}</span><br>\n<strong>Medical History:</strong> {{ $('Extract Patient Data').item.json.medical_history }}</p>\n\n<div class=\"analysis\">\n<h3 style=\"margin-top:0\">AI Analysis & Recommendations</h3>\n<p><strong>Urgency Reasoning:</strong> {{ $json.output.urgency_reasoning }}</p>\n<p><strong>Symptom Summary:</strong> {{ $json.output.symptom_summary }}</p>\n\n<h4>Possible Conditions to Consider:</h4>\n<ol>\n{{ $json.output.possible_conditions.map(cond => '<li><strong>' + cond.condition + '</strong> (' + cond.likelihood + ')<br><em>' + cond.explanation + '</em></li>').join('') }}\n</ol>\n\n<h4>Recommended Provider:</h4>\n<p><strong>{{ $json.output.recommended_provider }}</strong>\n{{ $json.output.recommended_specialty ? ' - Specialty: ' + $json.output.recommended_specialty : '' }}</p>\n</div>\n\n<h3>Action Items for Provider</h3>\n<h4>Key Questions to Ask:</h4>\n<ul>\n{{ $json.output.questions_for_provider.map(q => '<li>' + q + '</li>').join('') }}\n</ul>\n\n<h4>Examinations Needed:</h4>\n<ul>\n{{ $json.output.exams_needed.map(exam => '<li>' + exam + '</li>').join('') }}\n</ul>\n\n<h4>Tests to Consider:</h4>\n<ul>\n{{ $json.output.tests_to_consider.map(test => '<li>' + test + '</li>').join('') }}\n</ul>\n\n<h4>Estimated Appointment Duration:</h4>\n<p><strong>{{ $json.output.appointment_duration }}</strong></p>\n\n<div style=\"margin-top:30px;padding:20px;background:#dc3545;color:#fff;border-radius:5px;text-align:center\">\n<h3 style=\"margin:0 0 10px 0\">⚡ IMMEDIATE ACTION REQUIRED</h3>\n<p style=\"margin:0;font-size:18px\">Please contact patient immediately at:<br>\n<strong style=\"font-size:24px\">{{ $('Extract Patient Data').item.json.patient_phone }}</strong></p>\n</div>\n\n<p style=\"margin-top:20px;padding-top:20px;border-top:1px solid #ddd;font-size:12px;color:#666\">\n<strong>Intake ID:</strong> {{ $('Extract Patient Data').item.json.intake_id }}<br>\n<strong>Submitted:</strong> {{ $('Extract Patient Data').item.json.submission_date }}<br>\n<strong>AI Analysis Date:</strong> {{ new Date().toISOString() }}\n</p>\n</div>\n</body>\n</html>",
"options": {},
"subject": "=🚨 EMERGENCY PATIENT - Immediate Review Required"
},
"typeVersion": 2.1
},
{
"id": "6aff2270-85cf-418c-affc-e3d259e0a959",
"name": "Notificar a Recepción (Urgente)",
"type": "n8n-nodes-base.gmail",
"position": [
224,
352
],
"webhookId": "e95174c5-19a5-4b4b-94e7-12285b29a24f",
"parameters": {
"sendTo": "front-desk@clinic.com",
"message": "=<!DOCTYPE html>\n<html>\n<head>\n<style>\nbody{font-family:Arial,sans-serif;line-height:1.6;color:#333;max-width:700px;margin:0 auto;padding:20px}\n.header{background:#ff9800;color:#fff;padding:20px;text-align:center;border-radius:8px 8px 0 0}\n.content{background:#fff;padding:30px;border:2px solid #ff9800}\n.patient-card{background:#fff3cd;padding:20px;border-radius:5px;border-left:4px solid #ff9800;margin:20px 0}\n.priority-box{background:#ffc107;color:#000;padding:15px;text-align:center;border-radius:5px;margin:20px 0}\ntable{width:100%;border-collapse:collapse;margin:15px 0}\ntable td{padding:10px;border-bottom:1px solid #ddd}\ntable td:first-child{font-weight:bold;width:40%}\n</style>\n</head>\n<body>\n<div class=\"header\">\n<h2 style=\"margin:0\">⚡ Urgent Scheduling Request</h2>\n</div>\n<div class=\"content\">\n<p><strong>Please schedule this patient for same-day or next-day appointment.</strong></p>\n\n<div class=\"priority-box\">\n<h3 style=\"margin:0 0 10px 0\">Priority Score: {{ $json.output.priority_score }}/100</h3>\n<p style=\"margin:0;font-size:16px\">Urgency Level: <strong>{{ $json.output.urgency_level.toUpperCase() }}</strong></p>\n</div>\n\n<div class=\"patient-card\">\n<h3 style=\"margin-top:0\">Patient Information</h3>\n<table>\n<tr><td>Name:</td><td><strong>{{ $('Extract Patient Data').item.json.patient_name }}</strong></td></tr>\n<tr><td>Age:</td><td>{{ $('Calculate Patient Info').item.json.patient_age }} years</td></tr>\n<tr><td>Phone:</td><td><strong style=\"font-size:16px\">{{ $('Extract Patient Data').item.json.patient_phone }}</strong></td></tr>\n<tr><td>Email:</td><td>{{ $('Extract Patient Data').item.json.patient_email }}</td></tr>\n<tr><td>Insurance:</td><td>{{ $('Extract Patient Data').item.json.insurance_provider }}</td></tr>\n<tr><td>Preferred Date:</td><td>{{ $('Extract Patient Data').item.json.preferred_date }}</td></tr>\n<tr><td>Preferred Time:</td><td>{{ $('Extract Patient Data').item.json.preferred_time }}</td></tr>\n</table>\n</div>\n\n<h3>Chief Complaint</h3>\n<p><strong>{{ $('Extract Patient Data').item.json.reason_for_visit }}</strong></p>\n\n<h3>Symptoms</h3>\n<p>{{ $('Extract Patient Data').item.json.symptoms }}</p>\n<p><strong>Duration:</strong> {{ $('Extract Patient Data').item.json.symptom_duration }}</p>\n\n<h3>Provider Recommendation</h3>\n<p><strong>{{ $json.output.recommended_provider }}</strong>\n{{ $json.output.recommended_specialty ? '<br>Specialty: ' + $json.output.recommended_specialty : '' }}</p>\n\n<h3>Appointment Duration</h3>\n<p>Book <strong>{{ $json.output.appointment_duration }}</strong> appointment slot</p>\n\n<h3>Action Required</h3>\n<ol>\n<li>Contact patient at <strong>{{ $('Extract Patient Data').item.json.patient_phone }}</strong></li>\n<li>Schedule within 24-48 hours</li>\n<li>Confirm insurance eligibility</li>\n<li>Send pre-appointment instructions</li>\n</ol>\n\n<p style=\"margin-top:30px;padding:20px;background:#fff3cd;border-radius:5px\">\n<strong>📋 Note:</strong> Patient intake form completed. Provider prep brief will be sent separately.\n</p>\n\n<p style=\"margin-top:20px;padding-top:20px;border-top:1px solid #ddd;font-size:12px;color:#666\">\nIntake ID: {{ $('Extract Patient Data').item.json.intake_id }}\n</p>\n</div>\n</body>\n</html>",
"options": {},
"subject": "=⚡ Urgent Patient - Schedule ASAP - {{ $('Extract Patient Data').item.json.patient_name }}"
},
"credentials": {
"gmailOAuth2": {
"id": "PIMDNhXNj8Zyiz3G",
"name": "Gmail account - Deepanshi"
}
},
"typeVersion": 2.1
},
{
"id": "ca4a10ac-6a8f-4b47-9d2d-aa6a4308697e",
"name": "Enviar Confirmación al Paciente (Urgente)",
"type": "n8n-nodes-base.gmail",
"position": [
464,
352
],
"webhookId": "c140b4a5-bcb5-4000-aea4-7fff6f8f412a",
"parameters": {
"sendTo": "={{ $('Extract Patient Data').item.json.patient_email }}",
"message": "=<!DOCTYPE html>\n<html>\n<head>\n<style>\nbody{font-family:Arial,sans-serif;line-height:1.6;color:#333;max-width:600px;margin:0 auto;padding:20px}\n.header{background:#ff9800;color:#fff;padding:20px;text-align:center;border-radius:8px 8px 0 0}\n.content{background:#fff;padding:30px;border:1px solid #ddd}\n.info-box{background:#fff3cd;padding:15px;border-radius:5px;margin:20px 0}\nul{margin:10px 0;padding-left:20px}\n</style>\n</head>\n<body>\n<div class=\"header\">\n<h2 style=\"margin:0\">We've Received Your Information</h2>\n</div>\n<div class=\"content\">\n<p>Dear {{ $('Extract Patient Data').item.json.patient_name }},</p>\n\n<p>Thank you for completing your medical intake form. Based on your symptoms, we'd like to see you soon.</p>\n\n<div class=\"info-box\">\n<p style=\"margin:0\"><strong>⚡ Priority Status: Urgent</strong></p>\n<p style=\"margin:5px 0 0 0\">Our scheduling team will contact you within the next few hours to arrange an appointment in the next 24-48 hours.</p>\n</div>\n\n<h3>What to Expect</h3>\n<p>Our team has reviewed your intake information and has prepared for your visit. You'll receive a call from our front desk at <strong>{{ $('Extract Patient Data').item.json.patient_phone }}</strong> to schedule your appointment.</p>\n\n<h3>What to Bring</h3>\n<ul>\n{{ $json.output.items_to_bring.map(item => '<li>' + item + '</li>').join('') }}\n</ul>\n\n<h3>Pre-Appointment Instructions</h3>\n<ul>\n{{ $json.output.patient_instructions.map(instruction => '<li>' + instruction + '</li>').join('') }}\n</ul>\n\n<h3>If Your Symptoms Worsen</h3>\n<p>If you experience any of the following before your appointment:</p>\n<ul>\n<li>Severe or worsening symptoms</li>\n<li>Difficulty breathing</li>\n<li>Chest pain</li>\n<li>Severe bleeding</li>\n</ul>\n<p><strong>Call 911 or go to the nearest Emergency Department immediately.</strong></p>\n\n<h3>Contact Us</h3>\n<p>📞 Office: (555) 123-4567<br>\n📞 After Hours: (555) 123-4568<br>\n📧 Email: appointments@clinic.com</p>\n\n<p>We look forward to seeing you soon.</p>\n\n<p>Best regards,<br>\n<strong>Your Healthcare Team</strong></p>\n\n<p style=\"margin-top:30px;padding-top:20px;border-top:1px solid #ddd;font-size:12px;color:#666\">\nIntake ID: {{ $('Extract Patient Data').item.json.intake_id }}\n</p>\n</div>\n</body>\n</html>",
"options": {},
"subject": "=Your Medical Appointment - Next Steps"
},
"credentials": {
"gmailOAuth2": {
"id": "PIMDNhXNj8Zyiz3G",
"name": "Gmail account - Deepanshi"
}
},
"typeVersion": 2.1
},
{
"id": "d3bc5913-96a0-4cc6-8c16-9778fadded37",
"name": "Notificar al Programador (Rutina)",
"type": "n8n-nodes-base.gmail",
"position": [
208,
816
],
"webhookId": "38ccc168-6d4a-4a1e-8877-304fe48c26cd",
"parameters": {
"sendTo": "scheduler@clinic.com",
"message": "=<!DOCTYPE html>\n<html>\n<head>\n<style>\nbody{font-family:Arial,sans-serif;line-height:1.6;color:#333;max-width:700px;margin:0 auto;padding:20px}\n.header{background:#667eea;color:#fff;padding:20px;text-align:center;border-radius:8px 8px 0 0}\n.content{background:#fff;padding:30px;border:1px solid #ddd}\n.patient-card{background:#f8f9fa;padding:20px;border-radius:5px;margin:20px 0}\ntable{width:100%;border-collapse:collapse}\ntable td{padding:10px;border-bottom:1px solid #ddd}\ntable td:first-child{font-weight:bold;width:35%}\n</style>\n</head>\n<body>\n<div class=\"header\">\n<h2 style=\"margin:0\">📋 New Appointment Request</h2>\n</div>\n<div class=\"content\">\n<p>A new patient has completed their intake form. Please schedule an appointment.</p>\n\n<div class=\"patient-card\">\n<h3 style=\"margin-top:0\">Patient Details</h3>\n<table>\n<tr><td>Name:</td><td><strong>{{ $('Extract Patient Data').item.json.patient_name }}</strong></td></tr>\n<tr><td>Age:</td><td>{{ $('Calculate Patient Info').item.json.patient_age }} years ({{ $('Calculate Patient Info').item.json.patient_category }})</td></tr>\n<tr><td>Phone:</td><td><strong>{{ $('Extract Patient Data').item.json.patient_phone }}</strong></td></tr>\n<tr><td>Email:</td><td>{{ $('Extract Patient Data').item.json.patient_email }}</td></tr>\n<tr><td>Insurance:</td><td>{{ $('Extract Patient Data').item.json.insurance_provider }}</td></tr>\n<tr><td>Preferred Date:</td><td>{{ $('Extract Patient Data').item.json.preferred_date }}</td></tr>\n<tr><td>Preferred Time:</td><td>{{ $('Extract Patient Data').item.json.preferred_time }}</td></tr>\n</table>\n</div>\n\n<h3>Appointment Details</h3>\n<p><strong>Visit Type:</strong> {{ $('Extract Patient Data').item.json.reason_for_visit }}<br>\n<strong>Recommended Provider:</strong> {{ $json.output.recommended_provider }}<br>\n<strong>Duration:</strong> {{ $json.output.appointment_duration }}<br>\n<strong>Priority:</strong> {{ $json.output.urgency_level }}</p>\n\n<h3>Scheduling Instructions</h3>\n<p>Schedule within 1-2 weeks at patient's preferred time.</p>\n\n<p style=\"margin-top:30px;padding-top:20px;border-top:1px solid #ddd;font-size:12px;color:#666\">\nIntake ID: {{ $('Extract Patient Data').item.json.intake_id }}\n</p>\n</div>\n</body>\n</html>",
"options": {},
"subject": "=New Appointment Request - {{ $('Extract Patient Data').item.json.patient_name }}"
},
"credentials": {
"gmailOAuth2": {
"id": "PIMDNhXNj8Zyiz3G",
"name": "Gmail account - Deepanshi"
}
},
"typeVersion": 2.1
},
{
"id": "807c0df0-e1fc-4374-bc07-b506d2dda06e",
"name": "Enviar Confirmación al Paciente (Rutina)",
"type": "n8n-nodes-base.gmail",
"position": [
576,
816
],
"webhookId": "06cafaa5-7568-4e3c-a038-7fe5e6290a8e",
"parameters": {
"sendTo": "={{ $('Extract Patient Data').item.json.patient_email }}",
"message": "=<!DOCTYPE html>\n<html>\n<head>\n<style>\nbody{font-family:Arial,sans-serif;line-height:1.6;color:#333;max-width:600px;margin:0 auto;padding:20px}\n.header{background:#667eea;color:#fff;padding:20px;text-align:center;border-radius:8px 8px 0 0}\n.content{background:#fff;padding:30px;border:1px solid #ddd}\n.info-box{background:#e7f3ff;padding:15px;border-radius:5px;margin:20px 0}\n</style>\n</head>\n<body>\n<div class=\"header\">\n<h2 style=\"margin:0\">Thank You for Your Submission</h2>\n</div>\n<div class=\"content\">\n<p>Dear {{ $('Extract Patient Data').item.json.patient_name }},</p>\n\n<p>Thank you for completing your medical intake form. We've received your information and will be in touch shortly to schedule your appointment.</p>\n\n<div class=\"info-box\">\n<p style=\"margin:0\"><strong>📅 Next Steps</strong></p>\n<p style=\"margin:5px 0 0 0\">Our scheduling team will contact you within 1-2 business days at <strong>{{ $('Extract Patient Data').item.json.patient_phone }}</strong> to arrange an appointment that works with your schedule.</p>\n</div>\n\n<h3>Your Preferred Appointment Time</h3>\n<p><strong>Date:</strong> {{ $('Extract Patient Data').item.json.preferred_date }}<br>\n<strong>Time:</strong> {{ $('Extract Patient Data').item.json.preferred_time }}</p>\n\n<p>We'll do our best to accommodate your preferences.</p>\n\n<h3>What to Bring</h3>\n<ul>\n{{ $json.output.items_to_bring.map(item => '<li>' + item + '</li>').join('') }}\n</ul>\n\n<h3>Before Your Appointment</h3>\n<ul>\n{{ $json.output.patient_instructions.map(instruction => '<li>' + instruction + '</li>').join('') }}\n</ul>\n\n<h3>Questions?</h3>\n<p>If you have any questions or if your symptoms change, please don't hesitate to contact us:</p>\n<p>📞 Office: (555) 123-4567<br>\n📧 Email: appointments@clinic.com</p>\n\n<p>We look forward to caring for you.</p>\n\n<p>Warm regards,<br>\n<strong>Your Healthcare Team</strong></p>\n\n<p style=\"margin-top:30px;padding-top:20px;border-top:1px solid #ddd;font-size:12px;color:#666\">\nIntake ID: {{ $('Extract Patient Data').item.json.intake_id }}\n</p>\n</div>\n</body>\n</html>",
"options": {},
"subject": "=Thank You - We'll Schedule Your Appointment Soon"
},
"credentials": {
"gmailOAuth2": {
"id": "PIMDNhXNj8Zyiz3G",
"name": "Gmail account - Deepanshi"
}
},
"typeVersion": 2.1
},
{
"id": "c54705c2-087d-4719-8fa4-9f39cafae5db",
"name": "Registrar en Base de Datos de Pacientes",
"type": "n8n-nodes-base.googleSheets",
"position": [
1120,
272
],
"parameters": {
"columns": {
"value": {
"status": "={{ $json.status || 'Pending Scheduling' }}",
"symptoms": "={{ $('Extract Patient Data').item.json.symptoms }}",
"allergies": "={{ $('Extract Patient Data').item.json.allergies }}",
"insurance": "={{ $('Extract Patient Data').item.json.insurance_provider }}",
"intake_id": "={{ $('Extract Patient Data').item.json.intake_id }}",
"red_flags": "={{ $json.output.red_flag_symptoms.join('; ') }}",
"pain_level": "={{ $('Extract Patient Data').item.json.pain_level }}",
"medications": "={{ $('Extract Patient Data').item.json.current_medications }}",
"patient_age": "={{ $('Calculate Patient Info').item.json.patient_age }}",
"patient_name": "={{ $('Extract Patient Data').item.json.patient_name }}",
"patient_email": "={{ $('Extract Patient Data').item.json.patient_email }}",
"patient_phone": "={{ $('Extract Patient Data').item.json.patient_phone }}",
"urgency_level": "={{ $json.output.urgency_level }}",
"priority_score": "={{ $json.output.priority_score }}",
"submission_date": "={{ $('Extract Patient Data').item.json.submission_date }}",
"patient_category": "={{ $('Calculate Patient Info').item.json.patient_category }}",
"reason_for_visit": "={{ $('Extract Patient Data').item.json.reason_for_visit }}",
"symptom_duration": "={{ $('Extract Patient Data').item.json.symptom_duration }}",
"appointment_duration": "={{ $json.output.appointment_duration }}",
"recommended_provider": "={{ $json.output.recommended_provider }}"
},
"mappingMode": "defineBelow"
},
"options": {},
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": "gid=0"
},
"documentId": {
"__rl": true,
"mode": "list",
"value": "YOUR_GOOGLE_SHEET_ID"
}
},
"typeVersion": 4.5
},
{
"id": "caee6ac1-430e-4209-b1fa-a5eb45cc9a0b",
"name": "Nota Adhesiva - Admisión",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1584,
64
],
"parameters": {
"color": 5,
"width": 756,
"height": 388,
"content": "## 📋 Patient Intake Collection\n\nCaptures comprehensive patient information via **HIPAA-compliant JotForm**.\nCreate your form for free on [JotForm using this link](https://www.jotform.com/?partner=mediajade)\n\n**Output:** Structured patient data ready for AI triage"
},
"typeVersion": 1
},
{
"id": "c52626e9-4658-4759-9524-7790b07363b0",
"name": "Nota Adhesiva - Triaje",
"type": "n8n-nodes-base.stickyNote",
"position": [
-752,
64
],
"parameters": {
"color": 4,
"width": 676,
"height": 604,
"content": "## 🤖 AI Medical Triage & Analysis\n\nAdvanced medical AI analyzes symptoms and prepares comprehensive provider brief.\n\n**Result:** Complete appointment brief for provider + patient guidance"
},
"typeVersion": 1
},
{
"id": "703c5f39-f111-473d-b34c-ebb9b2e22b2e",
"name": "Nota Adhesiva - Emergencia",
"type": "n8n-nodes-base.stickyNote",
"position": [
80,
-240
],
"parameters": {
"color": 3,
"width": 744,
"height": 380,
"content": "## 🚨 Emergency Response Protocol\n\n**When AI detects life-threatening symptoms:**\n\n**Priority:** Patient safety above all\n\n**Response Time:** <15 minutes for doctor callback"
},
"typeVersion": 1
},
{
"id": "589e4311-b163-458a-8fa6-f0bfb97bfc9d",
"name": "Nota Adhesiva - Urgente",
"type": "n8n-nodes-base.stickyNote",
"position": [
64,
192
],
"parameters": {
"color": 6,
"width": 760,
"height": 396,
"content": "## ⚡ Urgent Scheduling Path\n\n**For high-priority cases needing 24-48 hour appointments:**\n\n**Goal:** Fast scheduling without alarming patient unnecessarily"
},
"typeVersion": 1
},
{
"id": "d39e7c5f-5f95-41d2-8d11-2232e93ee42f",
"name": "Nota Adhesiva - Rutina",
"type": "n8n-nodes-base.stickyNote",
"position": [
64,
640
],
"parameters": {
"color": 7,
"width": 776,
"height": 412,
"content": "## 📅 Routine Scheduling Path\n\n**For standard appointments within 1-2 weeks:**\n\n**Goal:** Smooth scheduling experience with all necessary information provided upfront"
},
"typeVersion": 1
},
{
"id": "cb14c6a8-765c-42d6-8bda-77c93eabba8e",
"name": "Nota Adhesiva - Base de Datos",
"type": "n8n-nodes-base.stickyNote",
"position": [
1008,
96
],
"parameters": {
"color": 2,
"width": 440,
"height": 380,
"content": "## 📊 Patient Data Management\n\nComprehensive logging for analytics, compliance, and continuity of care.\n\n**Result:** Complete patient journey visibility"
},
"typeVersion": 1
},
{
"id": "76a3a76f-d389-4355-8214-22c4a4175c6e",
"name": "JotForm Trigger1",
"type": "n8n-nodes-base.jotFormTrigger",
"position": [
-1520,
240
],
"webhookId": "06e9eacf-f9fc-46e1-9564-37d2de14ae21",
"parameters": {
"form": "252815075257460"
},
"credentials": {
"jotFormApi": {
"id": "cOSh16Q5l4e0EB1A",
"name": "Jotform jitesh@mediajade.com"
}
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "8c4c5d6e-8ef7-49e2-a84a-22e836124cbb",
"connections": {
"89a54f87-502c-4a6d-b5f3-081af34374fe": {
"main": [
[
{
"node": "6aff2270-85cf-418c-affc-e3d259e0a959",
"type": "main",
"index": 0
}
],
[
{
"node": "d3bc5913-96a0-4cc6-8c16-9778fadded37",
"type": "main",
"index": 0
}
]
]
},
"c7ab4cf1-f684-431a-93ad-687f878bbb57": {
"main": [
[
{
"node": "2162d6bc-cd96-41f7-9902-fe98ff1cc8ae",
"type": "main",
"index": 0
}
]
]
},
"76a3a76f-d389-4355-8214-22c4a4175c6e": {
"main": [
[
{
"node": "71b9b490-6060-4af5-94e8-34525de13db5",
"type": "main",
"index": 0
}
]
]
},
"2af7aaa5-bf80-4bcc-9076-533ce01881e5": {
"ai_languageModel": [
[
{
"node": "56257aaf-3cd0-4c28-bd10-ba68c746df93",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"b9c68bc5-0934-48ab-b7d7-e4d67b74c596": {
"main": [
[
{
"node": "c54705c2-087d-4719-8fa4-9f39cafae5db",
"type": "main",
"index": 0
}
]
]
},
"71b9b490-6060-4af5-94e8-34525de13db5": {
"main": [
[
{
"node": "940ff4ab-345c-474c-9979-3b47f3abcbcb",
"type": "main",
"index": 0
}
]
]
},
"940ff4ab-345c-474c-9979-3b47f3abcbcb": {
"main": [
[
{
"node": "56257aaf-3cd0-4c28-bd10-ba68c746df93",
"type": "main",
"index": 0
}
]
]
},
"a6542fce-7b17-4368-918c-e6068dd3cff6": {
"ai_outputParser": [
[
{
"node": "56257aaf-3cd0-4c28-bd10-ba68c746df93",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"6aff2270-85cf-418c-affc-e3d259e0a959": {
"main": [
[
{
"node": "ca4a10ac-6a8f-4b47-9d2d-aa6a4308697e",
"type": "main",
"index": 0
}
]
]
},
"d3bc5913-96a0-4cc6-8c16-9778fadded37": {
"main": [
[
{
"node": "807c0df0-e1fc-4374-bc07-b506d2dda06e",
"type": "main",
"index": 0
}
]
]
},
"40c8f7d4-91f7-4aa9-ba78-52912fafa0ce": {
"main": [
[
{
"node": "b9c68bc5-0934-48ab-b7d7-e4d67b74c596",
"type": "main",
"index": 0
}
]
]
},
"56257aaf-3cd0-4c28-bd10-ba68c746df93": {
"main": [
[
{
"node": "c7ab4cf1-f684-431a-93ad-687f878bbb57",
"type": "main",
"index": 0
},
{
"node": "89a54f87-502c-4a6d-b5f3-081af34374fe",
"type": "main",
"index": 0
}
]
]
},
"2162d6bc-cd96-41f7-9902-fe98ff1cc8ae": {
"main": [
[
{
"node": "40c8f7d4-91f7-4aa9-ba78-52912fafa0ce",
"type": "main",
"index": 0
}
]
]
},
"ca4a10ac-6a8f-4b47-9d2d-aa6a4308697e": {
"main": [
[
{
"node": "c54705c2-087d-4719-8fa4-9f39cafae5db",
"type": "main",
"index": 0
}
]
]
},
"807c0df0-e1fc-4374-bc07-b506d2dda06e": {
"main": [
[
{
"node": "c54705c2-087d-4719-8fa4-9f39cafae5db",
"type": "main",
"index": 0
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Avanzado
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Jitesh Dugar
@jiteshdugarAI Automation Specialist - OpenAI, CRM & Automation Expert with a solid understanding of various tools that include Zapier, Make, Zoho CRM, Hubspot, Google Sheets, Airtable, Pipedrive, Google Analytics, and more.
Compartir este flujo de trabajo