8
n8n 한국어amn8n.com

Slack, Gmail 및 AI를 사용한 Jira 백로그 정리 및 보고 자동화

고급

이것은자동화 워크플로우로, 31개의 노드를 포함합니다.주로 If, Set, Jira, Gmail, Slack 등의 노드를 사용하며. Slack, Gmail 및 GPT-4를 통한 Jira 할 일 정리 및 보고 자동화

사전 요구사항
  • Google 계정 및 Gmail API 인증 정보
  • Slack Bot Token 또는 Webhook URL
  • Google Sheets API 인증 정보
  • OpenAI API Key

카테고리

-
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "0zvZIMYoz7Yavdpc",
  "meta": {
    "instanceId": "8443f10082278c46aa5cf3acf8ff0f70061a2c58bce76efac814b16290845177",
    "templateCredsSetupCompleted": true
  },
  "name": "Automate Jira Backlog Hygiene and Reporting with Slack ,Gmail and AI",
  "tags": [],
  "nodes": [
    {
      "id": "2c632cb2-a465-48a1-8615-646ae004a906",
      "name": "워크플로우 개요",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -2208,
        -672
      ],
      "parameters": {
        "color": 4,
        "width": 389,
        "height": 564,
        "content": "## 🎯 Backlog Hygiene & Auto-Grooming\n\nAutomated Jira backlog management that identifies issues, takes corrective actions, and generates AI-powered reports.\n\n**What it does:**\n- Runs weekdays at 9 AM to analyze backlog items\n- Identifies overdue tasks and missing priorities\n- Auto-tags issues needing attention\n- Logs all backlog items to Google Sheets\n- Sends real-time Slack alerts for critical issues\n- Generates AI-powered weekly digest emails\n\n**Use Case:** Perfect for engineering teams maintaining clean, prioritized Jira backlogs with minimal manual effort.\n\n**Required Setup:**\n- Jira Software Cloud credentials\n- Google Sheets for audit trail\n- Slack workspace for alerts\n- Gmail for email digests\n- Azure OpenAI API for AI summaries"
      },
      "typeVersion": 1
    },
    {
      "id": "ef8e559f-6e94-42c5-a70e-6cfd6ddea13f",
      "name": "일일 스케줄 트리거",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -1680,
        -416
      ],
      "parameters": {
        "rule": {
          "interval": [
            {
              "field": "cronExpression",
              "expression": "0 9 * * 1-5"
            }
          ]
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "30388334-2118-4d6d-a355-cc01ecf97bf5",
      "name": "참고 - 스케줄",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1760,
        -272
      ],
      "parameters": {
        "width": 262,
        "height": 237,
        "content": "## ⏰ Weekday Mornings\n\nRuns Mon-Fri at 9:00 AM to groom backlog.\n\n**Schedule:** `0 9 * * 1-5`\n**Timing:** Daily at 09:00 on weekdays\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "c5ac2613-c23e-40c3-b0ff-0bb805b876e1",
      "name": "Jira 백로그 가져오기",
      "type": "n8n-nodes-base.jira",
      "position": [
        -1456,
        -416
      ],
      "parameters": {
        "options": {
          "jql": "project = YOUR_PROJECT_KEY AND status in (\"Backlog\") ORDER BY created DESC"
        },
        "operation": "getAll",
        "returnAll": true
      },
      "typeVersion": 1
    },
    {
      "id": "c56145cd-e7bd-47f2-945d-331c491d2eab",
      "name": "참고 - 가져오기",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1600,
        -704
      ],
      "parameters": {
        "width": 262,
        "height": 269,
        "content": "## 📋 Fetch Backlog Items\n\n**Setup Required:**\n1. Replace `YOUR_PROJECT_KEY` with your Jira project key\n2. Connect Jira credentials\n\n**Fetches:** All issues in \"Backlog\" status, ordered by creation date (newest first)"
      },
      "typeVersion": 1
    },
    {
      "id": "79cc28a5-7047-40ee-816e-ea61635ad230",
      "name": "Jira 필드 추출",
      "type": "n8n-nodes-base.set",
      "position": [
        -1232,
        -416
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "65a9ad90-fc3a-4b15-a5db-57040972f1eb",
              "name": "id",
              "type": "string",
              "value": "={{ $json.id }}"
            },
            {
              "id": "a6e676d7-d345-4805-8947-c89246e250cb",
              "name": "Status",
              "type": "string",
              "value": "={{ $json.fields.status.name }}"
            },
            {
              "id": "329be7f5-f4b6-4c2d-8633-f4cc5c600f5a",
              "name": "Last Updated",
              "type": "string",
              "value": "={{ $json.fields.updated }}"
            },
            {
              "id": "6074d876-e5d4-4292-bdcc-dacce44367e9",
              "name": "Created",
              "type": "string",
              "value": "={{ $json.fields.created }}"
            },
            {
              "id": "f45794be-a5a2-4267-8959-6b3a628bdf33",
              "name": "Assignee",
              "type": "string",
              "value": "={{ $json.fields.reporter?.displayName || 'Unassigned' }}"
            },
            {
              "id": "d45594fe-3f25-4deb-9a33-1ae5da08a62a",
              "name": "Due Date",
              "type": "string",
              "value": "={{ $json.fields.duedate || '' }}"
            },
            {
              "id": "255fac2f-a504-4937-bfbb-4ab6d11ab85c",
              "name": "Priority",
              "type": "string",
              "value": "={{ $json.fields.priority?.name || '' }}"
            },
            {
              "id": "d1b9ba34-6836-470d-a4f8-06b50426f570",
              "name": "key",
              "type": "string",
              "value": "={{ $json.key }}"
            },
            {
              "id": "6df7df50-6844-498f-acad-125d0aac25e7",
              "name": "email",
              "type": "string",
              "value": "={{ $json.fields.creator?.emailAddress || '' }}"
            },
            {
              "id": "a4ffc18e-cc88-408d-bd22-fd915092b8c3",
              "name": "Summary",
              "type": "string",
              "value": "={{ $json.fields.summary || $json.fields.issuetype.description }}"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "cfe06dcd-cc9d-4eaf-898c-0aa823aa9d2a",
      "name": "참고 - 추출",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1296,
        -256
      ],
      "parameters": {
        "width": 262,
        "height": 309,
        "content": "## 🔄 Field Extraction\n\nMaps Jira fields to clean, usable data.\n\n**Extracted Fields:**\n- ID, Key, Status, Summary\n- Created & Last Updated dates\n- Assignee & Creator email\n- Due Date & Priority\n\n**Note:** Uses safe null handling with fallbacks"
      },
      "typeVersion": 1
    },
    {
      "id": "4c294ed5-4ae4-4d24-97f9-575cca486366",
      "name": "Google Sheets에 기록",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        -1008,
        -368
      ],
      "parameters": {
        "columns": {
          "value": {},
          "schema": [
            {
              "id": "id",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "id",
              "defaultMatch": true,
              "canBeUsedToMatch": true
            },
            {
              "id": "Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Last Updated",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Last Updated",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Created",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Created",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Assignee",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Assignee",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Due Date",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Due Date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Priority",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Priority",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "key",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "key",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "email",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "email",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Summary",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Summary",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "autoMapInputData",
          "matchingColumns": [
            "id"
          ]
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultName": "Backlogs"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_SHEET_ID",
          "cachedResultName": "Backlog Audit Log"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "684448c6-3f51-401c-8e3c-3e40db0b6ce2",
      "name": "참고 - Sheets",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1056,
        -480
      ],
      "parameters": {
        "width": 262,
        "height": 285,
        "content": "## 📊 Audit Trail\n\n**Setup Required:**\n1. Replace `YOUR_SHEET_ID` with Google Sheets document ID\n2. Connect Google OAuth2 credentials\n\n**Logs:** All backlog items with timestamps for historical tracking and reporting"
      },
      "typeVersion": 1
    },
    {
      "id": "ef72046f-dd55-429d-be00-c9324dbccaf1",
      "name": "지연 작업 확인",
      "type": "n8n-nodes-base.if",
      "position": [
        -1008,
        -704
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "c92605e8-e7aa-494b-86ba-ca0d20244af8",
              "operator": {
                "type": "dateTime",
                "operation": "before"
              },
              "leftValue": "={{ $json[\"Due Date\"] }}",
              "rightValue": "={{ new Date(Date.now())}}"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "b27e44f5-db46-4885-9f4a-c65ebecaeff7",
      "name": "참고 - 지연 확인",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1152,
        -992
      ],
      "parameters": {
        "width": 262,
        "height": 261,
        "content": "## ⏰ Overdue Filter\n\n**Logic:** Checks if Due Date is before today\n\n**True Branch:** Overdue tasks\n- Sends Jira notification\n- Posts Slack alert\n\n**False Branch:** Not overdue\n- Continues to priority check"
      },
      "typeVersion": 1
    },
    {
      "id": "11751464-7ff3-40fa-8dd1-c78b008a0dd2",
      "name": "담당자에게 알림",
      "type": "n8n-nodes-base.jira",
      "position": [
        -720,
        -896
      ],
      "parameters": {
        "issueKey": "={{ $json.key }}",
        "resource": "issue",
        "operation": "notify",
        "jiraVersion": "cloud",
        "jsonParameters": false,
        "additionalFields": {
          "subject": "Overdue Task: {{ $json.Summary }}",
          "textBody": "This issue is overdue and requires immediate attention. Please review and update the status or due date."
        },
        "notificationRecipientsUi": {
          "notificationRecipientsValues": {
            "users": [],
            "groups": [],
            "voters": false,
            "assignee": true,
            "reporter": true,
            "watchers": false
          }
        },
        "notificationRecipientsRestrictionsUi": {}
      },
      "typeVersion": 1
    },
    {
      "id": "d52caf19-6f96-4565-be5d-ed34d3f55158",
      "name": "참고 - Jira 알림",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -832,
        -1168
      ],
      "parameters": {
        "width": 262,
        "height": 253,
        "content": "## 📧 Jira Notification\n\n**Setup Required:**\n1. Uses same Jira credentials\n2. Removed hardcoded user/group IDs\n\n**Sends:** In-app Jira notification to reporter and assignee for overdue tasks"
      },
      "typeVersion": 1
    },
    {
      "id": "ef9c4252-1781-4ee0-b0c7-583765206a89",
      "name": "Slack 경고 - 지연",
      "type": "n8n-nodes-base.slack",
      "position": [
        -720,
        -704
      ],
      "webhookId": "2a85d9b8-5e35-4003-800d-670563648534",
      "parameters": {
        "text": "=🔴 *Overdue Backlog Item*\n\n*Summary:* {{ $json.Summary }}\n*Issue:* {{ $json.key }}\n*Due Date:* {{ $json['Due Date'] }}\n*Assignee:* {{ $json.Assignee }}\n*Status:* {{ $json.Status }}\n\nThis item is overdue and needs immediate attention.",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_CHANNEL_ID",
          "cachedResultName": "backlog-alerts"
        },
        "otherOptions": {}
      },
      "typeVersion": 2.3
    },
    {
      "id": "30057434-63d2-4d55-a527-a7f20d9233c3",
      "name": "참고 - Slack 지연",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -736,
        -752
      ],
      "parameters": {
        "width": 262,
        "height": 221,
        "content": "## 💬 Slack - Overdue\n\n**Setup Required:**\n1. Replace `YOUR_CHANNEL_ID` with Slack channel ID\n2. Connect Slack API credentials\n\n**Posts:** Real-time alert for overdue items with full context"
      },
      "typeVersion": 1
    },
    {
      "id": "1e90d54a-7e05-4cce-859c-ddd62cb498d6",
      "name": "누락된 우선순위 확인",
      "type": "n8n-nodes-base.if",
      "position": [
        -720,
        -512
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "630bf2fe-1811-4058-846e-04563f4d8530",
              "operator": {
                "type": "string",
                "operation": "empty",
                "singleValue": true
              },
              "leftValue": "={{ $json.Priority }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "198c9966-323e-45a6-bdef-3dadb6c01105",
      "name": "참고 - 우선순위 확인",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -768,
        -320
      ],
      "parameters": {
        "width": 262,
        "height": 309,
        "content": "## 🏷️ Priority Check\n\n**Logic:** Checks if Priority field is empty\n\n**True Branch:** Missing priority\n- Tags issue with \"Needs-Priority\" label\n- Posts Slack alert\n\n**False Branch:** Priority exists\n- No action needed"
      },
      "typeVersion": 1
    },
    {
      "id": "cfca36aa-3f46-4027-8d29-5ef5137e338c",
      "name": "'Needs-Priority' 태그 지정",
      "type": "n8n-nodes-base.jira",
      "position": [
        -432,
        -608
      ],
      "parameters": {
        "issueKey": "={{ $json.key }}",
        "operation": "update",
        "updateFields": {
          "labels": "={{ [\"Needs-Priority\"] }}"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "f02e8cae-0ec8-4779-a5b2-6a48ede692ea",
      "name": "참고 - 태그",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -448,
        -832
      ],
      "parameters": {
        "width": 262,
        "height": 205,
        "content": "## 🏷️ Auto-Tag Issue\n\n**Setup Required:**\n1. Uses same Jira credentials\n\n**Action:** Automatically adds \"Needs-Priority\" label to issues missing priority field for easy filtering"
      },
      "typeVersion": 1
    },
    {
      "id": "11cc0368-975c-4bc0-a2ef-c467df83569d",
      "name": "Slack 경고 - 누락된 우선순위",
      "type": "n8n-nodes-base.slack",
      "position": [
        -432,
        -416
      ],
      "webhookId": "dfb76a4c-86f2-4812-87e9-f5c841be4336",
      "parameters": {
        "text": "=⚠️ *Missing Priority*\n\n*Summary:* {{ $json.Summary }}\n*Issue:* {{ $json.key }}\n*Assignee:* {{ $json.Assignee }}\n*Status:* {{ $json.Status }}\n*Due Date:* {{ $json['Due Date'] }}\n\nThis issue has been tagged with \"Needs-Priority\" label. Please assign a priority.",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_CHANNEL_ID",
          "cachedResultName": "backlog-alerts"
        },
        "otherOptions": {}
      },
      "typeVersion": 2.3
    },
    {
      "id": "39461f27-b8b4-4d4c-baa9-bbc5f4ed29cc",
      "name": "참고 - Slack 우선순위",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -272,
        -416
      ],
      "parameters": {
        "width": 262,
        "height": 221,
        "content": "## 💬 Slack - Priority\n\n**Setup Required:**\n1. Use same Slack channel ID and credentials\n\n**Posts:** Alert for issues missing priority with action taken (tagged with label)"
      },
      "typeVersion": 1
    },
    {
      "id": "be03f5d0-6e99-44a8-8d3c-3c293fe58602",
      "name": "모든 항목 집계",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        -1008,
        -176
      ],
      "parameters": {
        "options": {},
        "aggregate": "aggregateAllItemData"
      },
      "typeVersion": 1
    },
    {
      "id": "5a04bac2-e1c5-4715-8413-776e5cd7f846",
      "name": "참고 - 집계",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1152,
        64
      ],
      "parameters": {
        "width": 262,
        "height": 258,
        "content": "## 📦 Combine Data\n\nAggregates all backlog items into single payload for AI analysis.\n\n**Purpose:** Prepares comprehensive dataset for AI to analyze patterns and generate insights"
      },
      "typeVersion": 1
    },
    {
      "id": "289d850d-aeb2-475e-a810-822204ac98a6",
      "name": "AI 요약 생성",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        -784,
        -176
      ],
      "parameters": {
        "text": "=Analyze the following Jira backlog items and generate an email for the project manager.\n\nEach item includes: issue ID, key, assignee, status, due date, priority, and summary.\n\nYour goal:\n- Identify overdue tasks (due date before today).\n- Highlight items with missing priority.\n- Summarize the overall backlog health.\n- Suggest 2-3 actionable steps to improve backlog hygiene.\n- Mention how many issues fall into each category.\n\nBacklog data:\n{{ JSON.stringify($json) }}",
        "options": {
          "systemMessage": "You are an automation assistant for project management and engineering teams.\nYour role is to analyze Jira backlog data and generate a professional HTML email for a project or engineering manager that summarizes the backlog health and highlights key actions.\n\nOutput Requirements:\n- The output must be a valid JSON object with two keys:\n  {\n    \"Subject\": \"<email subject line>\",\n    \"Body\": \"<HTML formatted email body>\"\n  }\n\nFormatting & Tone Guidelines:\n- Maintain a clear, concise, and professional business tone.\n- Use semantic HTML tags such as <p>, <ul>, <li>, <strong>, <em>, and <table> for readability.\n- Do not include any Markdown or code formatting.\n- The HTML should be visually structured and ready to send directly via email.\n- Always start with a short greeting (e.g., \"Dear Project Manager,\").\n- Follow with a summary paragraph that states the purpose of the email (e.g., \"Here's the latest Jira backlog summary for this week.\").\n- Include clearly formatted sections for:\n  1. Overdue Tasks\n  2. Missing Priorities\n  3. General Backlog Health\n- Add an HTML table if helpful for listing issue details (Key, Summary, Assignee, Due Date, Priority).\n- End the email with an \"Actionable Recommendations\" section listing 2-3 clear next steps.\n- Close politely (e.g., \"Regards, Backlog Hygiene Assistant\").\n- Keep the email content under 300 words.\n\nBehavior:\n- Analyze patterns and highlight areas needing attention.\n- Summarize counts of overdue, missing priority, or stale issues.\n- Suggest actionable next steps to improve backlog hygiene.\n- The output must be clean, valid JSON and contain no Markdown or triple backticks."
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 2
    },
    {
      "id": "3a297cb4-3dde-4a58-88a1-a127062b3fca",
      "name": "참고 - AI 분석",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -864,
        32
      ],
      "parameters": {
        "width": 262,
        "height": 309,
        "content": "## 🤖 AI Analysis Engine\n\n**What it does:**\n- Analyzes all backlog items using AI\n- Identifies patterns and trends\n- Generates structured JSON output with Subject and HTML Body\n\n**Requires:** Azure OpenAI credentials and structured output parser"
      },
      "typeVersion": 1
    },
    {
      "id": "53379a85-d8d5-4be5-bf67-e8df4e4098d7",
      "name": "Azure OpenAI 모델",
      "type": "@n8n/n8n-nodes-langchain.lmChatAzureOpenAi",
      "position": [
        -768,
        64
      ],
      "parameters": {
        "model": "gpt-4o-mini",
        "options": {}
      },
      "typeVersion": 1
    },
    {
      "id": "c78017ec-f5b1-48ce-8586-fef3d75e35a3",
      "name": "참고 - Azure",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -960,
        -176
      ],
      "parameters": {
        "width": 262,
        "height": 237,
        "content": "## 🔗 AI Model Config\n\n**Setup Required:**\n1. Replace credential ID with your Azure OpenAI credentials\n2. Model: gpt-4o-mini (cost-effective)\n\n**Connects:** To AI agent for language processing"
      },
      "typeVersion": 1
    },
    {
      "id": "6364596e-43e2-402a-a285-1740094c475f",
      "name": "구조화된 출력 파서",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        -640,
        64
      ],
      "parameters": {
        "jsonSchemaExample": "{\n\t\"Subject\": \"\",\n\t\"Body\": \"\"\n}"
      },
      "typeVersion": 1.3
    },
    {
      "id": "8a53abde-9f29-41c7-9917-ccee228748a4",
      "name": "참고 - 파서",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -592,
        64
      ],
      "parameters": {
        "width": 262,
        "height": 205,
        "content": "## 📋 Output Parser\n\nEnsures AI returns valid JSON with:\n- Subject: Email subject line\n- Body: HTML formatted email\n\n**No setup required** - connects to AI agent automatically"
      },
      "typeVersion": 1
    },
    {
      "id": "32153f43-2620-40d6-98d9-7793d756d206",
      "name": "주간 요약 이메일 발송",
      "type": "n8n-nodes-base.gmail",
      "position": [
        -432,
        -176
      ],
      "webhookId": "0ce2113a-ca08-405d-8a8b-58218e48cc02",
      "parameters": {
        "sendTo": "YOUR_EMAIL@example.com",
        "message": "={{ $json.output.Body }}",
        "options": {},
        "subject": "={{ $json.output.Subject }}"
      },
      "typeVersion": 2.1
    },
    {
      "id": "e71a8d4b-aff9-457c-bcbb-b521f9333bd2",
      "name": "참고 - 이메일",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -288,
        -80
      ],
      "parameters": {
        "width": 262,
        "height": 301,
        "content": "## 📧 Send AI Digest\n\n**Setup Required:**\n1. Replace `YOUR_EMAIL@example.com` with manager's email\n2. Connect Gmail OAuth2 credentials\n\n**Sends:** AI-generated HTML email with backlog summary and actionable recommendations"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "a3faef09-d8b1-4083-baab-1ec097f35b4e",
  "connections": {
    "53379a85-d8d5-4be5-bf67-e8df4e4098d7": {
      "ai_languageModel": [
        [
          {
            "node": "289d850d-aeb2-475e-a810-822204ac98a6",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "c5ac2613-c23e-40c3-b0ff-0bb805b876e1": {
      "main": [
        [
          {
            "node": "79cc28a5-7047-40ee-816e-ea61635ad230",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "289d850d-aeb2-475e-a810-822204ac98a6": {
      "main": [
        [
          {
            "node": "32153f43-2620-40d6-98d9-7793d756d206",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "be03f5d0-6e99-44a8-8d3c-3c293fe58602": {
      "main": [
        [
          {
            "node": "289d850d-aeb2-475e-a810-822204ac98a6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ef72046f-dd55-429d-be00-c9324dbccaf1": {
      "main": [
        [
          {
            "node": "11751464-7ff3-40fa-8dd1-c78b008a0dd2",
            "type": "main",
            "index": 0
          },
          {
            "node": "ef9c4252-1781-4ee0-b0c7-583765206a89",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "1e90d54a-7e05-4cce-859c-ddd62cb498d6",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "79cc28a5-7047-40ee-816e-ea61635ad230": {
      "main": [
        [
          {
            "node": "be03f5d0-6e99-44a8-8d3c-3c293fe58602",
            "type": "main",
            "index": 0
          },
          {
            "node": "ef72046f-dd55-429d-be00-c9324dbccaf1",
            "type": "main",
            "index": 0
          },
          {
            "node": "4c294ed5-4ae4-4d24-97f9-575cca486366",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1e90d54a-7e05-4cce-859c-ddd62cb498d6": {
      "main": [
        [
          {
            "node": "cfca36aa-3f46-4027-8d29-5ef5137e338c",
            "type": "main",
            "index": 0
          },
          {
            "node": "11cc0368-975c-4bc0-a2ef-c467df83569d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ef8e559f-6e94-42c5-a70e-6cfd6ddea13f": {
      "main": [
        [
          {
            "node": "c5ac2613-c23e-40c3-b0ff-0bb805b876e1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6364596e-43e2-402a-a285-1740094c475f": {
      "ai_outputParser": [
        [
          {
            "node": "289d850d-aeb2-475e-a810-822204ac98a6",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

이 워크플로우를 어떻게 사용하나요?

위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.

이 워크플로우는 어떤 시나리오에 적합한가요?

고급

유료인가요?

이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.

워크플로우 정보
난이도
고급
노드 수31
카테고리-
노드 유형12
난이도 설명

고급 사용자를 위한 16+개 노드의 복잡한 워크플로우

저자
Rahul Joshi

Rahul Joshi

@rahul08

Rahul Joshi is a seasoned technology leader specializing in the n8n automation tool and AI-driven workflow automation. With deep expertise in building open-source workflow automation and self-hosted automation platforms, he helps organizations eliminate manual processes through intelligent n8n ai agent automation solutions.

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34