AutomationFlowsAI & RAG › PokeAPI Data Cleansing with AI

PokeAPI Data Cleansing with AI

Original n8n title: Pokeapi - Datacleansing Practice

pokeapi - DataCleansing Practice. Uses httpRequest, googleBigQuery, lmChatGoogleGemini, agent. Event-driven trigger; 56 nodes.

Event trigger★★★★★ complexityAI-powered56 nodesHTTP RequestGoogle BigQueryGoogle Gemini ChatAgentOpenAI ChatOutput Parser Structured
AI & RAG Trigger: Event Nodes: 56 Complexity: ★★★★★ AI nodes: yes Added:

This workflow follows the Agent → HTTP Request recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "createdAt": "2025-07-08T05:59:56.110Z",
  "updatedAt": "2025-08-24T09:07:31.926Z",
  "id": "4Qdj1H8JXasMygxA",
  "name": "pokeapi - DataCleansing Practice",
  "active": false,
  "isArchived": false,
  "nodes": [
    {
      "parameters": {},
      "type": "n8n-nodes-base.manualTrigger",
      "typeVersion": 1,
      "position": [
        144,
        -720
      ],
      "id": "69860a9d-f2bf-4492-a7d7-53203b188748",
      "name": "When clicking \u2018Execute workflow\u2019"
    },
    {
      "parameters": {
        "content": "![](https://raw.githubusercontent.com/2innnnn0/assets/refs/heads/master/image/datapopcorn_logo_50px.png)\n# Pokeapi \uc804\ucc98\ub9ac \uc2e4\uc2b5 https://pokeapi.co/\n\n\ud3ec\ucf13\ubaac API\ub294 \uc77c\ubc18\uc801\uc73c\ub85c Pok\u00e9API (https://pokeapi.co)\ub97c \uc9c0\uce6d\ud569\ub2c8\ub2e4. \uc774 API\ub294 \ud3ec\ucf13\ubaac \uac8c\uc784 \uc2dc\ub9ac\uc988\uc5d0 \ub4f1\uc7a5\ud558\ub294 \ub2e4\uc591\ud55c \ub370\uc774\ud130(\ud3ec\ucf13\ubaac, \uae30\uc220, \ub3c4\uac10, \ud0c0\uc785 \ub4f1)\ub97c RESTful API \ud615\ud0dc\ub85c \uc81c\uacf5\ud558\ub294 \uc624\ud508\uc18c\uc2a4 \ud504\ub85c\uc81d\ud2b8\uc785\ub2c8\ub2e4. \uc544\ub798\ub294 \uc8fc\uc694 \ud2b9\uc131\uacfc \uad6c\uc131\uc5d0 \ub300\ud55c \uc124\uba85\uc785\ub2c8\ub2e4.\n\n\u2e3b\n\n\u2705 \uae30\ubcf8 \uc815\ubcf4\n\t\u2022\tAPI \uc774\ub984: Pok\u00e9API\n\t\u2022\t\ud615\uc2dd: REST API\n\t\u2022\t\uc751\ub2f5 \ud3ec\ub9f7: JSON\n\t\u2022\t\uc778\uc99d \ud544\uc694 \uc5c6\uc74c (2025\ub144 6\uc6d4 \uae30\uc900)\n\t\u2022\t\uacf5\uc2dd \ubb38\uc11c: https://pokeapi.co/docs/v2\n\n\u2e3b\n\n\u2705 \uc8fc\uc694 \uc5d4\ub4dc\ud3ec\uc778\ud2b8 (V2 \uae30\uc900)\n\n\uc5d4\ub4dc\ud3ec\uc778\ud2b8\t\uc124\uba85\t\uc608\uc2dc URL\n/pokemon/\t\ud3ec\ucf13\ubaac \uae30\ubcf8 \uc815\ubcf4\thttps://pokeapi.co/api/v2/pokemon/pikachu/\n/ability/\t\ud3ec\ucf13\ubaac\uc758 \ud2b9\uc131 (Ability)\thttps://pokeapi.co/api/v2/ability/1/\n/type/\t\ud3ec\ucf13\ubaac\uc758 \ud0c0\uc785 (Type)\thttps://pokeapi.co/api/v2/type/3/\n/move/\t\ud3ec\ucf13\ubaac \uae30\uc220 (Move)\thttps://pokeapi.co/api/v2/move/15/\n/pokemon-species/\t\ud3ec\ucf13\ubaac \uc885(species) \uad00\ub828 \uc0c1\uc138 \uc815\ubcf4\thttps://pokeapi.co/api/v2/pokemon-species/25/\n/evolution-chain/\t\uc9c4\ud654 \uccb4\uacc4\thttps://pokeapi.co/api/v2/evolution-chain/10/\n/location/\t\ud3ec\ucf13\ubaac \ucd9c\ud604 \uc7a5\uc18c\thttps://pokeapi.co/api/v2/location/1/\n\n\n\u2e3b\n\n\u2705 \uc608\uc2dc: https://pokeapi.co/api/v2/pokemon/pikachu/ \ud638\ucd9c \uc2dc \uc751\ub2f5 \uc8fc\uc694 \ud544\ub4dc\n\n```\n{\n  \"name\": \"pikachu\",\n  \"id\": 25,\n  \"height\": 4,\n  \"weight\": 60,\n  \"types\": [\n    {\n      \"slot\": 1,\n      \"type\": {\n        \"name\": \"electric\",\n        \"url\": \"https://pokeapi.co/api/v2/type/13/\"\n      }\n    }\n  ],\n  \"abilities\": [\n    {\n      \"ability\": {\n        \"name\": \"static\",\n        \"url\": \"https://pokeapi.co/api/v2/ability/9/\"\n      },\n      \"is_hidden\": false,\n      \"slot\": 1\n    }\n  ],\n  ...\n}\n```\n\n\u2e3b\n\n\u2705 \uc2e4\ubb34 \ud65c\uc6a9 \uc608\uc2dc\n\t\u2022\t\ub370\uc774\ud130 \ubd84\uc11d: \ud3ec\ucf13\ubaac \ub2a5\ub825\uce58 \uae30\ubc18 \ud074\ub7ec\uc2a4\ud130\ub9c1, \ud0c0\uc785 \uac04 \uc0c1\uc131 \ubd84\uc11d\n\t\u2022\tAPI \uc5f0\ub3d9 \uc608\uc2dc: n8n, Python (requests/pandas), JavaScript (fetch/axios) \ub4f1\n\t\u2022\t\uc790\ub3d9\ud654: \ud3ec\ucf13\ubaac \uc774\ub984 \ub9ac\uc2a4\ud2b8\ub85c \ub8e8\ud504 \ub3cc\ub9ac\uba70 \uc0c1\uc138 \uc815\ubcf4 \uc218\uc9d1 \u2192 CSV \uc800\uc7a5\n\n\u2e3b\n\n\u2705 \uc8fc\uc758\uc0ac\ud56d\n\t\u2022\tRate Limit: \uacf5\uc2dd \ubb38\uc11c\uc5d0 \uba85\uc2dc\ub418\uc5b4 \uc788\uc9c0 \uc54a\uc9c0\ub9cc, \ub300\ub7c9 \uc694\uccad \uc2dc \uc751\ub2f5 \uc9c0\uc5f0 \ub610\ub294 \ucc28\ub2e8 \uac00\ub2a5\uc131 \uc788\uc74c\n\t\u2022\t\ub370\uc774\ud130 \uc77c\uad00\uc131: \uc2e4\uc81c \uac8c\uc784 \ubc84\uc804\ubcc4 \ucc28\uc774\uac00 \uc788\uc744 \uc218 \uc788\uc74c\n\t\u2022\tAPI \uc751\ub2f5 \ud06c\uae30: \uc77c\ubd80 \uc5d4\ub4dc\ud3ec\uc778\ud2b8\ub294 \ub9e4\uc6b0 \ub9ce\uc740 JSON \ud544\ub4dc\ub97c \ud3ec\ud568\ud558\ubbc0\ub85c, \ud544\ud130\ub9c1 \ub85c\uc9c1 \ud544\uc694",
        "height": 1304,
        "width": 608
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        -384,
        -704
      ],
      "id": "9800310d-4499-4d45-a18c-795adf67134b",
      "name": "Sticky Note"
    },
    {
      "parameters": {
        "url": "https://pokeapi.co/api/v2/pokemon/ditto",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        496,
        -400
      ],
      "id": "9a68c5e7-cb89-4101-bf62-7817ffb494d3",
      "name": "ditto"
    },
    {
      "parameters": {
        "url": "https://pokeapi.co/api/v2/pokemon/pikachu",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        496,
        -48
      ],
      "id": "cc286219-2590-433a-a9be-ec0d234c3679",
      "name": "pikachu"
    },
    {
      "parameters": {
        "content": "# 1. Data Cleansing",
        "height": 100,
        "width": 440,
        "color": 6
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        480,
        -688
      ],
      "id": "3846d5f4-b025-4386-922d-f048ee32e8d4",
      "name": "Sticky Note3"
    },
    {
      "parameters": {
        "content": "## \ud83d\udd39 1\ub2e8\uacc4: \ub370\uc774\ud130 \ud544\ud130\ub9c1 / \uc870\uac74 \ubd84\uae30 \ucc98\ub9ac\n\n\ud83d\udccc \ud504\ub85c\uc81d\ud2b8\uba85: \uc804\ud22c\ub825 \uc0c1\uc704 \ud3ec\ucf13\ubaac \ud544\ud130\ub9c1\n\t\u2022 base_experience\uac00 200 \uc774\uc0c1\uc778 \ud3ec\ucf13\ubaac\ub9cc \ucd94\ucd9c\n\t\u2022 \ud0c0\uc785\uc774 fire\uc77c \uacbd\uc6b0 \ubcc4\ub3c4 \uacbd\ub85c\ub85c \ubd84\uae30 \ucc98\ub9ac\n\t\u2022 IF, Switch, Set \ub178\ub4dc \ud65c\uc6a9\n",
        "height": 176,
        "width": 512,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        352,
        496
      ],
      "id": "370b965e-28d9-4f9e-a60f-abe5d4ff5593",
      "name": "Sticky Note4"
    },
    {
      "parameters": {
        "content": "# \uba54\ud0c0\ubabd(Ditto)\ub97c \uc870\ud68c\ud574\ubd05\uc2dc\ub2e4.",
        "height": 100,
        "width": 520,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        480,
        -528
      ],
      "id": "34440dc1-b10c-4bed-b8c5-5ffe049fda39",
      "name": "Sticky Note7"
    },
    {
      "parameters": {
        "content": "# \ud53c\uce74\uce04(Pikachu)\ub97c \uc870\ud68c\ud574\ubd05\uc2dc\ub2e4.\n- \ub80c\ub354\ub9c1\ud560 \ub370\uc774\ud130\uc591\uc774 \ub9ce\uc73c\ub2c8 \uc8fc\uc758\ud558\uc138\uc694.",
        "height": 100,
        "width": 520,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        480,
        -208
      ],
      "id": "feaefdd9-f02d-48e4-a3b7-ac7cef53da8a",
      "name": "Sticky Note8"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "e9bf1115-5c8e-47d3-8510-c27b90f1dba5",
              "name": "id",
              "value": "={{ $json.id }}",
              "type": "string"
            },
            {
              "id": "fa5498f1-cbd3-49a7-abee-07ba82a4a4f5",
              "name": "name",
              "value": "={{ $json.name }}",
              "type": "string"
            },
            {
              "id": "9db2a013-6700-4eb3-a103-0c1436081694",
              "name": "type",
              "value": "={{ $json.types[0].type.name }}",
              "type": "string"
            },
            {
              "id": "4bdc6634-4fa5-4e4d-bf5a-436a9185e761",
              "name": "height(m)",
              "value": "={{ $json.height / 10 }}",
              "type": "string"
            },
            {
              "id": "9de81692-03ca-4afb-bbf3-884654e5e141",
              "name": "weight(kg)",
              "value": "={{ $json.weight / 10 }}",
              "type": "string"
            },
            {
              "id": "15cf60bd-4cd6-4598-8432-796a5cf87a45",
              "name": "ablilties",
              "value": "={{ $json.abilities.map(item => item.ability.name) }}",
              "type": "array"
            },
            {
              "id": "56014d15-2615-46cb-ad6b-e7cf0a46da38",
              "name": "cries",
              "value": "={{ $json.cries.latest }}",
              "type": "string"
            },
            {
              "id": "254fc366-cff9-468d-a0f4-65356fd43029",
              "name": "sprites",
              "value": "={{ $json.sprites.front_default }}",
              "type": "string"
            },
            {
              "id": "14336cca-b6b9-45e0-aadb-b8fbeda4d6d9",
              "name": "stat_name",
              "value": "={{ $json.stats.map(item => item.stat.name) }}",
              "type": "array"
            },
            {
              "id": "662ef797-6a50-4594-a75f-a025f9169ac2",
              "name": "stat_value",
              "value": "={{ $json.stats.map(item => item.base_stat ) }}",
              "type": "array"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        688,
        -400
      ],
      "id": "661ed51b-7815-44a6-a473-23901be74f1b",
      "name": "Edit Fields"
    },
    {
      "parameters": {
        "content": "## \ud83d\udd39 2\ub2e8\uacc4: \ub370\uc774\ud130 \ubcd1\ud569 \ubc0f \ud0a4 \uae30\uc900 Join \ucc98\ub9ac\n\n\ud83d\udccc \ud504\ub85c\uc81d\ud2b8\uba85: \ud3ec\ucf13\ubaac + \ud0c0\uc785 \ubcd1\ud569 \ubd84\uc11d\n\t\u2022\t/pokemon/{name}\ub85c \uc0c1\uc138 \uc815\ubcf4 \ud638\ucd9c\n\t\u2022\t\uac01 \ud3ec\ucf13\ubaac\uc758 \ud0c0\uc785\uc744 \uae30\uc900\uc73c\ub85c /type/{type_name}\uc5d0\uc11c \ud0c0\uc785\ubcc4 \uc815\ubcf4 \ubcd1\ud569\n\t\u2022\tMerge \ub178\ub4dc\uc758 on key match \ubc29\uc2dd \ud65c\uc6a9",
        "height": 176,
        "width": 512,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        928,
        496
      ],
      "id": "f77bd5a1-7f77-4f3f-8140-c9dc5fa617f7",
      "name": "Sticky Note5"
    },
    {
      "parameters": {
        "content": "## \ud83d\udd39 3\ub2e8\uacc4: \uc911\ubcf5 \uc81c\uac70 / Null \ucc98\ub9ac / \ub370\uc774\ud130 \ud0c0\uc785 \ubcc0\ud658\n\n\ud83d\udccc \ud504\ub85c\uc81d\ud2b8\uba85: \uc804\ud22c\ub825 \ub204\ub77d \ud3ec\ucf13\ubaac \uc815\uc81c \ubc0f \uc815\ud615\ud654\n\t\u2022\tstats \uc815\ubcf4\uac00 \ub204\ub77d\ub41c \ud3ec\ucf13\ubaac \uc81c\uac70\n\t\u2022\t\ubb38\uc790\uc5f4 \ud615\ud0dc\uc758 \uacf5\uaca9\ub825(\"attack\": \"90\") \u2192 \uc22b\uc790\ud615 \ubcc0\ud658\n\t\u2022\t\ub3d9\uc77c\ud55c \ud3ec\ucf13\ubaac\uba85 \uc911\ubcf5 \uc81c\uac70\n\t\u2022\tFunction, Set \ub178\ub4dc \uc911\uc2ec \ucc98\ub9ac",
        "height": 192,
        "width": 512,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        1504,
        496
      ],
      "id": "5d48c96d-e7bd-429c-b8bd-e11199b8ec37",
      "name": "Sticky Note6"
    },
    {
      "parameters": {
        "content": "## 4\ub2e8\uacc4 : AI Agent\ub85c \uc804\ucc98\ub9ac \ud558\ub294 \ubc29\ubc95\n- \uc2a4\ud0c0\ud305 \ud3ec\ucf13\ubaac\uc744 \ubd84\ub958\ud558\ub294 \ubc29\ubc95. (GPT\uc5d0\uac8c \ud504\ub86c\ud504\ud2b8\ub97c \uc791\uc131\uc694\uccad)\n\n```\n\uc2dc\uc2a4\ud15c \ud504\ub86c\ud504\ud2b8: \uc2a4\ud0c0\ud305 \ud3ec\ucf13\ubaac \ubd84\ub958 \uc5d0\uc774\uc804\ud2b8\n\n\uc5ed\ud560\n\n\ub108\ub294 \uc0ac\uc6a9\uc790\uac00 \uc785\ub825\ud55c \ud3ec\ucf13\ubaac \uc774\ub984\uc774 \uc2a4\ud0c0\ud305 \ud3ec\ucf13\ubaac(Starter Pok\u00e9mon) \uc778\uc9c0 \uc544\ub2cc\uc9c0\ub97c \ud310\ubcc4\ud558\ub294 \ubd84\ub958\uae30\ub2e4.\n\n\uc815\uc758\n\t\u2022\t\uae30\ubcf8(\uc5c4\uaca9) \uae30\uc900: \uba54\uc778 \uc2dc\ub9ac\uc988 \uac01 \uc138\ub300\uc758 \ud480/\ubd88/\ubb3c \uc2a4\ud0c0\ud305 \ud3ec\ucf13\ubaac \u2018\uae30\ubcf8 \ub2e8\uacc4\u2019(Base form) \ub9cc \u2018\uc2a4\ud0c0\ud305 \ud3ec\ucf13\ubaac\u2019\uc73c\ub85c \ubcf8\ub2e4.\n\uc608) \ubd88\ub300\ubb38\uc790(\ud30c\uc774\ub9ac/Charmander)\ub294 O, \ub9ac\uc790\ub4dc/\ub9ac\uc790\ubabd\uc740 X.\n\t\u2022\t\ud655\uc7a5 \uae30\uc900(\uc120\ud0dd): \ud2b9\uc815 \uc2a4\ud540\uc624\ud504/\ub9ac\uba54\uc774\ud06c\uc5d0\uc11c\uc758 \uc2a4\ud0c0\ud305(\uc608: \ud53c\uce74\uce04\u00b7\uc774\ube0c\uc774)\ub3c4 \uc778\uc815\ud560\uc9c0 mode\ub85c \uc81c\uc5b4\ud55c\ub2e4.\n\n# \uba54\uc778 \uc2dc\ub9ac\uc988 \uc2a4\ud0c0\ud305(\uc138\ub300\ubcc4, \uae30\ubcf8 \ub2e8\uacc4)\n1\uc138\ub300 (Kanto): \uc774\uc0c1\ud574\uc528(Bulbasaur), \ud30c\uc774\ub9ac(Charmander), \uaf2c\ubd80\uae30(Squirtle)\n2\uc138\ub300 (Johto): \uce58\ucf54\ub9ac\ud0c0(Chikorita), \ube0c\ucf00\uc778(Cyndaquil), \ub9ac\uc544\ucf54(Totodile)\n3\uc138\ub300 (Hoenn): \ub098\ubb34\uc9c0\uae30(Treecko), \uc544\ucc28\ubaa8(Torchic), \ubb3c\uc9f1\uc774(Mudkip)\n4\uc138\ub300 (Sinnoh): \ubaa8\ubd80\uae30(Turtwig), \ubd88\uaf43\uc22d\uc774(Chimchar), \ud33d\ub3c4\ub9ac(Piplup)\n5\uc138\ub300 (Unova): \uc8fc\ub9ac\ube44\uc580(Snivy), \ub69c\uafb8\ub9ac(Tepig), \uc218\ub315\uc774(Oshawott)\n6\uc138\ub300 (Kalos): \ub3c4\uce58\ub9c8\ub860(Chespin), \ud478\ud638\uaf2c(Fennekin), \uac1c\uad6c\ub9c8\ub974(Froakie)\n7\uc138\ub300 (Alola): \ub098\ubab0\ube7c\ubbf8(Rowlet), \ub0d0\uc624\ubd88(Litten), \ub204\ub9ac\uacf5(=\ub204\ub9ac\ub808\ub290/Popplio)\n8\uc138\ub300 (Galar): \ud765\ub098\uc22d(Grookey), \uc5fc\ubc84\ub2c8(Scorbunny), \uc6b8\uba38\uae30(Sobble)\n9\uc138\ub300 (Paldea): \ub098\uc624\ud558(Sprigatito), \ub728\uc544\uac70(Fuecoco), \uafb8\uc641\uc2a4(Quaxly)\n\n\n# \ucd9c\ub825 \ud615\uc2dd(JSON)\n{\n  \"is_starter\": true\n}\n\n\uc608\uc2dc\n\t\u2022\t\uc785\ub825: \"Bulbasaur\" \u2192 is_starter: true\n\t\u2022\t\uc785\ub825: \u201cditto\u201d \u2192 is_starter: false\n\n\uae08\uc9c0/\uc8fc\uc758\n\t\u2022\t\uc678\ubd80 \uc9c0\uc2dd \ucd94\ub860\uc73c\ub85c \ubaa9\ub85d\uc744 \uc784\uc758 \ud655\uc7a5\ud558\uc9c0 \ub9d0 \uac83.\n\t\u2022\t\uc0ac\uc6a9\uc790\uac00 \u201c\uc138\ub300\ubcc4 \ubaa9\ub85d\u201d \uc694\uccad \ub4f1 \ud3ec\ub9f7\uc744 \ubc14\uafd4\ub3c4 \ud56d\uc0c1 JSON \uc2a4\ud0a4\ub9c8\ub85c\ub9cc \uc751\ub2f5.\n\t\u2022\t\ubaa8\ud638\ud560 \ub54c \uac70\uc9d3 \ud655\uc2e0 \uae08\uc9c0.\n```",
        "height": 192,
        "width": 512,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        2128,
        496
      ],
      "id": "855e21fe-23cc-4b76-8f51-fefabd50e1f9",
      "name": "Sticky Note9"
    },
    {
      "parameters": {
        "projectId": {
          "__rl": true,
          "value": "n8n-automation-466906",
          "mode": "list",
          "cachedResultName": "n8n-automation",
          "cachedResultUrl": "https://console.cloud.google.com/bigquery?project=n8n-automation-466906"
        },
        "sqlQuery": "SELECT *\nFROM `n8n-automation-466906.datasets.pokemon_data_v2`",
        "options": {}
      },
      "type": "n8n-nodes-base.googleBigQuery",
      "typeVersion": 2.1,
      "position": [
        96,
        768
      ],
      "id": "74b9b1ab-b1f5-4d0f-932c-5fc224e583c6",
      "name": "Call Poke List",
      "credentials": {
        "googleBigQueryOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "e9bf1115-5c8e-47d3-8510-c27b90f1dba5",
              "name": "id",
              "value": "={{ $json.id }}",
              "type": "string"
            },
            {
              "id": "fa5498f1-cbd3-49a7-abee-07ba82a4a4f5",
              "name": "name",
              "value": "={{ $json.name }}",
              "type": "string"
            },
            {
              "id": "9db2a013-6700-4eb3-a103-0c1436081694",
              "name": "type",
              "value": "={{ $json.types[0].type.name }}",
              "type": "string"
            },
            {
              "id": "4bdc6634-4fa5-4e4d-bf5a-436a9185e761",
              "name": "height(m)",
              "value": "={{ $json.height / 10 }}",
              "type": "string"
            },
            {
              "id": "9de81692-03ca-4afb-bbf3-884654e5e141",
              "name": "weight(kg)",
              "value": "={{ $json.weight / 10 }}",
              "type": "string"
            },
            {
              "id": "15cf60bd-4cd6-4598-8432-796a5cf87a45",
              "name": "ablilties",
              "value": "={{ $json.abilities.map(item => item.ability.name) }}",
              "type": "array"
            },
            {
              "id": "56014d15-2615-46cb-ad6b-e7cf0a46da38",
              "name": "cries",
              "value": "={{ $json.cries.latest }}",
              "type": "string"
            },
            {
              "id": "254fc366-cff9-468d-a0f4-65356fd43029",
              "name": "sprites",
              "value": "={{ $json.sprites.front_default }}",
              "type": "string"
            },
            {
              "id": "14336cca-b6b9-45e0-aadb-b8fbeda4d6d9",
              "name": "stat_name",
              "value": "={{ $json.stats.map(item => item.stat.name) }}",
              "type": "array"
            },
            {
              "id": "662ef797-6a50-4594-a75f-a025f9169ac2",
              "name": "stat_value",
              "value": "={{ $json.stats.map(item => item.base_stat ) }}",
              "type": "array"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        704,
        -48
      ],
      "id": "a1a3e185-7521-46f8-87fc-6eecf4a7aeec",
      "name": "Edit Fields2"
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "strict",
            "version": 2
          },
          "conditions": [
            {
              "id": "097ed799-551a-4d17-9e75-563c7893a2b5",
              "leftValue": "={{ $json.name.length }}",
              "rightValue": 9,
              "operator": {
                "type": "number",
                "operation": "gte"
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "type": "n8n-nodes-base.if",
      "typeVersion": 2.2,
      "position": [
        704,
        768
      ],
      "id": "3aed8dcc-19e6-4021-8132-bb21782fc034",
      "name": "If"
    },
    {
      "parameters": {
        "content": "## \uc774\ub984 \uae00\uc528\uac00 9\uc790 \uc774\uc0c1",
        "height": 192
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        640,
        704
      ],
      "id": "8ae15c89-46e1-4a73-8ccd-35460fec6ba1",
      "name": "Sticky Note1"
    },
    {
      "parameters": {
        "rules": {
          "values": [
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 2
                },
                "conditions": [
                  {
                    "leftValue": "={{ $json.type }}",
                    "rightValue": "fire",
                    "operator": {
                      "type": "string",
                      "operation": "equals"
                    },
                    "id": "84c5fe93-bfe8-47e4-8a73-64a757fe2619"
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "fire"
            },
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 2
                },
                "conditions": [
                  {
                    "id": "80bf1d80-980c-47fb-8211-c4ef30726c4d",
                    "leftValue": "={{ $json.type }}",
                    "rightValue": "water",
                    "operator": {
                      "type": "string",
                      "operation": "equals",
                      "name": "filter.operator.equals"
                    }
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "water"
            },
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 2
                },
                "conditions": [
                  {
                    "id": "e2ea971e-c952-4e57-be51-63c6dd3fa3cf",
                    "leftValue": "={{ $json.type }}",
                    "rightValue": "grass",
                    "operator": {
                      "type": "string",
                      "operation": "equals",
                      "name": "filter.operator.equals"
                    }
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "grass"
            },
            {
              "conditions": {
                "options": {
                  "caseSensitive": true,
                  "leftValue": "",
                  "typeValidation": "strict",
                  "version": 2
                },
                "conditions": [
                  {
                    "id": "f33d14a8-fce4-4e6a-b866-971873988590",
                    "leftValue": "={{ $json.type }}",
                    "rightValue": "^(?!fire$|water$|grass$).+$",
                    "operator": {
                      "type": "string",
                      "operation": "regex"
                    }
                  }
                ],
                "combinator": "and"
              },
              "renameOutput": true,
              "outputKey": "others"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.switch",
      "typeVersion": 3.2,
      "position": [
        944,
        928
      ],
      "id": "dd94779a-73f6-4b70-9fe9-acc21888373a",
      "name": "Switch"
    },
    {
      "parameters": {
        "content": "## \ubd84\uae30",
        "height": 256
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        880,
        896
      ],
      "id": "bdcce636-4218-4a08-9f36-af892aae9c31",
      "name": "Sticky Note2"
    },
    {
      "parameters": {
        "compare": "selectedFields",
        "fieldsToCompare": "id",
        "options": {}
      },
      "type": "n8n-nodes-base.removeDuplicates",
      "typeVersion": 2,
      "position": [
        1536,
        800
      ],
      "id": "eca42093-fc93-4902-b544-44648ffd1d2d",
      "name": "Remove Duplicates"
    },
    {
      "parameters": {
        "content": "## \uc911\ubcf5\uc81c\uac70",
        "height": 224
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        1472,
        736
      ],
      "id": "1dc65840-2c62-4148-b241-68f00d1552ea",
      "name": "Sticky Note10"
    },
    {
      "parameters": {
        "content": "## \ud615\ubcc0\ud658 TypeCast\n\u2e3b\n## \ubb38\uc790\uc5f4(String) \uad00\ub828\n```\n.toInt() : \ubb38\uc790\uc5f4 \u2192 \uc815\uc218\n.toFloat() / .toDecimalNumber() : \ubb38\uc790\uc5f4 \u2192 \uc2e4\uc218\n.toNumber() : \ubb38\uc790\uc5f4 \u2192 \uc22b\uc790\n.toBoolean() : \ubb38\uc790\uc5f4\uc744 true/false\ub85c \ubcc0\ud658\n.toDateTime() : \ubb38\uc790\uc5f4 \u2192 \ub0a0\uc9dc \uac1d\uccb4\n.parseJson() : \ubb38\uc790\uc5f4(JSON) \u2192 JSON \uac1d\uccb4\n.toSentenceCase(), .toSnakeCase(), .toTitleCase() : \ubb38\uc790\uc5f4 \ud3ec\ub9f7 \ubcc0\ud658\n.base64Encode(), .base64Decode() : Base64 \uc778\ucf54\ub529/\ub514\ucf54\ub529\n.extractDomain(), .extractEmail(), .extractUrl(), .extractUrlPath() : \ubb38\uc790\uc5f4\uc5d0\uc11c \ud2b9\uc815 \uac12 \ucd94\ucd9c\n.isDomain(), .isEmail(), .isNumeric(), .isUrl() : \ubb38\uc790\uc5f4 \uac80\uc99d\n.isEmpty(), .isNotEmpty() : \ube48 \ubb38\uc790\uc5f4 \uc5ec\ubd80 \ud655\uc778\n.quote(), .removeMarkdown(), .replaceSpecialChars(), .removeTags() : \ubb38\uc790\uc5f4 \uc815\ub9ac\n.urlDecode(), .urlEncode() : URL \ub514\ucf54\ub529/\uc778\ucf54\ub529\n```\n\u2e3b\n\n## \uc22b\uc790(Number) \uad00\ub828\n```\n.ceil() : \uc62c\ub9bc\n.floor() : \ub0b4\ub9bc\n.round(decimalPlaces?) : \ubc18\uc62c\ub9bc (\uc18c\uc218\uc810 \uc790\ub9ac \uc9c0\uc815 \uac00\ub2a5)\n.format(locales?, options?) : \uc22b\uc790 \ud3ec\ub9f7\ud305 (\ud1b5\ud654, \ucc9c \ub2e8\uc704 \uad6c\ubd84 \ub4f1)\n.isEven() : \uc9dd\uc218 \uc5ec\ubd80\n.isOdd() : \ud640\uc218 \uc5ec\ubd80\n.toBoolean() : \uc22b\uc790\ub97c true/false\ub85c \ubcc0\ud658 (0 \u2192 false)\n.toDateTime(format?) : \uc22b\uc790(\ud0c0\uc784\uc2a4\ud0ec\ud504, Excel \uae30\uc900 \ub4f1) \u2192 \ub0a0\uc9dc\n```\n\u2e3b\n\n## JavaScript \ub0b4\uc7a5 \ud568\uc218 \ud65c\uc6a9\n```\nparseInt() : \ubb38\uc790\uc5f4 \u2192 \uc815\uc218\nparseFloat() : \ubb38\uc790\uc5f4 \u2192 \uc2e4\uc218\n.toString() : \uc22b\uc790/\uac1d\uccb4 \u2192 \ubb38\uc790\uc5f4\n\u201c\u201d + value : \ubb38\uc790\uc5f4 \ubcc0\ud658 \uac04\ub2e8 \ud45c\uae30\ubc95\n```",
        "height": 864,
        "width": 512
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        320,
        928
      ],
      "id": "62d01e47-e56d-482b-a93c-a4d2abee8693",
      "name": "Sticky Note11"
    },
    {
      "parameters": {
        "conditions": {
          "options": {
            "caseSensitive": true,
            "leftValue": "",
            "typeValidation": "strict",
            "version": 2
          },
          "conditions": [
            {
              "id": "9e919d96-8e96-45b8-936b-795cb3934b74",
              "leftValue": "={{ $json.height_m }}",
              "rightValue": 1,
              "operator": {
                "type": "number",
                "operation": "gt"
              }
            }
          ],
          "combinator": "and"
        },
        "options": {}
      },
      "type": "n8n-nodes-base.filter",
      "typeVersion": 2.2,
      "position": [
        400,
        768
      ],
      "id": "5cc18fea-b800-4fd7-9bde-6df43986cd1d",
      "name": "height > 1"
    },
    {
      "parameters": {
        "numberInputs": 5
      },
      "type": "n8n-nodes-base.merge",
      "typeVersion": 3.2,
      "position": [
        1264,
        752
      ],
      "id": "c620112d-c0c3-4d11-a4fd-4b6e0ab75a7b",
      "name": "Merge"
    },
    {
      "parameters": {
        "content": "## height > 1 ",
        "height": 192
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        336,
        704
      ],
      "id": "e7a0c1a7-4862-4576-bac3-b9cbdf0461b9",
      "name": "Sticky Note12"
    },
    {
      "parameters": {
        "options": {}
      },
      "type": "@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
      "typeVersion": 1,
      "position": [
        2096,
        1008
      ],
      "id": "d9b39153-39c1-435b-bdb2-df9975990af8",
      "name": "Google Gemini Chat Model",
      "credentials": {
        "googlePalmApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "promptType": "define",
        "text": "={{ $json.name }}",
        "hasOutputParser": true,
        "needsFallback": true,
        "options": {
          "systemMessage": "=\uc2dc\uc2a4\ud15c \ud504\ub86c\ud504\ud2b8: \uc2a4\ud0c0\ud305 \ud3ec\ucf13\ubaac \ubd84\ub958 \uc5d0\uc774\uc804\ud2b8\n\n\uc5ed\ud560\n\n\ub108\ub294 \uc0ac\uc6a9\uc790\uac00 \uc785\ub825\ud55c \ud3ec\ucf13\ubaac \uc774\ub984\uc774 \uc2a4\ud0c0\ud305 \ud3ec\ucf13\ubaac(Starter Pok\u00e9mon) \uc778\uc9c0 \uc544\ub2cc\uc9c0\ub97c \ud310\ubcc4\ud558\ub294 \ubd84\ub958\uae30\ub2e4.\n\n\uc815\uc758\n\t\u2022\t\uae30\ubcf8(\uc5c4\uaca9) \uae30\uc900: \uba54\uc778 \uc2dc\ub9ac\uc988 \uac01 \uc138\ub300\uc758 \ud480/\ubd88/\ubb3c \uc2a4\ud0c0\ud305 \ud3ec\ucf13\ubaac \u2018\uae30\ubcf8 \ub2e8\uacc4\u2019(Base form) \ub9cc \u2018\uc2a4\ud0c0\ud305 \ud3ec\ucf13\ubaac\u2019\uc73c\ub85c \ubcf8\ub2e4.\n\uc608) \ubd88\ub300\ubb38\uc790(\ud30c\uc774\ub9ac/Charmander)\ub294 O, \ub9ac\uc790\ub4dc/\ub9ac\uc790\ubabd\uc740 X.\n\t\u2022\t\ud655\uc7a5 \uae30\uc900(\uc120\ud0dd): \ud2b9\uc815 \uc2a4\ud540\uc624\ud504/\ub9ac\uba54\uc774\ud06c\uc5d0\uc11c\uc758 \uc2a4\ud0c0\ud305(\uc608: \ud53c\uce74\uce04\u00b7\uc774\ube0c\uc774)\ub3c4 \uc778\uc815\ud560\uc9c0 mode\ub85c \uc81c\uc5b4\ud55c\ub2e4.\n\n# \uba54\uc778 \uc2dc\ub9ac\uc988 \uc2a4\ud0c0\ud305(\uc138\ub300\ubcc4, \uae30\ubcf8 \ub2e8\uacc4)\n1\uc138\ub300 (Kanto): \uc774\uc0c1\ud574\uc528(Bulbasaur), \ud30c\uc774\ub9ac(Charmander), \uaf2c\ubd80\uae30(Squirtle)\n2\uc138\ub300 (Johto): \uce58\ucf54\ub9ac\ud0c0(Chikorita), \ube0c\ucf00\uc778(Cyndaquil), \ub9ac\uc544\ucf54(Totodile)\n3\uc138\ub300 (Hoenn): \ub098\ubb34\uc9c0\uae30(Treecko), \uc544\ucc28\ubaa8(Torchic), \ubb3c\uc9f1\uc774(Mudkip)\n4\uc138\ub300 (Sinnoh): \ubaa8\ubd80\uae30(Turtwig), \ubd88\uaf43\uc22d\uc774(Chimchar), \ud33d\ub3c4\ub9ac(Piplup)\n5\uc138\ub300 (Unova): \uc8fc\ub9ac\ube44\uc580(Snivy), \ub69c\uafb8\ub9ac(Tepig), \uc218\ub315\uc774(Oshawott)\n6\uc138\ub300 (Kalos): \ub3c4\uce58\ub9c8\ub860(Chespin), \ud478\ud638\uaf2c(Fennekin), \uac1c\uad6c\ub9c8\ub974(Froakie)\n7\uc138\ub300 (Alola): \ub098\ubab0\ube7c\ubbf8(Rowlet), \ub0d0\uc624\ubd88(Litten), \ub204\ub9ac\uacf5(=\ub204\ub9ac\ub808\ub290/Popplio)\n8\uc138\ub300 (Galar): \ud765\ub098\uc22d(Grookey), \uc5fc\ubc84\ub2c8(Scorbunny), \uc6b8\uba38\uae30(Sobble)\n9\uc138\ub300 (Paldea): \ub098\uc624\ud558(Sprigatito), \ub728\uc544\uac70(Fuecoco), \uafb8\uc641\uc2a4(Quaxly)\n\n\n# \ucd9c\ub825 \ud615\uc2dd(JSON)\n{\n  \"is_starter\": true\n}\n\n\uc608\uc2dc\n\t\u2022\t\uc785\ub825: \"Bulbasaur\" \u2192 is_starter: true\n\t\u2022\t\uc785\ub825: \u201cditto\u201d \u2192 is_starter: false\n\n\uae08\uc9c0/\uc8fc\uc758\n\t\u2022\t\uc678\ubd80 \uc9c0\uc2dd \ucd94\ub860\uc73c\ub85c \ubaa9\ub85d\uc744 \uc784\uc758 \ud655\uc7a5\ud558\uc9c0 \ub9d0 \uac83.\n\t\u2022\t\uc0ac\uc6a9\uc790\uac00 \u201c\uc138\ub300\ubcc4 \ubaa9\ub85d\u201d \uc694\uccad \ub4f1 \ud3ec\ub9f7\uc744 \ubc14\uafd4\ub3c4 \ud56d\uc0c1 JSON \uc2a4\ud0a4\ub9c8\ub85c\ub9cc \uc751\ub2f5.\n\t\u2022\t\ubaa8\ud638\ud560 \ub54c \uac70\uc9d3 \ud655\uc2e0 \uae08\uc9c0."
        }
      },
      "type": "@n8n/n8n-nodes-langchain.agent",
      "typeVersion": 2.2,
      "position": [
        2256,
        800
      ],
      "id": "bb4794b0-0153-4027-89d1-b66f437c1186",
      "name": "Is Starting Classfication AI Agent"
    },
    {
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4.1-mini"
        },
        "options": {}
      },
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "typeVersion": 1.2,
      "position": [
        2304,
        1008
      ],
      "id": "84e1b4d8-157f-4bdc-ba2f-45ada3a251cf",
      "name": "OpenAI Chat Model",
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "jsonSchemaExample": "{\n  \"is_starter\": true\n}\n"
      },
      "type": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "typeVersion": 1.3,
      "position": [
        2496,
        1008
      ],
      "id": "28655c36-70c4-437b-b60b-bd4b9f93ee2f",
      "name": "Structured Output Parser"
    },
    {
      "parameters": {
        "maxItems": 10
      },
      "type": "n8n-nodes-base.limit",
      "typeVersion": 1,
      "position": [
        2048,
        800
      ],
      "id": "2f8062e1-0cb7-4a34-808a-7185563864da",
      "name": "Limit"
    },
    {
      "parameters": {
        "projectId": {
          "__rl": true,
          "value": "n8n-automation-466906",
          "mode": "list",
          "cachedResultName": "n8n-automation",
          "cachedResultUrl": "https://console.cloud.google.com/bigquery?project=n8n-automation-466906"
        },
        "sqlQuery": "-- 1. \ud14c\uc774\ube14\uc774 \uc5c6\uc73c\uba74 \uba3c\uc800 \uc0dd\uc131\nCREATE TABLE IF NOT EXISTS `n8n-automation-466906.datasets.pokemon_data_enriched` (\n  id STRING,\n  name STRING,\n  type STRING,\n  height_m FLOAT64,\n  weight_kg FLOAT64,\n  ablilties ARRAY<STRING>,\n  cries STRING,\n  sprites STRING,\n  stat_name ARRAY<STRING>,\n  stat_value ARRAY<INT64>,\n  is_starting BOOL\n);",
        "options": {}
      },
      "type": "n8n-nodes-base.googleBigQuery",
      "typeVersion": 2.1,
      "position": [
        2720,
        784
      ],
      "id": "67cdcfbf-ba72-4c69-a1ff-986b73e581e8",
      "name": "CREATE TABLE IF EXIST",
      "alwaysOutputData": true,
      "credentials": {
        "googleBigQueryOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "disabled": true
    },
    {
      "parameters": {
        "projectId": {
          "__rl": true,
          "value": "n8n-automation-466906",
          "mode": "list",
          "cachedResultName": "n8n-automation",
          "cachedResultUrl": "https://console.cloud.google.com/bigquery?project=n8n-automation-466906"
        },
        "sqlQuery": "INSERT INTO `n8n-automation-466906.datasets.pokemon_data_enriched` (\n  id,\n  name,\n  type,\n  height_m,\n  weight_kg,\n  ablilties,\n  cries,\n  sprites,\n  stat_name,\n  stat_value,\n  is_starting\n)\nVALUES (\n{{ $('Expressions').item.json.id }},\n{{ $('Expressions').item.json.name }},\n{{ $('Expressions').item.json.type }},\n{{ $('Expressions').item.json.height_m }},\n{{ $('Expressions').item.json.weight_kg }},\n{{ $('Expressions').item.json.ablilties.toJsonString() }},\n{{ $('Expressions').item.json.cries }},\n{{ $('Expressions').item.json.sprites }},\n{{ $('Expressions').item.json.stat_name.toJsonString() }},\n{{ $('Expressions').item.json.stat_value.toJsonString() }},\n{{ $json.output.is_starter }}\n);",
        "options": {}
      },
      "type": "n8n-nodes-base.googleBigQuery",
      "typeVersion": 2.1,
      "position": [
        2960,
        784
      ],
      "id": "3ba270f5-9512-441d-a7d0-f6a7eca569ec",
      "name": "INSERT INTO pokemon_data_enriched",
      "credentials": {
        "googleBigQueryOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "disabled": true
    },
    {
      "parameters": {
        "url": "={{ $json.ability.url }}",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1936,
        -384
      ],
      "id": "ed2e77d7-36a6-48bf-ad65-322dd2754745",
      "name": "Pokemon ability"
    },
    {
      "parameters": {
        "url": "https://pokeapi.co/api/v2/pokemon/ditto",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1568,
        -384
      ],
      "id": "3d1fce2f-11f7-4823-9ce2-2a2908d8386b",
      "name": "ditto1"
    },
    {
      "parameters": {
        "fieldToSplitOut": "abilities",
        "options": {}
      },
      "type": "n8n-nodes-base.splitOut",
      "typeVersion": 1,
      "position": [
        1760,
        -384
      ],
      "id": "193134b3-df46-4b74-8810-9e9bb40d76be",
      "name": "Split Out - abilities"
    },
    {
      "parameters": {
        "content": "# \uba54\ud0c0\ubabd(Ditto)\uc758 Ability\ub97c \uc870\ud68c",
        "height": 100,
        "width": 520,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        1520,
        -544
      ],
      "id": "a140f532-4ff1-4dc7-8d83-06fed911ebf9",
      "name": "Sticky Note13"
    },
    {
      "parameters": {
        "content": "### Q. language name \uac12\uc774 ko\uc77c\ub54c, flavor_text \uac12\uc744 \uac00\uc838\uc624\ub294 \ubc29\ubc95 (Ask to GPT)\n\n```text\n{{ (Array.isArray($json) ? $json[0] : $json).flavor_text_entries?.find(e => e.language?.name === 'ko')?.flavor_text }}\n```",
        "width": 592
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        2080,
        -560
      ],
      "id": "78b70c01-d8a3-4eb4-8199-66a8ec6190bf",
      "name": "Sticky Note14"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "ef679f58-4323-4af2-9e7b-e75d717ba0ca",
              "name": "ability_url",
              "value": "=https://pokeapi.co/api/v2/ability/{{ $json.id }}/",
              "type": "string"
            },
            {
              "id": "d0c8c5fc-f74d-4009-a5ca-5cbe5cb561b0",
              "name": "pokemon_url",
              "value": "={{ $json.pokemon[0].pokemon.url }}",
              "type": "string"
            },
            {
              "id": "4da61664-06c9-428d-b32e-4e2d9839d09e",
              "name": "short_effect",
              "value": "={{ $json.effect_entries[1].short_effect }}",
              "type": "string"
            },
            {
              "id": "840e65f1-29c0-45df-bed9-ad24bc9d72d9",
              "name": "flavor_text_1",
              "value": "={{ $json.flavor_text_entries.find(e => e.language.name === 'ko')?.flavor_text }}",
              "type": "string"
            },
            {
              "id": "6e0159f6-c7ef-4ff6-a1f9-349ebf2eef40",
              "name": "flavor_text_2",
              "value": "={{ (Array.isArray($json) ? $json[0] : $json).flavor_text_entries?.find(e => e.language?.name === 'ko')?.flavor_text }}",
              "type": "string"
            },
            {
              "id": "8793cf99-5f13-4bdd-994c-01dfca6503ed",
              "name": "flavor_text_3",
              "value": "={{ ((Array.isArray($json) ? $json[0] : $json).flavor_text_entries?.find(e => e.language?.name === 'ko')?.flavor_text || '').replace(/\\s+/g,' ') }}",
              "type": "string"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        2160,
        -384
      ],
      "id": "de0decd8-c479-45f7-b942-87f91e870ff7",
      "name": "Ability Edit Fields"
    },
    {
      "parameters": {
        "url": "https://pokeapi.co/api/v2/pokemon/ditto",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1584,
        -48
      ],
      "id": "e10cfb42-ac20-42c3-b261-9e0751fab8f7",
      "name": "ditto2"
    },
    {
      "parameters": {
        "content": "# \uba54\ud0c0\ubabd(Ditto)\uc758 Ability\ub97c \ud569\uce58\uae30 JOIN",
        "height": 100,
        "width": 648,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        1504,
        -176
      ],
      "id": "65d4a521-30fc-477e-9e84-1746c7fe3914",
      "name": "Sticky Note15"
    },
    {
      "parameters": {
        "mode": "combine",
        "advanced": true,
        "mergeByFields": {
          "values": [
            {
              "field1": "ability_url",
              "field2": "ablilties_url"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.merge",
      "typeVersion": 3.2,
      "position": [
        2592,
        -192
      ],
      "id": "6f5c945e-df6d-4b3c-8bd8-d00199ba1af1",
      "name": "Merge1"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "e9bf1115-5c8e-47d3-8510-c27b90f1dba5",
              "name": "id",
              "value": "={{ $json.id }}",
              "type": "string"
            },
            {
              "id": "fa5498f1-cbd3-49a7-abee-07ba82a4a4f5",
              "name": "name",
              "value": "={{ $json.name }}",
              "type": "string"
            },
            {
              "id": "9db2a013-6700-4eb3-a103-0c1436081694",
              "name": "type",
              "value": "={{ $json.types[0].type.name }}",
              "type": "string"
            },
            {
              "id": "4bdc6634-4fa5-4e4d-bf5a-436a9185e761",
              "name": "height(m)",
              "value": "={{ $json.height / 10 }}",
              "type": "string"
            },
            {
              "id": "9de81692-03ca-4afb-bbf3-884654e5e141",
              "name": "weight(kg)",
              "value": "={{ $json.weight / 10 }}",
              "type": "string"
            },
            {
              "id": "15cf60bd-4cd6-4598-8432-796a5cf87a45",
              "name": "ablilties",
              "value": "={{ $json.abilities.map(item => item.ability.name) }}",
              "type": "array"
            },
            {
              "id": "08911db7-df59-466b-91a1-bb86ab05a9c2",
              "name": "ablilties_url",
              "value": "={{ $json.abilities.map(item => item.ability.url ) }}",
              "type": "array"
            },
            {
              "id": "56014d15-2615-46cb-ad6b-e7cf0a46da38",
              "name": "cries",
              "value": "={{ $json.cries.latest }}",
              "type": "string"
            },
            {
              "id": "254fc366-cff9-468d-a0f4-65356fd43029",
              "name": "sprites",
              "value": "={{ $json.sprites.front_default }}",
              "type": "string"
            },
            {
              "id": "14336cca-b6b9-45e0-aadb-b8fbeda4d6d9",
              "name": "stat_name",
              "value": "={{ $json.stats.map(item => item.stat.name) }}",
              "type": "array"
            },
            {
              "id": "662ef797-6a50-4594-a75f-a025f9169ac2",
              "name": "stat_value",
              "value": "={{ $json.stats.map(item => item.base_stat ) }}",
              "type": "array"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        1792,
        -48
      ],
      "id": "2547ec80-83ef-4ed0-b6f0-35a2efa772ca",
      "name": "Ditto Stat"
    },
    {
      "parameters": {
        "fieldsToAggregate": {
          "fieldToAggregate": [
            {
              "fieldToAggregate": "ability_url"
            },
            {
              "fieldToAggregate": "flavor_text_3"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.aggregate",
      "typeVersion": 1,
      "position": [
        2368,
        -384
      ],
      "id": "101c1e20-c2bf-4905-8c04-9a8ff107ac70",
      "name": "Aggregate"
    },
    {
      "parameters": {
        "url": "https://pokeapi.co/api/v2/pokemon?offset=40&limit=100",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        480,
        304
      ],
      "id": "11a43082-2045-4fe4-b0db-a14cbd0a55b1",
      "name": "Pokemon List"
    },
    {
      "parameters": {
        "url": "={{ $json.url }}",
        "options": {}
      },
      "type": "n8n-nodes-base.httpRequest",
      "typeVersion": 4.2,
      "position": [
        1136,
        304
      ],
      "id": "c8ef81e1-0466-43cb-87c2-999f341d18a4",
      "name": "HTTP Request"
    },
    {
      "parameters": {
        "fieldToSplitOut": "results",
        "options": {}
      },
      "type": "n8n-nodes-base.splitOut",
      "typeVersion": 1,
      "position": [
        704,
        304
      ],
      "id": "db48889b-8f4c-4f89-ad1d-faa3df053688",
      "name": "Split Out"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "e9bf1115-5c8e-47d3-8510-c27b90f1dba5",
              "name": "id",
              "value": "={{ $json.id }}",
              "type": "string"
            },
            {
              "id": "fa5498f1-cbd3-49a7-abee-07ba82a4a4f5",
              "name": "name",
              "value": "={{ $json.name }}",
              "type": "string"
            },
            {
              "id": "9db2a013-6700-4eb3-a103-0c1436081694",
              "name": "type",
              "value": "={{ $json.types[0].type.name }}",
              "type": "string"
            },
            {
              "id": "4bdc6634-4fa5-4e4d-bf5a-436a9185e761",
              "name": "height(m)",
              "value": "={{ $json.height / 10 }}",
              "type": "string"
            },
            {
              "id": "9de81692-03ca-4afb-bbf3-884654e5e141",
              "name": "weight(kg)",
              "value": "={{ $json.weight / 10 }}",
              "type": "string"
            },
            {
              "id": "15cf60bd-4cd6-4598-8432-796a5cf87a45",
              "name": "ablilties",
              "value": "={{ $json.abilities.map(item => item.ability.name) }}",
              "type": "array"
            },
            {
              "id": "56014d15-2615-46cb-ad6b-e7cf0a46da38",
              "name": "cries",
              "value": "={{ $json.cries.latest }}",
              "type": "string"
            },
            {
              "id": "254fc366-cff9-468d-a0f4-65356fd43029",
              "name": "sprites",
              "value": "={{ $json.sprites.front_default }}",
              "type": "string"
            },
            {
              "id": "14336cca-b6b9-45e0-aadb-b8fbeda4d6d9",
              "name": "stat_name",
              "value": "={{ $json.stats.map(item => item.stat.name) }}",
              "type": "array"
            },
            {
              "id": "662ef797-6a50-4594-a75f-a025f9169ac2",
              "name": "stat_value",
              "value": "={{ $json.stats.map(item => item.base_stat ) }}",
              "type": "array"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        1344,
        304
      ],
      "id": "e7f06676-3230-47df-ba38-e019f17796ca",
      "name": "Edit Fields1"
    },
    {
      "parameters": {
        "content": "# 2. \ud3ec\ucf13\ubaac \ub9ac\uc2a4\ud2b8\ub97c \ub123\uc5b4\ubd05\uc2dc\ub2e4. (To BigQuery)",
        "height": 100,
        "width": 760,
        "color": 3
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        480,
        176
      ],
      "id": "cbba1464-4323-46e9-9dda-afa20b4d0e3e",
      "name": "Sticky Note16"
    },
    {
      "parameters": {
        "projectId": {
          "__rl": true,
          "value": "n8n-automation-466906",
          "mode": "list",
          "cachedResultName": "n8n-automation",
          "cachedResultUrl": "https://console.cloud.google.com/bigquery?project=n8n-automation-466906"
        },
        "sqlQuery": "CREATE TABLE IF NOT EXISTS `n8n-automation-466906.datasets.pokemon_data_v2` (\n  id STRING,\n  name STRING,\n  type STRING,\n  height_m FLOAT64,\n  weight_kg FLOAT64,\n  ablilties ARRAY<STRING>,\n  cries STRING,\n  sprites STRING,\n  stat_name ARRAY<STRING>,\n  stat_value ARRAY<INT64>\n);",
        "options": {}
      },
      "type": "n8n-nodes-base.googleBigQuery",
      "typeVersion": 2.1,
      "position": [
        880,
        -400
      ],
      "id": "5f40abf2-0295-470d-ba11-e588e809fd5b",
      "name": "Execute a SQL query",
      "alwaysOutputData": true,
      "credentials": {
        "googleBigQueryOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "projectId": {
          "__rl": true,
          "value": "n8n-automation-466906",
          "mode": "list",
          "cachedResultName": "n8n-automation",
          "cachedResultUrl": "https://console.cloud.google.com/bigquery?project=n8n-automation-466906"
        },
        "sqlQuery": "INSERT INTO `n8n-automation-466906.datasets.pokemon_data_v2` (\n  id, name, type, height_m, weight_kg, ablilties, cries, sprites, stat_name, stat_value\n)\nSELECT\n  '{{ $(\"Edit Fields\").item.json.id }}',\n  '{{ $(\"Edit Fields\").item.json.name }}',\n  '{{ $(\"Edit Fields\").item.json.type }}',\n  {{ $(\"Edit Fields\").item.json[\"height(m)\"] }},\n  {{ $(\"Edit Fields\").item.json[\"weight(kg)\"] }},\n  {{ $(\"Edit Fields\").item.json.ablilties.toJsonString() }},\n  '{{ $(\"Edit Fields\").item.json.cries }}',\n  '{{ $(\"Edit Fields\").item.json.sprites }}',\n  {{ $(\"Edit Fields\").item.json.stat_name.toJsonString() }},\n  {{ $(\"Edit Fields\").item.json.stat_value.toJsonString() }}\nFROM (SELECT 1)\nWHERE NOT EXISTS (\n  SELECT 1\n  FROM `n8n-automation-466906.datasets.pokemon_data_v2`\n  WHERE id = '{{ $(\"Edit Fields\").item.json.id }}'\n);",
        "options": {}
      },
      "type": "n8n-nodes-base.googleBigQuery",
      "typeVersion": 2.1,
      "position": [
        1088,
        -400
      ],
      "id": "2e684a28-608d-494b-9660-484ac3f9469f",
      "name": "INSERT INTO pokemon_data_v2",
      "credentials": {
        "googleBigQueryOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "maxItems": 5
      },
      "type": "n8n-nodes-base.limit",
      "typeVersion": 1,
      "position": [
        912,
        304
      ],
      "id": "3cb27022-2fcf-4616-9d05-bb8c7b6158f8",
      "name": "Limit1"
    },
    {
      "parameters": {
        "operation": "insert",
        "projectId": {
          "__rl": true,
          "value": "n8n-automation-466906",
          "mode": "list",
          "cachedResultName": "n8n-automation",
          "cachedResultUrl": "https://console.cloud.google.com/bigquery?project=n8n-automation-466906"
        },
        "datasetId": {
          "__rl": true,
          "value": "datasets",
          "mode": "list",
          "cachedResultName": "datasets"
        },
        "tableId": {
          "__rl": true,
          "value": "pokemon_data_v2",
          "mode": "list",
          "cachedResultName": "pokemon_data_v2"
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleBigQuery",
      "typeVersion": 2.1,
      "position": [
        1584,
        304
      ],
      "id": "5869cfd0-8f2f-450f-a23b-b3aeabf394d2",
      "name": "INSERT INTO datasets.pokemon_data1",
      "credentials": {
        "googleBigQueryOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "operation": "insert",
        "projectId": {
          "__rl": true,
          "value": "n8n-automation-466906",
          "mode": "list",
          "cachedResultName": "n8n-automation",
          "cachedResultUrl": "https://console.cloud.google.com/bigquery?project=n8n-automation-466906"
        },
        "datasetId": {
          "__rl": true,
          "value": "datasets",
          "mode": "list",
          "cachedResultName": "datasets"
        },
        "tableId": {
          "__rl": true,
          "value": "pokemon_data_enriched",
          "mode": "list",
          "cachedResultName": "pokemon_data_enriched"
        },
        "dataMode": "define",
        "fieldsUi": {
          "values": [
            {
              "fieldId": "id",
              "fieldValue": "={{ $('Limit').item.json.id }}"
            },
            {
              "fieldId": "name",
              "fieldValue": "={{ $('Limit').item.json.name }}"
            },
            {
              "fieldId": "type",
              "fieldValue": "={{ $('Limit').item.json.type }}"
            },
            {
              "fieldId": "height_m",
              "fieldValue": "={{ $('Limit').item.json.height_m }}"
            },
            {
              "fieldId": "weight_kg",
              "fieldValue": "={{ $('Limit').item.json.weight_kg }}"
            },
            {
              "fieldId": "ablilties",
              "fieldValue": "={{ $('Limit').item.json.ablilties }}"
            },
            {
              "fieldId": "cries",
              "fieldValue": "={{ $('Limit').item.json.cries }}"
            },
            {
              "fieldId": "sprites",
              "fieldValue": "={{ $('Limit').item.json.sprites }}"
            },
            {
              "fieldId": "stat_name",
              "fieldValue": "={{ $('Limit').item.json.stat_name }}"
            },
            {
              "fieldId": "stat_value",
              "fieldValue": "={{ $('Limit').item.json.stat_value }}"
            },
            {
              "fieldId": "is_starting",
              "fieldValue": "={{ $json.output.is_starter }}"
            }
          ]
        },
        "options": {}
      },
      "type": "n8n-nodes-base.googleBigQuery",
      "typeVersion": 2.1,
      "position": [
        2720,
        960
      ],
      "id": "d0ea344e-016f-416f-80bb-1f1e1565bf52",
      "name": "INSERT INTO pokemon_data_enriched1",
      "credentials": {
        "googleBigQueryOAuth2Api": {
          "name": "<your credential>"
        }
      }
    },
    {
      "parameters": {
        "content": "## \ub370\uc774\ud130\ubca0\uc774\uc2a4\uc5d0 \uc785\ub825\ud560 Is_Starting \ube48 \ubcc0\uc218\ub97c \uc0dd\uc131\ud558\uae30\n- ",
        "height": 288
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        1776,
        704
      ],
      "id": "974ffd45-2bf9-4659-ac97-a71f0738c9d3",
      "name": "Sticky Note17"
    },
    {
      "parameters": {
        "assignments": {
          "assignments": [
            {
              "id": "a1edb7a8-639e-4fc8-b9ff-11f6e6136503",
              "name": "is_starting",
              "value": "=",
              "type": "string"
            }
          ]
        },
        "includeOtherFields": true,
        "options": {}
      },
      "type": "n8n-nodes-base.set",
      "typeVersion": 3.4,
      "position": [
        1840,
        832
      ],
      "id": "baa9e3a4-ee23-455a-8c29-a7a463249f29",
      "name": "Is_starting"
    },
    {
      "parameters": {
        "content": "# *\uba54\ub274\uc5bc \ud2b8\ub9ac\uac70\ub97c \uac01\uac01\uc5d0 \ud558\ub098\uc529 \ubd99\uc5ec\ubcf4\uba74\uc11c \uc2e4\ud589\ud574\ubcf4\uc138\uc694.",
        "width": 480
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        0,
        -880
      ],
      "id": "8fc5fa75-877a-4c33-8e65-e7dc8d7f5c9f",
      "name": "Sticky Note18"
    },
    {
      "parameters": {
        "content": "## (\uc0ac\uc804\uc791\uc5c5) \ube45\ucffc\ub9ac DB \ud504\ub85c\uc81d\ud2b8\ub97c \uc124\uc815\ud558\uae30.",
        "height": 80,
        "width": 256
      },
      "type": "n8n-nodes-base.stickyNote",
      "typeVersion": 1,
      "position": [
        1040,
        -512
      ],
      "id": "639f52a8-c6b9-43cf-8bc5-eff0b188f67e",
      "name": "Sticky Note19"
    }
  ],
  "connections": {
    "When clicking \u2018Execute workflow\u2019": {
      "main": [
        [
          {
            "node": "ditto",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ditto": {
      "main": [
        [
          {
            "node": "Edit Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Edit Fields": {
      "main": [
        [
          {
            "node": "Execute a SQL query",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "pikachu": {
      "main": [
        [
          {
            "node": "Edit Fields2",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Call Poke List": {
      "main": [
        [
          {
            "node": "height > 1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "If": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 0
          }
        ],
        [
          {
            "node": "Switch",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Remove Duplicates": {
      "main": [
        [
          {
            "node": "Is_starting",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "height > 1": {
      "main": [
        [
          {
            "node": "If",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Switch": {
      "main": [
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 1
          }
        ],
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 2
          }
        ],
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 3
          }
        ],
        [
          {
            "node": "Merge",
            "type": "main",
            "index": 4
          }
        ]
      ]
    },
    "Merge": {
      "main": [
        [
          {
            "node": "Remove Duplicates",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Gemini Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Is Starting Classfication AI Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Is Starting Classfication AI Agent",
            "type": "ai_languageModel",
            "index": 1
          }
        ]
      ]
    },
    "Structured Output Parser": {
      "ai_outputParser": [
        [
          {
            "node": "Is Starting Classfication AI Agent",
            "type": "ai_outputParser",
            "index": 0
          }
        ]
      ]
    },
    "Limit": {
      "main": [
        [
          {
            "node": "Is Starting Classfication AI Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Is Starting Classfication AI Agent": {
      "main": [
        [
          {
            "node": "INSERT INTO pokemon_data_enriched1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "CREATE TABLE IF EXIST": {
      "main": [
        [
          {
            "node": "INSERT INTO pokemon_data_enriched",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Pokemon ability": {
      "main": [
        [
          {
            "node": "Ability Edit Fields",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Split Out - abilities": {
      "main": [
        [
          {
            "node": "Pokemon ability",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ditto1": {
      "main": [
        [
          {
            "node": "Split Out - abilities",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "ditto2": {
      "main": [
        [
          {
            "no

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

How this works

This workflow fetches Pokémon data from the PokeAPI via HTTP requests, cleanses and structures it using AI-powered tools like Google Gemini for intelligent parsing, then loads the refined dataset into Google BigQuery for analysis. It's ideal for data enthusiasts, analysts, or developers practising data cleansing techniques on real-world APIs without building everything from scratch. The key step involves the AI agent transforming raw, unstructured JSON responses into a clean, queryable format, saving hours of manual scripting and ensuring data quality for downstream insights.

Use this workflow when experimenting with API data pipelines or learning to integrate AI for data processing in event-driven scenarios, such as ad-hoc data pulls. Avoid it for production-scale operations requiring robust error handling or when dealing with sensitive data, as it's designed for practice rather than enterprise reliability. Common variations include swapping PokeAPI for other public APIs like REST Countries or replacing Gemini with OpenAI for custom cleansing logic.

About this workflow

pokeapi - DataCleansing Practice. Uses httpRequest, googleBigQuery, lmChatGoogleGemini, agent. Event-driven trigger; 56 nodes.

Source: https://github.com/2innnnn0/fastcampus-n8n-data-analysis-agent/blob/main/workflows/[4Qdj1H8JXasMygxA]pokeapi---datacleansing-practice.json — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

This automation is designed to help you generate AI-powered music tracks, cover art, and fully rendered music videos — all triggered from a simple Telegram chat and managed via Google Sheets.

OpenAI Chat, Memory Buffer Window, Output Parser Structured +11
AI & RAG

This is an automated blog post generation system that: Researches topics using AI agents and web search tools Writes complete blog posts with proper SEO structure Generates custom images for each post

Output Parser Structured, Google Gemini Chat, HTTP Request Tool +11
AI & RAG

This workflow contains community nodes that are only compatible with the self-hosted version of n8n.

Output Parser Structured, Telegram, N8N Nodes Tesseractjs +14
AI & RAG

Transform a single quote into a fully-rendered cinematic short video — with voice-over, visuals, and music — then publish it directly to TikTok, Instagram Reels, and YouTube Shorts. This isn’t just au

Agent, HTTP Request, Jwt +7
AI & RAG

RESUME SCREENER. Uses agent, outputParserStructured, lmChatOpenAi, gmailTrigger. Event-driven trigger; 37 nodes.

Agent, Output Parser Structured, OpenAI Chat +7