비정형 데이터에서 정형 데이터로
고급
이것은Document Extraction, AI Summarization분야의자동화 워크플로우로, 16개의 노드를 포함합니다.주로 DataTable, GmailTrigger, DataTableTool, EmailReadImap, Agent 등의 노드를 사용하며. 行动计划:사용OpenAI模型처리이메일源및데이터表
사전 요구사항
- •Google 계정 및 Gmail API 인증 정보
- •OpenAI API Key
- •Google Gemini API Key
사용된 노드 (16)
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
"id": "zGGBdrGLXA50cO1A",
"meta": {
"instanceId": "a4bfc93e975ca233ac45ed7c9227d84cf5a2329310525917adaf3312e10d5462",
"templateCredsSetupCompleted": true
},
"name": "From Unstructured Data To Structured Data",
"tags": [],
"nodes": [
{
"id": "97cce9f4-cb8e-4ea7-872b-e1f8054afc3a",
"name": "Gmail 트리거",
"type": "n8n-nodes-base.gmailTrigger",
"position": [
-480,
-224
],
"parameters": {
"filters": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
}
},
"credentials": {
"gmailOAuth2": {
"id": "nyuHvSX5HuqfMPlW",
"name": "Gmail account (n3w.it)"
}
},
"typeVersion": 1.3
},
{
"id": "13fffb5b-724c-4adf-8c99-5e16f10a5324",
"name": "OpenAI 채팅 모델",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
-112,
160
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "TefveNaDaMERl1hY",
"name": "OpenAi account (Eure)"
}
},
"typeVersion": 1.2
},
{
"id": "90d9983b-b4a6-427f-970c-388bae72fb1f",
"name": "Structured Output Parser",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
128,
160
],
"parameters": {
"autoFix": true,
"schemaType": "manual",
"inputSchema": "{\n\t\"type\": \"object\",\n\t\"properties\": {\n\t\t\"from\": {\n\t\t\t\"type\": \"string\"\n\t\t},\n\t\t\"to\": {\n\t\t\t\"type\": \"string\"\n\t\t},\n \"subject\": {\n\t\t\t\"type\": \"string\"\n\t\t},\n \"summarize\": {\n\t\t\t\"type\": \"string\"\n\t\t}\n\t}\n}"
},
"typeVersion": 1.3
},
{
"id": "1165ea37-01f5-4835-b04d-c91395519e04",
"name": "OpenAI 채팅 모델1",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
80,
336
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4.1-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "TefveNaDaMERl1hY",
"name": "OpenAi account (Eure)"
}
},
"typeVersion": 1.2
},
{
"id": "481c0914-84c3-4c5f-9247-ec709bf18e53",
"name": "행 삽입",
"type": "n8n-nodes-base.dataTable",
"position": [
288,
-64
],
"parameters": {
"columns": {
"value": {
"To": "={{ $json.output.to }}",
"From": "={{ $json.output.from }}",
"Subject": "={{ $json.output.subject }}",
"Summary": "={{ $json.output.summarize }}"
},
"schema": [
{
"id": "From",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "From",
"defaultMatch": false
},
{
"id": "Subject",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Subject",
"defaultMatch": false
},
{
"id": "Summary",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "Summary",
"defaultMatch": false
},
{
"id": "To",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "To",
"defaultMatch": false
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"options": {},
"dataTableId": {
"__rl": true,
"mode": "list",
"value": "LZKeHWCZU60XbKyM",
"cachedResultUrl": "/projects/mfFxBtuhQcXKlWHw/datatables/LZKeHWCZU60XbKyM",
"cachedResultName": "Email output parser"
}
},
"typeVersion": 1
},
{
"id": "ca682a7e-9630-4c8b-b8eb-17f557354eb8",
"name": "이메일 트리거 (IMAP)",
"type": "n8n-nodes-base.emailReadImap",
"position": [
-480,
-64
],
"parameters": {
"options": {}
},
"credentials": {
"imap": {
"id": "k31W9oGddl9pMDy4",
"name": "IMAP info@n3witalia.com"
}
},
"typeVersion": 2.1
},
{
"id": "15c2dbd5-6e23-4920-843a-7ce7a43fdcf5",
"name": "Microsoft Outlook 트리거",
"type": "n8n-nodes-base.microsoftOutlookTrigger",
"position": [
-480,
80
],
"parameters": {
"filters": {},
"options": {},
"pollTimes": {
"item": [
{
"mode": "everyMinute"
}
]
}
},
"credentials": {
"microsoftOutlookOAuth2Api": {
"id": "oYlYok8LYOhL04rM",
"name": "Microsoft Outlook account (dave85heat@hotmail.it)"
}
},
"typeVersion": 1
},
{
"id": "04dc1bd7-6ecb-457f-835b-e67b910e30ad",
"name": "파싱 에이전트",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
-64,
-64
],
"parameters": {
"text": "={{JSON.stringify($json)}}",
"options": {
"systemMessage": "=**Role:**\nYou are a data extraction and parsing agent integrated in an n8n workflow.\n\n**Goal:**\nGiven a JSON input containing one or more emails , your task is to parse and extract structured information from the email content.\n\n**Instructions:**\n\n1. Carefully read the email content provided in the `body` field of the JSON input.\n2. Identify and extract key entities and data points mentioned in the text \n3. Return the extracted data in a **clean, structured JSON format**.\n4. If specific data cannot be found, return the field as `null` instead of omitting it.\n5. Preserve the original structure of the input email list, so that each parsed result corresponds to the same email in the input array.\n6. Do not include any explanations, reasoning, or text outside of JSON.\n\n**Important:**\n\n* Be consistent with field names and data formats (use ISO 8601 for dates, plain strings for text).\n* Never return unstructured text or commentary — only valid JSON.\n* Output should always be a JSON array of parsed objects."
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2.2
},
{
"id": "b0d03646-57f1-4eb0-8f1c-3c27c3900466",
"name": "스티커 노트",
"type": "n8n-nodes-base.stickyNote",
"position": [
-512,
-928
],
"parameters": {
"color": 3,
"width": 976,
"height": 400,
"content": "## How to Transform Unstructured Email Data into Structured Format Using an AI Agent\n\nThis workflow leverages artificial intelligence to automatically transform **unstructured email data** from multiple sources — including **Gmail**, **Outlook**, and **IMAP** — into **structured** and summarized information.\n\nThe workflow retrieves incoming emails and sends their content to an **AI agent** specifically designed to parse and interpret unstructured text. The agent extracts key metadata and insights from each message, including:\n\n* **From** – the sender’s email address\n* **To** – the recipient’s email address\n* **Subject** – the subject line of the email\n* **Summarize** – a concise summary of the email body generated by the AI\n\nOnce processed, the structured output is stored in a **database table**. This allows for easy indexing, reporting, and integration with other business systems.\n\nBy automating this process, the flow ensures consistent, searchable, and easily digestible information from diverse email sources significantly reducing manual review and improving workflow efficiency."
},
"typeVersion": 1
},
{
"id": "17751b90-4db6-45d7-b426-db157e1199db",
"name": "스티커 노트1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-512,
-512
],
"parameters": {
"width": 480,
"height": 176,
"content": "## STEP 1\nCreata a n8n table with the following fields:\n- From\n- To\n- Subject\n- Summary"
},
"typeVersion": 1
},
{
"id": "fc864e0b-f04e-4996-a012-fbe7ad52dc6b",
"name": "스티커 노트2",
"type": "n8n-nodes-base.stickyNote",
"position": [
-16,
-512
],
"parameters": {
"width": 480,
"height": 176,
"content": "## STEP 2\nConnect triggers from different sources:\n- Gmail\n- Outlook\n- Imap"
},
"typeVersion": 1
},
{
"id": "ebabb739-ecb9-450b-abb5-1d27d6a95832",
"name": "스티커 노트3",
"type": "n8n-nodes-base.stickyNote",
"position": [
112,
96
],
"parameters": {
"width": 272,
"height": 176,
"content": "Set the structured data from json"
},
"typeVersion": 1
},
{
"id": "84b10b19-a1a2-4fac-b791-8ef5aa1160c6",
"name": "채팅 메시지 수신 시",
"type": "@n8n/n8n-nodes-langchain.chatTrigger",
"position": [
576,
-64
],
"webhookId": "cd94eebb-fa9b-4b7e-b4ed-09ddfd80fbf0",
"parameters": {
"options": {}
},
"typeVersion": 1.3
},
{
"id": "e846ffd6-7ee5-4486-9f6d-a73f349814b9",
"name": "이메일 에이전트",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
880,
-64
],
"parameters": {
"options": {
"systemMessage": "You are a helpful assistant.\n\nUse always the \"Emails\" tool to search for the request."
}
},
"typeVersion": 2.2
},
{
"id": "c833e8c1-68d5-421c-9f71-0d928b14ad19",
"name": "이메일",
"type": "n8n-nodes-base.dataTableTool",
"position": [
1056,
160
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "From",
"keyValue": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('conditions0_Value', `Search the emails sent from`, 'string') }}",
"condition": "ilike"
},
{
"keyName": "Subject",
"keyValue": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('conditions1_Value', `Search the emails with these subject`, 'string') }}",
"condition": "ilike"
},
{
"keyName": "To",
"keyValue": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('conditions2_Value', `Search the emails sent to`, 'string') }}",
"condition": "ilike"
},
{
"keyName": "Summary",
"keyValue": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('conditions3_Value', `Search the emails with these summaries`, 'string') }}",
"condition": "ilike"
}
]
},
"operation": "get",
"returnAll": "={{ /*n8n-auto-generated-fromAI-override*/ $fromAI('Return_All', ``, 'boolean') }}",
"dataTableId": {
"__rl": true,
"mode": "list",
"value": "LZKeHWCZU60XbKyM",
"cachedResultUrl": "/projects/mfFxBtuhQcXKlWHw/datatables/LZKeHWCZU60XbKyM",
"cachedResultName": "Email output parser"
}
},
"typeVersion": 1
},
{
"id": "16feafab-fa9e-4acb-85b5-cd04e6b621d0",
"name": "Google Gemini 채팅 모델",
"type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
"position": [
800,
144
],
"parameters": {
"options": {}
},
"credentials": {
"googlePalmApi": {
"id": "0p34rXqIqy8WuoPg",
"name": "Google Gemini(PaLM) Api account"
}
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "7527b0d6-cf52-4bd1-81d5-ad39002dda1f",
"connections": {
"c833e8c1-68d5-421c-9f71-0d928b14ad19": {
"ai_tool": [
[
{
"node": "e846ffd6-7ee5-4486-9f6d-a73f349814b9",
"type": "ai_tool",
"index": 0
}
]
]
},
"97cce9f4-cb8e-4ea7-872b-e1f8054afc3a": {
"main": [
[
{
"node": "04dc1bd7-6ecb-457f-835b-e67b910e30ad",
"type": "main",
"index": 0
}
]
]
},
"04dc1bd7-6ecb-457f-835b-e67b910e30ad": {
"main": [
[
{
"node": "481c0914-84c3-4c5f-9247-ec709bf18e53",
"type": "main",
"index": 0
}
]
]
},
"13fffb5b-724c-4adf-8c99-5e16f10a5324": {
"ai_languageModel": [
[
{
"node": "04dc1bd7-6ecb-457f-835b-e67b910e30ad",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"1165ea37-01f5-4835-b04d-c91395519e04": {
"ai_languageModel": [
[
{
"node": "90d9983b-b4a6-427f-970c-388bae72fb1f",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"ca682a7e-9630-4c8b-b8eb-17f557354eb8": {
"main": [
[
{
"node": "04dc1bd7-6ecb-457f-835b-e67b910e30ad",
"type": "main",
"index": 0
}
]
]
},
"16feafab-fa9e-4acb-85b5-cd04e6b621d0": {
"ai_languageModel": [
[
{
"node": "e846ffd6-7ee5-4486-9f6d-a73f349814b9",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"90d9983b-b4a6-427f-970c-388bae72fb1f": {
"ai_outputParser": [
[
{
"node": "04dc1bd7-6ecb-457f-835b-e67b910e30ad",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"15c2dbd5-6e23-4920-843a-7ce7a43fdcf5": {
"main": [
[
{
"node": "04dc1bd7-6ecb-457f-835b-e67b910e30ad",
"type": "main",
"index": 0
}
]
]
},
"84b10b19-a1a2-4fac-b791-8ef5aa1160c6": {
"main": [
[
{
"node": "e846ffd6-7ee5-4486-9f6d-a73f349814b9",
"type": "main",
"index": 0
}
]
]
}
}
}자주 묻는 질문
이 워크플로우를 어떻게 사용하나요?
위의 JSON 구성 코드를 복사하여 n8n 인스턴스에서 새 워크플로우를 생성하고 "JSON에서 가져오기"를 선택한 후, 구성을 붙여넣고 필요에 따라 인증 설정을 수정하세요.
이 워크플로우는 어떤 시나리오에 적합한가요?
고급 - 문서 추출, AI 요약
유료인가요?
이 워크플로우는 완전히 무료이며 직접 가져와 사용할 수 있습니다. 다만, 워크플로우에서 사용하는 타사 서비스(예: OpenAI API)는 사용자 직접 비용을 지불해야 할 수 있습니다.
관련 워크플로우 추천
Fireflies 회의 녹취 및 요약 자동화
Gemini 및 Gmail을 사용하여 Fireflies 트랜스크립트에서 자동화된 회의 요약
Set
Code
Gmail
+
Set
Code
Gmail
26 노드Davide
문서 추출
Gemini에서 Google Sheets로 자동화된 학술 논문 메타데이터 및 변수 추출
자동화된 학술 논문 메타데이터 및 변수 추출, Gemini에서 Google Sheets로
Set
Code
Wait
+
Set
Code
Wait
39 노드OwenLee
문서 추출
시각화 참조 라이브러리에서 n8n 노드를 탐색
可视化 참조 라이브러리에서 n8n 노드를 탐색
If
Ftp
Set
+
If
Ftp
Set
113 노드I versus AI
기타
ScrapeGraph AI를 사용하여 n8n 커뮤니티에서 최근 추가된 워크플로우 추출
ScrapeGraphAI와 Gemini를 사용하여 n8n 커뮤니티가 최근 추가한 워크플로우를 추출하고 저장합니다.
Set
Merge
Split Out
+
Set
Merge
Split Out
21 노드Davide
기타
Google Slides 프레젠테이션 자동 번역
Gemini 기반 AI를 활용하여 Google Slides 프레젠테이션을 원하는 언어로 자동 번역
Set
Code
Wait
+
Set
Code
Wait
18 노드Davide
문서 추출
AI 기반 GPT-4-Turbo 과제 채점 및 다중 형식 출력
GPT-4-Turbo를 사용한 과제 채점 및 다중 형식 보고서 생성 자동화
Set
Code
Webhook
+
Set
Code
Webhook
15 노드Cheng Siong Chin
문서 추출
워크플로우 정보
난이도
고급
노드 수16
카테고리2
노드 유형11
저자
Davide
@n3witaliaFull-stack Web Developer based in Italy specialising in Marketing & AI-powered automations. For business enquiries, send me an email at info@n3w.it or add me on Linkedin.com/in/davideboizza
외부 링크
n8n.io에서 보기 →
이 워크플로우 공유