8
n8n 中文网amn8n.com

每日Jira工单摘要生成器(GPT-5 + Jira API)

高级

这是一个AI Summarization, Multimodal AI领域的自动化工作流,包含 24 个节点。主要使用 Set, Code, Jira, Gmail, Merge 等节点。 使用GPT-5和Jira API的每日Jira工单摘要生成器

前置要求
  • Google 账号和 Gmail API 凭证
  • OpenAI API Key
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
  "meta": {
    "instanceId": "d1786ab0d745a7498abf13a9c2cdabb1374c006e889b79eef64ce0386b8f8a41"
  },
  "nodes": [
    {
      "id": "aac771be-d274-4ede-93ef-412767b3ee7a",
      "name": "当点击“测试工作流”时",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -1100,
        400
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "b38b29ce-860c-4b2c-a8e9-2785aee2dbbb",
      "name": "合并",
      "type": "n8n-nodes-base.merge",
      "position": [
        420,
        300
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineAll"
      },
      "typeVersion": 3.1
    },
    {
      "id": "2327ba0f-e22f-4a1f-92a7-711ff9a547f2",
      "name": "聚合",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        0,
        20
      ],
      "parameters": {
        "options": {},
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "fieldToAggregate": "output"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "0704872b-8cb4-4054-b758-a520eb631059",
      "name": "合并5",
      "type": "n8n-nodes-base.merge",
      "position": [
        440,
        680
      ],
      "parameters": {
        "mode": "combine",
        "options": {},
        "combineBy": "combineAll"
      },
      "typeVersion": 3.1
    },
    {
      "id": "a10e25fe-da51-4883-bf9b-a756343b4f81",
      "name": "获取今日所有工单",
      "type": "n8n-nodes-base.jira",
      "position": [
        -600,
        480
      ],
      "parameters": {
        "limit": 12,
        "options": {
          "jql": "=project = SUP AND created >= startOfDay()"
        },
        "operation": "getAll"
      },
      "credentials": {
        "jiraSoftwareCloudApi": {
          "id": "eLBjV5VAQ7XxyjyY",
          "name": "Jira SW Cloud account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "758029d7-ef63-4c6a-8fb5-df9a0469b21b",
      "name": "获取所有工单",
      "type": "n8n-nodes-base.jira",
      "position": [
        -700,
        260
      ],
      "parameters": {
        "options": {
          "jql": "=project = {{ $json['Project Key'] }} AND created >= startOfDay()"
        },
        "operation": "getAll",
        "returnAll": true
      },
      "credentials": {
        "jiraSoftwareCloudApi": {
          "id": "eLBjV5VAQ7XxyjyY",
          "name": "Jira SW Cloud account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "d0aa22aa-35a1-4825-b92c-3f0d12fa8e33",
      "name": "拆分输出",
      "type": "n8n-nodes-base.splitOut",
      "position": [
        -480,
        260
      ],
      "parameters": {
        "include": "selectedOtherFields",
        "options": {},
        "fieldToSplitOut": "key",
        "fieldsToInclude": "fields.description, fields.summary"
      },
      "typeVersion": 1
    },
    {
      "id": "f665fb25-944c-4e2b-a201-fa2ec43317a7",
      "name": "循环处理工单",
      "type": "n8n-nodes-base.splitInBatches",
      "position": [
        -220,
        120
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 3
    },
    {
      "id": "abbfeb78-c5ad-4192-a372-8686df79a479",
      "name": "工单摘要生成器",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        660,
        300
      ],
      "parameters": {
        "text": "=Ticket Title:\n{{ $json['fields.summary'] }}\n\nTicket Description:\n{{ $json['fields.description'] }}\n\nTicket Comments:\n{{ JSON.stringify($json.body.content) }}\n\nSummarize all the ticket information, the comments, also the solution found\n\nOutput using this json format:\n{\n  \"Ticket Summary\": \"Write a professional and concise summary that combines all relevant tickets into a single narrative. Include the core issue reported in each ticket, key findings from the comments or conversations (such as user feedback, internal investigation, and developer notes), and the progress or troubleshooting steps taken. Ensure the summary reads fluently like a report, highlights patterns across tickets if any, and avoids repeating ticket IDs unless necessary. Use clear language for stakeholders who may not be technical.\",\n  \"Proposed Solution\": \"Step-by-step explanation or resolution applied.\"\n}",
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.6
    },
    {
      "id": "3b47508e-37fe-46c2-968a-c51fd4dc0fae",
      "name": "从工单获取评论",
      "type": "n8n-nodes-base.jira",
      "position": [
        -100,
        520
      ],
      "parameters": {
        "options": {},
        "issueKey": "={{ $json.key }}",
        "resource": "issueComment",
        "operation": "getAll",
        "returnAll": true
      },
      "credentials": {
        "jiraSoftwareCloudApi": {
          "id": "eLBjV5VAQ7XxyjyY",
          "name": "Jira SW Cloud account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "a7706ca1-36eb-42a3-8017-13da6cc7bd90",
      "name": "设置输出",
      "type": "n8n-nodes-base.set",
      "position": [
        840,
        760
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "={\n  \"output\": {\n    \"Ticket Summary\": {{ JSON.stringify($json.output['Ticket Summary']) }},\n    \"Proposed Solution\": {{ JSON.stringify($json.output['Proposed Solution']) }},\n    \"Key\": {{ JSON.stringify($json.key) }},\n    \"Title\": {{ JSON.stringify($json['fields.summary']) }},\n    \"Description\": {{ JSON.stringify($json['fields.description']) }}\n  }\n}"
      },
      "typeVersion": 3.4
    },
    {
      "id": "effe713c-a706-42df-a090-4ec561571aed",
      "name": "格式化正文",
      "type": "n8n-nodes-base.code",
      "position": [
        220,
        20
      ],
      "parameters": {
        "jsCode": "const tickets = $json.output;\nconst formatted = tickets.map(ticket => {\n  return `Key: ${ticket.Key}\nTitle: ${ticket.Title}\nDescription: ${ticket.Description}\nSummaries: ${ticket[\"Ticket Summary\"]}\nSolution: ${ticket[\"Proposed Solution\"]}\nTicket Link: https://nodemationhub.atlassian.net/jira/servicedesk/projects/SUP/queues/custom/1/${ticket.Key}\\n`;\n}).join('\\n');\n\nreturn [\n  {\n    json: {\n      formattedOutput: formatted\n    }\n  }\n];\n"
      },
      "typeVersion": 2
    },
    {
      "id": "1474c7dc-acf4-4cd4-a770-4d3fa597ec02",
      "name": "发送工单摘要",
      "type": "n8n-nodes-base.gmail",
      "position": [
        440,
        20
      ],
      "webhookId": "3aa3755d-4c6f-4914-aa75-b7bf30203ebd",
      "parameters": {
        "sendTo": "n8n_test_result_replace_me@yopmail.com",
        "message": "={{ $json.formattedOutput }}",
        "options": {
          "appendAttribution": false
        },
        "subject": "=Daily Ticket Summaries – {{ $now.format('dd MMM yyyy') }}",
        "emailType": "text"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "CeBpTZBQSAMKVKJY",
          "name": "Gmail account (Billy Email 2)"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "0af73efa-e3ed-4b48-aa30-d54486fc7861",
      "name": "OpenAI 聊天模型",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        740,
        540
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-5",
          "cachedResultName": "gpt-5"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "id": "MGwGMKEkdcjzlYCw",
          "name": "OpenAi account"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "68a48d49-276a-430a-b918-e161350d7676",
      "name": "结构化输出解析器",
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "position": [
        960,
        520
      ],
      "parameters": {
        "jsonSchemaExample": "{\n  \"Ticket Summary\": \"Write a professional and concise summary that combines all relevant tickets into a single narrative. Include the core issue reported in each ticket, key findings from the comments or conversations (such as user feedback, internal investigation, and developer notes), and the progress or troubleshooting steps taken. Ensure the summary reads fluently like a report, highlights patterns across tickets if any, and avoids repeating ticket IDs unless necessary. Use clear language for stakeholders who may not be technical.\",\n  \"Proposed Solution\": \"Step-by-step explanation or resolution applied.\"\n}"
      },
      "typeVersion": 1.2
    },
    {
      "id": "13de2032-fdf3-421b-9b15-c1a91e23cc42",
      "name": "设置项目键",
      "type": "n8n-nodes-base.set",
      "position": [
        -880,
        260
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "f9c91322-0594-46f1-af00-21bd6b7f93a5",
              "name": "Project Key",
              "type": "string",
              "value": "SUP"
            }
          ]
        }
      },
      "typeVersion": 3.4
    },
    {
      "id": "d5edcb5b-916b-498e-a1b9-edb008d05ca6",
      "name": "无筛选获取所有工单",
      "type": "n8n-nodes-base.jira",
      "position": [
        -820,
        480
      ],
      "parameters": {
        "limit": 2,
        "options": {
          "jql": "=project = {{ $json[\"Project Key\"] }}"
        },
        "operation": "getAll"
      },
      "credentials": {
        "jiraSoftwareCloudApi": {
          "id": "eLBjV5VAQ7XxyjyY",
          "name": "Jira SW Cloud account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "3c440031-3e61-4f63-b6d5-74679081a06b",
      "name": "便签1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1180,
        -620
      ],
      "parameters": {
        "color": 4,
        "width": 640,
        "height": 360,
        "content": "## 🎫 使用GPT-5和Jira API的每日Jira工单摘要生成器"
      },
      "typeVersion": 1
    },
    {
      "id": "2cfb5098-77bf-4ba6-8a6d-d166a6ae12b5",
      "name": "便签",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1180,
        -240
      ],
      "parameters": {
        "color": 4,
        "width": 640,
        "height": 300,
        "content": "## 需要设置"
      },
      "typeVersion": 1
    },
    {
      "id": "90ba0d1a-47e9-4807-ae45-3367c79f15e8",
      "name": "便签2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -520,
        -620
      ],
      "parameters": {
        "color": 4,
        "width": 640,
        "height": 460,
        "content": "## 📋 工作流流程概览"
      },
      "typeVersion": 1
    },
    {
      "id": "59006434-fa20-467c-b405-30ea1ec7197c",
      "name": "便签4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        180,
        -920
      ],
      "parameters": {
        "color": 4,
        "width": 380,
        "height": 760,
        "content": "# 👋 您好,我是Billy"
      },
      "typeVersion": 1
    },
    {
      "id": "c3c26cc1-1187-49be-8f5e-c6aa6fd355ce",
      "name": "便签3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -740,
        160
      ],
      "parameters": {
        "color": 4,
        "width": 220,
        "height": 280,
        "content": "配置:"
      },
      "typeVersion": 1
    },
    {
      "id": "86acccd2-f4c5-445a-b1c6-82a8e88ca73a",
      "name": "便签 6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        360,
        -120
      ],
      "parameters": {
        "color": 4,
        "width": 380,
        "height": 380,
        "content": "## Gmail - 发送通知"
      },
      "typeVersion": 1
    },
    {
      "id": "c83cb8a2-9a61-4195-8167-503287b8787e",
      "name": "计划触发器",
      "type": "n8n-nodes-base.scheduleTrigger",
      "position": [
        -1100,
        120
      ],
      "parameters": {
        "rule": {
          "interval": [
            {}
          ]
        }
      },
      "typeVersion": 1.2
    }
  ],
  "pinData": {},
  "connections": {
    "Merge": {
      "main": [
        [
          {
            "node": "Ticket Summarizer",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Merge5": {
      "main": [
        [
          {
            "node": "Set Output",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Aggregate": {
      "main": [
        [
          {
            "node": "Format Body",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out": {
      "main": [
        [
          {
            "node": "Loop Tickets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Output": {
      "main": [
        [
          {
            "node": "Loop Tickets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Format Body": {
      "main": [
        [
          {
            "node": "Send Ticket Summaries",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Loop Tickets": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Get Comments from Ticket",
            "type": "main",
            "index": 0
          },
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          },
          {
            "node": "Merge5",
            "type": "main",
            "index": 1
          }
        ]
      ]
    },
    "Get All Tickets": {
      "main": [
        [
          {
            "node": "Split Out",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Set Project Key": {
      "main": [
        [
          {
            "node": "Get All Tickets",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Schedule Trigger": {
      "main": [
        [
          {
            "node": "Set Project Key",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Ticket Summarizer",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Ticket Summarizer": {
      "main": [
        [
          {
            "node": "Merge5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get Comments from Ticket": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Ticket Summarizer",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "When clicking ‘Test workflow’": {
      "main": [
        [
          {
            "node": "Set Project Key",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
常见问题

如何使用这个工作流?

复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。

这个工作流适合什么场景?

高级 - AI 摘要总结, 多模态 AI

需要付费吗?

本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。

工作流信息
难度等级
高级
节点数量24
分类2
节点类型14
难度说明

适合高级用户,包含 16+ 个节点的复杂工作流

作者
Billy Christi

Billy Christi

@billy

I build scalable automation systems with n8n to help businesses save time and cut costs. 💼 n8n expert available for new projects 📩 billychartanto@gmail.com

外部链接
在 n8n.io 查看

分享此工作流