{
  "nodes": [
    {
      "id": "111a0f7d-7e79-4bce-9499-31f9b05de3c4",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -784,
        16
      ],
      "parameters": {
        "color": 4,
        "width": 360,
        "height": 472,
        "content": "Customer Testimonial Collector - Purpose: Transform scattered testimonials into organized marketing assets with AI-powered analysis. Key Features: Centralized testimonial submission, AI tone and sentiment detection, Automatic quote extraction, Marketing-ready content log, Automated thank-you with rewards, Social media optimization. Impact: 500 percent increase in testimonial collection, instant marketing assets"
      },
      "typeVersion": 1
    },
    {
      "id": "7dd98765-6e75-49fb-85d5-0b3c8f4c4a3e",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -384,
        -16
      ],
      "parameters": {
        "color": 5,
        "width": 340,
        "height": 524,
        "content": "Jotform Testimonial Fields: Customer Name, Customer Email, Company Name, Job Title, Product or Service Used, Testimonial Text, Rating, Permission to Share, Photo Upload, Use Case or Industry. Create your form for free on Jotform\nCreate your form for free on [Jotform using this link](https://www.jotform.com/?partner=mediajade)"
      },
      "typeVersion": 1
    },
    {
      "id": "296a41d8-94ff-4eb0-9d73-0e192e5a315b",
      "name": "Extract Testimonial Data",
      "type": "n8n-nodes-base.set",
      "position": [
        -192,
        352
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "customer_name",
              "name": "customerName",
              "type": "string",
              "value": "={{ $json['Customer Name'] }}"
            },
            {
              "id": "customer_email",
              "name": "customerEmail",
              "type": "string",
              "value": "={{ $json['Customer email'] }}"
            },
            {
              "id": "company_name",
              "name": "companyName",
              "type": "string",
              "value": "={{ $json['Company Name'] }}"
            },
            {
              "id": "product_service",
              "name": "productService",
              "type": "string",
              "value": "={{ $json['Product/service'] }}"
            },
            {
              "id": "testimonial_text",
              "name": "testimonialText",
              "type": "string",
              "value": "={{ $json['Testimonial Text'] }}"
            },
            {
              "id": "rating",
              "name": "rating",
              "type": "number",
              "value": "={{ $json.Rating }}"
            },
            {
              "id": "submitted_at",
              "name": "submittedAt",
              "type": "string",
              "value": "={{ $now.toISO() }}"
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "cb2f4ae6-07c1-4441-9634-b719bc13e196",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -16,
        0
      ],
      "parameters": {
        "color": 6,
        "width": 408,
        "height": 508,
        "content": "AI Testimonial Analysis - AI Analyzes For: Tone and Sentiment, Best Quote Extraction, Key Benefits Mentioned, Emotional Impact Score, Marketing Use Cases, Social Media Optimization. Output: Marketing-ready assets"
      },
      "typeVersion": 1
    },
    {
      "id": "3019c6a9-0a80-4fda-82dc-3d9f5753c1d0",
      "name": "AI Testimonial Analysis",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        0,
        304
      ],
      "parameters": {
        "text": "Analyze this customer testimonial and extract marketing insights. Customer name, Company, Title, Product, Rating out of 5, and Testimonial text provided. Return JSON with: overallTone, sentimentScore 0-100, emotionalImpact, authenticity, bestQuote max 280 chars, alternateQuotes array, keyBenefitsMentioned array, painPointsAddressed array, specificResults array, marketingUseCase, targetAudience, twitterVersion 280 chars, linkedinVersion 150 words, websiteVersion 50-75 words, headlineVersion 10 words, calloutWords array, marketingPriority high medium or low",
        "agent": "conversationalAgent",
        "options": {
          "systemMessage": "You are a marketing copywriter. Extract compelling elements from testimonials and optimize for marketing channels."
        },
        "promptType": "define"
      },
      "typeVersion": 1.6
    },
    {
      "id": "4dbf0dde-e75d-4e36-9fa5-7482747cd2f2",
      "name": "Parse AI Analysis",
      "type": "n8n-nodes-base.set",
      "position": [
        272,
        304
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "919aa6bf-5541-4f2d-81a0-54fe9b2bf141",
              "name": "output",
              "type": "string",
              "value": "={{ $json.output }}"
            }
          ]
        }
      },
      "typeVersion": 3.3
    },
    {
      "id": "b679a227-4334-40a8-b017-f19c6f134fa9",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        416,
        -48
      ],
      "parameters": {
        "color": 2,
        "width": 340,
        "height": 524,
        "content": "Testimonial Content Log - Google Sheets Database: Complete testimonial details, AI analysis and quotes, Marketing versions, Permission tracking, Searchable library. Enables: Easy marketing access"
      },
      "typeVersion": 1
    },
    {
      "id": "d30e7007-322b-43c1-9f82-809a3627e365",
      "name": "Log to Testimonial Library",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        512,
        192
      ],
      "parameters": {
        "columns": {
          "value": {
            "email": "={{ $('Jotform Trigger').item.json['Customer email'] }}",
            "rating": "={{ $('Jotform Trigger').item.json.Rating }}",
            "compnay name": "={{ $('Jotform Trigger').item.json['Company Name'] }}",
            "Customer name ": "={{ $('Jotform Trigger').item.json['Customer Name'] }}",
            "product/service": "={{ $('Jotform Trigger').item.json['Product/service'] }}",
            "testiminial text": "={{ $('Jotform Trigger').item.json['Testimonial Text'] }}"
          },
          "schema": [
            {
              "id": "Customer name ",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "Customer name ",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "email",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "email",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "rating",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "rating",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "compnay name",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "compnay name",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "testiminial text",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "testiminial text",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "product/service",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "product/service",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [
            "Customer name "
          ],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        },
        "options": {},
        "operation": "appendOrUpdate",
        "sheetName": {
          "__rl": true,
          "mode": "name",
          "value": "Sheet2"
        },
        "documentId": {
          "__rl": true,
          "mode": "list",
          "value": "1K0lqkb-z0fbdb_pEUDtUfl5N2jQ_nT-YEQtylwB4968",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/1K0lqkb-z0fbdb_pEUDtUfl5N2jQ_nT-YEQtylwB4968/edit?usp=drivesdk",
          "cachedResultName": "Fleet"
        }
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.4
    },
    {
      "id": "fc5e67db-7ab5-4288-a1c4-bcba869b71b7",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        928,
        -48
      ],
      "parameters": {
        "color": 3,
        "width": 340,
        "height": 440,
        "content": "Customer Thank You - Automated Email: Thank customer, Show usage preview, Exclusive coupon code, Referral incentive, Social share versions. Drives: Loyalty and advocacy"
      },
      "typeVersion": 1
    },
    {
      "id": "8d2e5076-9867-4ceb-8867-9fcb910e2380",
      "name": "Generate Coupon Code",
      "type": "n8n-nodes-base.code",
      "position": [
        656,
        352
      ],
      "parameters": {
        "jsCode": "const jotformData = items[0].json;\nconst customerName = jotformData['Customer Name'] || 'Customer';\nconst rating = parseInt(jotformData.Rating) || 3;\n\nconst namePart = customerName.substring(0, 5).replace(/\\s/g, '');\nconst randomNum = Math.floor(Math.random() * 9999);\nconst couponCode = 'THANKS' + namePart + randomNum;\n\nlet discountPercent = 10;\nif (rating === 5) {\n  discountPercent = 20;\n} else if (rating === 4) {\n  discountPercent = 15;\n}\n\nconst expiryDate = new Date(Date.now() + 30 * 24 * 60 * 60 * 1000).toISOString().slice(0, 10);\n\nreturn [{\n  json: {\n    couponCode: couponCode,\n    discountPercent: discountPercent,\n    expiryDays: 30,\n    expiryDate: expiryDate,\n    customerName: customerName,\n    customerEmail: jotformData['Customer email'],\n    rating: rating\n  }\n}];"
      },
      "typeVersion": 2
    },
    {
      "id": "8126ef33-ad08-47d5-803e-0ec77f1d8233",
      "name": "Send Thank You Email",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1104,
        160
      ],
      "parameters": {
        "sendTo": "={{ $json.customerEmail }}",
        "message": "Hi there, Thank you for your testimonial! Your feedback means the world to us. As a token of appreciation, here is your exclusive coupon code: CODE with DISCOUNT percent off, valid until EXPIRY. We truly appreciate your support! Best regards, The Team",
        "options": {},
        "subject": "Thank You for Your Testimonial!"
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "2c22739d-2bec-49a6-a606-3341cc26e3ee",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        896,
        416
      ],
      "parameters": {
        "color": 7,
        "width": 320,
        "height": 328,
        "content": "Marketing Team Alert - Notification Includes: New testimonial available, AI analysis summary, Best quotes, Priority level, Usage recommendations. Enables: Immediate campaign use"
      },
      "typeVersion": 1
    },
    {
      "id": "9960fab6-6012-4e86-9020-fb83c1949946",
      "name": "Notify Marketing Team",
      "type": "n8n-nodes-base.gmail",
      "position": [
        1088,
        576
      ],
      "parameters": {
        "sendTo": "user@example.com",
        "message": "New testimonial available. Customer details and AI analysis included. Please check the testimonial library for full details.",
        "options": {},
        "subject": "New Testimonial Received"
      },
      "credentials": {
        "gmailOAuth2": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 2.1
    },
    {
      "id": "411f477b-f50a-4089-b246-6fde5d782e3d",
      "name": "Jotform Trigger",
      "type": "n8n-nodes-base.jotFormTrigger",
      "position": [
        -368,
        352
      ],
      "parameters": {
        "form": "252892971568071"
      },
      "credentials": {
        "jotFormApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1
    },
    {
      "id": "780472ed-f2ed-4a0e-8844-2cd3ef4d01de",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        0,
        464
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    }
  ],
  "connections": {
    "Jotform Trigger": {
      "main": [
        [
          {
            "node": "Extract Testimonial Data",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Testimonial Analysis",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Parse AI Analysis": {
      "main": [
        [
          {
            "node": "Log to Testimonial Library",
            "type": "main",
            "index": 0
          },
          {
            "node": "Generate Coupon Code",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Generate Coupon Code": {
      "main": [
        [
          {
            "node": "Send Thank You Email",
            "type": "main",
            "index": 0
          },
          {
            "node": "Notify Marketing Team",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "AI Testimonial Analysis": {
      "main": [
        [
          {
            "node": "Parse AI Analysis",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Extract Testimonial Data": {
      "main": [
        [
          {
            "node": "AI Testimonial Analysis",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}