Usar IA para generar respuestas y monitorear reseñas de Google Business

Intermedio

Este es unTicket Management, Multimodal AIflujo de automatización del dominio deautomatización que contiene 11 nodos.Utiliza principalmente nodos como If, Set, AiTransform, HttpRequest, GoogleSheets. Usar IA para respuestas, recordatorios de Slack y registro de reseñas de Google Business con Sheets

Requisitos previos
  • Pueden requerirse credenciales de autenticación para la API de destino
  • Credenciales de API de Google Sheets
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "id": "TFA52QNAEro3v0Y2",
  "meta": {
    "instanceId": "f31c8cf0f30c343fde4e229f596b53099ee0496367bfd39c53458e5afe95e91e",
    "templateCredsSetupCompleted": true
  },
  "name": "Monitor Google Business Reviews with AI Response Generation",
  "tags": [],
  "nodes": [
    {
      "id": "bfad3de2-aca1-4691-841f-488fe9a57c09",
      "name": "Monitorear Reseñas de Google",
      "type": "n8n-nodes-base.googleBusinessProfileTrigger",
      "position": [
        784,
        256
      ],
      "parameters": {
        "account": {
          "mode": "id",
          "value": "={{ $env.GOOGLE_BUSINESS_ACCOUNT_ID }}"
        },
        "location": {
          "mode": "id",
          "value": "={{ $env.GOOGLE_BUSINESS_LOCATION_ID }}"
        },
        "pollTimes": {
          "item": [
            {
              "mode": "everyMinute"
            }
          ]
        }
      },
      "typeVersion": 1
    },
    {
      "id": "7a35316d-b32c-4601-991b-55ef94451883",
      "name": "Configuración del Negocio",
      "type": "n8n-nodes-base.set",
      "position": [
        1008,
        0
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
              "name": "businessName",
              "type": "string",
              "value": "Your Business Name"
            },
            {
              "id": "9b0c8d7e-6f5a-4b3c-2d1e-0f9a8b7c6d5e",
              "name": "responseTone",
              "type": "string",
              "value": "professional and friendly"
            },
            {
              "id": "2e3f1a0b-9c8d-7e6f-5a4b-3c2d1e0f9a8b",
              "name": "slackWebhookUrl",
              "type": "string",
              "value": "={{ $env.SLACK_WEBHOOK_URL }}"
            },
            {
              "id": "3f4a2b1c-0d9e-8f7a-6b5c-4d3e2f1a0b9c",
              "name": "notificationEmail",
              "type": "string",
              "value": "={{ $env.NOTIFICATION_EMAIL }}"
            }
          ]
        }
      },
      "typeVersion": 3.4,
      "continueOnFail": true
    },
    {
      "id": "1522ed76-eda8-4ea2-a889-54c3fe3cf8e0",
      "name": "Formatear Reseñas de Google",
      "type": "n8n-nodes-base.set",
      "position": [
        1232,
        256
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d",
              "name": "source",
              "type": "string",
              "value": "Google Business Profile"
            },
            {
              "id": "b2c3d4e5-f6a7-8b9c-0d1e-2f3a4b5c6d7e",
              "name": "rating",
              "type": "number",
              "value": "={{ $json.starRating }}"
            },
            {
              "id": "c3d4e5f6-a7b8-9c0d-1e2f3a4b5c6d7e8f",
              "name": "reviewText",
              "type": "string",
              "value": "={{ $json.comment }}"
            },
            {
              "id": "d4e5f6a7-b8c9-0d1e-2f3a4b5c6d7e8f9a",
              "name": "reviewerName",
              "type": "string",
              "value": "={{ $json.reviewer.displayName }}"
            },
            {
              "id": "e5f6a7b8-c9d0-1e2f-3a4b5c6d7e8f9a0b",
              "name": "reviewDate",
              "type": "string",
              "value": "={{ $json.createTime }}"
            },
            {
              "id": "f6a7b8c9-d0e1-2f3a-4b5c6d7e8f9a0b1c",
              "name": "reviewId",
              "type": "string",
              "value": "={{ $json.reviewId }}"
            }
          ]
        }
      },
      "typeVersion": 3.4,
      "continueOnFail": true
    },
    {
      "id": "7d3e47c7-bd46-472b-b616-09b05b5c8c6c",
      "name": "Generar Respuesta de IA",
      "type": "n8n-nodes-base.aiTransform",
      "position": [
        1456,
        256
      ],
      "parameters": {
        "instructions": "Analyze the review and generate a professional response. The review is:\n\nSource: {{ $json.source }}\nRating: {{ $json.rating }}/5\nReviewer: {{ $json.reviewerName }}\nReview: {{ $json.reviewText }}\n\nGenerate a response that is {{ $('Business Configuration').item.json.responseTone }}. If the rating is 3 or below, acknowledge their concerns and offer to make things right. If 4-5 stars, thank them warmly. Keep responses under 150 words."
      },
      "typeVersion": 1,
      "continueOnFail": true
    },
    {
      "id": "1f5d176c-0fed-4690-8df2-ab217b4accd5",
      "name": "¿Reseña Negativa?",
      "type": "n8n-nodes-base.if",
      "position": [
        1680,
        256
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "a9b0c1d2-e3f4-5a6b-7c8d-9e0f1a2b3c4d",
              "operator": {
                "type": "number",
                "operation": "lte"
              },
              "leftValue": "={{ $json.rating }}",
              "rightValue": 3
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "88e13071-e269-4028-bec5-1ca479e2e76b",
      "name": "Alertar al Equipo - Negativa",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1904,
        160
      ],
      "parameters": {
        "url": "={{ $('Business Configuration').item.json.slackWebhookUrl }}",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "text",
              "value": "🚨 *Urgent: Negative Review Alert* 🚨\n\n*Source:* {{ $json.source }}\n*Rating:* {{ $json.rating }}/5 ⭐\n*Reviewer:* {{ $json.reviewerName }}\n*Review:* {{ $json.reviewText }}\n\n*Suggested Response:*\n{{ $json.output }}"
            }
          ]
        }
      },
      "typeVersion": 4.2,
      "continueOnFail": true
    },
    {
      "id": "ba523e1d-a9d6-482a-880f-65d8eb6514c2",
      "name": "Notificar al Equipo - Positiva",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1904,
        352
      ],
      "parameters": {
        "url": "={{ $('Business Configuration').item.json.slackWebhookUrl }}",
        "method": "POST",
        "options": {},
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "text",
              "value": "✨ *New Positive Review* ✨\n\n*Source:* {{ $json.source }}\n*Rating:* {{ $json.rating }}/5 ⭐\n*Reviewer:* {{ $json.reviewerName }}\n*Review:* {{ $json.reviewText }}\n\n*Suggested Response:*\n{{ $json.output }}"
            }
          ]
        }
      },
      "typeVersion": 4.2,
      "continueOnFail": true
    },
    {
      "id": "51678bc3-3bb1-42b9-87d1-ec2e81c0f233",
      "name": "Registrar en Google Sheets",
      "type": "n8n-nodes-base.googleSheets",
      "position": [
        2224,
        272
      ],
      "parameters": {
        "columns": {
          "value": {
            "Date": "={{ new Date().toISOString() }}",
            "Rating": "={{ $json.rating }}",
            "Review": "={{ $json.reviewText }}",
            "Source": "={{ $json.source }}",
            "Reviewer": "={{ $json.reviewerName }}",
            "Review ID": "={{ $json.reviewId }}",
            "AI Response": "={{ $json.output }}"
          },
          "mappingMode": "defineBelow"
        },
        "options": {},
        "operation": "append",
        "sheetName": {
          "mode": "name",
          "value": "Reviews"
        },
        "documentId": {
          "mode": "id",
          "value": "={{ $env.GOOGLE_SHEET_ID }}"
        },
        "authentication": "serviceAccount"
      },
      "credentials": {
        "googleApi": {
          "id": "UD5OjKiVkvWF1KEV",
          "name": "Google Sheets account"
        }
      },
      "typeVersion": 4.6,
      "continueOnFail": true
    },
    {
      "id": "cb74c403-ffdb-4ff8-8d45-3afcfa38e70a",
      "name": "Nota Adhesiva 2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        848,
        -288
      ],
      "parameters": {
        "color": 4,
        "width": 432,
        "height": 432,
        "content": "## Update these values in the Business Configuration node:\n\n- **businessName**: Your business name for personalized responses\n- **responseTone**: Customize AI response style (e.g., \"professional and friendly\", \"casual and warm\")\n- **slackWebhookUrl**: Your Slack webhook for notifications\n- **notificationEmail**: Email for urgent alerts\n\nAll sensitive data uses environment variables for security."
      },
      "typeVersion": 1
    },
    {
      "id": "4a19971e-72ee-4e95-90de-457f12b3eb95",
      "name": "Nota Adhesiva 1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        2064,
        -96
      ],
      "parameters": {
        "color": 6,
        "width": 464,
        "height": 528,
        "content": "### 📊 Google Sheets Configuration\n\n**Required Sheet Name:** \"Reviews\"\n\n**Required Headers (Row 1):**\n- **Date** - Timestamp of review processing\n- **Source** - Always \"Google Business Profile\"  \n- **Rating** - Star rating (1-5)\n- **Reviewer** - Customer display name\n- **Review** - Full review text\n- **AI Response** - Generated response suggestion\n- **Review ID** - Unique Google review identifier\n\n**🔗 Service Account Permissions:**\n\nGrant \"Editor\" access to your Google Sheets service account"
      },
      "typeVersion": 1
    },
    {
      "id": "650e2141-568a-46ba-9653-cce123d8eac5",
      "name": "Nota Adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        176,
        -416
      ],
      "parameters": {
        "width": 448,
        "height": 736,
        "content": "**🛠️ Google Business Review Monitor Setup Guide**\n\nThis workflow automatically monitors your Google Business Profile for new reviews and generates AI-powered response suggestions.\n\n✅ **Step 1: Connect Google Business Profile API**\n- Create Google Cloud project and enable Business Profile API\n- Set up service account credentials  \n- Note your Business Account ID and Location ID\n- Set environment variables: GOOGLE_BUSINESS_ACCOUNT_ID, GOOGLE_BUSINESS_LOCATION_ID\n\n✅ **Step 2: Setup Google Sheets Integration**\n- Create Google Sheet with \"Reviews\" sheet\n- Add headers: Date, Source, Rating, Reviewer, Review, AI Response, Review ID\n- Set environment variable: GOOGLE_SHEET_ID\n- Ensure service account has edit access to the sheet\n\n✅ **Step 3: Configure Slack Notifications**\n- Create Slack webhook in your workspace\n- Set environment variable: SLACK_WEBHOOK_URL  \n- Configure notification email: NOTIFICATION_EMAIL\n\n✅ **Step 4: Customize Business Settings**\n- Update Business Configuration node with your business name\n- Adjust response tone (professional, friendly, casual, etc.)\n- Test the AI response generation with sample review data\n\n**🧪Final Step: Test with Sample Data**\nTrigger manually to verify all integrations work properly"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "f2d68f67-a2df-4e49-9dc3-3e1a47394575",
  "connections": {
    "1f5d176c-0fed-4690-8df2-ab217b4accd5": {
      "main": [
        [
          {
            "node": "88e13071-e269-4028-bec5-1ca479e2e76b",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "ba523e1d-a9d6-482a-880f-65d8eb6514c2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7d3e47c7-bd46-472b-b616-09b05b5c8c6c": {
      "main": [
        [
          {
            "node": "1f5d176c-0fed-4690-8df2-ab217b4accd5",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "88e13071-e269-4028-bec5-1ca479e2e76b": {
      "main": [
        [
          {
            "node": "51678bc3-3bb1-42b9-87d1-ec2e81c0f233",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "1522ed76-eda8-4ea2-a889-54c3fe3cf8e0": {
      "main": [
        [
          {
            "node": "7d3e47c7-bd46-472b-b616-09b05b5c8c6c",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "7a35316d-b32c-4601-991b-55ef94451883": {
      "main": [
        [
          {
            "node": "1522ed76-eda8-4ea2-a889-54c3fe3cf8e0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bfad3de2-aca1-4691-841f-488fe9a57c09": {
      "main": [
        [
          {
            "node": "7a35316d-b32c-4601-991b-55ef94451883",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ba523e1d-a9d6-482a-880f-65d8eb6514c2": {
      "main": [
        [
          {
            "node": "51678bc3-3bb1-42b9-87d1-ec2e81c0f233",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿Cómo usar este flujo de trabajo?

Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.

¿En qué escenarios es adecuado este flujo de trabajo?

Intermedio - Gestión de tickets, IA Multimodal

¿Es de pago?

Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.

Información del flujo de trabajo
Nivel de dificultad
Intermedio
Número de nodos11
Categoría2
Tipos de nodos7
Descripción de la dificultad

Adecuado para usuarios con experiencia intermedia, flujos de trabajo de complejidad media con 6-15 nodos

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34