Validation des e-mails d'intégration client

Avancé

Ceci est unContent Creation, Multimodal AIworkflow d'automatisation du domainecontenant 21 nœuds.Utilise principalement des nœuds comme If, Code, Gmail, Slack, Webhook. Automatisation de la vérification des e-mails et du processus d'intégration avec VerifiEmail, Gmail et Slack

Prérequis
  • Compte Google et informations d'identification Gmail API
  • Token Bot Slack ou URL Webhook
  • Point de terminaison HTTP Webhook (généré automatiquement par n8n)
  • Informations d'identification Google Sheets API
Aperçu du workflow
Visualisation des connexions entre les nœuds, avec support du zoom et du déplacement
Exporter le workflow
Copiez la configuration JSON suivante dans n8n pour importer et utiliser ce workflow
{
  "id": "0l3nj6SM84lw3lvH",
  "meta": {
    "instanceId": "",
    "templateCredsSetupCompleted": false
  },
  "name": "Customer Onboarding Email Verification",
  "tags": [],
  "nodes": [
    {
      "id": "86910847-a9b7-4a7d-9ed0-259e9fb0b880",
      "name": "Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        -80,
        0
      ],
      "webhookId": "",
      "parameters": {
        "path": "/new-signup",
        "options": {},
        "httpMethod": "POST"
      },
      "typeVersion": 2.1
    },
    {
      "id": "e834db7e-1dc7-4ee5-8ac4-1be83f1a4041",
      "name": "Assainissement des données",
      "type": "n8n-nodes-base.code",
      "position": [
        176,
        0
      ],
      "parameters": {
        "jsCode": "// Handle different input structures safely\nconst items = $input.all();\n\nreturn items.map(item => {\n  // Try different possible data structures\n  const data = item.json.body || item.json || {};\n  \n  // Safe access with fallbacks\n  const name = (data.name || '').trim();\n  const email = (data.email || '').toLowerCase().trim();\n  \n  // Validation\n  if (!name || !email) {\n    throw new Error(`Missing required fields. Received: ${JSON.stringify(data)}`);\n  }\n  \n  return {\n    json: {\n      name: name,\n      email: email,\n      original_email: data.email || email,\n      received_at: new Date().toISOString()\n    }\n  };\n});"
      },
      "typeVersion": 2
    },
    {
      "id": "f0ccbc6e-9c10-47b3-bd2e-fb06a1f3615d",
      "name": "Validation d'email",
      "type": "n8n-nodes-verifiemail.verifiEmail",
      "position": [
        496,
        0
      ],
      "parameters": {
        "email": "={{ $json.email }}"
      },
      "credentials": {
        "verifiEmailApi": {
          "id": "",
          "name": "VerifiEmail API"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "7fa85889-6906-4637-8bcb-d2ec30370fda",
      "name": "Décision de validation",
      "type": "n8n-nodes-base.if",
      "position": [
        800,
        0
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "35f8b0f1-c001-46e2-a4f1-f7d5bb7b2b24",
              "operator": {
                "type": "boolean",
                "operation": "true",
                "singleValue": true
              },
              "leftValue": "={{ $json.valid }}",
              "rightValue": ""
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "1c045477-d1eb-4bc7-a006-fd87321ddbb4",
      "name": "Personnaliser l'email de bienvenue",
      "type": "n8n-nodes-base.code",
      "position": [
        1072,
        -96
      ],
      "parameters": {
        "mode": "runOnceForEachItem",
        "jsCode": "// Get data from previous nodes\nconst name = $('Data Sanitization').item.json.name;\nconst email = $('Data Sanitization').item.json.email;\nconst firstName = name.split(' ')[0];\n\n// Get validation details (optional - for logging)\nconst validationScore = $json.quality_score || 'N/A';\n\nreturn {\n  json: {\n    name: name,\n    firstName: firstName,\n    email: email,\n    subject: `Welcome to Our Platform, ${firstName}! 🎉`,\n    emailBody: `\n<!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; font-family: Arial, sans-serif; background-color: #f4f4f4;\">\n  <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" style=\"background-color: #f4f4f4; padding: 20px;\">\n    <tr>\n      <td align=\"center\">\n        <table width=\"600\" cellpadding=\"0\" cellspacing=\"0\" style=\"background-color: #ffffff; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 4px rgba(0,0,0,0.1);\">\n          \n          <!-- Header -->\n          <tr>\n            <td style=\"background: linear-gradient(135deg, #667eea 0%, #764ba2 100%); padding: 40px 20px; text-align: center;\">\n              <h1 style=\"color: #ffffff; margin: 0; font-size: 28px;\">Welcome, ${firstName}! 🎉</h1>\n            </td>\n          </tr>\n          \n          <!-- Content -->\n          <tr>\n            <td style=\"padding: 40px 30px;\">\n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 0 0 20px 0;\">\n                Hi <strong>${firstName}</strong>,\n              </p>\n              \n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 0 0 20px 0;\">\n                Thank you for joining us! We're thrilled to have you as part of our community.\n              </p>\n              \n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 0 0 30px 0;\">\n                Here's what you can do next:\n              </p>\n              \n              <!-- Action Buttons -->\n              <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" style=\"margin-bottom: 30px;\">\n                <tr>\n                  <td style=\"padding: 10px 0;\">\n                    <a href=\"https://yourapp.com/dashboard\" style=\"display: inline-block; background-color: #667eea; color: #ffffff; text-decoration: none; padding: 14px 30px; border-radius: 5px; font-weight: bold; font-size: 16px;\">\n                      📊 Access Your Dashboard\n                    </a>\n                  </td>\n                </tr>\n                <tr>\n                  <td style=\"padding: 10px 0;\">\n                    <a href=\"https://yourapp.com/getting-started\" style=\"display: inline-block; background-color: #48bb78; color: #ffffff; text-decoration: none; padding: 14px 30px; border-radius: 5px; font-weight: bold; font-size: 16px;\">\n                      📚 Getting Started Guide\n                    </a>\n                  </td>\n                </tr>\n                <tr>\n                  <td style=\"padding: 10px 0;\">\n                    <a href=\"https://yourapp.com/support\" style=\"display: inline-block; background-color: #ed8936; color: #ffffff; text-decoration: none; padding: 14px 30px; border-radius: 5px; font-weight: bold; font-size: 16px;\">\n                      💬 Contact Support\n                    </a>\n                  </td>\n                </tr>\n              </table>\n              \n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 0 0 10px 0;\">\n                Questions? Just reply to this email - we're here to help!\n              </p>\n              \n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 0;\">\n                Best regards,<br>\n                <strong>The Team</strong>\n              </p>\n            </td>\n          </tr>\n          \n          <!-- Footer -->\n          <tr>\n            <td style=\"background-color: #f7fafc; padding: 20px 30px; text-align: center; border-top: 1px solid #e2e8f0;\">\n              <p style=\"font-size: 12px; color: #718096; margin: 0;\">\n                © 2025 Your Company. All rights reserved.\n              </p>\n            </td>\n          </tr>\n          \n        </table>\n      </td>\n    </tr>\n  </table>\n</body>\n</html>\n    `,\n    timestamp: new Date().toISOString(),\n    status: 'verified',\n    validationScore: validationScore\n  }\n};"
      },
      "typeVersion": 2
    },
    {
      "id": "090efe61-fd58-400b-935b-70291bb3595e",
      "name": "Préparer l'email de correction",
      "type": "n8n-nodes-base.code",
      "position": [
        1104,
        176
      ],
      "parameters": {
        "jsCode": "const name = $('Data Sanitization').item.json.name;\nconst email = $('Data Sanitization').item.json.email;\nconst firstName = name.split(' ')[0];\n\n// Get validation reason\nconst validationData = $json;\nconst reason = validationData.deliverability || 'invalid';\n\n// Simple typo detection\nlet suggestion = '';\nconst commonTypos = {\n  'gmial': 'gmail',\n  'gmai': 'gmail',\n  'yahooo': 'yahoo',\n  'yaho': 'yahoo',\n  'hotmial': 'hotmail',\n  'outlok': 'outlook',\n  'outloo': 'outlook'\n};\n\nfor (const [typo, correct] of Object.entries(commonTypos)) {\n  if (email.includes(typo)) {\n    suggestion = email.replace(typo, correct);\n    break;\n  }\n}\n\nreturn {\n  json: {\n    name: name,\n    firstName: firstName,\n    email: email,\n    suggestion: suggestion,\n    reason: reason,\n    subject: `Please verify your email address`,\n    emailBody: `\n<!DOCTYPE html>\n<html>\n<head>\n  <meta charset=\"UTF-8\">\n</head>\n<body style=\"margin: 0; padding: 0; font-family: Arial, sans-serif; background-color: #f4f4f4;\">\n  <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\" style=\"background-color: #f4f4f4; padding: 20px;\">\n    <tr>\n      <td align=\"center\">\n        <table width=\"600\" cellpadding=\"0\" cellspacing=\"0\" style=\"background-color: #ffffff; border-radius: 8px; overflow: hidden;\">\n          \n          <!-- Header -->\n          <tr>\n            <td style=\"background-color: #f56565; padding: 30px 20px; text-align: center;\">\n              <h1 style=\"color: #ffffff; margin: 0; font-size: 24px;\">⚠️ Email Verification Issue</h1>\n            </td>\n          </tr>\n          \n          <!-- Content -->\n          <tr>\n            <td style=\"padding: 40px 30px;\">\n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 0 0 20px 0;\">\n                Hi <strong>${firstName}</strong>,\n              </p>\n              \n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 0 0 20px 0;\">\n                We attempted to verify your email address but encountered an issue:\n              </p>\n              \n              <div style=\"background-color: #fff5f5; border-left: 4px solid #f56565; padding: 15px; margin: 20px 0;\">\n                <p style=\"margin: 0; color: #742a2a; font-family: monospace;\">\n                  <strong>Email entered:</strong> ${email}\n                </p>\n              </div>\n              \n              ${suggestion ? `\n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 20px 0;\">\n                Did you mean: <strong style=\"color: #48bb78;\">${suggestion}</strong>?\n              </p>\n              ` : ''}\n              \n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 20px 0;\">\n                Please double-check your email address and try again:\n              </p>\n              \n              <table width=\"100%\" cellpadding=\"0\" cellspacing=\"0\">\n                <tr>\n                  <td style=\"padding: 20px 0; text-align: center;\">\n                    <a href=\"https://yourapp.com/signup\" style=\"display: inline-block; background-color: #4299e1; color: #ffffff; text-decoration: none; padding: 14px 40px; border-radius: 5px; font-weight: bold; font-size: 16px;\">\n                      Try Again\n                    </a>\n                  </td>\n                </tr>\n              </table>\n              \n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 20px 0;\">\n                Need help? <a href=\"https://yourapp.com/support\" style=\"color: #4299e1;\">Contact our support team</a>.\n              </p>\n              \n              <p style=\"font-size: 16px; line-height: 1.6; color: #333333; margin: 0;\">\n                Best regards,<br>\n                <strong>The Team</strong>\n              </p>\n            </td>\n          </tr>\n          \n          <!-- Footer -->\n          <tr>\n            <td style=\"background-color: #f7fafc; padding: 20px 30px; text-align: center;\">\n              <p style=\"font-size: 12px; color: #718096; margin: 0;\">\n                © 2025 Your Company\n              </p>\n            </td>\n          </tr>\n          \n        </table>\n      </td>\n    </tr>\n  </table>\n</body>\n</html>\n    `,\n    status: 'invalid',\n    timestamp: new Date().toISOString()\n  }\n};"
      },
      "typeVersion": 2
    },
    {
      "id": "3fb1d01c-b57d-4f0d-b160-5ed16f4ff5e5",
      "name": "Notification à l'équipe",
      "type": "n8n-nodes-base.slack",
      "position": [
        1968,
        -96
      ],
      "webhookId": "",
      "parameters": {
        "text": "=🎉 *New Verified Signup!*\n👤 *Name:* {{ $('Personalize Welcome Email').item.json.name }}\n📧 *Email:* {{ $('Personalize Welcome Email').item.json.email }}\n⏰ *Time:* {{ $('Personalize Welcome Email').item.json.timestamp }}\n✅ *Status:* Verified & Welcomed",
        "select": "channel",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultName": "new-signup"
        },
        "otherOptions": {},
        "authentication": "oAuth2"
      },
      "credentials": {
        "slackOAuth2Api": {
          "id": "",
          "name": "Slack Workspace"
        }
      },
      "typeVersion": 2.3
    },
    {
      "id": "d42409be-e1c4-41e0-8114-4d59aaccea1e",
      "name": "Journaliser les utilisateurs valides",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        1536,
        -96
      ],
      "parameters": {
        "columns": {
          "value": {
            "Name": "={{ $('Personalize Welcome Email').item.json.name }}",
            "Email": "={{ $('Personalize Welcome Email').item.json.email }}",
            " Status": "={{ $('Personalize Welcome Email').item.json.status }}",
            "Verified At": "={{ $('Personalize Welcome Email').item.json.timestamp }}",
            "Original Email": "={{ $('Data Sanitization').item.json.original_email }}",
            "Validation Score": "={{ $('Personalize Welcome Email').item.json.validationScore }}"
          },
          "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": " Status",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": " Status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Verified At",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Verified At",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Original Email",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Original Email",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "Validation Score",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "Validation Score",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Email"
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "",
          "cachedResultName": "Verified Users"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "id": "",
          "name": "Google Sheets Account"
        }
      },
      "typeVersion": 4.7
    },
    {
      "id": "9e8d198e-2cda-4ff3-8cda-3bfc909444b5",
      "name": "Envoyer l'email de bienvenue",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1328,
        -96
      ],
      "webhookId": "",
      "parameters": {
        "sendTo": "={{ $json.email }}",
        "message": "={{ $json.emailBody }}",
        "options": {},
        "subject": "={{ $json.subject }}"
      },
      "credentials": {
        "gmailOAuth2": {
          "id": "",
          "name": "Gmail Account"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "04369699-c5d2-4948-96ea-47e74919fe9a",
      "name": "Arrêt et erreur",
      "type": "n8n-nodes-base.stopAndError",
      "position": [
        1472,
        176
      ],
      "parameters": {
        "errorMessage": "\"Invalid email address\""
      },
      "typeVersion": 1
    },
    {
      "id": "b03ea9e9-1f92-4858-b2ae-e39f4ad2fe83",
      "name": "Note adhésive",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -752,
        -112
      ],
      "parameters": {
        "color": 7,
        "width": 480,
        "height": 368,
        "content": "## CUSTOMER ONBOARDING EMAIL VERIFICATION WORKFLOW\n\n**Purpose**: Validate **new signups** and send **personalized welcome emails**\n**Owner**: [Your Team]\n**Status**: ✅ Active\n\n**Quick Stats**:\n- Average execution time: **~3-5 seconds**\n- API calls per signup: **1 (email validation)**\n- Success rate target: **>95%**\n\n**Monitor**: Check **Google Sheets** daily\n**Alerts**: **Slack #new-signups channel**"
      },
      "typeVersion": 1
    },
    {
      "id": "528bf108-604f-4242-8b99-1990ea3e682e",
      "name": "Note adhésive1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -240,
        -448
      ],
      "parameters": {
        "color": 7,
        "width": 304,
        "height": 576,
        "content": "## WEBHOOK TRIGGER\n\n**Configuration**:\n- Method: **POST**\n- Path: **/new-signup**\n- Authentication: **[None/Basic Auth]**\n\n**Required Fields**:\n```\n{\n  \"name\": \"string\",\n  \"email\": \"string\"\n}\n```\n\n**TIP**: Use **\"Listen for Test Event\"** \n     to debug incoming data structure\n\n**IMPORTANT**: Rate limiting not enabled\n   Consider adding if public-facing"
      },
      "typeVersion": 1
    },
    {
      "id": "b06d93a6-c7d8-4983-8393-f3df19536dda",
      "name": "Note adhésive2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        80,
        -480
      ],
      "parameters": {
        "color": 7,
        "width": 304,
        "height": 608,
        "content": "## DATA SANITIZATION\n\n- **Actions**:\n✓ Trim whitespace\n✓ Lowercase email\n✓ Preserve original email\n✓ Add timestamp\n\n**Common Issues**:\n- **\"undefined\" error** → Check webhook data structure\n- Missing fields → Ensure name & email present\n\n**Output Format**:\n```\n{\n  \"name\": \"John Doe\",\n  \"email\": \"johndoe@gmail.com\",\n  \"original_email\": \"JohnDoe@Gmail.com \",\n  \"received_at\": \"2025-10-01T09:07:28.320Z\"\n}\n```"
      },
      "typeVersion": 1
    },
    {
      "id": "99f39f7d-8b0d-49b4-81a7-cc691caba8bb",
      "name": "Note adhésive3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        416,
        -416
      ],
      "parameters": {
        "color": 7,
        "width": 256,
        "height": 576,
        "content": "## EMAIL VALIDATION (VerifiEmail)\n\n- Service: **VerifiEmail API**\n\n**Validation Checks**:\n✓ Format validation\n✓ MX records exist\n✓ Disposable domain detection\n✓ Deliverability verification\n\n**Key Response Field**:\n- valid: **true/false (boolean)**\n\nCredentials: https://verifi.email\n\n💡 **Fallback**: If API fails,\n   workflow will error - consider\n   adding error handling"
      },
      "typeVersion": 1
    },
    {
      "id": "878cf3ea-e3e7-4e87-a4e3-6a209497ec1b",
      "name": "Note adhésive4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        736,
        -320
      ],
      "parameters": {
        "color": 7,
        "height": 448,
        "content": "## VALIDATION DECISION POINT\n\n**DECISION POINT**\n**Condition**: **$json.valid == true**\n\n✅ **TRUE (~85-90%)**\n→ Welcome email → Sheets → Slack\n\n❌ **FALSE (~10-15%)**\n→ Error message → Stop\n\n💡 Monitor weekly split ratio"
      },
      "typeVersion": 1
    },
    {
      "id": "b9b68238-69ee-4542-ab77-1503382c235d",
      "name": "Note adhésive5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1008,
        -432
      ],
      "parameters": {
        "color": 7,
        "width": 272,
        "height": 480,
        "content": "## PERSONALIZE EMAIL\n\n**Template**:\n- **Subject**: \"Welcome, {firstName}! 🎉\"\n- **HTML format (~8KB)**\n\n**Update These**:\n- Company name\n- CTA URLs (yourapp.com/*)\n- Brand colors\n- Footer copyright\n\nData: Name, Email, firstName extracted"
      },
      "typeVersion": 1
    },
    {
      "id": "9d7e44a0-3e33-4e27-9e91-508b1704f6e4",
      "name": "Note adhésive6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1488,
        -448
      ],
      "parameters": {
        "color": 7,
        "height": 496,
        "content": "## LOG TO SHEETS\n\n**Operation**: Append or Update\n**Match**: Email (no duplicates)\n\nFields:\n- Name, Email, Status\n- Timestamp, Original Email\n- Validation Score\n\n**Uses**:\n✓ Audit trail\n✓ Marketing list\n✓ Analytics source\n\n**Review weekly for trends**"
      },
      "typeVersion": 1
    },
    {
      "id": "d249ffe4-fb29-4c93-8146-bba14304ff66",
      "name": "Note adhésive7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1792,
        -384
      ],
      "parameters": {
        "color": 7,
        "width": 304,
        "height": 432,
        "content": "## SLACK ALERT\n\n**Channel**: #new-signup\n\n**Message**:\n🎉 New Verified Signup!\n👤 Name \n📧 Email \n⏰ Time\n\n**Who**: Sales, Marketing, Product\n\n- If >100/day, switch to:\n  - Hourly digest\n  - Daily summary"
      },
      "typeVersion": 1
    },
    {
      "id": "0d82df0e-bcef-478e-a58c-8d0562f40fc0",
      "name": "Note adhésive8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1408,
        160
      ],
      "parameters": {
        "color": 7,
        "width": 256,
        "height": 480,
        "content": "\n\n\n\n\n\n\n\n\n\n\n## STOP & ERROR\n\n**Error**: **\"Invalid email address\"**\n\n**Result**:\n- Workflow stops\n- Marked as error\n- No email sent\n- Not logged\n\n**BETTER OPTION**:\n- Replace with Send Email node\n- Notify user\n- Log to \"Invalid Attempts\" sheet\n- Graceful UX"
      },
      "typeVersion": 1
    },
    {
      "id": "e76c5aeb-c342-4e9e-81ec-ad9d0330eeab",
      "name": "Note adhésive9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -704,
        320
      ],
      "parameters": {
        "color": 7,
        "width": 288,
        "height": 384,
        "content": "## MAINTENANCE\n\n📅 WEEKLY:\n□ Check API usage\n□ Review Slack alerts\n□ Test sample signup\n\n📅 MONTHLY:\n□ Update email template\n□ Archive old data\n□ Check Gmail limits\n\n🆘 QUICK FIXES:\n- No emails? → Check Gmail OAuth2\n- Invalid all? → Check VerifiEmail API\n- No Slack? → Verify connection\n- Duplicates? → Check match column"
      },
      "typeVersion": 1
    },
    {
      "id": "f177dd8d-ba9e-4b74-816e-385b34a0da5d",
      "name": "Note adhésive10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -352,
        320
      ],
      "parameters": {
        "color": 7,
        "width": 304,
        "height": 496,
        "content": "## QUICK REFERENCE\n\n🔗 Links:\n- Webhook: /webhook/new-signup\n- Sheet: Verified Users\n- Slack: #new-signup\n- API: verifi.email\n\n📊 Targets:\n- Success: >95%\n- Time: <5 sec\n- Delivery: >98%\n\n🧪 Test:\n```\ncurl -X POST [webhook] \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"name\":\"Test\",\"email\":\"test@gmail.com\"}'\n```\n👥 Owner: [Your Name]\n📧 Support: [Email]"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "f6a13975-f0ea-4d5f-9df3-77b8adbc172b",
  "connections": {
    "86910847-a9b7-4a7d-9ed0-259e9fb0b880": {
      "main": [
        [
          {
            "node": "e834db7e-1dc7-4ee5-8ac4-1be83f1a4041",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "d42409be-e1c4-41e0-8114-4d59aaccea1e": {
      "main": [
        [
          {
            "node": "3fb1d01c-b57d-4f0d-b160-5ed16f4ff5e5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "f0ccbc6e-9c10-47b3-bd2e-fb06a1f3615d": {
      "main": [
        [
          {
            "node": "7fa85889-6906-4637-8bcb-d2ec30370fda",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "e834db7e-1dc7-4ee5-8ac4-1be83f1a4041": {
      "main": [
        [
          {
            "node": "f0ccbc6e-9c10-47b3-bd2e-fb06a1f3615d",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "9e8d198e-2cda-4ff3-8cda-3bfc909444b5": {
      "main": [
        [
          {
            "node": "d42409be-e1c4-41e0-8114-4d59aaccea1e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7fa85889-6906-4637-8bcb-d2ec30370fda": {
      "main": [
        [
          {
            "node": "1c045477-d1eb-4bc7-a006-fd87321ddbb4",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "090efe61-fd58-400b-935b-70291bb3595e",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "090efe61-fd58-400b-935b-70291bb3595e": {
      "main": [
        [
          {
            "node": "04369699-c5d2-4948-96ea-47e74919fe9a",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1c045477-d1eb-4bc7-a006-fd87321ddbb4": {
      "main": [
        [
          {
            "node": "9e8d198e-2cda-4ff3-8cda-3bfc909444b5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Foire aux questions

Comment utiliser ce workflow ?

Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.

Dans quelles scénarios ce workflow est-il adapté ?

Avancé - Création de contenu, IA Multimodale

Est-ce payant ?

Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.

Informations sur le workflow
Niveau de difficulté
Avancé
Nombre de nœuds21
Catégorie2
Types de nœuds9
Description de la difficulté

Adapté aux utilisateurs avancés, avec des workflows complexes contenant 16+ nœuds

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

Liens externes
Voir sur n8n.io

Partager ce workflow

Catégories

Catégories: 34