{
  "id": "AnbedV2Ntx97sfed",
  "meta": {
    "instanceId": "workflow-f6b2611b",
    "versionId": "1.0.0",
    "createdAt": "2025-09-29T07:07:49.813211",
    "updatedAt": "2025-09-29T07:07:49.813221",
    "owner": "n8n-user",
    "license": "MIT",
    "category": "automation",
    "status": "active",
    "priority": "high",
    "environment": "production"
  },
  "name": "Extract & Summarize Bing Copilot Search Results with Gemini AI and Bright Data",
  "tags": [
    "automation",
    "n8n",
    "production-ready",
    "excellent",
    "optimized"
  ],
  "nodes": [
    {
      "id": "5f358132-63bd-4c66-80da-4fb9911f607f",
      "name": "When clicking ‘Test workflow’",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -1140,
        400
      ],
      "parameters": {},
      "typeVersion": 1,
      "notes": "This manualTrigger node performs automated tasks as part of the workflow."
    },
    {
      "id": "43a157f6-2fb8-4c90-bf5d-92fc64c9df10",
      "name": "Google Gemini Chat Model",
      "type": "n8n-nodes-base.noOp",
      "notes": "Gemini Experimental Model",
      "position": [
        760,
        580
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemini-2.0-flash-thinking-exp-01-21"
      },
      "credentials": {
        "googlePalmApi": {
          "id": "YeO7dHZnuGBVQKVZ",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "notesInFlow": true,
      "typeVersion": 1
    },
    {
      "id": "f2d34617-ea34-4163-b9d5-a35fed807dbb",
      "name": "Default Data Loader",
      "type": "n8n-nodes-base.noOp",
      "position": [
        940,
        580
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1,
      "notes": "This documentDefaultDataLoader node performs automated tasks as part of the workflow."
    },
    {
      "id": "707fdb4a-f534-4984-b97d-1839db1afc03",
      "name": "Recursive Character Text Splitter",
      "type": "n8n-nodes-base.noOp",
      "position": [
        1040,
        800
      ],
      "parameters": {
        "options": {},
        "chunkOverlap": 100
      },
      "typeVersion": 1,
      "notes": "This textSplitterRecursiveCharacterTextSplitter node performs automated tasks as part of the workflow."
    },
    {
      "id": "0440b1dd-ca72-467c-a27a-76609ae08fcf",
      "name": "If Node",
      "type": "n8n-nodes-base.if",
      "position": [
        -220,
        400
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "6a7e5360-4cb5-4806-892e-5c85037fa71c",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $('Check Snapshot Status').item.json.status }}",
              "rightValue": "ready"
            }
          ]
        }
      },
      "typeVersion": 2.2,
      "notes": "This if node performs automated tasks as part of the workflow."
    },
    {
      "id": "a23f3c86-200a-4d3c-a762-51cce158c4dd",
      "name": "Set Snapshot Id",
      "type": "n8n-nodes-base.set",
      "position": [
        -700,
        400
      ],
      "parameters": {
        "options": {},
        "assignments": {
          "assignments": [
            {
              "id": "2c3369c6-9206-45d7-9349-f577baeaf189",
              "name": "snapshot_id",
              "type": "string",
              "value": "={{ $json.snapshot_id }}"
            }
          ]
        }
      },
      "typeVersion": 3.4,
      "notes": "This set node performs automated tasks as part of the workflow."
    },
    {
      "id": "cee238ff-f725-4a24-8117-540be1c66a56",
      "name": "Download Snapshot",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        140,
        200
      ],
      "parameters": {
        "url": "{{ $env.BASE_URL }}",
        "options": {
          "timeout": 10000
        },
        "sendQuery": true,
        "authentication": "{{ $credentials.genericCredentialType }}",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "format",
              "value": "json"
            }
          ]
        }
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "kdbqXuxIR8qIxF7y",
          "name": "Header Auth account"
        }
      },
      "typeVersion": 4.2,
      "notes": "This httpRequest node performs automated tasks as part of the workflow."
    },
    {
      "id": "6bb33d11-7176-4dc7-89fe-1ee794793d3e",
      "name": "Google Gemini Chat Model1",
      "type": "n8n-nodes-base.noOp",
      "position": [
        380,
        380
      ],
      "parameters": {
        "options": {},
        "modelName": "models/gemini-2.0-flash-exp"
      },
      "credentials": {
        "googlePalmApi": {
          "id": "YeO7dHZnuGBVQKVZ",
          "name": "Google Gemini(PaLM) Api account"
        }
      },
      "typeVersion": 1,
      "notes": "This lmChatGoogleGemini node performs automated tasks as part of the workflow."
    },
    {
      "id": "b2309938-eaaf-4d63-b8c8-53666cd57dac",
      "name": "Structured Output Parser",
      "type": "n8n-nodes-base.noOp",
      "position": [
        540,
        380
      ],
      "parameters": {
        "jsonSchemaExample": "[{\n  \"city\": \"string\",\n  \"hotels\": [\n    {\n      \"name\": \"string\",\n      \"address\": \"string\",\n      \"description\": \"string\",\n      \"website\": \"string\",\n      \"area\": \"string (optional)\"\n    }\n  ]\n}\n]\n"
      },
      "typeVersion": 1.2,
      "notes": "This outputParserStructured node performs automated tasks as part of the workflow."
    },
    {
      "id": "747b1e50-1cae-4efb-86d3-9221438701cd",
      "name": "Check on the errors",
      "type": "n8n-nodes-base.if",
      "position": [
        -20,
        20
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "b267071c-7102-407b-a98d-f613bcb1a106",
              "operator": {
                "type": "string",
                "operation": "equals"
              },
              "leftValue": "={{ $json.errors.toString() }}",
              "rightValue": "0"
            }
          ]
        }
      },
      "typeVersion": 2.2,
      "notes": "This if node performs automated tasks as part of the workflow."
    },
    {
      "id": "0bf63795-1f1d-4d6b-90c1-1effae83fd40",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -1140,
        80
      ],
      "parameters": {
        "width": 400,
        "height": 220,
        "content": "## Note\n\nDeals with the Bing Copilot Search using the Bright Data Web Scraper API.\n\nThe Basic LLM Chain and summarization is done to demonstrate the usage of the N8N AI capabilities.\n\n**Please make sure to update the Webhook Notification URL**"
      },
      "typeVersion": 1,
      "notes": "This stickyNote node performs automated tasks as part of the workflow."
    },
    {
      "id": "3872fb7a-382a-446d-8cb0-6ac5a282a801",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -620,
        80
      ],
      "parameters": {
        "width": 420,
        "height": 220,
        "content": "## LLM Usages\n\nGoogle Gemini Flash Exp model is being used.\n\nBasic LLM Chain makes use of the Output formatter for formatting the response\n\nSummarization Chain is being used for summarization of the content"
      },
      "typeVersion": 1,
      "notes": "This stickyNote node performs automated tasks as part of the workflow."
    },
    {
      "id": "a1453c72-fef3-4cec-967a-858b28ba31d8",
      "name": "Check Snapshot Status",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -460,
        400
      ],
      "parameters": {
        "url": "{{ $env.BASE_URL }}",
        "options": {},
        "sendHeaders": true,
        "authentication": "{{ $credentials.genericCredentialType }}",
        "genericAuthType": "httpHeaderAuth"
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "kdbqXuxIR8qIxF7y",
          "name": "Header Auth account"
        }
      },
      "typeVersion": 4.2,
      "notes": "This httpRequest node performs automated tasks as part of the workflow."
    },
    {
      "id": "5750853b-a07d-455e-b630-977dd733613e",
      "name": "Structured Data Extractor",
      "type": "n8n-nodes-base.noOp",
      "position": [
        360,
        200
      ],
      "parameters": {
        "text": "=Extract the content as a structured JSON.\n\nHere's the content - {{ $json.answer_text }}",
        "messages": {
          "messageValues": [
            {
              "message": "You are an expert data formatter"
            }
          ]
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.6,
      "notes": "This chainLlm node performs automated tasks as part of the workflow."
    },
    {
      "id": "a86f935f-fe57-40ea-9197-5f20e3002899",
      "name": "Concise Summary Creator",
      "type": "n8n-nodes-base.noOp",
      "position": [
        760,
        200
      ],
      "parameters": {
        "options": {
          "summarizationMethodAndPrompts": {
            "values": {
              "prompt": "=Write a concise summary of the following:\n\n\n{{ $('Download Snapshot').item.json.answer_text }}\n\n",
              "combineMapPrompt": "=Write a concise summary of the following:\n\n\n\n\n\nCONCISE SUMMARY: {{ $('Download Snapshot').item.json.answer_text }}"
            }
          }
        },
        "operationMode": "documentLoader"
      },
      "typeVersion": 2,
      "notes": "This chainSummarization node performs automated tasks as part of the workflow."
    },
    {
      "id": "848ce4b1-0aed-4af2-bf55-bcdb30bbc88a",
      "name": "Wait for 30 seconds",
      "type": "n8n-nodes-base.wait",
      "position": [
        -280,
        660
      ],
      "webhookId": "f2aafd71-61f2-4aa4-8290-fa3bbe3d46b9",
      "parameters": {
        "amount": 30
      },
      "typeVersion": 1.1,
      "notes": "This wait node performs automated tasks as part of the workflow."
    },
    {
      "id": "5467a870-0734-457b-909e-be425a432ebf",
      "name": "Structured Data Webhook Notifier",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        760,
        0
      ],
      "parameters": {
        "url": "{{ $env.WEBHOOK_URL }}",
        "options": {},
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "response",
              "value": "={{ $json.output }}"
            }
          ]
        }
      },
      "typeVersion": 4.2,
      "notes": "This httpRequest node performs automated tasks as part of the workflow."
    },
    {
      "id": "bf8a4868-ead7-411e-97ba-9faea308d836",
      "name": "Summary Webhook Notifier",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        1140,
        200
      ],
      "parameters": {
        "url": "{{ $env.WEBHOOK_URL }}",
        "options": {},
        "sendBody": true,
        "bodyParameters": {
          "parameters": [
            {
              "name": "response",
              "value": "={{ $json.output }}"
            }
          ]
        }
      },
      "typeVersion": 4.2,
      "notes": "This httpRequest node performs automated tasks as part of the workflow."
    },
    {
      "id": "60a59b93-9a7c-4d22-ab66-2249fb9ed27e",
      "name": "Perform a Bing Copilot Request",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        -920,
        400
      ],
      "parameters": {
        "url": "{{ $env.API_BASE_URL }}",
        "method": "POST",
        "options": {},
        "jsonBody": "[\n  {\n    \"url\": \"{{ $env.WEBHOOK_URL }}\",\n    \"prompt\": \"Top hotels in New York\"\n  }\n]",
        "sendBody": true,
        "sendQuery": true,
        "sendHeaders": true,
        "specifyBody": "json",
        "authentication": "{{ $credentials.genericCredentialType }}",
        "genericAuthType": "httpHeaderAuth",
        "queryParameters": {
          "parameters": [
            {
              "name": "dataset_id",
              "value": "gd_m7di5jy6s9geokz8w"
            },
            {
              "name": "include_errors",
              "value": "true"
            }
          ]
        },
        "headerParameters": {
          "parameters": [
            {}
          ]
        }
      },
      "credentials": {
        "httpHeaderAuth": {
          "id": "kdbqXuxIR8qIxF7y",
          "name": "Header Auth account"
        }
      },
      "typeVersion": 4.2,
      "notes": "This httpRequest node performs automated tasks as part of the workflow."
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1",
    "saveManualExecutions": true,
    "callerPolicy": "workflowsFromSameOwner",
    "errorWorkflow": null,
    "timezone": "UTC",
    "executionTimeout": 3600,
    "maxExecutions": 1000,
    "retryOnFail": true,
    "retryCount": 3,
    "retryDelay": 1000
  },
  "versionId": "4462ae6e-4ecd-4f64-aad8-4aa9e65982b6",
  "connections": {
    "cee238ff-f725-4a24-8117-540be1c66a56": {
      "main": [
        [
          {
            "node": "error-handler-cee238ff-f725-4a24-8117-540be1c66a56",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-cee238ff-f725-4a24-8117-540be1c66a56-0315f174",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-cee238ff-f725-4a24-8117-540be1c66a56-c390b77e",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-cee238ff-f725-4a24-8117-540be1c66a56-87795b09",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-cee238ff-f725-4a24-8117-540be1c66a56-ed22ca1b",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-cee238ff-f725-4a24-8117-540be1c66a56-d8079d03",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-cee238ff-f725-4a24-8117-540be1c66a56-a553286c",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-cee238ff-f725-4a24-8117-540be1c66a56-0af0806c",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-cee238ff-f725-4a24-8117-540be1c66a56-4f6e16e4",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "a1453c72-fef3-4cec-967a-858b28ba31d8": {
      "main": [
        [
          {
            "node": "error-handler-a1453c72-fef3-4cec-967a-858b28ba31d8",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-a1453c72-fef3-4cec-967a-858b28ba31d8-39ddb134",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-a1453c72-fef3-4cec-967a-858b28ba31d8-34510881",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-a1453c72-fef3-4cec-967a-858b28ba31d8-6123a943",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-a1453c72-fef3-4cec-967a-858b28ba31d8-c8fbadeb",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-a1453c72-fef3-4cec-967a-858b28ba31d8-17e59166",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-a1453c72-fef3-4cec-967a-858b28ba31d8-65690a88",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-a1453c72-fef3-4cec-967a-858b28ba31d8-1566dc17",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-a1453c72-fef3-4cec-967a-858b28ba31d8-ca202bdf",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "5467a870-0734-457b-909e-be425a432ebf": {
      "main": [
        [
          {
            "node": "error-handler-5467a870-0734-457b-909e-be425a432ebf",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-5467a870-0734-457b-909e-be425a432ebf-9a63be09",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-5467a870-0734-457b-909e-be425a432ebf-ee3c396b",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-5467a870-0734-457b-909e-be425a432ebf-6439e937",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-5467a870-0734-457b-909e-be425a432ebf-7212648d",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-5467a870-0734-457b-909e-be425a432ebf-e15ccd23",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-5467a870-0734-457b-909e-be425a432ebf-7a34d239",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-5467a870-0734-457b-909e-be425a432ebf-aaf357f8",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-5467a870-0734-457b-909e-be425a432ebf-06c113f1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "bf8a4868-ead7-411e-97ba-9faea308d836": {
      "main": [
        [
          {
            "node": "error-handler-bf8a4868-ead7-411e-97ba-9faea308d836",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-bf8a4868-ead7-411e-97ba-9faea308d836-be440b2f",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-bf8a4868-ead7-411e-97ba-9faea308d836-5067fd1b",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-bf8a4868-ead7-411e-97ba-9faea308d836-baf0cbd6",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-bf8a4868-ead7-411e-97ba-9faea308d836-9bc3c71c",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-bf8a4868-ead7-411e-97ba-9faea308d836-fce0c475",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-bf8a4868-ead7-411e-97ba-9faea308d836-4be7dcab",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-bf8a4868-ead7-411e-97ba-9faea308d836-598bb8dd",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-bf8a4868-ead7-411e-97ba-9faea308d836-337ccaa9",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "60a59b93-9a7c-4d22-ab66-2249fb9ed27e": {
      "main": [
        [
          {
            "node": "error-handler-60a59b93-9a7c-4d22-ab66-2249fb9ed27e",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-60a59b93-9a7c-4d22-ab66-2249fb9ed27e-09919f61",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-60a59b93-9a7c-4d22-ab66-2249fb9ed27e-5f460c13",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-60a59b93-9a7c-4d22-ab66-2249fb9ed27e-3f1172a8",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-60a59b93-9a7c-4d22-ab66-2249fb9ed27e-a3ed3421",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-60a59b93-9a7c-4d22-ab66-2249fb9ed27e-07cd8025",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-60a59b93-9a7c-4d22-ab66-2249fb9ed27e-2b3f80f2",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-60a59b93-9a7c-4d22-ab66-2249fb9ed27e-a84ddad6",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "error-handler-60a59b93-9a7c-4d22-ab66-2249fb9ed27e-5d9f2d4b",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "43a157f6-2fb8-4c90-bf5d-92fc64c9df10": {
      "main": [
        [
          {
            "node": "error-handler-43a157f6-2fb8-4c90-bf5d-92fc64c9df10-418227a3",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "6bb33d11-7176-4dc7-89fe-1ee794793d3e": {
      "main": [
        [
          {
            "node": "error-handler-6bb33d11-7176-4dc7-89fe-1ee794793d3e-cac8fb76",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  },
  "description": "Automated workflow: Extract & Summarize Bing Copilot Search Results with Gemini AI and Bright Data. This workflow integrates 13 different services: stickyNote, httpRequest, wait, textSplitterRecursiveCharacterTextSplitter, lmChatGoogleGemini. It contains 31 nodes and follows best practices for error handling and security.",
  "notes": "Excellent quality workflow: Extract & Summarize Bing Copilot Search Results with Gemini AI and Bright Data. This workflow has been optimized for production use with comprehensive error handling, security, and documentation."
}