多级文档审批与审计工作流
高级
这是一个Document Extraction, Multimodal AI领域的自动化工作流,包含 38 个节点。主要使用 If, Set, Form, Gmail, Crypto 等节点。 使用 Supabase 和 Gmail 自动化多级工作流的文档审批
前置要求
- •Google 账号和 Gmail API 凭证
- •HTTP Webhook 端点(n8n 会自动生成)
- •Supabase URL 和 API Key
- •可能需要目标 API 的认证凭证
工作流预览
可视化展示节点连接关系,支持缩放和平移
导出工作流
复制以下 JSON 配置到 n8n 导入,即可使用此工作流
{
"id": "5myl9GWWVupDIebk",
"meta": {
"instanceId": "70273a2379644db63ce659827cfd8abac2d0b189210eafa02dd5376e3a62cd1d",
"templateCredsSetupCompleted": true
},
"name": "多级文档审批与审计工作流",
"tags": [],
"nodes": [
{
"id": "9e61af97-d649-4260-becd-ea8865bad9ff",
"name": "Webhook",
"type": "n8n-nodes-base.webhook",
"position": [
-560,
1104
],
"webhookId": "df187a3e-6f1c-4dc6-9821-47f3a043c43e",
"parameters": {
"path": "approve",
"options": {},
"responseMode": "responseNode"
},
"typeVersion": 2.1
},
{
"id": "cb8cc119-29a2-48e7-84bf-81f79d57c27e",
"name": "审计1",
"type": "n8n-nodes-base.supabase",
"position": [
-256,
2032
],
"parameters": {
"tableId": "audit_logs",
"fieldsUi": {
"fieldValues": [
{
"fieldId": "document_id",
"fieldValue": "={{ $('get_approval_data').item.json.document_id }}"
},
{
"fieldId": "action",
"fieldValue": "approval_sent"
},
{
"fieldId": "actor_email",
"fieldValue": "system@workflow"
},
{
"fieldId": "details",
"fieldValue": "=Level {{ $('get_next_level').item.json.level_number }} requests sent to role_id {{ $('generate_uuid').item.json.role_id}} "
}
]
}
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "7dd27017-db27-40d2-ae81-1f5e8bd296b5",
"name": "最终更新文档",
"type": "n8n-nodes-base.supabase",
"position": [
80,
1808
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "id",
"keyValue": "={{ $('get_approval_data').item.json.document_id }}",
"condition": "eq"
}
]
},
"tableId": "documents",
"fieldsUi": {
"fieldValues": [
{
"fieldId": "status",
"fieldValue": "={{ $json.status }}"
},
{
"fieldId": "updated_at",
"fieldValue": "={{ new Date(Date.now()).toISOString() }}"
}
]
},
"operation": "update"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "564ca96f-4b65-4f0b-b075-1a02eed98893",
"name": "保存文档",
"type": "n8n-nodes-base.supabase",
"position": [
816,
0
],
"parameters": {
"tableId": "documents",
"fieldsUi": {
"fieldValues": [
{
"fieldId": "title",
"fieldValue": "={{ $('start_approval_form').item.json.Title }}"
},
{
"fieldId": "content",
"fieldValue": "={{ $('start_approval_form').item.json.data[0].filename }}"
},
{
"fieldId": "submitted_by",
"fieldValue": "1"
},
{
"fieldId": "status",
"fieldValue": "Pending"
}
]
}
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "98fbb076-c588-4e88-8a62-b91c6adab3c2",
"name": "获取工作流第一级",
"type": "n8n-nodes-base.supabase",
"position": [
1184,
0
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "level_number",
"keyValue": "1"
}
]
},
"tableId": "workflow_levels",
"operation": "get"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "550fde74-26c2-4a04-bfcb-cc801f2bdf50",
"name": "按角色获取用户",
"type": "n8n-nodes-base.supabase",
"position": [
448,
224
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "role_id",
"keyValue": "={{ $json.role_id }}",
"condition": "eq"
}
]
},
"tableId": "users",
"operation": "getAll",
"returnAll": true
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "d45ef572-ca77-4e3b-b040-933d14d54763",
"name": "创建UUID令牌",
"type": "n8n-nodes-base.crypto",
"position": [
816,
224
],
"parameters": {
"action": "generate"
},
"typeVersion": 1
},
{
"id": "5b325046-052d-4f11-960c-f97a6ac79703",
"name": "创建审批记录",
"type": "n8n-nodes-base.supabase",
"position": [
1184,
224
],
"parameters": {
"tableId": "approvals",
"fieldsUi": {
"fieldValues": [
{
"fieldId": "document_id",
"fieldValue": "={{ $('save_document').item.json.id }}"
},
{
"fieldId": "level_id",
"fieldValue": "={{ $('get_workflow_level_one').item.json.id }}"
},
{
"fieldId": "approver_id",
"fieldValue": "={{ $json.id }}"
},
{
"fieldId": "token",
"fieldValue": "={{ $json.data }}"
},
{
"fieldId": "status",
"fieldValue": "={{ $('save_document').item.json.status }}"
},
{
"fieldId": "expiry_time",
"fieldValue": "={{ new Date(Date.now() + 48 * 60 * 60 * 1000) }}"
}
]
}
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "cd4dc454-6893-44d7-89d5-b4703e1787d7",
"name": "发送邮件",
"type": "n8n-nodes-base.gmail",
"position": [
816,
464
],
"webhookId": "7eb15f9c-c5a6-402b-8c53-ac0f1094602c",
"parameters": {
"sendTo": "={{ $('create_uuid_token').item.json.email }}",
"message": "=<p>Please review: {{ $('save_document').item.json.title }}</p>\n<p>\n <a href=\"http://localhost:5678/webhook-test/doc-approval/approve?token={{$json.token}}&decision=approved\">Approve</a> |\n <a href=\"http://localhost:5678/webhook-test/doc-approvalapprove?token={{$json.token}}&decision=rejected\">Reject</a>\n</p>",
"options": {
"attachmentsUi": {
"attachmentsBinary": [
{}
]
}
},
"subject": "=Document Approval Request - {{ $('save_document').item.json.title }}"
},
"credentials": {
"gmailOAuth2": {
"id": "nbxshtC1cYPiRV0b",
"name": "Gmail account"
}
},
"typeVersion": 2.1
},
{
"id": "879f0811-789f-426e-8a09-caf7c326b3fc",
"name": "审计邀请",
"type": "n8n-nodes-base.supabase",
"position": [
1200,
464
],
"parameters": {
"tableId": "audit_logs",
"fieldsUi": {
"fieldValues": [
{
"fieldId": "document_id",
"fieldValue": "={{ $('save_document').item.json.id }}"
},
{
"fieldId": "action",
"fieldValue": "approval_sent"
},
{
"fieldId": "actor_email",
"fieldValue": "system@workflow"
},
{
"fieldId": "details",
"fieldValue": "=Level 1 requests sent to role_id {{ $('get_workflow_level_one').item.json.role_id}} "
}
]
}
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "4c3db623-dc84-47cd-81c3-2d1553f0218b",
"name": "启动审批表单",
"type": "n8n-nodes-base.formTrigger",
"position": [
128,
0
],
"webhookId": "f0834914-b1a9-4176-9910-9e67714b9495",
"parameters": {
"options": {
"path": "approval-process-start",
"ignoreBots": true,
"buttonLabel": "Send for Approval",
"appendAttribution": true,
"useWorkflowTimezone": true
},
"formTitle": "Document Approval",
"formFields": {
"values": [
{
"fieldLabel": "Title",
"placeholder": "Give some Title of document ",
"requiredField": true
},
{
"fieldType": "textarea",
"fieldLabel": "Description",
"placeholder": "Describe what document all about. "
},
{
"fieldType": "file",
"fieldLabel": "data",
"requiredField": true,
"acceptFileTypes": ".pdf"
}
]
},
"formDescription": "Document Approval Workflow "
},
"typeVersion": 2.2,
"alwaysOutputData": false
},
{
"id": "3523cf77-050b-46f7-b06e-975ae91c606f",
"name": "获取审批数据",
"type": "n8n-nodes-base.supabase",
"position": [
-272,
1104
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "token",
"keyValue": "={{ $json.query.token }}"
}
]
},
"tableId": "approvals",
"operation": "get"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1,
"alwaysOutputData": true
},
{
"id": "0047e141-6fe8-40b3-b998-874e2c3fa018",
"name": "更新审批数据",
"type": "n8n-nodes-base.supabase",
"position": [
416,
1088
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "approver_id",
"keyValue": "={{ $json.approver_id }}",
"condition": "eq"
},
{
"keyName": "status",
"keyValue": "Pending",
"condition": "eq"
},
{
"keyName": "token",
"keyValue": "={{ $json.token }}",
"condition": "eq"
}
]
},
"tableId": "approvals",
"fieldsUi": {
"fieldValues": [
{
"fieldId": "status",
"fieldValue": "={{ $('Webhook').item.json.query.decision }}"
},
{
"fieldId": "acted_at",
"fieldValue": "={{ new Date(Date.now()).toISOString() }}"
}
]
},
"matchType": "allFilters",
"operation": "update"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "4f6b45fc-e8de-469d-a936-de70f9c890c0",
"name": "检查拒绝或批准",
"type": "n8n-nodes-base.if",
"position": [
800,
1088
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "6222263f-cd22-457d-8446-b19f7e1b6ffb",
"operator": {
"name": "filter.operator.equals",
"type": "string",
"operation": "equals"
},
"leftValue": "={{ $('Webhook').item.json.query.decision }}",
"rightValue": "approved"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "6afc3654-1ac1-43a0-a800-2d60a676f336",
"name": "获取级别详情",
"type": "n8n-nodes-base.supabase",
"position": [
1168,
1072
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "id",
"keyValue": "={{ $('get_approval_data').item.json.level_id }}"
}
]
},
"tableId": "workflow_levels",
"operation": "get"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "e8913824-5efa-46f2-b95d-d065491b63b1",
"name": "获取下一级别",
"type": "n8n-nodes-base.supabase",
"position": [
1520,
1072
],
"parameters": {
"limit": 1,
"filters": {
"conditions": [
{
"keyName": "level_number",
"keyValue": "={{ $json.level_number }}",
"condition": "gt"
}
]
},
"tableId": "workflow_levels",
"operation": "getAll"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1,
"alwaysOutputData": true
},
{
"id": "ced013ad-e2c4-42b0-9a4a-63198d442a21",
"name": "是否为最后级别",
"type": "n8n-nodes-base.if",
"position": [
-544,
1456
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "fb67a0fe-ced5-47a8-8f08-805d4253d0cf",
"operator": {
"type": "object",
"operation": "notEmpty",
"singleValue": true
},
"leftValue": "={{ $('get_next_level').item.json }}",
"rightValue": "={{ {} }}"
}
]
}
},
"typeVersion": 2.2
},
{
"id": "8ab1e933-546e-4f31-8e4b-f40e6fd24ccc",
"name": "按级别获取工作流",
"type": "n8n-nodes-base.supabase",
"position": [
-272,
1440
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "level_number",
"keyValue": "= {{ $json.level_number }}"
}
]
},
"tableId": "workflow_levels",
"operation": "get"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "68732d0b-c579-45dd-90b5-022bacccd8c3",
"name": "按角色获取用户1",
"type": "n8n-nodes-base.supabase",
"position": [
80,
1440
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "role_id",
"keyValue": "={{ $json.role_id }}",
"condition": "eq"
}
]
},
"tableId": "users",
"operation": "getAll",
"returnAll": true
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "4075c718-7f9d-41ef-a8d9-aad892838493",
"name": "生成UUID",
"type": "n8n-nodes-base.crypto",
"position": [
416,
1440
],
"parameters": {
"action": "generate"
},
"typeVersion": 1
},
{
"id": "4c8bac58-805f-4a43-92a0-ebfde03c5092",
"name": "创建审批记录",
"type": "n8n-nodes-base.supabase",
"position": [
800,
1456
],
"parameters": {
"tableId": "approvals",
"fieldsUi": {
"fieldValues": [
{
"fieldId": "document_id",
"fieldValue": "={{ $('get_approval_data').item.json.document_id }}"
},
{
"fieldId": "level_id",
"fieldValue": "={{ $('get_next_level').item.json.id }}"
},
{
"fieldId": "approver_id",
"fieldValue": "={{ $json.id }}"
},
{
"fieldId": "token",
"fieldValue": "={{ $json.data }}"
},
{
"fieldId": "status",
"fieldValue": "=Pending"
},
{
"fieldId": "expiry_time",
"fieldValue": "={{ new Date(Date.now() + 48 * 60 * 60 * 1000) }}"
}
]
}
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "ebd1975c-a8c6-4703-89a0-9eb062aae079",
"name": "按级别发送邮件",
"type": "n8n-nodes-base.gmail",
"position": [
-560,
2032
],
"webhookId": "7eb15f9c-c5a6-402b-8c53-ac0f1094602c",
"parameters": {
"sendTo": "={{ $('generate_uuid').item.json.email }}",
"message": "=<p>Please review:</p>\n<p>\n <a href=\"http://localhost:5678/webhook-test/approve?token={{ $('generate_uuid').item.json.data }}&decision=approved\">Approve</a> |\n <a href=\"http://localhost:5678/webhook-test/approve?token={{ $('generate_uuid').item.json.data }}&decision=rejected\">Reject</a>\n</p>",
"options": {
"attachmentsUi": {
"attachmentsBinary": [
{}
]
}
},
"subject": "=Document Approval Request - {{ $('get_document_details').item.json.title }}"
},
"credentials": {
"gmailOAuth2": {
"id": "nbxshtC1cYPiRV0b",
"name": "Gmail account"
}
},
"typeVersion": 2.1
},
{
"id": "40dcfb0b-0c3f-4469-a3ba-c85793c1da1b",
"name": "便签",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1312,
-240
],
"parameters": {
"width": 608,
"height": 2528,
"content": "## 多级文档审批与审计工作流"
},
"typeVersion": 1
},
{
"id": "7db49d0e-c7c5-4423-af60-17e63aa9fea1",
"name": "便签1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-656,
-224
],
"parameters": {
"width": 720,
"height": 1120,
"content": "## 数据库架构"
},
"typeVersion": 1
},
{
"id": "25ef7fca-6462-4806-bf01-d0c552aabae7",
"name": "审计",
"type": "n8n-nodes-base.supabase",
"position": [
416,
1792
],
"parameters": {
"tableId": "audit_logs",
"fieldsUi": {
"fieldValues": [
{
"fieldId": "document_id",
"fieldValue": "={{ $('get_approval_data').item.json.document_id }}"
},
{
"fieldId": "action",
"fieldValue": "approval_sent"
},
{
"fieldId": "actor_email",
"fieldValue": "system@workflow"
},
{
"fieldId": "details",
"fieldValue": "=Level {{ $('get_next_level').item.json.level_number }} requests sent to role_id {{ $('generate_uuid').item.json.role_id}} "
}
]
}
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "48036695-12b4-479a-a547-eb45eb9da598",
"name": "响应Webhook1",
"type": "n8n-nodes-base.respondToWebhook",
"position": [
1552,
2016
],
"parameters": {
"options": {},
"respondWith": "text",
"responseBody": "=Workflow Competed - {{ $json.Response }}"
},
"typeVersion": 1.4
},
{
"id": "d2c8dca0-c040-4035-bbd2-5812e571e0b9",
"name": "上传到Supabase存储",
"type": "n8n-nodes-base.httpRequest",
"position": [
464,
0
],
"parameters": {
"url": "=https://<your_project_id>.supabase.co/storage/v1/object/test-n8n/{{ $binary.data.fileName }}",
"method": "POST",
"options": {},
"sendBody": true,
"contentType": "binaryData",
"authentication": "predefinedCredentialType",
"inputDataFieldName": "data",
"nodeCredentialType": "supabaseApi"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 4.2
},
{
"id": "86e2bbb7-44b6-43f7-bf31-28453caf3369",
"name": "获取要审阅的文件",
"type": "n8n-nodes-base.httpRequest",
"position": [
432,
464
],
"parameters": {
"url": "=https://uptttiuxuaacxrdofqgm.supabase.co/storage/v1/object/{{ $('upload_to_supabase_storage').item.json.Key }}",
"options": {},
"authentication": "predefinedCredentialType",
"nodeCredentialType": "supabaseApi"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 4.2
},
{
"id": "c82dba30-479d-4045-af9d-635f1aea605b",
"name": "获取文档详情",
"type": "n8n-nodes-base.supabase",
"position": [
1168,
1456
],
"parameters": {
"filters": {
"conditions": [
{
"keyName": "id",
"keyValue": "={{ $json.document_id }}"
}
]
},
"tableId": "documents",
"operation": "get"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 1
},
{
"id": "13d7e82a-f7b3-4cbd-b51f-bcc1e57a1602",
"name": "获取要审阅的文件1",
"type": "n8n-nodes-base.httpRequest",
"position": [
1536,
1456
],
"parameters": {
"url": "=https://<your_project_id>.supabase.co/storage/v1/object/test-n8n/{{ $json.content }}",
"options": {},
"authentication": "predefinedCredentialType",
"nodeCredentialType": "supabaseApi"
},
"credentials": {
"supabaseApi": {
"id": "UMM6kngXouHxEYn4",
"name": "Supabase account"
}
},
"typeVersion": 4.2
},
{
"id": "db503b96-a362-4b14-a41b-aa87bf156392",
"name": "条件判断",
"type": "n8n-nodes-base.if",
"position": [
80,
1104
],
"parameters": {
"options": {},
"conditions": {
"options": {
"version": 2,
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "eff8437b-ef76-4bef-a6c2-9d65083ab8c5",
"operator": {
"type": "object",
"operation": "empty",
"singleValue": true
},
"leftValue": "={{ $json }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2.2
},
{
"id": "694b4cde-a457-4496-816f-02ba86b4eb9e",
"name": "响应消息",
"type": "n8n-nodes-base.set",
"position": [
800,
1296
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "d6c443be-ca83-4708-b80b-9a5eefd11d60",
"name": "Response",
"type": "string",
"value": "Not a value token"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "30cd5073-3d59-48ae-a572-57157ee5e6cb",
"name": "响应消息1",
"type": "n8n-nodes-base.set",
"position": [
800,
1792
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "d6c443be-ca83-4708-b80b-9a5eefd11d60",
"name": "Response",
"type": "string",
"value": "Rejected"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "17e8d16b-8c04-45de-90a0-1d8fc1711cd5",
"name": "响应消息2",
"type": "n8n-nodes-base.set",
"position": [
128,
2032
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "d6c443be-ca83-4708-b80b-9a5eefd11d60",
"name": "Response",
"type": "string",
"value": "Approved"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "bb9fb0aa-d3a2-434b-a34a-047562654983",
"name": "便签2",
"type": "n8n-nodes-base.stickyNote",
"position": [
352,
-128
],
"parameters": {
"width": 336,
"height": 288,
"content": "### 更新Supabase存储的URL"
},
"typeVersion": 1
},
{
"id": "d902be56-14a6-4071-ae13-7b0dddf4284a",
"name": "结束表单",
"type": "n8n-nodes-base.form",
"position": [
1472,
464
],
"webhookId": "3af20380-25dd-4a07-970c-29929c8037e5",
"parameters": {
"options": {},
"operation": "completion",
"completionTitle": "Approval Workflow Started."
},
"typeVersion": 1
},
{
"id": "edf83e23-536a-4a9d-a5be-f6401690ab2a",
"name": "便签3",
"type": "n8n-nodes-base.stickyNote",
"position": [
112,
-208
],
"parameters": {
"color": 4,
"width": 1664,
"height": 1120,
"content": "## 表单提交流程"
},
"typeVersion": 1
},
{
"id": "5109e9e9-b938-44be-8154-7dd287030589",
"name": "便签4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-656,
992
],
"parameters": {
"color": 4,
"width": 2448,
"height": 1264,
"content": "## 下一级别审批"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "de5c52a4-7369-4d59-a8c1-b7e4e1aa5636",
"connections": {
"If": {
"main": [
[
{
"node": "update_approval_data",
"type": "main",
"index": 0
}
],
[
{
"node": "response_message",
"type": "main",
"index": 0
}
]
]
},
"Audit": {
"main": [
[
{
"node": "response_message1",
"type": "main",
"index": 0
}
]
]
},
"Audit1": {
"main": [
[
{
"node": "response_message2",
"type": "main",
"index": 0
}
]
]
},
"Webhook": {
"main": [
[
{
"node": "get_approval_data",
"type": "main",
"index": 0
}
]
]
},
"send_email": {
"main": [
[
{
"node": "audit_invites",
"type": "main",
"index": 0
}
]
]
},
"audit_invites": {
"main": [
[
{
"node": "end_form",
"type": "main",
"index": 0
}
]
]
},
"generate_uuid": {
"main": [
[
{
"node": "create_approval_record",
"type": "main",
"index": 0
}
]
]
},
"is_last_level": {
"main": [
[
{
"node": "get_workflow_by_level",
"type": "main",
"index": 0
}
],
[
{
"node": "Final Update Document",
"type": "main",
"index": 0
}
]
]
},
"save_document": {
"main": [
[
{
"node": "get_workflow_level_one",
"type": "main",
"index": 0
}
]
]
},
"get_next_level": {
"main": [
[
{
"node": "is_last_level",
"type": "main",
"index": 0
}
]
]
},
"get_user_by_role": {
"main": [
[
{
"node": "create_uuid_token",
"type": "main",
"index": 0
}
]
]
},
"response_message": {
"main": [
[
{
"node": "Respond to Webhook1",
"type": "main",
"index": 0
}
]
]
},
"create_uuid_token": {
"main": [
[
{
"node": "create_record_approvals",
"type": "main",
"index": 0
}
]
]
},
"get_approval_data": {
"main": [
[
{
"node": "If",
"type": "main",
"index": 0
}
]
]
},
"get_level_details": {
"main": [
[
{
"node": "get_next_level",
"type": "main",
"index": 0
}
]
]
},
"get_user_by_role1": {
"main": [
[
{
"node": "generate_uuid",
"type": "main",
"index": 0
}
]
]
},
"response_message1": {
"main": [
[
{
"node": "Respond to Webhook1",
"type": "main",
"index": 0
}
]
]
},
"response_message2": {
"main": [
[
{
"node": "Respond to Webhook1",
"type": "main",
"index": 0
}
]
]
},
"send_emai_by_level": {
"main": [
[
{
"node": "Audit1",
"type": "main",
"index": 0
}
]
]
},
"start_approval_form": {
"main": [
[
{
"node": "upload_to_supabase_storage",
"type": "main",
"index": 0
}
]
]
},
"fetch_file_to_review": {
"main": [
[
{
"node": "send_email",
"type": "main",
"index": 0
}
]
]
},
"get_document_details": {
"main": [
[
{
"node": "fetch_file_to_review1",
"type": "main",
"index": 0
}
]
]
},
"update_approval_data": {
"main": [
[
{
"node": "check_reject_or_approve",
"type": "main",
"index": 0
}
]
]
},
"Final Update Document": {
"main": [
[
{
"node": "Audit",
"type": "main",
"index": 0
}
]
]
},
"fetch_file_to_review1": {
"main": [
[
{
"node": "send_emai_by_level",
"type": "main",
"index": 0
}
]
]
},
"get_workflow_by_level": {
"main": [
[
{
"node": "get_user_by_role1",
"type": "main",
"index": 0
}
]
]
},
"create_approval_record": {
"main": [
[
{
"node": "get_document_details",
"type": "main",
"index": 0
}
]
]
},
"get_workflow_level_one": {
"main": [
[
{
"node": "get_user_by_role",
"type": "main",
"index": 0
}
]
]
},
"check_reject_or_approve": {
"main": [
[
{
"node": "get_level_details",
"type": "main",
"index": 0
}
],
[
{
"node": "Final Update Document",
"type": "main",
"index": 0
}
]
]
},
"create_record_approvals": {
"main": [
[
{
"node": "fetch_file_to_review",
"type": "main",
"index": 0
}
]
]
},
"upload_to_supabase_storage": {
"main": [
[
{
"node": "save_document",
"type": "main",
"index": 0
}
]
]
}
}
}常见问题
如何使用这个工作流?
复制上方的 JSON 配置代码,在您的 n8n 实例中创建新工作流并选择「从 JSON 导入」,粘贴配置后根据需要修改凭证设置即可。
这个工作流适合什么场景?
高级 - 文档提取, 多模态 AI
需要付费吗?
本工作流完全免费,您可以直接导入使用。但请注意,工作流中使用的第三方服务(如 OpenAI API)可能需要您自行付费。
相关工作流推荐
实时Notion Todoist双向同步模板
使用Redis的Notion Todoist实时双向同步
If
Set
Code
+26
246 节点Mario
销售
PRD测试用例
使用GPT/Claude生成产品需求文档和测试场景,并导出PDF
Set
Form
Form Trigger
+4
9 节点Alok Kumar
文档提取
通过Telegram使用Mistral OCR从图像和PDF中提取文本到Markdown
通过Telegram使用Mistral OCR从图像和PDF中提取文本到Markdown
If
Set
Code
+8
40 节点Rostislav
文档提取
LeaseRenewalOffer
使用Ollama LLM、Supabase和Gmail生成AI驱动的租约续约报价
If
Set
Gmail
+7
17 节点Lakindu Siriwardana
文档提取
使用Google Forms和Gemini AI将YouTube视频转换为交互式选择题测验
使用Google Forms和Gemini AI将YouTube视频转换为交互式选择题测验
If
Set
Code
+8
20 节点Md. Nazmul Islam
文档提取
竞争对手内容差距分析器:自动化网站主题映射
使用Gemini AI、Apify和Google Sheets分析竞争对手内容差距
If
Set
Code
+10
30 节点Mychel Garzon
杂项
工作流信息
难度等级
高级
节点数量38
分类2
节点类型11
作者
Alok Kumar
@alokkumarI am a Principal Software Engineer based in Ireland with a deep passion for AI and emerging technologies. With extensive experience in designing and implementing scalable software solutions, I focus on leveraging artificial intelligence to solve real-world problems. I enjoy exploring innovative applications of AI, from intelligent automation to data-driven insights, and I’m dedicated to building systems that are both efficient and impactful.
外部链接
在 n8n.io 查看 →
分享此工作流