8
n8n 한국어amn8n.com

인증된 사용자 프로필 생성

고급

이것은Document Extraction분야의자동화 워크플로우로, 20개의 노드를 포함합니다.주로 If, Set, Gmail, Webhook, HttpRequest 등의 노드를 사용하며. 이메일 확인, PDF 생성, Gmail 배달을 사용하여 검증된 사용자 프로필 만들기

사전 요구사항
  • Google 계정 및 Gmail API 인증 정보
  • HTTP Webhook 엔드포인트(n8n이 자동으로 생성)
  • 대상 API의 인증 정보가 필요할 수 있음
  • Google Sheets API 인증 정보

카테고리

워크플로우 미리보기
노드 연결 관계를 시각적으로 표시하며, 확대/축소 및 이동을 지원합니다
워크플로우 내보내기
다음 JSON 구성을 복사하여 n8n에 가져오면 이 워크플로우를 사용할 수 있습니다
{
  "id": "",
  "meta": {
    "instanceId": "",
    "templateCredsSetupCompleted": false
  },
  "name": "Verified User Profile Creation",
  "tags": [],
  "nodes": [
    {
      "id": "6b5340c0-efc3-42ed-ba9b-f87d4df66ca9",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -192,
        -32
      ],
      "parameters": {
        "color": 6,
        "width": 405,
        "height": 410,
        "content": "## 🔧 SETUP CREDENTIALS\n\n**Required Credentials:**\n\n1. **VerifiEmail API**\n   - Sign up at https://verifi.email\n   - Get your API key\n\n2. **HTMLcsstoPDF API**\n   - Register at https://htmlcsstoimg.com\n   - Get User ID & API Key\n\n3. **Gmail OAuth2**\n   - Authenticate your Google account\n\n4. **Google Sheets OAuth2**\n   - Same Google account as Gmail\n"
      },
      "typeVersion": 1
    },
    {
      "id": "a5433c21-6cc1-4147-aaae-2c12102e95b5",
      "name": "Webhook - 사용자 데이터 수신",
      "type": "n8n-nodes-base.webhook",
      "position": [
        368,
        224
      ],
      "webhookId": "",
      "parameters": {
        "path": "create-profile",
        "options": {},
        "httpMethod": "POST",
        "responseMode": "lastNode"
      },
      "typeVersion": 1
    },
    {
      "id": "3bd46209-c0c6-4b89-acaf-752e5e16f332",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        240,
        -112
      ],
      "parameters": {
        "color": 5,
        "width": 356,
        "height": 493,
        "content": "## 📥 STEP 1: WEBHOOK TRIGGER\n\n**Purpose:** Receive user signup data\n\n**Expected JSON Input:**\n```json\n{\n  \"name\": \"John Doe\",\n  \"email\": \"john@example.com\",\n  \"city\": \"Gurugram\",\n  \"profession\": \"Software Engineer\",\n  \"bio\": \"Loves building software\"\n}\n```\n"
      },
      "typeVersion": 1
    },
    {
      "id": "0033dc9f-4322-4fd2-9df9-7e78761dce5d",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        608,
        0
      ],
      "parameters": {
        "color": 5,
        "width": 248,
        "height": 381,
        "content": "## ✅ STEP 2: EMAIL VERIFICATION\n\n**Purpose:** Validate email using VerifiEmail API\n\n**Parameters:**\n- email: User's email from webhook\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "d171efbb-aeb3-48dc-ba89-34ad1308c22d",
      "name": "IF 이메일 유효?",
      "type": "n8n-nodes-base.if",
      "position": [
        960,
        224
      ],
      "parameters": {
        "conditions": {
          "boolean": [
            {
              "value1": "={{ $json.valid }}",
              "value2": "={{ true }}"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "c5ef3261-eeda-4934-bee0-0ecc3549ce4a",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        880,
        -144
      ],
      "parameters": {
        "color": 5,
        "width": 316,
        "height": 507,
        "content": "## ⚖️ STEP 3: CONDITIONAL LOGIC\n\n**Purpose:** Branch workflow based on email validation\n\n**TRUE Path (Green):**\n→ Email is valid\n→ Generate HTML template\n→ Create PDF\n→ Send profile email\n→ Log to Google Sheets\n\n**FALSE Path (Red):**\n→ Email is invalid\n→ Send rejection email\n→ End workflow"
      },
      "typeVersion": 1
    },
    {
      "id": "d8664417-6235-4331-b37a-ee0a216d04f2",
      "name": "HTML 템플릿 생성",
      "type": "n8n-nodes-base.set",
      "position": [
        1328,
        64
      ],
      "parameters": {
        "values": {
          "string": [
            {
              "name": "html_content",
              "value": "=<html>\n   <head>\n     <style>\n       body { font-family: 'Inter', sans-serif; padding: 40px; background: #f9fafb; }\n       .container { background: white; border-radius: 20px; padding: 30px; max-width: 600px; margin: auto; box-shadow: 0 4px 6px rgba(0,0,0,0.1); }\n       h1 { color: #2563eb; text-align: center; margin-bottom: 20px; }\n       h2 { color: #1f2937; margin-top: 20px; }\n       p { color: #4b5563; line-height: 1.6; margin: 10px 0; }\n       .label { font-weight: 600; color: #374151; }\n       .footer { color: #9ca3af; font-size: 12px; margin-top: 30px; text-align: center; border-top: 1px solid #e5e7eb; padding-top: 15px; }\n     </style>\n   </head>\n   <body>\n     <div class=\"container\">\n       <h1>👤 Verified User Profile</h1>\n       <h2>{{ $('Webhook - Receive User Data').item.json.body.name }}</h2>\n       <p><span class=\"label\">Email:</span> {{ $('Webhook - Receive User Data').item.json.body.email }}</p>\n       <p><span class=\"label\">City:</span> {{ $('Webhook - Receive User Data').item.json.body.city }}</p>\n       <p><span class=\"label\">Profession:</span> {{ $('Webhook - Receive User Data').item.json.body.profession }}</p>\n       <p><span class=\"label\">Bio:</span> {{ $('Webhook - Receive User Data').item.json.body.bio }}</p>\n       <div class=\"footer\">\n         ✅ Verified by n8n Automation<br>\n         Generated on: {{ new Date().toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' }) }}\n       </div>\n     </div>\n   </body>\n   </html>"
            }
          ]
        },
        "options": {}
      },
      "typeVersion": 2
    },
    {
      "id": "7633467d-1190-4223-bcd0-07f03cecafc5",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1216,
        -208
      ],
      "parameters": {
        "color": 5,
        "width": 284,
        "height": 428,
        "content": "## 🧾 STEP 4: HTML TEMPLATE CREATION\n\n**Purpose:** Create beautiful HTML profile layout\n\n**Features:**\n- Modern, responsive design\n- Custom styling with CSS\n- Dynamic data from webhook\n- Professional appearance\n"
      },
      "typeVersion": 1
    },
    {
      "id": "225534ff-724a-4009-8886-add1b3bb63e4",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1520,
        -176
      ],
      "parameters": {
        "color": 5,
        "width": 364,
        "height": 385,
        "content": "## 📄 STEP 5: PDF GENERATION\n\n**Purpose:** Convert HTML to downloadable image/PDF\n\n**Request Body:**\n- html: The generated HTML content\n- google_fonts: Inter font family\n- viewport_width: 800px\n- viewport_height: 1200px\n\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "defd69e1-8347-4418-914e-5808e0d0440e",
      "name": "PDF 바이너리 다운로드",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        2016,
        64
      ],
      "parameters": {
        "url": "={{ $json.pdf_url }}",
        "options": {
          "response": {
            "response": {
              "responseFormat": "file"
            }
          }
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "d4be989c-6907-4a51-84ff-60ddc8f3747a",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1904,
        -144
      ],
      "parameters": {
        "color": 5,
        "width": 332,
        "height": 333,
        "content": "## 💾 STEP 6: DOWNLOAD PDF\n\n**Purpose:** Fetch the generated PDF as binary data\n\n**Method:** GET request to the URL returned by HTMLcsstoPDF\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "d6e3ca94-dd1f-425b-91ab-e9c060102c07",
      "name": "프로필 이메일 전송 - Gmail",
      "type": "n8n-nodes-base.gmail",
      "position": [
        2336,
        64
      ],
      "webhookId": "",
      "parameters": {
        "sendTo": "={{ $('Webhook - Receive User Data').item.json.body.email }}",
        "message": "=<!DOCTYPE html>\n<html>\n<head>\n  <meta charset=\"UTF-8\">\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n</head>\n<body style=\"margin: 0; padding: 0; background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\">\n  \n  <!-- Main Container -->\n  <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" style=\"background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); padding: 40px 20px;\">\n    <tr>\n      <td align=\"center\">\n        \n        <!-- Content Card -->\n        <table width=\"600\" cellpadding=\"0\" cellspacing=\"0\" style=\"background: #ffffff; border-radius: 16px; box-shadow: 0 20px 60px rgba(0,0,0,0.3); overflow: hidden;\">\n          \n          <!-- Header Section with Icon -->\n          <tr>\n            <td style=\"background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); padding: 40px; text-align: center;\">\n              <div style=\"background: rgba(255,255,255,0.2); width: 80px; height: 80px; border-radius: 50%; margin: 0 auto 20px; display: inline-flex; align-items: center; justify-content: center; backdrop-filter: blur(10px);\">\n                <span style=\"font-size: 48px;\">✅</span>\n              </div>\n              <h1 style=\"color: #ffffff; margin: 0; font-size: 32px; font-weight: 700; text-shadow: 0 2px 4px rgba(0,0,0,0.1);\">Profile Verified!</h1>\n              <p style=\"color: rgba(255,255,255,0.9); margin: 10px 0 0 0; font-size: 16px;\">Your account has been successfully verified</p>\n            </td>\n          </tr>\n          \n          <!-- Greeting Section -->\n          <tr>\n            <td style=\"padding: 40px 40px 20px 40px;\">\n              <h2 style=\"color: #1f2937; margin: 0 0 20px 0; font-size: 24px; font-weight: 600;\">\n                Hi {{ $('Webhook - Receive User Data').item.json.body.name }} 👋\n              </h2>\n              <p style=\"color: #4b5563; line-height: 1.8; font-size: 16px; margin: 0 0 20px 0;\">\n                Congratulations! Your profile has been <strong style=\"color: #667eea;\">successfully verified</strong> and is now active. Your personalized profile PDF is ready and attached to this email.\n              </p>\n            </td>\n          </tr>\n          \n          <!-- Profile Details Card -->\n          <tr>\n            <td style=\"padding: 0 40px 30px 40px;\">\n              <div style=\"background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%); border-radius: 12px; padding: 30px; border-left: 4px solid #667eea;\">\n                <h3 style=\"color: #1f2937; margin: 0 0 20px 0; font-size: 18px; font-weight: 600; display: flex; align-items: center;\">\n                  <span style=\"background: #667eea; color: white; width: 32px; height: 32px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; margin-right: 12px; font-size: 16px;\">📋</span>\n                  Your Profile Details\n                </h3>\n                \n                <!-- Profile Items -->\n                <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">\n                  <tr>\n                    <td style=\"padding: 12px 0; border-bottom: 1px solid #d1d5db;\">\n                      <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">\n                        <tr>\n                          <td style=\"width: 40px; vertical-align: top;\">\n                            <span style=\"font-size: 20px;\">👤</span>\n                          </td>\n                          <td>\n                            <div style=\"color: #6b7280; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px;\">Full Name</div>\n                            <div style=\"color: #1f2937; font-size: 16px; font-weight: 600;\">{{ $('Webhook - Receive User Data').item.json.body.name }}</div>\n                          </td>\n                        </tr>\n                      </table>\n                    </td>\n                  </tr>\n                  \n                  <tr>\n                    <td style=\"padding: 12px 0; border-bottom: 1px solid #d1d5db;\">\n                      <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">\n                        <tr>\n                          <td style=\"width: 40px; vertical-align: top;\">\n                            <span style=\"font-size: 20px;\">📧</span>\n                          </td>\n                          <td>\n                            <div style=\"color: #6b7280; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px;\">Email Address</div>\n                            <div style=\"color: #1f2937; font-size: 16px; font-weight: 600;\">{{ $('Webhook - Receive User Data').item.json.body.email }}</div>\n                          </td>\n                        </tr>\n                      </table>\n                    </td>\n                  </tr>\n                  \n                  <tr>\n                    <td style=\"padding: 12px 0; border-bottom: 1px solid #d1d5db;\">\n                      <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">\n                        <tr>\n                          <td style=\"width: 40px; vertical-align: top;\">\n                            <span style=\"font-size: 20px;\">📍</span>\n                          </td>\n                          <td>\n                            <div style=\"color: #6b7280; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px;\">Location</div>\n                            <div style=\"color: #1f2937; font-size: 16px; font-weight: 600;\">{{ $('Webhook - Receive User Data').item.json.body.city }}</div>\n                          </td>\n                        </tr>\n                      </table>\n                    </td>\n                  </tr>\n                  \n                  <tr>\n                    <td style=\"padding: 12px 0;\">\n                      <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">\n                        <tr>\n                          <td style=\"width: 40px; vertical-align: top;\">\n                            <span style=\"font-size: 20px;\">💼</span>\n                          </td>\n                          <td>\n                            <div style=\"color: #6b7280; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px;\">Profession</div>\n                            <div style=\"color: #1f2937; font-size: 16px; font-weight: 600;\">{{ $('Webhook - Receive User Data').item.json.body.profession }}</div>\n                          </td>\n                        </tr>\n                      </table>\n                    </td>\n                  </tr>\n                </table>\n              </div>\n            </td>\n          </tr>\n          \n          <!-- PDF Attachment Notice -->\n          <tr>\n            <td style=\"padding: 0 40px 30px 40px;\">\n              <div style=\"background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%); border-radius: 12px; padding: 20px; border: 2px solid #10b981; text-align: center;\">\n                <span style=\"font-size: 32px; display: block; margin-bottom: 10px;\">📎</span>\n                <p style=\"color: #065f46; margin: 0; font-size: 16px; font-weight: 600;\">\n                  Your Profile PDF is attached to this email\n                </p>\n                <p style=\"color: #047857; margin: 8px 0 0 0; font-size: 14px;\">\n                  Download and save it for your records\n                </p>\n              </div>\n            </td>\n          </tr>\n          \n          <!-- What's Next Section -->\n          <tr>\n            <td style=\"padding: 0 40px 40px 40px;\">\n              <h3 style=\"color: #1f2937; margin: 0 0 16px 0; font-size: 18px; font-weight: 600;\">What's Next? 🚀</h3>\n              <ul style=\"margin: 0; padding: 0 0 0 20px; color: #4b5563; line-height: 1.8;\">\n                <li style=\"margin-bottom: 8px;\">Access your dashboard and complete your profile</li>\n                <li style=\"margin-bottom: 8px;\">Explore all available features and tools</li>\n                <li style=\"margin-bottom: 8px;\">Connect with our community</li>\n                <li>Start your journey with us today!</li>\n              </ul>\n            </td>\n          </tr>\n          \n          <!-- Footer Section -->\n          <tr>\n            <td style=\"background: #f9fafb; padding: 30px 40px; border-top: 1px solid #e5e7eb;\">\n              <p style=\"color: #1f2937; margin: 0 0 20px 0; font-size: 16px; line-height: 1.6;\">\n                Thank you for registering with us! We're excited to have you on board. 🎉\n              </p>\n              <p style=\"color: #6b7280; margin: 0; font-size: 14px; line-height: 1.6;\">\n                If you have any questions or need assistance, feel free to reach out to our support team.\n              </p>\n              \n              <!-- Signature -->\n              <div style=\"margin-top: 24px; padding-top: 24px; border-top: 1px solid #e5e7eb;\">\n                <p style=\"color: #1f2937; margin: 0 0 4px 0; font-size: 15px; font-weight: 600;\">\n                  Best regards,\n                </p>\n                <p style=\"color: #667eea; margin: 0; font-size: 15px; font-weight: 700;\">\n                  The Verification Team\n                </p>\n              </div>\n            </td>\n          </tr>\n          \n          <!-- Social Links / Contact Info (Optional) -->\n          <tr>\n            <td style=\"background: #1f2937; padding: 20px 40px; text-align: center;\">\n              <p style=\"color: #9ca3af; margin: 0; font-size: 12px;\">\n                © 2025 Your Company Name. All rights reserved.\n              </p>\n              <p style=\"color: #6b7280; margin: 8px 0 0 0; font-size: 11px;\">\n                This is an automated message. Please do not reply to this email.\n              </p>\n            </td>\n          </tr>\n          \n        </table>\n        \n      </td>\n    </tr>\n  </table>\n  \n</body>\n</html>",
        "options": {
          "attachmentsUi": {
            "attachmentsBinary": [
              {}
            ]
          }
        },
        "subject": "Your Verified Profile PDF is Ready ✅"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "YOUR_GMAIL_OAUTH2_ID",
          "name": "Gmail account OAuth2"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "382aabcc-1bee-4536-845c-caf8bcef2522",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2256,
        -192
      ],
      "parameters": {
        "color": 5,
        "width": 368,
        "height": 423,
        "content": "## 📧 STEP 7: EMAIL DELIVERY\n\n**Purpose:** Send profile PDF to verified user\n\n**Gmail Configuration:**\n- **To:** User's email from webhook\n- **Subject:** \"Your Verified Profile PDF is Ready ✅\"\n- **Type:** HTML email\n- **Body:** Personalized message with profile summary\n- **Attachment:** PDF binary data from previous node\n"
      },
      "typeVersion": 1
    },
    {
      "id": "e8c9e5b1-7c63-49e3-acc4-bd390a0349f9",
      "name": "Google 시트에 기록",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2736,
        64
      ],
      "parameters": {
        "columns": {
          "value": {
            "City": "={{ $('Webhook - Receive User Data').item.json.body.city }}",
            "Date": "={{ new Date().toLocaleDateString('en-US') }}",
            "Name": "={{ $('Webhook - Receive User Data').item.json.body.name }}",
            "Email": "={{ $('Webhook - Receive User Data').item.json.body.email }}",
            "Verified": "✅",
            "Profession": "={{ $('Webhook - Receive User Data').item.json.body.profession }}"
          },
          "schema": [
            {
              "id": "Name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Email",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Email",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "City",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "City",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Profession",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Profession",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Verified",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Verified",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Date",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Email"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEETS_DOCUMENT_ID/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "YOUR_GOOGLE_SHEETS_DOCUMENT_ID",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/YOUR_GOOGLE_SHEETS_DOCUMENT_ID/edit?usp=drivesdk",
          "cachedResultName": "Verified_Users_Profiles"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "YOUR_GOOGLE_SHEETS_OAUTH2_ID",
          "name": "Google Sheets account OAuth2"
        }
      },
      "typeVersion": 4.4
    },
    {
      "id": "a21a9553-ff14-4184-a9ea-01a213d9df07",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2640,
        -224
      ],
      "parameters": {
        "color": 5,
        "width": 380,
        "height": 448,
        "content": "## 📊 STEP 8: DATA LOGGING\n\n**Purpose:** Track all verified users in Google Sheets\n\n**Spreadsheet Columns:**\n1. **Name** - User's full name\n2. **Email** - Verified email address\n3. **City** - User's location\n4. **Profession** - Job title/role\n5. **Verified** - ✅ checkmark\n6. **PDF_URL** - Link to generated PDF\n7. **Date** - Verification timestamp\n"
      },
      "typeVersion": 1
    },
    {
      "id": "7795da16-16bd-485f-a44f-6880253dcfde",
      "name": "거부 이메일 전송 - Gmail",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1648,
        352
      ],
      "webhookId": "",
      "parameters": {
        "sendTo": "={{ $('Webhook - Receive User Data').item.json.body.email }}",
        "message": "=<h3>Hi {{ $('Webhook - Receive User Data').item.json.body.name }},</h3>\n<p>We couldn't verify your email address: <strong>{{ $('Webhook - Receive User Data').item.json.body.email }}</strong></p>\n<p>This could be due to:</p>\n<ul>\n  <li>Invalid email format</li>\n  <li>Non-existent email domain</li>\n  <li>Temporary email service</li>\n  <li>Disposable email address</li>\n</ul>\n<p><strong>What to do next:</strong></p>\n<p>Please check your email address and try registering again with a valid email.</p>\n<p>If you believe this is an error, please contact our support team.</p>\n<p style=\"color: #666; margin-top: 20px;\">– The Verification Team</p>",
        "options": {},
        "subject": "Profile Verification Failed ❌"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "YOUR_GMAIL_OAUTH2_ID",
          "name": "Gmail account OAuth2"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "6349b52f-f398-49be-9847-6280a023639a",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1536,
        336
      ],
      "parameters": {
        "color": 5,
        "width": 372,
        "height": 560,
        "content": "\n\n\n\n\n\n\n\n\n\n\n\n\n\n## 🚫 STEP 9: INVALID EMAIL HANDLING\n\n**Purpose:** Notify users when email verification fails\n\n**Email Details:**\n- **Subject:** \"Profile Verification Failed ❌\"\n- **Message:** Explains why verification failed\n- **Guidance:** Steps to resolve the issue\n\n**Common Failure Reasons:**\n- Invalid format\n- Non-existent domain\n- Temporary/disposable email\n- Typo in email address\n"
      },
      "typeVersion": 1
    },
    {
      "id": "26712fee-42f0-4c18-b345-aeed77bfc290",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        3040,
        -112
      ],
      "parameters": {
        "color": 4,
        "width": 368,
        "height": 336,
        "content": "## ✅ WORKFLOW COMPLETE!\n\n**Success Path Summary:**\n✅ Webhook receives user data\n✅ Email verified via API\n✅ HTML profile generated\n✅ PDF created and downloaded\n✅ Profile emailed to user\n✅ Data logged to Google Sheets\n\n**Failure Path Summary:**\n❌ Email verification fails\n❌ Rejection email sent\n❌ No PDF generated\n❌ No data logged\n"
      },
      "typeVersion": 1
    },
    {
      "id": "b91d5210-1e6b-4ee4-9217-5ac7c9760fba",
      "name": "Verifi Email",
      "type": "n8n-nodes-verifiemail.verifiEmail",
      "position": [
        656,
        224
      ],
      "parameters": {
        "email": "={{ $json.body.email }}"
      },
      "credentials": {
        "verifiEmailApi": {
          "id": "YOUR_VERIFI_EMAIL_API_ID",
          "name": "VerifiEmail API"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "1b44d9a8-e00d-4400-a00b-8c45b3dabea4",
      "name": "HTML to PDF",
      "type": "n8n-nodes-htmlcsstopdf.htmlcsstopdf",
      "position": [
        1600,
        64
      ],
      "parameters": {
        "html_content": "={{ $json.html_content }}"
      },
      "credentials": {
        "htmlcsstopdfApi": {
          "id": "YOUR_HTML_TO_PDF_API_ID",
          "name": "HTML to PDF account API"
        }
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "",
  "connections": {
    "1b44d9a8-e00d-4400-a00b-8c45b3dabea4": {
      "main": [
        [
          {
            "node": "defd69e1-8347-4418-914e-5808e0d0440e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "b91d5210-1e6b-4ee4-9217-5ac7c9760fba": {
      "main": [
        [
          {
            "node": "d171efbb-aeb3-48dc-ba89-34ad1308c22d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d171efbb-aeb3-48dc-ba89-34ad1308c22d": {
      "main": [
        [
          {
            "node": "d8664417-6235-4331-b37a-ee0a216d04f2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "7795da16-16bd-485f-a44f-6880253dcfde",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "defd69e1-8347-4418-914e-5808e0d0440e": {
      "main": [
        [
          {
            "node": "d6e3ca94-dd1f-425b-91ab-e9c060102c07",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d8664417-6235-4331-b37a-ee0a216d04f2": {
      "main": [
        [
          {
            "node": "1b44d9a8-e00d-4400-a00b-8c45b3dabea4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d6e3ca94-dd1f-425b-91ab-e9c060102c07": {
      "main": [
        [
          {
            "node": "e8c9e5b1-7c63-49e3-acc4-bd390a0349f9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a5433c21-6cc1-4147-aaae-2c12102e95b5": {
      "main": [
        [
          {
            "node": "b91d5210-1e6b-4ee4-9217-5ac7c9760fba",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
자주 묻는 질문

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

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

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

고급 - 문서 추출

유료인가요?

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

워크플로우 정보
난이도
고급
노드 수20
카테고리1
노드 유형9
난이도 설명

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

저자
Jitesh Dugar

Jitesh Dugar

@jiteshdugar

AI Automation Specialist - OpenAI, CRM & Automation Expert with a solid understanding of various tools that include Zapier, Make, Zoho CRM, Hubspot, Google Sheets, Airtable, Pipedrive, Google Analytics, and more.

외부 링크
n8n.io에서 보기

이 워크플로우 공유

카테고리

카테고리: 34