{
  "workflow": {
    "id": 9504,
    "name": "Automate university admission process with Email verification, PDF generation & Gmail",
    "views": 122,
    "recentViews": 0,
    "totalViews": 122,
    "createdAt": "2025-10-12T06:26:07.350Z",
    "description": "# University Admission Confirmation & Welcome Kit\n\nA robust **n8n workflow template** that automates the university admission process for colleges, universities, and educational programs.  \nThis workflow validates student emails, generates professional PDF admission letters, sends personalized welcome emails, and handles errors efficiently — all in **under 15 seconds per submission**.  \n\nPerfect for streamlining student onboarding with professional communication.\n\n---\n\n## Overview\n\nThis workflow automates the process of handling new admission submissions by:\n- Verifying student emails in real-time  \n- Generating university-branded admission confirmation PDFs  \n- Sending personalized welcome emails  \n- Logging invalid entries and preventing spam  \n\n---\n\n## Key Features\n\n### Email Verification & Fraud Prevention\n- Real-time email validation using **VerifiEmail API**  \n- Checks **RFC compliance, MX records, disposable emails**, and **spoofed addresses**  \n- Rejects invalid emails before processing  \n- Prevents fake registrations and ensures deliverability  \n\n### Automated PDF Generation\n- Creates **branded, print-ready admission letters** using **PDFMunk**  \n- Includes student details, program information, and verification badge  \n- Professional design with gradient headers and university branding  \n- Dynamic data integration for personalized documents  \n\n### Smart Email Notifications\n- **Student Welcome Email:** Personalized confirmation with PDF attachment  \n- **Invalid Email Alerts:** Notifies admissions team of failed validations  \n- **Responsive Design:** Mobile-friendly, clear next steps  \n\n### Intelligent Routing\n- Conditional logic based on validation results  \n- Valid emails → generate PDF + send email  \n- Invalid emails → log and stop workflow  \n- Saves API usage and execution time  \n\n### Error Handling\n- Comprehensive error detection for validation and API failures  \n- Detailed logging for invalid addresses  \n- Stops on failure to avoid unnecessary processing  \n- Sends admin alerts with actionable info  \n\n---\n\n## Perfect For\n- Universities & Colleges (Undergraduate & Postgraduate Admissions)  \n- Online Education Platforms (MOOCs, Certifications)  \n- Training & Vocational Programs  \n- Study Abroad Agencies  \n- Scholarship & Fellowship Applications  \n- Continuing Education Departments  \n\n---\n\n## Workflow Statistics\n\n| Metric | Detail |\n|---------|--------|\n| **Total Nodes** | 15 |\n| **Complexity** | ⭐⭐ Medium |\n| **Processing Time** | 8–15 seconds per submission |\n| **Setup Time** | 10–15 minutes |\n| **Code Required** | ❌ No code (No-code solution) |\n| **Maintenance** | Minimal (Set & forget) |\n\n---\n\n## Requirements\n\n### Required Services & APIs\n\n| Service | Purpose | Signup |\n|----------|----------|--------|\n| **VerifiEmail API** | Email validation | [verifi.email](https://verifi.email) |\n| **PDFMunk API** | PDF generation | [pdfmunk.com](https://pdfmunk.com) |\n| **Gmail** | Email notifications | [Google Cloud Console](https://console.cloud.google.com) |\n\n### Optional Integrations\n- Google Forms or Typeform (data source)\n- Google Sheets (admission tracking)\n- Slack (team notifications)\n- CRM (Salesforce, HubSpot, etc.)\n\n---\n\n## What Gets Created\n\n### PDF Admission Letter\n- Generated using **PDFMunk API**\n- Includes:\n  - University-branded header & gradient design  \n  - Email verification badge  \n  - Student details (Name, Course, Application ID)  \n  - Admission date & program info  \n  - Professional footer & signature  \n\n### Email Notifications\n\n#### 1. Student Welcome Email  \n- Personalized greeting + attached PDF  \n- Next steps checklist (enrollment, orientation, etc.)  \n- Mobile-responsive design  \n\n#### 2. Invalid Email Alert (Admin)  \n- Sent to admissions@youruniversity.edu  \n- Includes failure reasons, student name, and application ID  \n- Actionable follow-up steps  \n\n---\n\n## Quick Start Guide\n\n### 1️⃣ Import Template\n- Copy workflow JSON  \n- In **n8n → Workflows → Import from Clipboard**  \n- Paste and import\n\n### 2️⃣ Configure Credentials (10 minutes)\n\n#### A. VerifiEmail API\n- Sign up → get API key → add under *VerifiEmail account*\n\n#### B. PDFMunk API\n- Sign up → get API key → add under *HtmlcsstopdfApi account*\n\n#### C. Gmail OAuth2\n- Create project in Google Cloud Console  \n- Enable Gmail API → OAuth 2.0 credentials  \n- Add under *Gmail account* in n8n  \n\n### 3️⃣ Update Email Addresses\n- **Welcome Email Node:** admissions@youruniversity.edu  \n- **Invalid Alert Node:** admissions team email  \n- Update branding details in email + PDF templates  \n\n### 4️⃣ Test the Workflow\n```bash\ncurl -X POST https://your-n8n.com/webhook/admission-form \\\n-H \"Content-Type: application/json\" \\\n-d '{\n  \"name\": \"John Doe\",\n  \"email\": \"john.doe@example.com\",\n  \"course\": \"B.Tech Computer Science\",\n  \"college_name\": \"TechNova University\",\n  \"application_id\": \"TN-2025-0451\",\n  \"admission_date\": \"2025-10-12\"\n}'\n````\n\n### 5️⃣ Activate Workflow\n\nToggle ON in n8n (top-right corner).\n\n---\n\n## 🧠 Detailed Setup Instructions\n\n### Step 1: VerifiEmail Configuration\n\n* Sign up → get API key\n* Add in *VerifiEmail Node* credentials\n* Test with sample email\n\n### Step 2: PDFMunk Setup\n\n* Sign up → get API key\n* Add in *HTML to PDF Node*\n* Test with sample execution\n\n### Step 3: Gmail Configuration\n\n* Enable Gmail API\n* Add OAuth 2.0 credentials\n* Authenticate with Gmail account\n* Test sending an email\n\n### Step 4: Webhook Setup\n\n* Copy webhook URL from “Webhook - Admission Form” node\n* Connect your form platform (Google Form, Typeform, etc.)\n* Ensure JSON payload includes:\n  `name`, `email`, `course`, `college_name`, `application_id`, `admission_date`\n\n### Step 5: Test & Validate\n\n* ✅ **Valid email:** Check PDF generation + welcome email\n* ❌ **Invalid email:** Confirm admin alert sent\n* ⚠️ **Missing data:** Review error logs\n\n---\n\n## 🔄 Workflow Diagram\n\n```\nStart\n ↓\nWebhook Trigger\n ↓\nEmail Verification (VerifiEmail API)\n ↓\nConditional Check (Valid?)\n ↙️              ↘️\nTRUE             FALSE\n ↓                ↓\nGenerate PDF     Log Error\n ↓                ↓\nSend Welcome Email   End\n ↓\nDone ✅\n```\n\n---\n\n## Processing Flow Details\n\n| Stage                   | Time        |\n| ----------------------- | ----------- |\n| Webhook → Data capture  | ~0s         |\n| Email Verification      | ~2–3s       |\n| PDF Generation          | ~4–6s       |\n| Email Delivery          | ~2–3s       |\n| **Total (Valid Email)** | **8–15s ⚡** |\n| **Invalid Email Path**  | **3–5s 🚀** |\n\n---\n\n## Customization Options\n\n### Easy Customizations\n\n* **Email Templates:** Update HTML & university branding\n* **PDF Template:** Modify HTML (colors, fonts, fields)\n* **Error Messages:** Customize admin alerts\n\n### Advanced Customizations\n\n* **Add Tracking:** Google Sheets or CRM\n* **Multi-Language Support:** Generate localized PDFs\n* **Extra Notifications:** Slack or SMS for staff\n* **CRM Integration:** Auto-push student data to Salesforce\n\n---\n\n## Troubleshooting\n\n| Issue                | Cause                         | Solution                      |\n| -------------------- | ----------------------------- | ----------------------------- |\n| Email marked invalid | API key or quota issue        | Check VerifiEmail dashboard   |\n| PDF not generated    | HTML error or expired API key | Validate HTML + check PDFMunk |\n| Email not sent       | OAuth expired                 | Re-auth Gmail credential      |\n| Webhook inactive     | URL incorrect or workflow off | Activate + test via curl      |\n\n---\n\n## Performance & Scalability\n\n| Metric                 | Current Capacity                  |\n| ---------------------- | --------------------------------- |\n| Concurrent Submissions | 10–20                             |\n| Daily Volume           | 500–1000                          |\n| PDF Size               | 100–500 KB                        |\n| Storage                | Temporary (email attachment only) |\n\n### Scaling Up\n\n* Upgrade API tiers for high-volume admissions\n* Add queue system or DB logging\n* Validate large payloads & compress data\n\n---\n\n## Security & Privacy\n\n* All API calls via HTTPS\n* OAuth2 for Gmail authentication\n* No student data stored post-execution\n* Encrypted verification process\n\n### Compliance\n\n* GDPR compliant (minimal retention)\n* Secure credential storage in n8n\n* Full audit via execution logs\n\n---\n\n## License\n\nThis template is provided as-is for commercial and personal use under the **MIT License**.\n\n```\n",
    "workflow": {
      "id": "W5pXaBvkQw0fRgtq",
      "meta": {
        "instanceId": "277842713620d9f5554de3b1518b865a152c8c4db680008bd8aec536fc18b4a8",
        "templateCredsSetupCompleted": true
      },
      "name": "University Admission Confirmation & Welcome Kit",
      "tags": [
        {
          "id": "1aJxLPnoF1djapym",
          "name": "student-onboarding",
          "createdAt": "2025-10-22T14:02:55.311Z",
          "updatedAt": "2025-10-22T14:02:55.311Z"
        },
        {
          "id": "VtKtlbiltEKc4K10",
          "name": "pdf-generation",
          "createdAt": "2025-10-22T14:02:55.317Z",
          "updatedAt": "2025-10-22T14:02:55.317Z"
        },
        {
          "id": "ci2wH1ejVpSkW4Lr",
          "name": "verifiemail",
          "createdAt": "2025-10-22T14:02:55.281Z",
          "updatedAt": "2025-10-22T14:02:55.281Z"
        },
        {
          "id": "kYNBAoHPSd955OKZ",
          "name": "education",
          "createdAt": "2025-10-22T14:02:55.325Z",
          "updatedAt": "2025-10-22T14:02:55.325Z"
        },
        {
          "id": "zpw5BOkTHTazT7F6",
          "name": "email-automation",
          "createdAt": "2025-10-22T14:02:55.321Z",
          "updatedAt": "2025-10-22T14:02:55.321Z"
        }
      ],
      "nodes": [
        {
          "id": "7a53c9ca-ebbc-4411-81a2-70d04fb3dfdd",
          "name": "Sticky Note - Webhook Info",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -2176,
            464
          ],
          "parameters": {
            "color": 7,
            "width": 480,
            "height": 468,
            "content": "## STEP 1: WEBHOOK TRIGGER\n\n**Test with cURL:**\n```bash\ncurl -X POST https://your-n8n-instance.com/webhook/admission-form \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\n    \"name\": \"John Doe\",\n    \"email\": \"student@example.com\",\n    \"course\": \"B.Tech Computer Science\",\n    \"college_name\": \"TechNova University\",\n    \"application_id\": \"TN-2025-0451\",\n    \"admission_date\": \"2025-10-12\"\n  }'\n```"
          },
          "typeVersion": 1
        },
        {
          "id": "4c1d1566-e330-4f6a-9b5c-3faf647b866b",
          "name": "Sticky Note - Credentials Setup",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -2640,
            992
          ],
          "parameters": {
            "color": 7,
            "width": 392,
            "height": 376,
            "content": "## SETUP CREDENTIALS FIRST\n\n### 1️⃣ VerifiEmail API\n- Sign up: https://verifi.email\n- Get API key from dashboard\n\n### 2️⃣ Gmail OAuth2\n- Select: \"Gmail OAuth2 API\"\n\n### 3️⃣ HTML/CSS to PDF API\n- Get API credentials at: https://pdfmunk.com\n\n\n**Test each credential before running the workflow!**"
          },
          "typeVersion": 1
        },
        {
          "id": "417c4a99-9893-4d97-98db-432420594e2f",
          "name": "Sticky Note - VerifiEmail Info",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1680,
            496
          ],
          "parameters": {
            "color": 7,
            "width": 396,
            "height": 448,
            "content": "## STEP 2: EMAIL VERIFICATION\n\n**Checks Performed:**\n- ✅ RFC compliant format\n- ✅ Valid MX records exist\n- ✅ Domain is active\n- ✅ Mailbox is deliverable\n- ✅ Not a disposable email\n- ✅ Spoof-free verification\n\n**Purpose:** Prevents fake registrations and ensures email deliverability"
          },
          "typeVersion": 1
        },
        {
          "id": "7d1b0210-d498-4926-8003-5648bafe30a1",
          "name": "Sticky Note - IF Condition Info",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -1264,
            432
          ],
          "parameters": {
            "color": 7,
            "width": 360,
            "height": 496,
            "content": "## STEP 3: CONDITIONAL ROUTING\n\n**Decision Logic:**\nChecks `{{ $json.valid }}` from VerifiEmail\n\n**TRUE Path (Green) ✅**\nEmail is valid and deliverable\n→ Proceed to PDF generation\n→ Send confirmation email\n\n**FALSE Path (Red) ❌**\nEmail is invalid/undeliverable\n→ Stop workflow\n→ Log error with details\n→ No PDF generated\n→ No email sent"
          },
          "typeVersion": 1
        },
        {
          "id": "84df3791-aea4-40d9-af7c-a9de1d5fa158",
          "name": "Stop - Invalid Email",
          "type": "n8n-nodes-base.stopAndError",
          "position": [
            -784,
            1072
          ],
          "parameters": {
            "errorMessage": "=Email validation failed for: {{ $('Admission Form').item.json.body.email }}\n\nApplication ID: {{ $('Admission Form').item.json.body.application_id }}\nStudent: {{ $('Admission Form').item.json.body.name }}\n\nReason: Invalid or undeliverable email address.\n\nAction Required: Contact student to verify email address."
          },
          "typeVersion": 1
        },
        {
          "id": "7d22d91c-a05d-4385-acaa-7b7087ec8856",
          "name": "Sticky Note - Error Path Info",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -864,
            1056
          ],
          "parameters": {
            "color": 7,
            "width": 360,
            "height": 492,
            "content": "\n\n\n\n\n\n\n\n\n\n## ERROR HANDLING\n\n**Triggered when:** Email validation fails\n\n**Actions:**\n- Workflow stops immediately\n- Error logged with full details\n- No resources wasted on invalid addresses\n\n**Error Message Includes:**\n- Student name\n- Failed email address\n- Application ID\n- Reason for failure\n- Recommended action\n"
          },
          "typeVersion": 1
        },
        {
          "id": "494dae0e-1ad3-46f9-8723-aa6c27741ff4",
          "name": "Sticky Note - PDF Generation Info",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -880,
            368
          ],
          "parameters": {
            "color": 7,
            "width": 400,
            "height": 468,
            "content": "## STEP 4: PDF GENERATION\n\n**Converts HTML template to PDF using external API**\n\n**Template Features:**\n- Professional gradient header\n- University branding colors\n- Email verification badge\n- Detailed admission info box\n- Digital signature section\n- Footer with metadata\n\n**API Response:** Returns `pdf_url` for download"
          },
          "typeVersion": 1
        },
        {
          "id": "46630413-481f-4bf6-8235-72493ebe7c10",
          "name": "Sticky Note - Gmail Info",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -48,
            304
          ],
          "parameters": {
            "color": 7,
            "width": 400,
            "height": 516,
            "content": "## STEP 6: EMAIL DELIVERY\n\n**Sends welcome email with PDF attachment via Gmail**\n\n**Email Components:**\n- Personalized greeting\n- Congratulatory message\n- Program confirmation\n- Highlighted PDF attachment notice\n- Next steps checklist (5 action items)\n- Contact information\n- Professional footer\n\n**Attachment:**\nPDF file from HTTP Request node (binary format)\nAutomatically attached via Gmail's binary attachment feature"
          },
          "typeVersion": 1
        },
        {
          "id": "296d02cc-b2b3-47e6-9987-81ba7246d195",
          "name": "Sticky Note - Workflow Overview",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -2656,
            384
          ],
          "parameters": {
            "color": 7,
            "width": 456,
            "height": 544,
            "content": "## WORKFLOW OVERVIEW\n\n**Purpose:** Automated university admission confirmation system\n\n**Processing Time:** ~8-15 seconds end-to-end\n\n**Workflow Steps:**\n1️⃣ Receive admission data via webhook (POST)\n2️⃣ Verify email authenticity with VerifiEmail\n3️⃣ Route based on validation (valid/invalid)\n4️⃣ Generate personalized PDF admission letter\n5️⃣ Download PDF file via HTTP request\n6️⃣ Send email with PDF attachment via Gmail\n\n**Success Path:**\n✅ Valid email → PDF generated → Email sent\n\n**Error Path:**\n❌ Invalid email → Workflow stopped → Error logged\n\n**Perfect For:**\n- Universities & colleges\n- Educational institutions\n- Online course platforms\n- Training programs"
          },
          "typeVersion": 1
        },
        {
          "id": "57fcb521-606a-4564-9504-4a1c88c82109",
          "name": "Verifi Email",
          "type": "n8n-nodes-verifiemail.verifiEmail",
          "position": [
            -1568,
            784
          ],
          "parameters": {
            "email": "={{ $json.body.email }}"
          },
          "credentials": {
            "verifiEmailApi": {
              "id": "credential-id",
              "name": "verifiEmailApi Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "eace9399-7ea2-4da9-9f03-326394f3a085",
          "name": "HTML to PDF",
          "type": "n8n-nodes-htmlcsstopdf.htmlcsstopdf",
          "position": [
            -784,
            672
          ],
          "parameters": {
            "html_content": "=<!DOCTYPE html>\n<html>\n<head>\n  <style>\n    @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap');\n    \n    * {\n      margin: 0;\n      padding: 0;\n      box-sizing: border-box;\n    }\n    \n    body {\n      font-family: 'Poppins', sans-serif;\n      background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n      padding: 40px;\n      color: #333;\n    }\n    \n    .container {\n      background: white;\n      max-width: 800px;\n      margin: 0 auto;\n      border-radius: 20px;\n      overflow: hidden;\n      box-shadow: 0 20px 60px rgba(0,0,0,0.3);\n    }\n    \n    .header {\n      background: linear-gradient(135deg, #1e3a8a 0%, #3b82f6 100%);\n      padding: 40px;\n      text-align: center;\n      color: white;\n    }\n    \n    .header h1 {\n      font-size: 32px;\n      margin-bottom: 10px;\n      font-weight: 700;\n    }\n    \n    .header p {\n      font-size: 16px;\n      opacity: 0.9;\n    }\n    \n    .content {\n      padding: 50px 40px;\n    }\n    \n    .greeting {\n      font-size: 20px;\n      color: #1e3a8a;\n      margin-bottom: 20px;\n      font-weight: 600;\n    }\n    \n    .message {\n      line-height: 1.8;\n      font-size: 15px;\n      color: #555;\n      margin-bottom: 30px;\n    }\n    \n    .info-box {\n      background: #f0f9ff;\n      border-left: 5px solid #3b82f6;\n      padding: 25px;\n      margin: 30px 0;\n      border-radius: 8px;\n    }\n    \n    .info-box h3 {\n      color: #1e3a8a;\n      margin-bottom: 15px;\n      font-size: 18px;\n    }\n    \n    .info-item {\n      display: flex;\n      margin: 12px 0;\n      font-size: 14px;\n    }\n    \n    .info-label {\n      font-weight: 600;\n      color: #1e3a8a;\n      min-width: 180px;\n    }\n    \n    .info-value {\n      color: #333;\n    }\n    \n    .footer {\n      background: #f8fafc;\n      padding: 30px 40px;\n      text-align: center;\n      border-top: 2px solid #e2e8f0;\n    }\n    \n    .footer p {\n      color: #64748b;\n      font-size: 13px;\n      line-height: 1.6;\n    }\n    \n    .signature {\n      margin-top: 30px;\n      font-style: italic;\n      color: #1e3a8a;\n    }\n    \n    .verification-badge {\n      display: inline-block;\n      background: #10b981;\n      color: white;\n      padding: 5px 15px;\n      border-radius: 20px;\n      font-size: 12px;\n      margin-top: 10px;\n    }\n  </style>\n</head>\n<body>\n  <div class=\"container\">\n    <div class=\"header\">\n      <h1>🎓 ADMISSION CONFIRMATION</h1>\n      <p>Academic Year 2025-2026</p>\n      <span class=\"verification-badge\">✓ Email Verified</span>\n    </div>\n    \n    <div class=\"content\">\n      <p class=\"greeting\">Dear {{ $('Admission Form').item.json.body.name }},</p>\n      \n      <p class=\"message\">\n        Congratulations! We are delighted to inform you that you have been \n        <strong>successfully admitted</strong> to the <strong>{{ $('Admission Form').item.json.body.course }}</strong> \n        program at <strong>{{ $('Admission Form').item.json.body.college_name }}</strong>.\n      </p>\n      \n      <p class=\"message\">\n        This is a significant achievement, and we are thrilled to welcome you \n        to our academic community. Your dedication and academic excellence have \n        earned you this opportunity to pursue higher education with us.\n      </p>\n      \n      <div class=\"info-box\">\n        <h3>📋 Admission Details</h3>\n        <div class=\"info-item\">\n          <span class=\"info-label\">Student Name:</span>\n          <span class=\"info-value\">{{ $('Admission Form').item.json.body.name }}</span>\n        </div>\n        <div class=\"info-item\">\n          <span class=\"info-label\">Application ID:</span>\n          <span class=\"info-value\">{{ $('Admission Form').item.json.body.application_id }}</span>\n        </div>\n        <div class=\"info-item\">\n          <span class=\"info-label\">Program:</span>\n          <span class=\"info-value\">{{ $('Admission Form').item.json.body.course }}</span>\n        </div>\n        <div class=\"info-item\">\n          <span class=\"info-label\">Institution:</span>\n          <span class=\"info-value\">{{ $('Admission Form').item.json.body.college_name }}</span>\n        </div>\n        <div class=\"info-item\">\n          <span class=\"info-label\">Admission Date:</span>\n          <span class=\"info-value\">{{ $('Admission Form').item.json.body.admission_date }}</span>\n        </div>\n        <div class=\"info-item\">\n          <span class=\"info-label\">Email (Verified):</span>\n          <span class=\"info-value\">{{ $('Admission Form').item.json.body.email }}</span>\n        </div>\n      </div>\n      \n      <p class=\"message\">\n        Please retain this confirmation letter for your records. You will receive \n        further communication regarding orientation, course registration, and \n        other important details via email.\n      </p>\n      \n      <p class=\"signature\">\n        Warm regards,<br>\n        <strong>Office of Admissions</strong><br>\n        {{ $('Admission Form').item.json.body.college_name }}\n      </p>\n    </div>\n    \n    <div class=\"footer\">\n      <p>\n        This is an official admission confirmation document generated on {{ $('Admission Form').item.json.body.admission_date }}.\n        <br>\n        Email verification powered by VerifiEmail | Provider: {{ $('Verifi Email').item.json.details.mx.provider }}\n      </p>\n    </div>\n  </div>\n</body>\n</html>"
          },
          "credentials": {
            "htmlcsstopdfApi": {
              "id": "credential-id",
              "name": "htmlcsstopdfApi Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "f97a8e02-bea7-417b-a0b3-8911939c8b84",
          "name": "HTTP Request",
          "type": "n8n-nodes-base.httpRequest",
          "position": [
            -336,
            672
          ],
          "parameters": {
            "url": "={{ $json.pdf_url }}",
            "options": {
              "response": {
                "response": {
                  "responseFormat": "file"
                }
              }
            }
          },
          "typeVersion": 4.2
        },
        {
          "id": "bbf804cb-2413-4039-be48-24e813a29c60",
          "name": "Sticky Note - HTTP Request Info",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -464,
            368
          ],
          "parameters": {
            "color": 7,
            "width": 400,
            "height": 448,
            "content": "## STEP 5: HTTP REQUEST - DOWNLOAD PDF\n\n**Purpose:** Downloads the generated PDF file from API\n\n**Why This Node is Needed:**\nThe HTML to PDF API returns a URL to the generated PDF. This node fetches the actual PDF file in binary format so it can be attached to the email.\n\n**Output:**\nBinary PDF data stored in the `data` property, which Gmail node uses for attachment\n"
          },
          "typeVersion": 1
        },
        {
          "id": "5c90f533-5ca5-4263-90d9-7f2cf1f15e33",
          "name": "Send Welcome Email",
          "type": "n8n-nodes-base.gmail",
          "position": [
            112,
            672
          ],
          "webhookId": "fa68bbe7-16cf-4bfe-a942-f29d2c6011c0",
          "parameters": {
            "sendTo": "={{ $('Admission Form').item.json.body.email }}",
            "message": "=<!DOCTYPE html>\n<html>\n<head>\n  <style>\n    body {\n      font-family: 'Arial', sans-serif;\n      line-height: 1.6;\n      color: #333;\n      margin: 0;\n      padding: 0;\n      background-color: #f4f4f4;\n    }\n    .container {\n      max-width: 600px;\n      margin: 20px auto;\n      background: white;\n      border-radius: 10px;\n      overflow: hidden;\n      box-shadow: 0 4px 6px rgba(0,0,0,0.1);\n    }\n    .header {\n      background: linear-gradient(135deg, #1e3a8a, #3b82f6);\n      color: white;\n      padding: 40px 30px;\n      text-align: center;\n    }\n    .header h1 {\n      margin: 0;\n      font-size: 28px;\n    }\n    .content {\n      padding: 40px 30px;\n      background: #ffffff;\n    }\n    .content p {\n      margin: 15px 0;\n      font-size: 15px;\n      line-height: 1.8;\n    }\n    .highlight {\n      background: #f0f9ff;\n      border-left: 4px solid #3b82f6;\n      padding: 15px;\n      margin: 20px 0;\n      border-radius: 5px;\n    }\n    .next-steps {\n      margin: 20px 0;\n    }\n    .next-steps strong {\n      color: #1e3a8a;\n      display: block;\n      margin-bottom: 10px;\n    }\n    .step {\n      margin: 8px 0;\n      padding-left: 20px;\n    }\n    .footer {\n      background: #f8fafc;\n      padding: 20px 30px;\n      text-align: center;\n      color: #64748b;\n      font-size: 13px;\n    }\n  </style>\n</head>\n<body>\n  <div class=\"container\">\n    <div class=\"header\">\n      <h1>🎉 Congratulations,{{ $('Admission Form').item.json.body.name }} !</h1>\n    </div>\n    \n    <div class=\"content\">\n      <p>Dear {{ $('Admission Form').item.json.body.name }},</p>\n      \n      <p>\n        We are <strong>thrilled to welcome you</strong> to <strong>{{ $('Admission Form').item.json.body.college_name }}</strong>! \n        Your admission to the <strong>{{ $('Admission Form').item.json.body.course }}</strong> program has been confirmed.\n      </p>\n      \n      <div class=\"highlight\">\n        <p style=\"margin: 0;\">\n          📎 <strong>Your official admission confirmation letter is attached to this email.</strong>\n          Please download and keep it for your records.\n        </p>\n      </div>\n      \n      <div class=\"next-steps\">\n        <strong>📋 Next Steps:</strong>\n        <div class=\"step\">✅ Review your admission letter carefully</div>\n        <div class=\"step\">✅ Complete the enrollment form (link in next email)</div>\n        <div class=\"step\">✅ Attend the mandatory orientation session</div>\n        <div class=\"step\">✅ Submit all required documents by the deadline</div>\n        <div class=\"step\">✅ Pay admission fees to confirm your seat</div>\n      </div>\n      \n      <p>\n        Our admissions team will contact you within 48 hours with additional details \n        about orientation, course registration, and campus facilities.\n      </p>\n      \n      <p>\n        We look forward to seeing you on campus and supporting you throughout \n        your academic journey!\n      </p>\n      \n      <p style=\"margin-top: 30px;\">\n        Best regards,<br>\n        <strong>Admissions Team</strong><br>\n        {{ $('Admission Form').item.json.body.college_name }}<br>\n        📧 admissions@technova.edu | 📞 +91-XXXX-XXXXXX\n      </p>\n    </div>\n    \n    <div class=\"footer\">\n      <p>This is an automated message. Please do not reply to this email.</p>\n      <p>If you have questions, contact our admissions office.</p>\n    </div>\n  </div>\n</body>\n</html>",
            "options": {
              "attachmentsUi": {
                "attachmentsBinary": [
                  {}
                ]
              }
            },
            "subject": "=🎓 Admission Confirmation - Welcome to {{ $('Admission Form').item.json.body.college_name }}!"
          },
          "credentials": {
            "gmailOAuth2": {
              "id": "credential-id",
              "name": "gmailOAuth2 Credential"
            }
          },
          "typeVersion": 2
        },
        {
          "id": "d556376b-bcd1-42a1-94ef-3ea1bab9aa6a",
          "name": "Is Email Valid?",
          "type": "n8n-nodes-base.if",
          "position": [
            -1104,
            784
          ],
          "parameters": {
            "conditions": {
              "boolean": [
                {
                  "value1": "={{ $json.valid }}",
                  "value2": "={{ true }}"
                }
              ]
            }
          },
          "typeVersion": 1
        },
        {
          "id": "cf2d0264-15fc-42ed-a2a2-a54a533c0d3d",
          "name": "Admission Form",
          "type": "n8n-nodes-base.webhook",
          "position": [
            -2064,
            784
          ],
          "webhookId": "admission-form-webhook",
          "parameters": {
            "path": "admission-form",
            "options": {},
            "httpMethod": "POST",
            "responseMode": "lastNode"
          },
          "typeVersion": 1.1
        }
      ],
      "active": false,
      "pinData": {},
      "settings": {
        "executionOrder": "v1"
      },
      "versionId": "d76d823f-60c9-4553-ad36-ff8be5735ed5",
      "connections": {
        "HTML to PDF": {
          "main": [
            [
              {
                "node": "HTTP Request",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "HTTP Request": {
          "main": [
            [
              {
                "node": "Send Welcome Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Verifi Email": {
          "main": [
            [
              {
                "node": "Is Email Valid?",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Admission Form": {
          "main": [
            [
              {
                "node": "Verifi Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Is Email Valid?": {
          "main": [
            [
              {
                "node": "HTML to PDF",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Stop - Invalid Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        }
      }
    },
    "lastUpdatedBy": 1,
    "workflowInfo": {
      "nodeCount": 16,
      "nodeTypes": {
        "n8n-nodes-base.if": {
          "count": 1
        },
        "n8n-nodes-base.gmail": {
          "count": 1
        },
        "n8n-nodes-base.webhook": {
          "count": 1
        },
        "n8n-nodes-base.stickyNote": {
          "count": 9
        },
        "n8n-nodes-base.httpRequest": {
          "count": 1
        },
        "n8n-nodes-base.stopAndError": {
          "count": 1
        },
        "n8n-nodes-verifiemail.verifiEmail": {
          "count": 1
        },
        "n8n-nodes-htmlcsstopdf.htmlcsstopdf": {
          "count": 1
        }
      }
    },
    "status": "published",
    "user": {
      "name": "Jitesh Dugar",
      "username": "jiteshdugar",
      "bio": "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.",
      "verified": true,
      "links": [
        "https://www.linkedin.com/in/jiteshdugar"
      ],
      "avatar": "https://gravatar.com/avatar/edaa3abb99806b0586dced559d0a5417f24a507e7c4464a63960f0638a4b1b90?r=pg&d=retro&size=200"
    },
    "nodes": [
      {
        "id": 19,
        "icon": "file:httprequest.svg",
        "name": "n8n-nodes-base.httpRequest",
        "codex": {
          "data": {
            "alias": [
              "API",
              "Request",
              "URL",
              "Build",
              "cURL"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/",
                  "icon": "🧬",
                  "label": "Why business process automation with n8n can change your daily life"
                },
                {
                  "url": "https://n8n.io/blog/automatically-pulling-and-visualizing-data-with-n8n/",
                  "icon": "📈",
                  "label": "Automatically pulling and visualizing data with n8n"
                },
                {
                  "url": "https://n8n.io/blog/learn-how-to-automatically-cross-post-your-content-with-n8n/",
                  "icon": "✍️",
                  "label": "Learn how to automatically cross-post your content with n8n"
                },
                {
                  "url": "https://n8n.io/blog/automatically-adding-expense-receipts-to-google-sheets-with-telegram-mindee-twilio-and-n8n/",
                  "icon": "🧾",
                  "label": "Automatically Adding Expense Receipts to Google Sheets with Telegram, Mindee, Twilio, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/running-n8n-on-ships-an-interview-with-maranics/",
                  "icon": "🛳",
                  "label": "Running n8n on ships: An interview with Maranics"
                },
                {
                  "url": "https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/",
                  "icon": " 🪢",
                  "label": "What are APIs and how to use them with no code"
                },
                {
                  "url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
                  "icon": "⚡️",
                  "label": "5 tasks you can automate with the new Notion API "
                },
                {
                  "url": "https://n8n.io/blog/world-poetry-day-workflow/",
                  "icon": "📜",
                  "label": "Celebrating World Poetry Day with a daily poem in Telegram"
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/automate-designs-with-bannerbear-and-n8n/",
                  "icon": "🎨",
                  "label": "Automate Designs with Bannerbear and n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
                  "icon": " 🕸️",
                  "label": "How uProc scraped a multi-page website with a low-code workflow"
                },
                {
                  "url": "https://n8n.io/blog/building-an-expense-tracking-app-in-10-minutes/",
                  "icon": "📱",
                  "label": "Building an expense tracking app in 10 minutes"
                },
                {
                  "url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
                  "icon": "🤖",
                  "label": "5 workflow automations for Mattermost that we love at n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-to-use-the-http-request-node-the-swiss-army-knife-for-workflow-automation/",
                  "icon": "🧰",
                  "label": "How to use the HTTP Request Node - The Swiss Army Knife for Workflow Automation"
                },
                {
                  "url": "https://n8n.io/blog/learn-how-to-use-webhooks-with-mattermost-slash-commands/",
                  "icon": "🦄",
                  "label": "Learn how to use webhooks with Mattermost slash commands"
                },
                {
                  "url": "https://n8n.io/blog/how-a-membership-development-manager-automates-his-work-and-investments/",
                  "icon": "📈",
                  "label": "How a Membership Development Manager automates his work and investments"
                },
                {
                  "url": "https://n8n.io/blog/a-low-code-bitcoin-ticker-built-with-questdb-and-n8n-io/",
                  "icon": "📈",
                  "label": "A low-code bitcoin ticker built with QuestDB and n8n.io"
                },
                {
                  "url": "https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/",
                  "icon": "🎡",
                  "label": "How to set up a no-code CI/CD pipeline with GitHub and TravisCI"
                },
                {
                  "url": "https://n8n.io/blog/automations-for-activists/",
                  "icon": "✨",
                  "label": "How Common Knowledge use workflow automation for activism"
                },
                {
                  "url": "https://n8n.io/blog/creating-scheduled-text-affirmations-with-n8n/",
                  "icon": "🤟",
                  "label": "Creating scheduled text affirmations with n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/",
                  "icon": "🛵",
                  "label": "How Goomer automated their operations with over 200 n8n workflows"
                },
                {
                  "url": "https://n8n.io/blog/aws-workflow-automation/",
                  "label": "7 no-code workflow automations for Amazon Web Services"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.httprequest/"
                }
              ]
            },
            "categories": [
              "Development",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"output\"]",
        "defaults": {
          "name": "HTTP Request",
          "color": "#0004F5"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik00MCAyMEM0MCA4Ljk1MzE0IDMxLjA0NjkgMCAyMCAwQzguOTUzMTQgMCAwIDguOTUzMTQgMCAyMEMwIDMxLjA0NjkgOC45NTMxNCA0MCAyMCA0MEMzMS4wNDY5IDQwIDQwIDMxLjA0NjkgNDAgMjBaTTIwIDM2Ljk0NThDMTguODg1MiAzNi45NDU4IDE3LjEzNzggMzUuOTY3IDE1LjQ5OTggMzIuNjk4NUMxNC43OTY0IDMxLjI5MTggMTQuMTk2MSAyOS41NDMxIDEzLjc1MjYgMjcuNjg0N0gyNi4xODk4QzI1LjgwNDUgMjkuNTQwMyAyNS4yMDQ0IDMxLjI5MDEgMjQuNTAwMiAzMi42OTg1QzIyLjg2MjIgMzUuOTY3IDIxLjExNDggMzYuOTQ1OCAyMCAzNi45NDU4Wk0xMi45MDY0IDIwQzEyLjkwNjQgMjEuNjA5NyAxMy4wMDg3IDIzLjE2NCAxMy4yMDAzIDI0LjYzMDVIMjYuNzk5N0MyNi45OTEzIDIzLjE2NCAyNy4wOTM2IDIxLjYwOTcgMjcuMDkzNiAyMEMyNy4wOTM2IDE4LjM5MDMgMjYuOTkxMyAxNi44MzYgMjYuNzk5NyAxNS4zNjk1SDEzLjIwMDNDMTMuMDA4NyAxNi44MzYgMTIuOTA2NCAxOC4zOTAzIDEyLjkwNjQgMjBaTTIwIDMuMDU0MTlDMjEuMTE0OSAzLjA1NDE5IDIyLjg2MjIgNC4wMzA3OCAyNC41MDAxIDcuMzAwMzlDMjUuMjA2NiA4LjcxNDA4IDI1LjgwNzIgMTAuNDA2NyAyNi4xOTIgMTIuMzE1M0gxMy43NTAxQzE0LjE5MzMgMTAuNDA0NyAxNC43OTQyIDguNzEyNTQgMTUuNDk5OCA3LjMwMDY0QzE3LjEzNzcgNC4wMzA4MyAxOC44ODUxIDMuMDU0MTkgMjAgMy4wNTQxOVpNMzAuMTQ3OCAyMEMzMC4xNDc4IDE4LjQwOTkgMzAuMDU0MyAxNi44NjE3IDI5LjgyMjcgMTUuMzY5NUgzNi4zMDQyQzM2LjcyNTIgMTYuODQyIDM2Ljk0NTggMTguMzk2NCAzNi45NDU4IDIwQzM2Ljk0NTggMjEuNjAzNiAzNi43MjUyIDIzLjE1OCAzNi4zMDQyIDI0LjYzMDVIMjkuODIyN0MzMC4wNTQzIDIzLjEzODMgMzAuMTQ3OCAyMS41OTAxIDMwLjE0NzggMjBaTTI2LjI3NjcgNC4yNTUxMkMyNy42MzY1IDYuMzYwMTkgMjguNzExIDkuMTMyIDI5LjM3NzQgMTIuMzE1M0gzNS4xMDQ2QzMzLjI1MTEgOC42NjggMzAuMTA3IDUuNzgzNDYgMjYuMjc2NyA0LjI1NTEyWk0xMC42MjI2IDEyLjMxNTNINC44OTI5M0M2Ljc1MTQ3IDguNjY3ODQgOS44OTM1MSA1Ljc4MzQxIDEzLjcyMzIgNC4yNTUxM0MxMi4zNjM1IDYuMzYwMjEgMTEuMjg5IDkuMTMyMDEgMTAuNjIyNiAxMi4zMTUzWk0zLjA1NDE5IDIwQzMuMDU0MTkgMjEuNjAzIDMuMjc3NDMgMjMuMTU3NSAzLjY5NDg0IDI0LjYzMDVIMTAuMTIxN0M5Ljk0NjE5IDIzLjE0MiA5Ljg1MjIyIDIxLjU5NDMgOS44NTIyMiAyMEM5Ljg1MjIyIDE4LjQwNTcgOS45NDYxOSAxNi44NTggMTAuMTIxNyAxNS4zNjk1SDMuNjk0ODRDMy4yNzc0MyAxNi44NDI1IDMuMDU0MTkgMTguMzk3IDMuMDU0MTkgMjBaTTI2LjI3NjYgMzUuNzQyN0MyNy42MzY1IDMzLjYzOTMgMjguNzExIDMwLjg2OCAyOS4zNzc0IDI3LjY4NDdIMzUuMTA0NkMzMy4yNTEgMzEuMzMyMiAzMC4xMDY4IDM0LjIxNzkgMjYuMjc2NiAzNS43NDI3Wk0xMy43MjM0IDM1Ljc0MjdDOS44OTM2OSAzNC4yMTc5IDYuNzUxNTUgMzEuMzMyNCA0Ljg5MjkzIDI3LjY4NDdIMTAuNjIyNkMxMS4yODkgMzAuODY4IDEyLjM2MzUgMzMuNjM5MyAxMy43MjM0IDM1Ljc0MjdaIiBmaWxsPSIjM0E0MkU5Ii8+Cjwvc3ZnPgo="
        },
        "displayName": "HTTP Request",
        "typeVersion": 4,
        "nodeCategories": [
          {
            "id": 5,
            "name": "Development"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 20,
        "icon": "fa:map-signs",
        "name": "n8n-nodes-base.if",
        "codex": {
          "data": {
            "alias": [
              "Router",
              "Filter",
              "Condition",
              "Logic",
              "Boolean",
              "Branch"
            ],
            "details": "The IF node can be used to implement binary conditional logic in your workflow. You can set up one-to-many conditions to evaluate each item of data being inputted into the node. That data will either evaluate to TRUE or FALSE and route out of the node accordingly.\n\nThis node has multiple types of conditions: Bool, String, Number, and Date & Time.",
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/learn-to-automate-your-factorys-incident-reporting-a-step-by-step-guide/",
                  "icon": "🏭",
                  "label": "Learn to Automate Your Factory's Incident Reporting: A Step by Step Guide"
                },
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/",
                  "icon": "🧬",
                  "label": "Why business process automation with n8n can change your daily life"
                },
                {
                  "url": "https://n8n.io/blog/create-a-toxic-language-detector-for-telegram/",
                  "icon": "🤬",
                  "label": "Create a toxic language detector for Telegram in 4 step"
                },
                {
                  "url": "https://n8n.io/blog/no-code-ecommerce-workflow-automations/",
                  "icon": "store",
                  "label": "6 e-commerce workflows to power up your Shopify s"
                },
                {
                  "url": "https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/",
                  "icon": "🔗",
                  "label": "How to build a low-code, self-hosted URL shortener in 3 steps"
                },
                {
                  "url": "https://n8n.io/blog/automate-your-data-processing-pipeline-in-9-steps-with-n8n/",
                  "icon": "⚙️",
                  "label": "Automate your data processing pipeline in 9 steps"
                },
                {
                  "url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
                  "icon": "👥",
                  "label": "How to get started with CRM automation (with 3 no-code workflow ideas"
                },
                {
                  "url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
                  "icon": "⚡️",
                  "label": "5 tasks you can automate with the new Notion API "
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/",
                  "icon": "🏷️",
                  "label": "How to automatically manage contributions to open-source projects"
                },
                {
                  "url": "https://n8n.io/blog/how-uproc-scraped-a-multi-page-website-with-a-low-code-workflow/",
                  "icon": " 🕸️",
                  "label": "How uProc scraped a multi-page website with a low-code workflow"
                },
                {
                  "url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
                  "icon": "🤖",
                  "label": "5 workflow automations for Mattermost that we love at n8n"
                },
                {
                  "url": "https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/",
                  "icon": "🧠",
                  "label": "Why this Product Manager loves workflow automation with n8n"
                },
                {
                  "url": "https://n8n.io/blog/sending-automated-congratulations-with-google-sheets-twilio-and-n8n/",
                  "icon": "🙌",
                  "label": "Sending Automated Congratulations with Google Sheets, Twilio, and n8n "
                },
                {
                  "url": "https://n8n.io/blog/how-to-set-up-a-ci-cd-pipeline-with-no-code/",
                  "icon": "🎡",
                  "label": "How to set up a no-code CI/CD pipeline with GitHub and TravisCI"
                },
                {
                  "url": "https://n8n.io/blog/benefits-of-automation-and-n8n-an-interview-with-hubspots-hugh-durkin/",
                  "icon": "🎖",
                  "label": "Benefits of automation and n8n: An interview with HubSpot's Hugh Durkin"
                },
                {
                  "url": "https://n8n.io/blog/aws-workflow-automation/",
                  "label": "7 no-code workflow automations for Amazon Web Services"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.if/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Flow"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "If",
          "color": "#408000"
        },
        "iconData": {
          "icon": "map-signs",
          "type": "icon"
        },
        "displayName": "If",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 47,
        "icon": "file:webhook.svg",
        "name": "n8n-nodes-base.webhook",
        "codex": {
          "data": {
            "alias": [
              "HTTP",
              "API",
              "Build",
              "WH"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/learn-how-to-automatically-cross-post-your-content-with-n8n/",
                  "icon": "✍️",
                  "label": "Learn how to automatically cross-post your content with n8n"
                },
                {
                  "url": "https://n8n.io/blog/running-n8n-on-ships-an-interview-with-maranics/",
                  "icon": "🛳",
                  "label": "Running n8n on ships: An interview with Maranics"
                },
                {
                  "url": "https://n8n.io/blog/how-to-build-a-low-code-self-hosted-url-shortener/",
                  "icon": "🔗",
                  "label": "How to build a low-code, self-hosted URL shortener in 3 steps"
                },
                {
                  "url": "https://n8n.io/blog/what-are-apis-how-to-use-them-with-no-code/",
                  "icon": " 🪢",
                  "label": "What are APIs and how to use them with no code"
                },
                {
                  "url": "https://n8n.io/blog/5-tasks-you-can-automate-with-notion-api/",
                  "icon": "⚡️",
                  "label": "5 tasks you can automate with the new Notion API "
                },
                {
                  "url": "https://n8n.io/blog/how-a-digital-strategist-uses-n8n-for-online-marketing/",
                  "icon": "💻",
                  "label": "How a digital strategist uses n8n for online marketing"
                },
                {
                  "url": "https://n8n.io/blog/the-ultimate-guide-to-automate-your-video-collaboration-with-whereby-mattermost-and-n8n/",
                  "icon": "📹",
                  "label": "The ultimate guide to automate your video collaboration with Whereby, Mattermost, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-to-automatically-give-kudos-to-contributors-with-github-slack-and-n8n/",
                  "icon": "👏",
                  "label": "How to automatically give kudos to contributors with GitHub, Slack, and n8n"
                },
                {
                  "url": "https://n8n.io/blog/5-workflow-automations-for-mattermost-that-we-love-at-n8n/",
                  "icon": "🤖",
                  "label": "5 workflow automations for Mattermost that we love at n8n"
                },
                {
                  "url": "https://n8n.io/blog/why-this-product-manager-loves-workflow-automation-with-n8n/",
                  "icon": "🧠",
                  "label": "Why this Product Manager loves workflow automation with n8n"
                },
                {
                  "url": "https://n8n.io/blog/creating-custom-incident-response-workflows-with-n8n/",
                  "label": "How to automate every step of an incident response workflow"
                },
                {
                  "url": "https://n8n.io/blog/learn-to-build-powerful-api-endpoints-using-webhooks/",
                  "icon": "🧰",
                  "label": "Learn to Build Powerful API Endpoints Using Webhooks"
                },
                {
                  "url": "https://n8n.io/blog/learn-how-to-use-webhooks-with-mattermost-slash-commands/",
                  "icon": "🦄",
                  "label": "Learn how to use webhooks with Mattermost slash commands"
                },
                {
                  "url": "https://n8n.io/blog/how-goomer-automated-their-operations-with-over-200-n8n-workflows/",
                  "icon": "🛵",
                  "label": "How Goomer automated their operations with over 200 n8n workflows"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook/"
                }
              ]
            },
            "categories": [
              "Development",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"trigger\"]",
        "defaults": {
          "name": "Webhook"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0OCIgaGVpZ2h0PSI0OCI+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTM1IDM3Yy0yLjIgMC00LTEuOC00LTRzMS44LTQgNC00IDQgMS44IDQgNC0xLjggNC00IDQiLz48cGF0aCBmaWxsPSIjMzc0NzRmIiBkPSJNMzUgNDNjLTMgMC01LjktMS40LTcuOC0zLjdsMy4xLTIuNWMxLjEgMS40IDIuOSAyLjMgNC43IDIuMyAzLjMgMCA2LTIuNyA2LTZzLTIuNy02LTYtNmMtMSAwLTIgLjMtMi45LjdsLTEuNyAxTDIzLjMgMTZsMy41LTEuOSA1LjMgOS40YzEtLjMgMi0uNSAzLS41IDUuNSAwIDEwIDQuNSAxMCAxMFM0MC41IDQzIDM1IDQzIi8+PHBhdGggZmlsbD0iIzM3NDc0ZiIgZD0iTTE0IDQzQzguNSA0MyA0IDM4LjUgNCAzM2MwLTQuNiAzLjEtOC41IDcuNS05LjdsMSAzLjlDOS45IDI3LjkgOCAzMC4zIDggMzNjMCAzLjMgMi43IDYgNiA2czYtMi43IDYtNnYtMmgxNXY0SDIzLjhjLS45IDQuNi01IDgtOS44IDgiLz48cGF0aCBmaWxsPSIjZTkxZTYzIiBkPSJNMTQgMzdjLTIuMiAwLTQtMS44LTQtNHMxLjgtNCA0LTQgNCAxLjggNCA0LTEuOCA0LTQgNCIvPjxwYXRoIGZpbGw9IiMzNzQ3NGYiIGQ9Ik0yNSAxOWMtMi4yIDAtNC0xLjgtNC00czEuOC00IDQtNCA0IDEuOCA0IDQtMS44IDQtNCA0Ii8+PHBhdGggZmlsbD0iI2U5MWU2MyIgZD0ibTE1LjcgMzQtMy40LTIgNS45LTkuN2MtMi0xLjktMy4yLTQuNS0zLjItNy4zIDAtNS41IDQuNS0xMCAxMC0xMHMxMCA0LjUgMTAgMTBjMCAuOS0uMSAxLjctLjMgMi41bC0zLjktMWMuMS0uNS4yLTEgLjItMS41IDAtMy4zLTIuNy02LTYtNnMtNiAyLjctNiA2YzAgMi4xIDEuMSA0IDIuOSA1LjFsMS43IDF6Ii8+PC9zdmc+"
        },
        "displayName": "Webhook",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 5,
            "name": "Development"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 356,
        "icon": "file:gmail.svg",
        "name": "n8n-nodes-base.gmail",
        "codex": {
          "data": {
            "alias": [
              "email",
              "human",
              "form",
              "wait",
              "hitl",
              "approval"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/why-business-process-automation-with-n8n-can-change-your-daily-life/",
                  "icon": "🧬",
                  "label": "Why business process automation with n8n can change your daily life"
                },
                {
                  "url": "https://n8n.io/blog/supercharging-your-conference-registration-process-with-n8n/",
                  "icon": "🎫",
                  "label": "Supercharging your conference registration process with n8n"
                },
                {
                  "url": "https://n8n.io/blog/no-code-ecommerce-workflow-automations/",
                  "icon": "store",
                  "label": "6 e-commerce workflows to power up your Shopify s"
                },
                {
                  "url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
                  "icon": "👥",
                  "label": "How to get started with CRM automation (with 3 no-code workflow ideas"
                },
                {
                  "url": "https://n8n.io/blog/automate-google-apps-for-productivity/",
                  "icon": "💡",
                  "label": "15 Google apps you can combine and automate to increase productivity"
                },
                {
                  "url": "https://n8n.io/blog/your-business-doesnt-need-you-to-operate/",
                  "icon": " 🖥️",
                  "label": "Hey founders! Your business doesn't need you to operate"
                },
                {
                  "url": "https://n8n.io/blog/using-automation-to-boost-productivity-in-the-workplace/",
                  "icon": "💪",
                  "label": "Using Automation to Boost Productivity in the Workplace"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.gmail/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/"
                }
              ]
            },
            "categories": [
              "Communication",
              "HITL"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "HITL": [
                "Human in the Loop"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Gmail"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNTYiIGhlaWdodD0iMTkzIiBwcmVzZXJ2ZUFzcGVjdFJhdGlvPSJ4TWlkWU1pZCI+PHBhdGggZmlsbD0iIzQyODVGNCIgZD0iTTU4LjE4MiAxOTIuMDVWOTMuMTRMMjcuNTA3IDY1LjA3NyAwIDQ5LjUwNHYxMjUuMDkxYzAgOS42NTggNy44MjUgMTcuNDU1IDE3LjQ1NSAxNy40NTV6Ii8+PHBhdGggZmlsbD0iIzM0QTg1MyIgZD0iTTE5Ny44MTggMTkyLjA1aDQwLjcyN2M5LjY1OSAwIDE3LjQ1NS03LjgyNiAxNy40NTUtMTcuNDU1VjQ5LjUwNWwtMzEuMTU2IDE3LjgzNy0yNy4wMjYgMjUuNzk4eiIvPjxwYXRoIGZpbGw9IiNFQTQzMzUiIGQ9Im01OC4xODIgOTMuMTQtNC4xNzQtMzguNjQ3IDQuMTc0LTM2Ljk4OUwxMjggNjkuODY4bDY5LjgxOC01Mi4zNjQgNC42NyAzNC45OTItNC42NyA0MC42NDRMMTI4IDE0NS41MDR6Ii8+PHBhdGggZmlsbD0iI0ZCQkMwNCIgZD0iTTE5Ny44MTggMTcuNTA0VjkzLjE0TDI1NiA0OS41MDRWMjYuMjMxYzAtMjEuNTg1LTI0LjY0LTMzLjg5LTQxLjg5LTIwLjk0NXoiLz48cGF0aCBmaWxsPSIjQzUyMjFGIiBkPSJtMCA0OS41MDQgMjYuNzU5IDIwLjA3TDU4LjE4MiA5My4xNFYxNy41MDRMNDEuODkgNS4yODZDMjQuNjEtNy42NiAwIDQuNjQ2IDAgMjYuMjN6Ii8+PC9zdmc+"
        },
        "displayName": "Gmail",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 6,
            "name": "Communication"
          },
          {
            "id": 28,
            "name": "HITL"
          }
        ]
      },
      {
        "id": 528,
        "icon": "fa:exclamation-triangle",
        "name": "n8n-nodes-base.stopAndError",
        "codex": {
          "data": {
            "alias": [
              "Throw error",
              "Error",
              "Exception"
            ],
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.stopanderror/"
                }
              ]
            },
            "categories": [
              "Core Nodes",
              "Utility"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Flow"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Stop and Error",
          "color": "#ff0000"
        },
        "iconData": {
          "icon": "exclamation-triangle",
          "type": "icon"
        },
        "displayName": "Stop and Error",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 7,
            "name": "Utility"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 565,
        "icon": "fa:sticky-note",
        "name": "n8n-nodes-base.stickyNote",
        "codex": {
          "data": {
            "alias": [
              "Comments",
              "Notes",
              "Sticky"
            ],
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Sticky Note",
          "color": "#FFD233"
        },
        "iconData": {
          "icon": "sticky-note",
          "type": "icon"
        },
        "displayName": "Sticky Note",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 35,
        "name": "Document Extraction"
      }
    ],
    "image": []
  }
}