{
  "meta": {
    "templateCredsSetupCompleted": true
  },
  "nodes": [
    {
      "id": "0951fd33-1811-4a89-b84f-f46dc9e6fde1",
      "name": "When chat message received",
      "type": "@n8n/n8n-nodes-langchain.chatTrigger",
      "position": [
        20,
        -340
      ],
      "parameters": {
        "options": {}
      },
      "typeVersion": 1.1
    },
    {
      "id": "699c2f89-5547-4d28-92a9-5e216aecb251",
      "name": "AI Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        240,
        -340
      ],
      "parameters": {
        "options": {
          "maxIterations": 15,
          "systemMessage": "=You are a helpful assistant.\nCurrent timestamp is {{ $now }}"
        }
      },
      "typeVersion": 1.7
    },
    {
      "id": "640c29f7-b67e-49f6-a864-c9b396c446b7",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        160,
        -100
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o",
          "cachedResultName": "gpt-4o"
        },
        "options": {
          "temperature": 0.2
        }
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "807630b4-c138-4b66-a438-fb70eab12a07",
      "name": "Calculator",
      "type": "@n8n/n8n-nodes-langchain.toolCalculator",
      "position": [
        840,
        60
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "132a97a3-239c-403f-843f-55b652e3efc5",
      "name": "Code",
      "type": "n8n-nodes-base.code",
      "position": [
        840,
        640
      ],
      "parameters": {
        "jsCode": "// Ensure there's at least one input item.\nif (!items || items.length === 0) {\n  throw new Error(\"No input items found.\");\n}\n\n// Our input is expected to have a 'data' property containing the JSONP string.\nconst input = items[0].json;\n\nif (!input.data) {\n  throw new Error(\"Input JSON does not have a 'data' property.\");\n}\n\nconst rawData = input.data;\n\n// Use a regex to extract the JSON content from the Google Visualization JSONP response.\nconst regex = /google\\.visualization\\.Query\\.setResponse\\((.*)\\);?$/s;\nconst match = rawData.match(regex);\n\nif (!match) {\n  throw new Error(\"Input data does not match the expected Google Visualization JSONP format.\");\n}\n\nconst jsonString = match[1];\n\n// Parse the extracted JSON string.\nlet parsed;\ntry {\n  parsed = JSON.parse(jsonString);\n} catch (error) {\n  throw new Error(\"Failed to parse JSON: \" + error.message);\n}\n\n// Verify that the parsed JSON has the expected 'table' structure with 'cols' and 'rows'.\nif (!parsed.table || !Array.isArray(parsed.table.cols) || !Array.isArray(parsed.table.rows)) {\n  throw new Error(\"Parsed JSON does not have the expected 'table' structure with 'cols' and 'rows'.\");\n}\n\nconst cols = parsed.table.cols;\nconst rows = parsed.table.rows;\n\n// Helper function to convert date string from \"Date(YYYY,M,D)\" to \"YYYY-MM-DD\"\nfunction formatDate(dateStr) {\n  const match = dateStr.match(/^Date\\((\\d+),(\\d+),(\\d+)\\)$/);\n  if (!match) return dateStr;\n  const year = parseInt(match[1], 10);\n  const month = parseInt(match[2], 10) + 1; // JavaScript months are 0-indexed\n  const day = parseInt(match[3], 10);\n  // Format with leading zeros\n  return `${year}-${String(month).padStart(2, '0')}-${String(day).padStart(2, '0')}`;\n}\n\n// Map each row into an object using the column labels as keys.\nconst newItems = rows.map(row => {\n  const obj = {};\n  cols.forEach((col, index) => {\n    let value = row.c && row.c[index] ? row.c[index].v : null;\n    // If the column type is \"date\" and the value is a string that looks like \"Date(YYYY,M,D)\"\n    if (col.type === \"date\" && typeof value === \"string\") {\n      value = formatDate(value);\n    }\n    obj[col.label] = value;\n  });\n  return { json: obj };\n});\n\n// Return the new array of items.\nreturn newItems;\n"
      },
      "typeVersion": 2
    },
    {
      "id": "3dc1e670-bfb1-4b63-b9c8-85656134c843",
      "name": "When Executed by Another Workflow",
      "type": "n8n-nodes-base.executeWorkflowTrigger",
      "position": [
        280,
        640
      ],
      "parameters": {
        "workflowInputs": {
          "values": [
            {
              "name": "start_date"
            },
            {
              "name": "end_date"
            },
            {
              "name": "status"
            }
          ]
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "52a26e43-12a5-4b4a-a224-d70cdabf6aaf",
      "name": "Records by date",
      "type": "@n8n/n8n-nodes-langchain.toolWorkflow",
      "position": [
        1020,
        -120
      ],
      "parameters": {
        "name": "records_by_date_and_or_status",
        "workflowId": {
          "__rl": true,
          "mode": "list",
          "value": "a2BIIjr2gLBay06M",
          "cachedResultName": "Template | Your first AI Data Analyst"
        },
        "description": "Use this tool to get records filtered by date. You can also filter by status at the same time, if you want.",
        "workflowInputs": {
          "value": {
            "status": "={{ $fromAI(\"status\", \"Status of the transaction. Can be Completed, Refund or Error. Leave empty if you don't need this now.\", \"string\") }}",
            "end_date": "={{ $fromAI(\"end_date\", \"End date in format YYYY-MM-DD\", \"string\") }}",
            "start_date": "={{ $fromAI(\"start_date\", \"Start date in format YYYY-MM-DD\", \"string\") }}"
          },
          "schema": [
            {
              "id": "start_date",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "start_date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "end_date",
              "type": "string",
              "display": true,
              "required": false,
              "displayName": "end_date",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            },
            {
              "id": "status",
              "type": "string",
              "display": true,
              "removed": false,
              "required": false,
              "displayName": "status",
              "defaultMatch": false,
              "canBeUsedToMatch": true
            }
          ],
          "mappingMode": "defineBelow",
          "matchingColumns": [],
          "attemptToConvertTypes": false,
          "convertFieldsToString": false
        }
      },
      "typeVersion": 2
    },
    {
      "id": "e1811519-8699-4243-8c64-0db1ab26004d",
      "name": "Aggregate",
      "type": "n8n-nodes-base.aggregate",
      "position": [
        1280,
        640
      ],
      "parameters": {
        "options": {},
        "aggregate": "aggregateAllItemData"
      },
      "typeVersion": 1
    },
    {
      "id": "3b129abd-ac9a-460c-abb3-007e2c94e284",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1220,
        400
      ],
      "parameters": {
        "color": 7,
        "width": 220,
        "height": 400,
        "content": "AI\uc5d0\uac8c \ubaa8\ub4e0 \ud56d\ubaa9\uc744 \ub2e4\uc2dc \ubcf4\ub0b4\uae30 \uc704\ud574, \uc6b0\ub9ac\ub294 \ubaa8\ub4e0 \uac83\uc744 \ud558\ub098\uc758 \ud56d\ubaa9\uc73c\ub85c \uc9d1\uacc4\ud574\uc57c \ud569\ub2c8\ub2e4.\n\n\uadf8\ub807\uc9c0 \uc54a\uc73c\uba74, \ud55c \ubc88\uc5d0 \ud558\ub098\uc758 \ud56d\ubaa9\uc73c\ub85c \uc751\ub2f5\ud560 \uac83\uc774\uace0, AI\ub294 \ub3c4\ucc29\ud558\ub294 \uccab \ubc88\uc9f8 \ud56d\ubaa9\ub9cc \ubc1b\uc744 \uac83\uc785\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "645ac0f9-8022-4f2c-8c6c-5aadd6cf09cc",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        460,
        400
      ],
      "parameters": {
        "color": 7,
        "width": 300,
        "height": 400,
        "content": "\uc774 \ub178\ub4dc\ub294 Google Sheets API\uc5d0 \ub9de\ucda4 HTTP \uc694\uccad\uc744 \ubcf4\ub0c5\ub2c8\ub2e4.\n\nGoogle Sheets API\uc5d0\uc11c \ub0a0\uc9dc \ubc94\uc704\ub85c \ud544\ud130\ub9c1\ud558\ub294 \uac83\uc740 \ub9e4\uc6b0 \ubcf5\uc7a1\ud569\ub2c8\ub2e4.\n\n\uc774 \ub178\ub4dc\ub294 \uadf8 \ubb38\uc81c\ub97c \ud574\uacb0\ud569\ub2c8\ub2e4.\n\n\ud558\uc9c0\ub9cc \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc5d0\uc11c \ub3d9\uc77c\ud55c \uc791\uc5c5\uc744 \ud558\ub294 \uac83\uc740 \ud6e8\uc52c \uac04\ub2e8\ud569\ub2c8\ub2e4. \ub3c4\uad6c\uac00 \uc11c\ube0c-\uc6cc\ud06c\ud50c\ub85c \uc5c6\uc774 \uc774\ub97c \ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "14221a72-914d-4c75-866a-d64ba7f8109f",
      "name": "Sticky Note2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        780,
        400
      ],
      "parameters": {
        "color": 7,
        "width": 220,
        "height": 400,
        "content": "\uc774 \ubcf5\uc7a1\ud55c \uc694\uccad\uc758 \ucd9c\ub825\ub3c4 \ud63c\ub780\uc2a4\ub7fd\uc2b5\ub2c8\ub2e4.\n\n\uadf8\ub798\uc11c ChatGPT\uac00 \uc0dd\uc131\ud55c \uc77c\ubd80 \ucf54\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec \ub370\uc774\ud130\ub97c JSON \uac1d\uccb4\ub85c \ubcc0\ud658\ud569\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "f12668ea-b59d-4caf-a997-381f78b7cfe7",
      "name": "Google Sheets request",
      "type": "n8n-nodes-base.httpRequest",
      "position": [
        560,
        640
      ],
      "parameters": {
        "url": "https://docs.google.com/spreadsheets/d/18A4d7KYrk8-uEMbu7shoQe_UIzmbTLV1FMN43bjA7qc/gviz/tq",
        "options": {},
        "sendQuery": true,
        "authentication": "predefinedCredentialType",
        "queryParameters": {
          "parameters": [
            {
              "name": "sheet",
              "value": "Sheet1"
            },
            {
              "name": "tq",
              "value": "=SELECT * WHERE A >= DATE \"{{ $json.start_date }}\" AND A <= DATE \"{{ $json.end_date }}\""
            }
          ]
        },
        "nodeCredentialType": "googleSheetsOAuth2Api"
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.2
    },
    {
      "id": "f59a2606-0981-43d1-9a07-b802891b9220",
      "name": "Get transactions by product name",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        1020,
        -320
      ],
      "parameters": {
        "options": {},
        "filtersUI": {
          "values": [
            {
              "lookupValue": "={{ $fromAI(\"product_name\", \"The product name\", \"string\") }}",
              "lookupColumn": "Product"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/18A4d7KYrk8-uEMbu7shoQe_UIzmbTLV1FMN43bjA7qc/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/18A4d7KYrk8-uEMbu7shoQe_UIzmbTLV1FMN43bjA7qc/edit?usp=sharing"
        },
        "descriptionType": "manual",
        "toolDescription": "Find transactions by product.\nOur products are:\n- Widget A\n- Widget B\n- Widget C\n- Widget D"
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "1ed7168c-1639-4b3b-a3b4-ed162bcef880",
      "name": "Get all transactions",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        840,
        -120
      ],
      "parameters": {
        "options": {},
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/18A4d7KYrk8-uEMbu7shoQe_UIzmbTLV1FMN43bjA7qc/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/18A4d7KYrk8-uEMbu7shoQe_UIzmbTLV1FMN43bjA7qc/edit?usp=sharing"
        },
        "descriptionType": "manual",
        "toolDescription": "Only use this as last resort, because it will pull all data at once."
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "798453da-8a65-4d14-ae0a-778d64ab02ad",
      "name": "Sticky Note3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -360,
        -340
      ],
      "parameters": {
        "color": 4,
        "width": 320,
        "height": 340,
        "content": "## \uc2dc\ub3c4\ud560 \uba87 \uac00\uc9c0 \uc9c8\ubb38\n\uc774 \ud398\uc774\uc9c0\uc5d0 \ube68\uac04 \ubc84\ud2bc\uc774 \uc788\uc5b4\uc694. \uadf8 \ubc84\ud2bc\uc744 \ud074\ub9ad\ud558\uba74 AI\uc640 \ucc44\ud305\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n\uc774 \uc9c8\ubb38\ub4e4\uc744 \uc2dc\ub3c4\ud574 \ubcf4\uc138\uc694:\n\n- 1\uc6d4\uc5d0 \ud658\ubd88\uc774 \uba87 \uac74 \uc788\uc5c8\uace0, \ud658\ubd88\ub41c \uae08\uc561\uc740 \uc5bc\ub9c8\uc600\ub098\uc694?\n\n- 2025\ub144 1\uc6d4\uc5d0 \uc131\uacf5\uc801\uc778 \ud310\ub9e4\uac00 \uba87 \uac74 \uc788\uc5c8\uace0, \uadf8\ub4e4\uc758 \ucd5c\uc885 \uc218\uc785\uc740 \uc5bc\ub9c8\uc600\ub098\uc694?\n\n- \ud658\ubd88\uc758 \uac00\uc7a5 \ube48\ubc88\ud55c \uc774\uc720\ub294 \ubb34\uc5c7\uc778\uac00\uc694?"
      },
      "typeVersion": 1
    },
    {
      "id": "b8336f1a-3855-4247-9589-2f9aa35d211f",
      "name": "Sticky Note4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -780,
        -340
      ],
      "parameters": {
        "color": 4,
        "width": 400,
        "content": "\uc774 Sheets \ud30c\uc77c\uc744 \uadc0\ud558\uc758 Google Drive\uc5d0 \ubcf5\uc0ac\ud558\uc138\uc694  \nhttps://docs.google.com/spreadsheets/d/18A4d7KYrk8-uEMbu7shoQe_UIzmbTLV1FMN43bjA7qc/edit?gid=0#gid=0"
      },
      "typeVersion": 1
    },
    {
      "id": "99a55b39-965b-4454-b416-d3991f0bdfbc",
      "name": "Sticky Note5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        940,
        60
      ],
      "parameters": {
        "color": 7,
        "width": 200,
        "height": 140,
        "content": "\uacc4\uc0b0\uae30\ub294 \uc5d0\uc774\uc804\ud2b8\uac00 \uc218\ud559\uc801 \uacc4\uc0b0\uc744 \uc2e4\ud589\ud560 \uc218 \uc788\uac8c \ud574\uc8fc\ub294 \ub3c4\uad6c\uc785\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "7ebebf56-e065-41c4-8270-f636785b0def",
      "name": "Sticky Note6",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -780,
        -160
      ],
      "parameters": {
        "color": 4,
        "width": 400,
        "content": "### \uad6c\uae00 \uc2dc\ud2b8\uc5d0 \uc5f0\uacb0\ud558\ub294 \ubc29\ubc95?\nn8n\uc744 \uad6c\uae00 \uc2dc\ud2b8\uc5d0 \uc5f0\uacb0\ud558\ub824\uba74 \uad6c\uae00 OAuth \uc790\uaca9 \uc99d\uba85\uc774 \ud544\uc694\ud569\ub2c8\ub2e4.\n\n\ubb38\uc11c\ub97c \ucc38\uc870\ud558\uc138\uc694 **[\uc5ec\uae30](https://docs.n8n.io/integrations/builtin/credentials/google/oauth-single-service/)**"
      },
      "typeVersion": 1
    },
    {
      "id": "b64df0dd-6425-4fc2-9f60-8c5a85412d61",
      "name": "Sticky Note7",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        120,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 170,
        "height": 260,
        "content": "## \ud83d\udc46\n\uc5ec\uae30\uc5d0\uc11c \ub9ce\uc740 \ubaa8\ub378\uc744 \uc0ac\uc6a9\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ubb34\ub8cc Google Gemini \uc635\uc158\uc744 \ud3ec\ud568\ud558\uc5ec.\n\n\ucca0\uc800\ud788 \ud14c\uc2a4\ud2b8\ud558\uc138\uc694. \uc77c\ubd80 \ubaa8\ub378\uc740 \ub370\uc774\ud130 \ubd84\uc11d\uc5d0 \ub354 \uc801\ud569\ud569\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "23c7bb52-b189-45f1-949b-ea588f065583",
      "name": "Sticky Note8",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        340,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 150,
        "height": 260,
        "content": "## \ud83d\udc46  \n\uc774\uac83\uc740 \ub2e8\uae30 \uba54\ubaa8\ub9ac\uc785\ub2c8\ub2e4. \ucc44\ud305 \uc911\uc5d0 \uc774\uc804 5\uac1c\uc758 \uc0c1\ud638\uc791\uc6a9\uc744 \uae30\uc5b5\ud560 \uac83\uc785\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "6097e5a1-139b-4329-81ff-4fda16ea5221",
      "name": "Buffer Memory",
      "type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
      "position": [
        360,
        -100
      ],
      "parameters": {},
      "typeVersion": 1.3
    },
    {
      "id": "6de4a7f2-5c58-4401-bd7c-19c5a73ba775",
      "name": "Sticky Note9",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1160,
        -320
      ],
      "parameters": {
        "color": 7,
        "width": 340,
        "height": 180,
        "content": "**AI \ub3c4\uad6c \uc5d0\uc774\uc804\ud2b8**\ub294 \ubaa8\ub4e0 \ub3c4\uad6c\uc5d0 \ub3d9\uc2dc\uc5d0 \uc811\uadfc\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\uac83\uc740 \uc774\ub984\uacfc \uc124\uba85\uc744 \uc0ac\uc6a9\ud558\uc5ec \uac01 \ub3c4\uad6c\ub97c \uc5b8\uc81c \uc0ac\uc6a9\ud560\uc9c0 \uacb0\uc815\ud569\ub2c8\ub2e4.\n\n\uc54c\uc544\ub450\uc138\uc694, \uc800\ub294 \ubaa8\ub450\uc5d0\uc11c $fromAI \ud568\uc218\ub97c \uc0ac\uc6a9\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4.\n\n\ubb38\uc11c \ubcf4\uae30\ub97c [\uc5ec\uae30](https://docs.n8n.io/advanced-ai/examples/using-the-fromai-function/)"
      },
      "typeVersion": 1
    },
    {
      "id": "a308d895-bc18-4b2c-9567-78f6c29f79e8",
      "name": "Sticky Note11",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1160,
        -120
      ],
      "parameters": {
        "color": 7,
        "width": 340,
        "height": 320,
        "content": "## \ud83d\udc48 \uc774\uac83\uc740 \ud2b9\ubcc4\ud55c \ub3c4\uad6c\uc785\ub2c8\ub2e4\n\uc774\uac83\uc740 \ub2e4\ub978 \uc6cc\ud06c\ud50c\ub85c\ub97c \ud638\ucd9c\ud558\ub294 \ub370 \uc0ac\uc6a9\ub429\ub2c8\ub2e4.\n\uc774 \uac1c\ub150\uc744 \uc11c\ube0c-\uc6cc\ud06c\ud50c\ub85c\ub77c\uace0 \ud569\ub2c8\ub2e4.\n\n\ubb38\uc11c\ub97c \ubcf4\uc138\uc694 [\uc5ec\uae30](https://docs.n8n.io/flow-logic/subworkflows/).\n\n\uc644\uc804\ud788 \ubcc4\ub3c4\uc758 \uc6cc\ud06c\ud50c\ub85c\ub97c \uc2e4\ud589\ud558\ub294 \ub300\uc2e0, \uc544\ub798 \uac83\uc744 \ud638\ucd9c\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4.\n\n\uc774\uac83\uc740 \uac19\uc740 \uc6cc\ud06c\ud50c\ub85c\uc5d0 \ud3ec\ud568\ub418\uc5b4 \uc788\uc9c0\ub9cc, \ud2b8\ub9ac\uac70\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc774 \ub3c4\uad6c\uc5d0 \uc758\ud574 \ud638\ucd9c\ub420 \ub54c\ub9cc \uc2e4\ud589\ub418\ub3c4\ub85d \uc815\uc758\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "0a6d94bc-21e1-4949-b7f4-c93abbecf08c",
      "name": "Sticky Note12",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        120,
        340
      ],
      "parameters": {
        "color": 7,
        "width": 1380,
        "height": 520,
        "content": "# \uc11c\ube0c-\uc6cc\ud06c\ud50c\ub85c\uc6b0\nAI\ub294 \uc5b8\uc81c\ub4e0\uc9c0 **\ub0a0\uc9dc\ubcc4 \uae30\ub85d** \ub3c4\uad6c\ub97c \uc0ac\uc6a9\ud558\uc5ec \uc774 \uc11c\ube0c-\uc6cc\ud06c\ud50c\ub85c\uc6b0\ub97c \ud638\ucd9c\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.\n\n\uc11c\ube0c-\uc6cc\ud06c\ud50c\ub85c\uc6b0\ub294 \uc790\ub3d9\uc73c\ub85c \ub9c8\uc9c0\ub9c9 \uc2e4\ud589\ub41c \ub178\ub4dc\uc758 \uacb0\uacfc\ub97c AI\uc5d0\uac8c \ubc18\ud658\ud569\ub2c8\ub2e4."
      },
      "typeVersion": 1
    },
    {
      "id": "3e424615-6e49-4bd3-b066-005b9f0f773e",
      "name": "Filter by status",
      "type": "n8n-nodes-base.filter",
      "position": [
        1060,
        640
      ],
      "parameters": {
        "options": {},
        "conditions": {
          "options": {
            "version": 2,
            "leftValue": "",
            "caseSensitive": true,
            "typeValidation": "strict"
          },
          "combinator": "and",
          "conditions": [
            {
              "id": "e50da873-bbbd-41d3-a418-83193907977c",
              "operator": {
                "type": "string",
                "operation": "contains"
              },
              "leftValue": "={{ $json.Status }}",
              "rightValue": "={{ $('When Executed by Another Workflow').item.json.status }}"
            }
          ]
        }
      },
      "typeVersion": 2.2
    },
    {
      "id": "0ad0102c-adb9-4ec9-bdf3-b1ce425b88ba",
      "name": "Get transactions by status",
      "type": "n8n-nodes-base.googleSheetsTool",
      "position": [
        840,
        -320
      ],
      "parameters": {
        "options": {},
        "filtersUI": {
          "values": [
            {
              "lookupValue": "={{ $fromAI(\"transaction_status\", \"Transaction status can be Refund, Completed or Error\", \"string\") }}",
              "lookupColumn": "Status"
            }
          ]
        },
        "sheetName": {
          "__rl": true,
          "mode": "list",
          "value": "gid=0",
          "cachedResultUrl": "https://docs.google.com/spreadsheets/d/18A4d7KYrk8-uEMbu7shoQe_UIzmbTLV1FMN43bjA7qc/edit#gid=0",
          "cachedResultName": "Sheet1"
        },
        "documentId": {
          "__rl": true,
          "mode": "url",
          "value": "https://docs.google.com/spreadsheets/d/18A4d7KYrk8-uEMbu7shoQe_UIzmbTLV1FMN43bjA7qc/edit?usp=sharing"
        },
        "descriptionType": "manual",
        "toolDescription": "Find transactions by status"
      },
      "credentials": {
        "googleSheetsOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 4.5
    },
    {
      "id": "5b80cb08-6e19-47b2-8146-c299e709a34a",
      "name": "Sticky Note13",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        820,
        -540
      ],
      "parameters": {
        "color": 4,
        "width": 300,
        "content": "## Sheets \ud30c\uc77c\uc758 URL\uc744 \ubaa8\ub4e0 Sheets \ub3c4\uad6c\uc5d0\uc11c \ubcc0\uacbd\ud558\uc138\uc694 \ud83d\udc47"
      },
      "typeVersion": 1
    },
    {
      "id": "ddc1351e-0ad0-480f-9742-30f2aa860d61",
      "name": "Sticky Note14",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        500,
        820
      ],
      "parameters": {
        "color": 4,
        "width": 260,
        "height": 100,
        "content": "## \ud83d\udc46 Sheets \ud30c\uc77c\uc758 URL \ubcc0\uacbd"
      },
      "typeVersion": 1
    },
    {
      "id": "ab837a10-932f-4b14-8e2c-546077ca2c86",
      "name": "Sticky Note10",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -780,
        20
      ],
      "parameters": {
        "color": 7,
        "width": 740,
        "height": 580,
        "content": "# \uc800\uc790  \n![Solomon](https://gravatar.com/avatar/79aa147f090807fe0d618fb47a1de932669e385bb0c84bf3a7f891ae7d174256?r=pg&d=retro&size=200)  \n### Solomon  \n\ube0c\ub77c\uc9c8 \ucd9c\uc2e0\uc758 \ud504\ub9ac\ub79c\uc2a4 \ucee8\uc124\ud134\ud2b8\ub85c, \uc790\ub3d9\ud654 \ubc0f \ub370\uc774\ud130 \ubd84\uc11d\uc744 \uc804\ubb38\uc73c\ub85c \ud569\ub2c8\ub2e4. \uc120\ud0dd\ub41c \ud074\ub77c\uc774\uc5b8\ud2b8\uc640 \ud568\uaed8 \uac00\uc7a5 \uc5b4\ub824\uc6b4 \ud504\ub85c\uc81d\ud2b8\ub97c \ud574\uacb0\ud569\ub2c8\ub2e4.  \n\n\ud604\uc7ac Simon\uacfc \ud568\uaed8 [\uc2a4\ud06c\ub808\uc774\ud504\uc2a4 \ucee4\ubba4\ub2c8\ud2f0](https://www.skool.com/scrapes/about?ref=21f10ad99f4d46ba9b8aaea8c9f58c34)\ub97c \uc6b4\uc601 \uc911\uc785\ub2c8\ub2e4. \ud83d\udcaa  \n\n\ube44\uc988\ub2c8\uc2a4 \ubb38\uc758\ub294 automations.solomon@gmail.com\uc73c\ub85c \uc774\uba54\uc77c \uc8fc\uc138\uc694.  \n\ub610\ub294 \ub354 \ube60\ub978 \uc751\ub2f5\uc744 \uc704\ud574 [Telegram](https://t.me/salomaoguilherme)\uc5d0\uc11c \uba54\uc2dc\uc9c0 \uc8fc\uc138\uc694.  \n\n## \ub2e4\ub978 \ud15c\ud50c\ub9bf \ud655\uc778\ud558\uae30  \n### \ud83d\udc49 https://n8n.io/creators/solomon/"
      },
      "typeVersion": 1
    },
    {
      "id": "e58351b3-3b18-4c03-9435-27ba853d03bb",
      "name": "Sticky Note15",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -780,
        620
      ],
      "parameters": {
        "width": 740,
        "height": 180,
        "content": "# \ub3c4\uc6c0\uc774 \ud544\uc694\ud558\uc2e0\uac00\uc694?\n\n\uc774 \uc6cc\ud06c\ud50c\ub85c\uc5d0 \ub300\ud55c \ub3c4\uc6c0\uc744 \ubc1b\uae30 \uc704\ud574, \ucee4\ubba4\ub2c8\ud2f0 \ud3ec\ub7fc\uc5d0 \ud1a0\ud53d\uc744 \uc0dd\uc131\ud574 \uc8fc\uc138\uc694:\n\nhttps://community.n8n.io/c/questions/"
      },
      "typeVersion": 1
    }
  ],
  "connections": {
    "Code": {
      "main": [
        [
          {
            "node": "Filter by status",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Calculator": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Buffer Memory": {
      "ai_memory": [
        [
          {
            "node": "AI Agent",
            "type": "ai_memory",
            "index": 0
          }
        ]
      ]
    },
    "Records by date": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Filter by status": {
      "main": [
        [
          {
            "node": "Aggregate",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Get all transactions": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Google Sheets request": {
      "main": [
        [
          {
            "node": "Code",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get transactions by status": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "When chat message received": {
      "main": [
        [
          {
            "node": "AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Get transactions by product name": {
      "ai_tool": [
        [
          {
            "node": "AI Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "When Executed by Another Workflow": {
      "main": [
        [
          {
            "node": "Google Sheets request",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}