Verifiziertes Benutzerprofil erstellen

Experte

Dies ist ein Document Extraction-Bereich Automatisierungsworkflow mit 20 Nodes. Hauptsächlich werden If, Set, Gmail, Webhook, HttpRequest und andere Nodes verwendet. Erstellen Sie verifizierte Benutzerprofile mit E-Mail-Verifizierung, PDF-Generierung und Gmail-Zustellung

Voraussetzungen
  • Google-Konto + Gmail API-Anmeldedaten
  • HTTP Webhook-Endpunkt (wird von n8n automatisch generiert)
  • Möglicherweise sind Ziel-API-Anmeldedaten erforderlich
  • Google Sheets API-Anmeldedaten
Workflow-Vorschau
Visualisierung der Node-Verbindungen, mit Zoom und Pan
Workflow exportieren
Kopieren Sie die folgende JSON-Konfiguration und importieren Sie sie in 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 - Benutzerdaten empfangen",
      "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 E-Mail gültig?",
      "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-Vorlage generieren",
      "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-Binärdatei herunterladen",
      "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": "Profil-E-Mail senden - 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": "In Google Sheets protokollieren",
      "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": "Ablehnungs-E-Mail senden - 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 zu 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
          }
        ]
      ]
    }
  }
}
Häufig gestellte Fragen

Wie verwende ich diesen Workflow?

Kopieren Sie den obigen JSON-Code, erstellen Sie einen neuen Workflow in Ihrer n8n-Instanz und wählen Sie "Aus JSON importieren". Fügen Sie die Konfiguration ein und passen Sie die Anmeldedaten nach Bedarf an.

Für welche Szenarien ist dieser Workflow geeignet?

Experte - Dokumentenextraktion

Ist es kostenpflichtig?

Dieser Workflow ist völlig kostenlos. Beachten Sie jedoch, dass Drittanbieterdienste (wie OpenAI API), die im Workflow verwendet werden, möglicherweise kostenpflichtig sind.

Workflow-Informationen
Schwierigkeitsgrad
Experte
Anzahl der Nodes20
Kategorie1
Node-Typen9
Schwierigkeitsbeschreibung

Für fortgeschrittene Benutzer, komplexe Workflows mit 16+ Nodes

Autor
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.

Externe Links
Auf n8n.io ansehen

Diesen Workflow teilen

Kategorien

Kategorien: 34