8
n8n 한국어amn8n.com

LeaseRenewalOffer

고급

이것은Document Extraction, Multimodal AI분야의자동화 워크플로우로, 17개의 노드를 포함합니다.주로 If, Set, Gmail, Supabase, FormTrigger 등의 노드를 사용하며. Ollama LLM, Supabase, Gmail을 사용하여 AI 주도 임대 계약 연장报价 생성

사전 요구사항
  • Google 계정 및 Gmail API 인증 정보
  • Supabase URL과 API Key
  • Google Drive API 인증 정보
워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "PiWH2tT9abPCn184",
  "meta": {
    "instanceId": "558d88703fb65b2d0e44613bc35916258b0f0bf983c5d4730c00c424b77ca36a",
    "templateCredsSetupCompleted": true
  },
  "name": "LeaseRenewalOffer",
  "tags": [],
  "nodes": [
    {
      "id": "052b0f7a-43f1-4246-b034-00ddc4c10e1e",
      "name": "Ollama Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOllama",
      "position": [
        200,
        600
      ],
      "parameters": {
        "model": "llama3.1:latest",
        "options": {
          "temperature": 0.3
        }
      },
      "credentials": {
        "ollamaApi": {
          "id": "7CIt42W14b1MCgxQ",
          "name": "Ollama account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "3e7e8a93-ca37-4ed5-83d7-659e87b7d4b5",
      "name": "필드 편집",
      "type": "n8n-nodes-base.set",
      "position": [
        40,
        -80
      ],
      "parameters": {
        "mode": "raw",
        "options": {},
        "jsonOutput": "{\n  \"landload_address\": \"Lakindu Siriwardana, Neuenlander Str. 28201 Bremen, Germany.\",\n  \"contact_email\": \"lakithegreat99@gmail.com\",\n  \"contact_phone\": \"+491739XXXXXX\",\n  \"company_name\": \"HX GmbH\",\n  \"landload_name\": \"Lakindu Siriwardana\"\n}\n",
        "includeOtherFields": true
      },
      "typeVersion": 3.4
    },
    {
      "id": "ca9a343d-399c-4fba-9b43-33afa6d92109",
      "name": "양식 제출 시",
      "type": "n8n-nodes-base.formTrigger",
      "position": [
        -560,
        -80
      ],
      "webhookId": "e8f9fa32-b7c8-4c19-95e0-576a4e5653b3",
      "parameters": {
        "options": {},
        "formTitle": "Customer Renewal Form",
        "formFields": {
          "values": [
            {
              "fieldType": "number",
              "fieldLabel": "Customer id:",
              "requiredField": true
            },
            {
              "fieldType": "number",
              "fieldLabel": "Renewal Amount:",
              "requiredField": true
            }
          ]
        },
        "formDescription": "By: Laki"
      },
      "typeVersion": 2.2
    },
    {
      "id": "4ba6fd65-73b0-4e7e-b153-c7480190dd5e",
      "name": "파일로 변환",
      "type": "n8n-nodes-base.convertToFile",
      "position": [
        560,
        200
      ],
      "parameters": {
        "options": {},
        "operation": "toText",
        "sourceProperty": "text"
      },
      "typeVersion": 1.1
    },
    {
      "id": "13ca0896-de6e-4514-a0e6-3ef6d50197b2",
      "name": "Gmail",
      "type": "n8n-nodes-base.gmail",
      "position": [
        520,
        420
      ],
      "webhookId": "",
      "parameters": {
        "sendTo": "={{ $('Supabase-search_cust').item.json.cust_email }}",
        "message": "={{ $json.text }}",
        "options": {
          "attachmentsUi": {
            "attachmentsBinary": [
              {
                "property": "down-data"
              }
            ]
          }
        },
        "subject": "=Offer Renewal {{ $('Supabase_cust_info').item.json.cust_name }} {{ $('Supabase-search_cust').item.json.renewable_date.toString().slice(0,7) }}",
        "emailType": "text"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "",
          "name": "Gmail account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "0d58e4d2-7cb7-4439-b767-08690b84e43a",
      "name": "Supabase-search_cust",
      "type": "n8n-nodes-base.supabase",
      "position": [
        -360,
        -80
      ],
      "parameters": {
        "filters": {
          "conditions": [
            {
              "keyName": "id",
              "keyValue": "={{ $json['Customer id:'] }}"
            }
          ]
        },
        "tableId": "customer_details",
        "operation": "get"
      },
      "credentials": {
        "supabaseApi": {
          "id": "",
          "name": "Supabase account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "ccc9a1df-fd42-46d8-b0bc-dee42b750046",
      "name": "Google Drive-delete_dup",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        60,
        120
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "options": {},
        "operation": "deleteFile"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "",
          "name": "Google Drive account"
        }
      },
      "executeOnce": false,
      "typeVersion": 3,
      "alwaysOutputData": false
    },
    {
      "id": "840867fa-1b4b-4175-ad02-ab803e36af6e",
      "name": "If-check_dup",
      "type": "n8n-nodes-base.if",
      "position": [
        -120,
        180
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "d4c39be3-a4a4-4cff-bc08-5209109359bd",
              "operator": {
                "type": "string",
                "operation": "exists",
                "singleValue": true
              },
              "leftValue": "={{ $json.id }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "01009db3-6a95-421f-b650-c3aa4943a58a",
      "name": "Supabase_cust_info",
      "type": "n8n-nodes-base.supabase",
      "position": [
        -160,
        -80
      ],
      "parameters": {
        "filters": {
          "conditions": [
            {
              "keyName": "id",
              "keyValue": "={{ $json.id }}",
              "condition": "eq"
            }
          ]
        },
        "tableId": "customer_details",
        "fieldsUi": {
          "fieldValues": [
            {
              "fieldId": "renewable_date",
              "fieldValue": "={{ $now }}"
            },
            {
              "fieldId": "Renewal Amount",
              "fieldValue": "={{ $('On form submission').item.json['Renewal Amount:'] }}"
            }
          ]
        },
        "operation": "update"
      },
      "credentials": {
        "supabaseApi": {
          "id": "",
          "name": "Supabase account"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "5edd5d07-b549-4f4b-b130-09b830de645d",
      "name": "Google Drive-search",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        240,
        -80
      ],
      "parameters": {
        "filter": {
          "folderId": {
            "__rl": true,
            "mode": "list",
            "value": "1GGYne4bMaff9_1RvId2en38SPtmnInBA",
            "cachedResultUrl": "",
            "cachedResultName": "OfferRenewal"
          }
        },
        "options": {},
        "resource": "fileFolder",
        "queryString": "={{ $('Edit Fields').item.json.cust_name }}{{ $('Edit Fields').item.json.renewable_date }}"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3,
      "alwaysOutputData": true
    },
    {
      "id": "47b4fa52-ec59-449c-8e53-c7f5f0319a76",
      "name": "Google Drive-upload",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        -280,
        420
      ],
      "parameters": {
        "name": "={{ $('Edit Fields').item.json.cust_name }}{{ $('Edit Fields').item.json.renewable_date }}",
        "driveId": {
          "__rl": true,
          "mode": "list",
          "value": "My Drive"
        },
        "options": {},
        "folderId": {
          "__rl": true,
          "mode": "list",
          "value": "1GGYne4bMaff9_1RvId2en38SPtmnInBA",
          "cachedResultUrl": "",
          "cachedResultName": "OfferRenewal"
        }
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "9e1ae15e-fe3b-491d-900d-817a9060d1f0",
      "name": "Basic LLM Chain-offerLetter",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        240,
        200
      ],
      "parameters": {
        "text": "=The output should follow the below format only. No extra text should be added\n\n{{ $('Edit Fields').item.json.landload_address.split(',').map(line => line.trim()).join('\\n') }}\n{{ $now.toISO().slice(0,10) }}\n\n{{ $('Supabase_cust_info').item.json.cust_name }}  \n{{ $('Supabase_cust_info').item.json.cust_address.split(',').map(line => line.trim()).join('\\n') }}.\n\nSubject: Lease Renewal Offer for Your Residence at {{ $('Supabase_cust_info').item.json.cust_address }}.\n\nDear {{ $('Supabase_cust_info').item.json.cust_name }},\n\nWe hope this letter finds you well.\n\nWe are writing to inform you that your current lease agreement for the property located at  {{ $('Supabase_cust_info').item.json.cust_address }} is due to expire on {{ $('Supabase_cust_info').item.json.renewable_date }}.\n\nWe would like to offer you the opportunity to renew your lease for an additional term of one year, under the following conditions:\n\n- Lease Term: From {{ $('Supabase_cust_info').item.json.renewable_date }} to {{ new Date(new Date($('Supabase_cust_info').item.json.renewable_date).setDate(new Date($('Supabase_cust_info').item.json.renewable_date).getDate() + 365)).toISOString().slice(0, 10) }}\n\n- Monthly Rent: €{{ $('On form submission').item.json['Renewal Amount:'] }}\n\nPlease confirm your acceptance of this offer by replying to this letter or contacting us no later than {{ new Date(new Date($('Supabase_cust_info').item.json.renewable_date).setDate(new Date($('Supabase_cust_info').item.json.renewable_date).getDate() + 7)).toISOString().slice(0,10) }}.\n\nShould you have any questions or wish to discuss any details of the renewal, please do not hesitate to reach out via email at {{ $('Edit Fields').item.json.contact_email }} or by phone at {{ $('Edit Fields').item.json.contact_phone }}.\n\nWe appreciate your tenancy and look forward to continuing to serve you.\n\nYours sincerely,\n\n{{ $('Edit Fields').item.json.landload_name }}\n{{ $('Edit Fields').item.json.company_name }} \n{{ $('Edit Fields').item.json.contact_email }}  \n{{ $('Edit Fields').item.json.contact_phone }}\n",
        "promptType": "define"
      },
      "typeVersion": 1.6
    },
    {
      "id": "efa884ba-1617-40b5-9cd5-35268b338502",
      "name": "Basic LLM Chain-email",
      "type": "@n8n/n8n-nodes-langchain.chainLlm",
      "position": [
        -60,
        420
      ],
      "parameters": {
        "text": "=You are an assistant that writes professional business emails.  \nRefer to the provided text as the source of details.  \nWrite a formal letter to the client based on that text.  \n\nRequirements:  \n- The email should be short and mentioned find the attached document.  \n- No explanations, notes, or extra text — output only the final email content.  \n- Do not include any labels like \"Email:\" or \"Dear [Name]\" unless part of the actual email.  \n- The email must start directly with the greeting and end with the closing signature.  \n- don't import subject field\n\n[Provided text: {{ $('Basic LLM Chain-offerLetter').item.json.text }}]",
        "promptType": "define"
      },
      "typeVersion": 1.6
    },
    {
      "id": "7681102f-2b1f-4368-ba49-90a1dad18f51",
      "name": "Google Drive-get_file",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        340,
        420
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $('Google Drive-upload').item.json.id }}"
        },
        "options": {
          "binaryPropertyName": "down-data"
        },
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "id": "",
          "name": "Google Drive account"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "1b3a0198-59ce-4ff2-b332-2ef33a5e6f86",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -660,
        -140
      ],
      "parameters": {
        "width": 1420,
        "height": 220,
        "content": "## Get Customer Information\n"
      },
      "typeVersion": 1
    },
    {
      "id": "67c75d5c-ad31-4f36-a1e7-ec1a7a7b1fe5",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -660,
        100
      ],
      "parameters": {
        "color": 5,
        "width": 1420,
        "height": 280,
        "content": "## Generate offer letter \n"
      },
      "typeVersion": 1
    },
    {
      "id": "3baf2115-e8cd-499f-957d-d2e0dfe65bbc",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -660,
        400
      ],
      "parameters": {
        "color": 6,
        "width": 1420,
        "height": 320,
        "content": "## Send Email"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "3b191f36-aca4-4274-8249-555703d8bf06",
  "connections": {
    "3e7e8a93-ca37-4ed5-83d7-659e87b7d4b5": {
      "main": [
        [
          {
            "node": "5edd5d07-b549-4f4b-b130-09b830de645d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "840867fa-1b4b-4175-ad02-ab803e36af6e": {
      "main": [
        [
          {
            "node": "ccc9a1df-fd42-46d8-b0bc-dee42b750046",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "9e1ae15e-fe3b-491d-900d-817a9060d1f0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "4ba6fd65-73b0-4e7e-b153-c7480190dd5e": {
      "main": [
        [
          {
            "node": "47b4fa52-ec59-449c-8e53-c7f5f0319a76",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "052b0f7a-43f1-4246-b034-00ddc4c10e1e": {
      "ai_languageModel": [
        [
          {
            "node": "9e1ae15e-fe3b-491d-900d-817a9060d1f0",
            "type": "ai_languageModel",
            "index": 0
          },
          {
            "node": "efa884ba-1617-40b5-9cd5-35268b338502",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "ca9a343d-399c-4fba-9b43-33afa6d92109": {
      "main": [
        [
          {
            "node": "0d58e4d2-7cb7-4439-b767-08690b84e43a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "01009db3-6a95-421f-b650-c3aa4943a58a": {
      "main": [
        [
          {
            "node": "3e7e8a93-ca37-4ed5-83d7-659e87b7d4b5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5edd5d07-b549-4f4b-b130-09b830de645d": {
      "main": [
        [
          {
            "node": "840867fa-1b4b-4175-ad02-ab803e36af6e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "47b4fa52-ec59-449c-8e53-c7f5f0319a76": {
      "main": [
        [
          {
            "node": "efa884ba-1617-40b5-9cd5-35268b338502",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "0d58e4d2-7cb7-4439-b767-08690b84e43a": {
      "main": [
        [
          {
            "node": "01009db3-6a95-421f-b650-c3aa4943a58a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "efa884ba-1617-40b5-9cd5-35268b338502": {
      "main": [
        [
          {
            "node": "7681102f-2b1f-4368-ba49-90a1dad18f51",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7681102f-2b1f-4368-ba49-90a1dad18f51": {
      "main": [
        [
          {
            "node": "13ca0896-de6e-4514-a0e6-3ef6d50197b2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ccc9a1df-fd42-46d8-b0bc-dee42b750046": {
      "main": [
        [
          {
            "node": "9e1ae15e-fe3b-491d-900d-817a9060d1f0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9e1ae15e-fe3b-491d-900d-817a9060d1f0": {
      "main": [
        [
          {
            "node": "4ba6fd65-73b0-4e7e-b153-c7480190dd5e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

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

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

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

고급 - 문서 추출, 멀티모달 AI

유료인가요?

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

워크플로우 정보
난이도
고급
노드 수17
카테고리2
노드 유형10
난이도 설명

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

저자
Lakindu Siriwardana

Lakindu Siriwardana

@laki99

AI Engineer | Researcher

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34