{
  "workflow": {
    "id": 7241,
    "name": "Automate AWS IAM user management through email",
    "views": 261,
    "recentViews": 0,
    "totalViews": 261,
    "createdAt": "2025-08-11T11:07:53.203Z",
    "description": "This automated n8n workflow manages AWS IAM users (create, delete, update, assign to groups) directly from email commands with automatic confirmation responses.\n\n### Good to Know\n- The workflow processes email requests via a GET Email Request node.\n- Data extraction from emails is handled to identify user management commands.\n- Error handling is included for invalid or missing email data.\n- Responses are sent via email for each action performed.\n\n## How It Works\n- **GET Email Request** - Captures incoming email requests.\n- **Extract Data from Email** - Parses email content to extract user management commands.\n- **Check Type of Task** - Validates the type of task (e.g., create, delete, update).\n- **Get User** - Retrieves user details from AWS IAM.\n- **Get Many Users** - Fetches multiple user details if required.\n- **Create User** - Creates a new IAM user.\n- **Delete User** - Deletes an existing IAM user.\n- **Add to Group** - Assigns a user to a group.\n- **Remove from Group** - Removes a user from a group.\n- **Update User** - Updates user details.\n- **Make Message for Email** - Prepares a confirmation email.\n- **Send Email Response** - Sends the confirmation email.\n\n## How to Use\n- Import the workflow into n8n.\n- Configure the GET Email Request node to receive email commands.\n- Test the workflow with sample email commands (e.g., \"create user: john_doe\", \"add to group: admins\").\n- Monitor email responses and adjust command parsing if needed.\n\n## Requirements\n- AWS IAM credentials configured in n8n.\n- Email service integration (e.g., SMTP settings).\n- n8n environment with workflow execution permissions.\n\n## Customizing This Workflow\n- Adjust the Extract Data from Email node to support additional command formats.\n- Modify the Make Message for Email node to customize confirmation messages.\n- Update the AWS IAM nodes to include additional user attributes or group policies.",
    "workflow": {
      "id": "CIJpDmGwbF9xSHqc",
      "meta": {
        "instanceId": "dd69efaf8212c74ad206700d104739d3329588a6f3f8381a46a481f34c9cc281",
        "templateCredsSetupCompleted": true
      },
      "name": "Manage AWS IAM Users via Email",
      "tags": [],
      "nodes": [
        {
          "id": "6a3a0d65-00c8-4760-aef1-778dc216a38b",
          "name": "Extract Data from Email",
          "type": "n8n-nodes-base.code",
          "position": [
            220,
            920
          ],
          "parameters": {
            "jsCode": "const emailBody = $json[\"textPlain\"] || \"\";\n\n// Helper function to match patterns\nfunction matchFirst(patterns) {\n  for (const pattern of patterns) {\n    const match = emailBody.match(pattern);\n    if (match) return match[1];\n  }\n  return null;\n}\n\n// Detect user name\nconst userName = matchFirst([\n  /user[:\\s*]*([a-zA-Z0-9._-]+)/i,\n  /username\\s+([a-zA-Z0-9._-]+)/i\n]);\n\n// Detect group name\nconst groupName = matchFirst([\n  /group[:\\s*]*([a-zA-Z0-9._-]+)/i,\n  /groupname\\s+([a-zA-Z0-9._-]+)/i\n]);\n\n// Decide task type\nlet task_type = null;\nif (/create user/i.test(emailBody)) task_type = \"create_user\";\nelse if (/delete user/i.test(emailBody)) task_type = \"delete_user\";\nelse if (/add user to group/i.test(emailBody)) task_type = \"add_user_to_group\";\nelse if (/get user$/i.test(emailBody)) task_type = \"get_user\";\nelse if (/get many users/i.test(emailBody)) task_type = \"get_many_users\";\nelse if (/remove user from group/i.test(emailBody)) task_type = \"remove_user_from_group\";\nelse if (/update user/i.test(emailBody)) task_type = \"update_user\";\n\nreturn [\n  {\n    json: {\n      userName,\n      groupName,\n      task_type\n    }\n  }\n];\n"
          },
          "typeVersion": 2
        },
        {
          "id": "aa61fe8f-53f3-4f5f-bdcf-a7c439586215",
          "name": "Make massage For Email",
          "type": "n8n-nodes-base.code",
          "position": [
            880,
            920
          ],
          "parameters": {
            "jsCode": "const taskType = $json.task_type || \"\";\nconst userName = $json.userName || \"\";\nconst groupName = $json.groupName || \"\";\nconst status = $json.status || \"\"; // \"success\" or \"fail\"\nconst errorMsg = $json.error || \"\";\n\n// Create readable task name\nconst taskMap = {\n  create_user: \"Create User\",\n  delete_user: \"Delete User\",\n  add_user_to_group: \"Add User to Group\",\n  get_user: \"Get User\",\n  get_many_users: \"Get Many Users\",\n  remove_user_from_group: \"Remove User from Group\",\n  update_user: \"Update User\"\n};\n\nlet message = \"\";\n\nif (status === \"success\") {\n  message = `✅ ${taskMap[taskType] || \"Task\"} completed successfully.\\n`;\n  if (userName) message += `User: ${userName}\\n`;\n  if (groupName) message += `Group: ${groupName}\\n`;\n} else {\n  message = `❌ ${taskMap[taskType] || \"Task\"} failed.\\n`;\n  if (userName) message += `User: ${userName}\\n`;\n  if (groupName) message += `Group: ${groupName}\\n`;\n  if (errorMsg) message += `Error: ${errorMsg}\\n`;\n}\n\nreturn {\n  json: {\n    subject: `${status === \"success\" ? \"Success\" : \"Failure\"} - ${taskMap[taskType] || \"IAM Task\"}`,\n    body: message\n  }\n};\n"
          },
          "typeVersion": 2
        },
        {
          "id": "798b73f3-92d4-43ad-9f3b-1221f885c7b1",
          "name": "Send Email Response",
          "type": "n8n-nodes-base.emailSend",
          "position": [
            1100,
            920
          ],
          "webhookId": "9be96438-96fa-48c1-8cea-75c179322fb3",
          "parameters": {
            "text": "={{$json[\"message\"]}}",
            "options": {
              "replyTo": "={{ $('GET Email Request').item.json.from }}"
            },
            "subject": "={{$json[\"subject\"]}}",
            "toEmail": "={{ $('GET Email Request').item.json.from }}",
            "fromEmail": "user@example.com",
            "emailFormat": "text"
          },
          "credentials": {
            "smtp": {
              "id": "credential-id",
              "name": "smtp Credential"
            }
          },
          "typeVersion": 2.1
        },
        {
          "id": "f38dc5ba-90e8-41c3-bc73-c2efcbf9ceaf",
          "name": "Create user",
          "type": "n8n-nodes-base.awsIam",
          "position": [
            660,
            320
          ],
          "parameters": {
            "userName": "={{ $json.username }}",
            "operation": "create",
            "requestOptions": {},
            "additionalFields": {}
          },
          "credentials": {
            "aws": {
              "id": "credential-id",
              "name": "aws Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "f8f3a743-d919-49ad-ba78-9873dd034e8f",
          "name": "Delete user",
          "type": "n8n-nodes-base.awsIam",
          "position": [
            660,
            520
          ],
          "parameters": {
            "user": {
              "__rl": true,
              "mode": "userName",
              "value": "={{ $json.username }}"
            },
            "operation": "delete",
            "requestOptions": {}
          },
          "credentials": {
            "aws": {
              "id": "credential-id",
              "name": "aws Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "be25ba9c-2362-43d4-a670-d98a39515130",
          "name": "Add user to group",
          "type": "n8n-nodes-base.awsIam",
          "position": [
            660,
            720
          ],
          "parameters": {
            "user": {
              "__rl": true,
              "mode": "userName",
              "value": "={{ $json.username }}"
            },
            "group": {
              "__rl": true,
              "mode": "groupName",
              "value": "={{ $json.groupname }}"
            },
            "operation": "addToGroup",
            "requestOptions": {}
          },
          "credentials": {
            "aws": {
              "id": "credential-id",
              "name": "aws Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "2dc04cc3-224f-433b-bada-f04584f57321",
          "name": "Get user",
          "type": "n8n-nodes-base.awsIam",
          "position": [
            660,
            920
          ],
          "parameters": {
            "user": {
              "__rl": true,
              "mode": "userName",
              "value": "={{ $json.username }}"
            },
            "operation": "get",
            "requestOptions": {}
          },
          "credentials": {
            "aws": {
              "id": "credential-id",
              "name": "aws Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "198b262e-fe75-454b-9609-b84a824a0880",
          "name": "Get many users",
          "type": "n8n-nodes-base.awsIam",
          "position": [
            660,
            1120
          ],
          "parameters": {
            "requestOptions": {},
            "additionalFields": {}
          },
          "credentials": {
            "aws": {
              "id": "credential-id",
              "name": "aws Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "3bd5fda6-0669-4dd0-a15b-5fb10ee23bd2",
          "name": "Remove user from group",
          "type": "n8n-nodes-base.awsIam",
          "position": [
            660,
            1320
          ],
          "parameters": {
            "user": {
              "__rl": true,
              "mode": "userName",
              "value": "={{ $json.username }}"
            },
            "group": {
              "__rl": true,
              "mode": "groupName",
              "value": "={{ $json.groupname }}"
            },
            "operation": "removeFromGroup",
            "requestOptions": {}
          },
          "credentials": {
            "aws": {
              "id": "credential-id",
              "name": "aws Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "dbc30150-ccb6-492f-b956-e86da72dcf6c",
          "name": "Update user",
          "type": "n8n-nodes-base.awsIam",
          "position": [
            660,
            1520
          ],
          "parameters": {
            "user": {
              "__rl": true,
              "mode": "userName",
              "value": "={{ $json.username }}"
            },
            "userName": "={{ $json.newusername }}",
            "operation": "update",
            "requestOptions": {},
            "additionalFields": {}
          },
          "credentials": {
            "aws": {
              "id": "credential-id",
              "name": "aws Credential"
            }
          },
          "typeVersion": 1
        },
        {
          "id": "d0635da5-3ac9-494c-944a-e3352dcaa685",
          "name": "GET Email Request",
          "type": "n8n-nodes-base.emailReadImap",
          "position": [
            0,
            920
          ],
          "parameters": {
            "options": {
              "customEmailConfig": "[\"UNSEEN\", [\"SUBJECT\", \"iam\"]]"
            }
          },
          "credentials": {
            "imap": {
              "id": "credential-id",
              "name": "imap Credential"
            }
          },
          "typeVersion": 2
        },
        {
          "id": "53281026-4fc1-40d8-834a-1085e049f011",
          "name": "Check Type Of Task",
          "type": "n8n-nodes-base.switch",
          "position": [
            440,
            836
          ],
          "parameters": {
            "rules": {
              "values": [
                {
                  "conditions": {
                    "options": {
                      "version": 2,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "99e9f0b2-e19b-45c5-a60e-317d772e6291",
                        "operator": {
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "{{ json.task_type}}",
                        "rightValue": "create_user"
                      }
                    ]
                  }
                },
                {
                  "conditions": {
                    "options": {
                      "version": 2,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "4e72b4c7-eed9-4039-84c7-773a4dee2eb6",
                        "operator": {
                          "name": "filter.operator.equals",
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{ json.task_type}}",
                        "rightValue": "delete_user"
                      }
                    ]
                  }
                },
                {
                  "conditions": {
                    "options": {
                      "version": 2,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "aef1b8b8-9175-4819-9cb8-87209e4b2954",
                        "operator": {
                          "name": "filter.operator.equals",
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{ json.task_type}}",
                        "rightValue": "add_user"
                      }
                    ]
                  }
                },
                {
                  "conditions": {
                    "options": {
                      "version": 2,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "a256941b-0882-4ee1-9126-491da78f5fb4",
                        "operator": {
                          "name": "filter.operator.equals",
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{ json.task_type.}}",
                        "rightValue": "get_user"
                      }
                    ]
                  }
                },
                {
                  "conditions": {
                    "options": {
                      "version": 2,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "a502de56-2efa-4766-b883-65d8cefaab1a",
                        "operator": {
                          "name": "filter.operator.equals",
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{ json.task_type}}",
                        "rightValue": "get_many_user"
                      }
                    ]
                  }
                },
                {
                  "conditions": {
                    "options": {
                      "version": 2,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "62aae8fd-71f2-4194-af78-b8d42179a2d0",
                        "operator": {
                          "name": "filter.operator.equals",
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{ json.task_type}}",
                        "rightValue": "remove_user"
                      }
                    ]
                  }
                },
                {
                  "conditions": {
                    "options": {
                      "version": 2,
                      "leftValue": "",
                      "caseSensitive": true,
                      "typeValidation": "strict"
                    },
                    "combinator": "and",
                    "conditions": [
                      {
                        "id": "e70fb51d-7d2e-4ed2-bdde-7edd03059033",
                        "operator": {
                          "name": "filter.operator.equals",
                          "type": "string",
                          "operation": "equals"
                        },
                        "leftValue": "={{ json.task_type}}",
                        "rightValue": "update_user"
                      }
                    ]
                  }
                }
              ]
            },
            "options": {}
          },
          "typeVersion": 3.2
        },
        {
          "id": "32ac6b9c-62b5-4493-9f8d-d0de9fca4211",
          "name": "Sticky Note",
          "type": "n8n-nodes-base.stickyNote",
          "position": [
            -800,
            520
          ],
          "parameters": {
            "color": 5,
            "width": 680,
            "height": 340,
            "content": "## How It Works\n- **GET Email Request** - Captures incoming email requests.\n- **Extract Data from Email** - Parses email content to extract user management commands.\n- **Check Type of Task** - Validates the type of task (e.g., create, delete, update).\n- **Get User** - Retrieves user details from AWS IAM.\n- **Get Many Users** - Fetches multiple user details if required.\n- **Create User** - Creates a new IAM user.\n- **Delete User** - Deletes an existing IAM user.\n- **Add to Group** - Assigns a user to a group.\n- **Remove from Group** - Removes a user from a group.\n- **Update User** - Updates user details.\n- **Make Message for Email** - Prepares a confirmation email.\n- **Send Email Response** - Sends the confirmation email."
          },
          "typeVersion": 1
        }
      ],
      "active": false,
      "pinData": {},
      "settings": {
        "executionOrder": "v1"
      },
      "versionId": "a67ad521-0006-4818-a40d-8cc3d753bdb9",
      "connections": {
        "Get user": {
          "main": [
            [
              {
                "node": "Make massage For Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Create user": {
          "main": [
            [
              {
                "node": "Make massage For Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Delete user": {
          "main": [
            [
              {
                "node": "Make massage For Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Update user": {
          "main": [
            [
              {
                "node": "Make massage For Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Get many users": {
          "main": [
            [
              {
                "node": "Make massage For Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Add user to group": {
          "main": [
            [
              {
                "node": "Make massage For Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "GET Email Request": {
          "main": [
            [
              {
                "node": "Extract Data from Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Check Type Of Task": {
          "main": [
            [
              {
                "node": "Create user",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Delete user",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Add user to group",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Get user",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Get many users",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Remove user from group",
                "type": "main",
                "index": 0
              }
            ],
            [
              {
                "node": "Update user",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Make massage For Email": {
          "main": [
            [
              {
                "node": "Send Email Response",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Remove user from group": {
          "main": [
            [
              {
                "node": "Make massage For Email",
                "type": "main",
                "index": 0
              }
            ]
          ]
        },
        "Extract Data from Email": {
          "main": [
            [
              {
                "node": "Check Type Of Task",
                "type": "main",
                "index": 0
              }
            ]
          ]
        }
      }
    },
    "lastUpdatedBy": 29,
    "workflowInfo": {
      "nodeCount": 13,
      "nodeTypes": {
        "n8n-nodes-base.code": {
          "count": 2
        },
        "n8n-nodes-base.awsIam": {
          "count": 7
        },
        "n8n-nodes-base.switch": {
          "count": 1
        },
        "n8n-nodes-base.emailSend": {
          "count": 1
        },
        "n8n-nodes-base.stickyNote": {
          "count": 1
        },
        "n8n-nodes-base.emailReadImap": {
          "count": 1
        }
      }
    },
    "status": "published",
    "user": {
      "name": "Oneclick AI Squad",
      "username": "oneclick-ai",
      "bio": "The AI Squad Initiative is a pioneering effort to build, automate and scale AI-powered workflows using n8n.io. Our mission is to help individuals and businesses integrate AI agents seamlessly into their daily operations  from automating tasks and enhancing productivity to creating innovative, intelligent solutions. We design modular, reusable AI workflow templates that empower creators, developers and teams to supercharge their automation with minimal effort and maximum impact.",
      "verified": true,
      "links": [
        "https://www.oneclickitsolution.com/"
      ],
      "avatar": "https://gravatar.com/avatar/848fca91367142f65f9e5c55d64e5c9952b160d7b060d103b52aa343c6bc7b3d?r=pg&d=retro&size=200"
    },
    "nodes": [
      {
        "id": 10,
        "icon": "fa:inbox",
        "name": "n8n-nodes-base.emailReadImap",
        "codex": {
          "data": {
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/",
                  "icon": "👦",
                  "label": "Build your own virtual assistant with n8n: A step by step guide"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.emailimap/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/imap/"
                }
              ]
            },
            "categories": [
              "Communication",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Other Trigger Nodes"
              ]
            }
          }
        },
        "group": "[\"trigger\"]",
        "defaults": {
          "name": "Email Trigger (IMAP)",
          "color": "#44AA22"
        },
        "iconData": {
          "icon": "inbox",
          "type": "icon"
        },
        "displayName": "Email Trigger (IMAP)",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 6,
            "name": "Communication"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 11,
        "icon": "fa:envelope",
        "name": "n8n-nodes-base.emailSend",
        "codex": {
          "data": {
            "alias": [
              "SMTP",
              "email",
              "human",
              "form",
              "wait",
              "hitl",
              "approval"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/",
                  "icon": "👦",
                  "label": "Build your own virtual assistant with n8n: A step by step guide"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.sendemail/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/sendemail/"
                }
              ]
            },
            "categories": [
              "Communication",
              "HITL",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "HITL": [
                "Human in the Loop"
              ]
            }
          }
        },
        "group": "[\"output\"]",
        "defaults": {
          "name": "Send Email",
          "color": "#00bb88"
        },
        "iconData": {
          "icon": "envelope",
          "type": "icon"
        },
        "displayName": "Send Email",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 6,
            "name": "Communication"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          },
          {
            "id": 28,
            "name": "HITL"
          }
        ]
      },
      {
        "id": 112,
        "icon": "fa:map-signs",
        "name": "n8n-nodes-base.switch",
        "codex": {
          "data": {
            "alias": [
              "Router",
              "If",
              "Path",
              "Filter",
              "Condition",
              "Logic",
              "Branch",
              "Case"
            ],
            "resources": {
              "generic": [
                {
                  "url": "https://n8n.io/blog/2021-the-year-to-automate-the-new-you-with-n8n/",
                  "icon": "☀️",
                  "label": "2021: The Year to Automate the New You with n8n"
                },
                {
                  "url": "https://n8n.io/blog/how-to-get-started-with-crm-automation-and-no-code-workflow-ideas/",
                  "icon": "👥",
                  "label": "How to get started with CRM automation (with 3 no-code workflow ideas"
                },
                {
                  "url": "https://n8n.io/blog/build-your-own-virtual-assistant-with-n8n-a-step-by-step-guide/",
                  "icon": "👦",
                  "label": "Build your own virtual assistant with n8n: A step by step guide"
                },
                {
                  "url": "https://n8n.io/blog/automation-for-maintainers-of-open-source-projects/",
                  "icon": "🏷️",
                  "label": "How to automatically manage contributions to open-source projects"
                }
              ],
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.switch/"
                }
              ]
            },
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Flow"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Switch",
          "color": "#506000"
        },
        "iconData": {
          "icon": "map-signs",
          "type": "icon"
        },
        "displayName": "Switch",
        "typeVersion": 3,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 565,
        "icon": "fa:sticky-note",
        "name": "n8n-nodes-base.stickyNote",
        "codex": {
          "data": {
            "alias": [
              "Comments",
              "Notes",
              "Sticky"
            ],
            "categories": [
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers"
              ]
            }
          }
        },
        "group": "[\"input\"]",
        "defaults": {
          "name": "Sticky Note",
          "color": "#FFD233"
        },
        "iconData": {
          "icon": "sticky-note",
          "type": "icon"
        },
        "displayName": "Sticky Note",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 834,
        "icon": "file:code.svg",
        "name": "n8n-nodes-base.code",
        "codex": {
          "data": {
            "alias": [
              "cpde",
              "Javascript",
              "JS",
              "Python",
              "Script",
              "Custom Code",
              "Function"
            ],
            "details": "The Code node allows you to execute JavaScript in your workflow.",
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.code/"
                }
              ]
            },
            "categories": [
              "Development",
              "Core Nodes"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0",
            "subcategories": {
              "Core Nodes": [
                "Helpers",
                "Data Transformation"
              ]
            }
          }
        },
        "group": "[\"transform\"]",
        "defaults": {
          "name": "Code"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTEyIiBoZWlnaHQ9IjUxMiIgdmlld0JveD0iMCAwIDUxMiA1MTIiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xMTcxXzQ0MSkiPgo8cGF0aCBkPSJNMTcwLjI4MyA0OEgxOTYuNUMyMDMuMTI3IDQ4IDIwOC41IDQyLjYyNzQgMjA4LjUgMzZWMTJDMjA4LjUgNS4zNzI1OCAyMDMuMTI3IDAgMTk2LjUgMEgxNzAuMjgzQzEyNi4xIDAgOTAuMjgzIDM1LjgxNzIgOTAuMjgzIDgwVjE3NkM5MC4yODMgMjA2LjkyOCA2NS4yMTA5IDIzMiAzNC4yODMgMjMySDIzQzE2LjM3MjYgMjMyIDExIDIzNy4zNzIgMTEgMjQ0VjI2OEMxMSAyNzQuNjI3IDE2LjM3MjQgMjgwIDIyLjk5OTYgMjgwTDM0LjI4MyAyODBDNjUuMjEwOSAyODAgOTAuMjgzIDMwNS4wNzIgOTAuMjgzIDMzNlY0NDBDOTAuMjgzIDQ3OS43NjQgMTIyLjUxOCA1MTIgMTYyLjI4MyA1MTJIMTk2LjVDMjAzLjEyNyA1MTIgMjA4LjUgNTA2LjYyNyAyMDguNSA1MDBWNDc2QzIwOC41IDQ2OS4zNzMgMjAzLjEyNyA0NjQgMTk2LjUgNDY0SDE2Mi4yODNDMTQ5LjAyOCA0NjQgMTM4LjI4MyA0NTMuMjU1IDEzOC4yODMgNDQwVjMzNkMxMzguMjgzIDMwOS4wMjIgMTI4LjAxMSAyODQuNDQzIDExMS4xNjQgMjY1Ljk2MUMxMDYuMTA5IDI2MC40MTYgMTA2LjEwOSAyNTEuNTg0IDExMS4xNjQgMjQ2LjAzOUMxMjguMDExIDIyNy41NTcgMTM4LjI4MyAyMDIuOTc4IDEzOC4yODMgMTc2VjgwQzEzOC4yODMgNjIuMzI2OSAxNTIuNjEgNDggMTcwLjI4MyA0OFoiIGZpbGw9IiNGRjk5MjIiLz4KPHBhdGggZD0iTTMwNSAzNkMzMDUgNDIuNjI3NCAzMTAuMzczIDQ4IDMxNyA0OEgzNDIuOTc5QzM2MC42NTIgNDggMzc0Ljk3OCA2Mi4zMjY5IDM3NC45NzggODBWMTc2QzM3NC45NzggMjAyLjk3OCAzODUuMjUxIDIyNy41NTcgNDAyLjA5OCAyNDYuMDM5QzQwNy4xNTMgMjUxLjU4NCA0MDcuMTUzIDI2MC40MTYgNDAyLjA5OCAyNjUuOTYxQzM4NS4yNTEgMjg0LjQ0MyAzNzQuOTc4IDMwOS4wMjIgMzc0Ljk3OCAzMzZWNDMyQzM3NC45NzggNDQ5LjY3MyAzNjAuNjUyIDQ2NCAzNDIuOTc5IDQ2NEgzMTdDMzEwLjM3MyA0NjQgMzA1IDQ2OS4zNzMgMzA1IDQ3NlY1MDBDMzA1IDUwNi42MjcgMzEwLjM3MyA1MTIgMzE3IDUxMkgzNDIuOTc5QzM4Ny4xNjEgNTEyIDQyMi45NzggNDc2LjE4MyA0MjIuOTc4IDQzMlYzMzZDNDIyLjk3OCAzMDUuMDcyIDQ0OC4wNTEgMjgwIDQ3OC45NzkgMjgwSDQ5MEM0OTYuNjI3IDI4MCA1MDIgMjc0LjYyOCA1MDIgMjY4VjI0NEM1MDIgMjM3LjM3MyA0OTYuNjI4IDIzMiA0OTAgMjMyTDQ3OC45NzkgMjMyQzQ0OC4wNTEgMjMyIDQyMi45NzggMjA2LjkyOCA0MjIuOTc4IDE3NlY4MEM0MjIuOTc4IDM1LjgxNzIgMzg3LjE2MSAwIDM0Mi45NzkgMEgzMTdDMzEwLjM3MyAwIDMwNSA1LjM3MjU4IDMwNSAxMlYzNloiIGZpbGw9IiNGRjk5MjIiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xMTcxXzQ0MSI+CjxyZWN0IHdpZHRoPSI1MTIiIGhlaWdodD0iNTEyIiBmaWxsPSJ3aGl0ZSIvPgo8L2NsaXBQYXRoPgo8L2RlZnM+Cjwvc3ZnPgo="
        },
        "displayName": "Code",
        "typeVersion": 2,
        "nodeCategories": [
          {
            "id": 5,
            "name": "Development"
          },
          {
            "id": 9,
            "name": "Core Nodes"
          }
        ]
      },
      {
        "id": 1299,
        "icon": "file:AwsIam.svg",
        "name": "n8n-nodes-base.awsIam",
        "codex": {
          "data": {
            "resources": {
              "primaryDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/app-nodes/n8n-nodes-base.awsiam/"
                }
              ],
              "credentialDocumentation": [
                {
                  "url": "https://docs.n8n.io/integrations/builtin/credentials/aws/"
                }
              ]
            },
            "categories": [
              "Development"
            ],
            "nodeVersion": "1.0",
            "codexVersion": "1.0"
          }
        },
        "group": "[\"output\"]",
        "defaults": {
          "name": "AWS IAM"
        },
        "iconData": {
          "type": "file",
          "fileBuffer": "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iODBweCIgaGVpZ2h0PSI4MHB4IiB2aWV3Qm94PSIwIDAgODAgODAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDY0ICg5MzUzNykgLSBodHRwczovL3NrZXRjaC5jb20gLS0+CiAgICA8dGl0bGU+SWNvbi1BcmNoaXRlY3R1cmUvNjQvQXJjaF9BV1MtSWRlbnRpdHktYW5kLUFjY2Vzcy1NYW5hZ2VtZW50XzY0PC90aXRsZT4KICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPgogICAgPGRlZnM+CiAgICAgICAgPGxpbmVhckdyYWRpZW50IHgxPSIwJSIgeTE9IjEwMCUiIHgyPSIxMDAlIiB5Mj0iMCUiIGlkPSJsaW5lYXJHcmFkaWVudC0xIj4KICAgICAgICAgICAgPHN0b3Agc3RvcC1jb2xvcj0iI0JEMDgxNiIgb2Zmc2V0PSIwJSI+PC9zdG9wPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjRkY1MjUyIiBvZmZzZXQ9IjEwMCUiPjwvc3RvcD4KICAgICAgICA8L2xpbmVhckdyYWRpZW50PgogICAgPC9kZWZzPgogICAgPGcgaWQ9Ikljb24tQXJjaGl0ZWN0dXJlLzY0L0FyY2hfQVdTLUlkZW50aXR5LWFuZC1BY2Nlc3MtTWFuYWdlbWVudF82NCIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+CiAgICAgICAgPGcgaWQ9Ikljb24tQXJjaGl0ZWN0dXJlLUJHLzY0L1NlY3VyaXR5LUlkZW50aXR5LUNvbXBsaWFuY2UiIGZpbGw9InVybCgjbGluZWFyR3JhZGllbnQtMSkiPgogICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiB4PSIwIiB5PSIwIiB3aWR0aD0iODAiIGhlaWdodD0iODAiPjwvcmVjdD4KICAgICAgICA8L2c+CiAgICAgICAgPHBhdGggZD0iTTE0LDU5IEw2Niw1OSBMNjYsMjEgTDE0LDIxIEwxNCw1OSBaIE02OCwyMCBMNjgsNjAgQzY4LDYwLjU1MiA2Ny41NTMsNjEgNjcsNjEgTDEzLDYxIEMxMi40NDcsNjEgMTIsNjAuNTUyIDEyLDYwIEwxMiwyMCBDMTIsMTkuNDQ4IDEyLjQ0NywxOSAxMywxOSBMNjcsMTkgQzY3LjU1MywxOSA2OCwxOS40NDggNjgsMjAgTDY4LDIwIFogTTQ0LDQ4IEw1OSw0OCBMNTksNDYgTDQ0LDQ2IEw0NCw0OCBaIE01Nyw0MiBMNjIsNDIgTDYyLDQwIEw1Nyw0MCBMNTcsNDIgWiBNNDQsNDIgTDUyLDQyIEw1Miw0MCBMNDQsNDAgTDQ0LDQyIFogTTI5LDQ2IEMyOSw0NS40NDkgMjguNTUyLDQ1IDI4LDQ1IEMyNy40NDgsNDUgMjcsNDUuNDQ5IDI3LDQ2IEMyNyw0Ni41NTEgMjcuNDQ4LDQ3IDI4LDQ3IEMyOC41NTIsNDcgMjksNDYuNTUxIDI5LDQ2IEwyOSw0NiBaIE0zMSw0NiBDMzEsNDcuMzAyIDMwLjE2MSw0OC40MDEgMjksNDguODE2IEwyOSw1MSBMMjcsNTEgTDI3LDQ4LjgxNSBDMjUuODM5LDQ4LjQwMSAyNSw0Ny4zMDIgMjUsNDYgQzI1LDQ0LjM0NiAyNi4zNDYsNDMgMjgsNDMgQzI5LjY1NCw0MyAzMSw0NC4zNDYgMzEsNDYgTDMxLDQ2IFogTTE5LDUzLjk5MyBMMzYuOTk0LDU0IEwzNi45OTYsNTAgTDMzLDUwIEwzMyw0OCBMMzYuOTk2LDQ4IEwzNi45OTgsNDUgTDMzLDQ1IEwzMyw0MyBMMzYuOTk5LDQzIEwzNyw0MC4wMDcgTDE5LjAwNiw0MCBMMTksNTMuOTkzIFogTTIyLDM4LjAwMSBMMzQsMzguMDA2IEwzNCwzMSBDMzQuMDAxLDI4LjY5NyAzMS4xOTcsMjYuNjc3IDI4LDI2LjY3NSBMMjcuOTk2LDI2LjY3NSBDMjQuODA0LDI2LjY3NSAyMi4wMDQsMjguNjk2IDIyLjAwMiwzMSBMMjIsMzguMDAxIFogTTE3LDU0Ljk5MiBMMTcuMDA2LDM5IEMxNy4wMDYsMzguNzM0IDE3LjExMSwzOC40OCAxNy4yOTksMzguMjkyIEMxNy40ODYsMzguMTA1IDE3Ljc0MSwzOCAxOC4wMDYsMzggTDIwLDM4LjAwMSBMMjAuMDAyLDMxIEMyMC4wMDQsMjcuNTEyIDIzLjU5LDI0LjY3NSAyNy45OTYsMjQuNjc1IEwyOCwyNC42NzUgQzMyLjQxMiwyNC42NzcgMzYuMDAxLDI3LjUxNSAzNiwzMSBMMzYsMzguMDA3IEwzOCwzOC4wMDggQzM4LjU1MywzOC4wMDggMzksMzguNDU2IDM5LDM5LjAwOCBMMzguOTk0LDU1IEMzOC45OTQsNTUuMjY2IDM4Ljg4OSw1NS41MiAzOC43MDEsNTUuNzA4IEMzOC41MTQsNTUuODk1IDM4LjI1OSw1NiAzNy45OTQsNTYgTDE4LDU1Ljk5MiBDMTcuNDQ3LDU1Ljk5MiAxNyw1NS41NDQgMTcsNTQuOTkyIEwxNyw1NC45OTIgWiBNNjAsMzYgTDYyLDM2IEw2MiwzNCBMNjAsMzQgTDYwLDM2IFogTTQ0LDM2IEw1NSwzNiBMNTUsMzQgTDQ0LDM0IEw0NCwzNiBaIiBpZD0iQVdTLUlkZW50aXR5LWFuZC1BY2Nlc3MtTWFuYWdlbWVudF9JY29uXzY0X1NxdWlkIiBmaWxsPSIjRkZGRkZGIj48L3BhdGg+CiAgICA8L2c+Cjwvc3ZnPg=="
        },
        "displayName": "AWS IAM",
        "typeVersion": 1,
        "nodeCategories": [
          {
            "id": 5,
            "name": "Development"
          }
        ]
      }
    ],
    "categories": [
      {
        "id": 16,
        "name": "DevOps"
      },
      {
        "id": 51,
        "name": "Multimodal AI"
      }
    ],
    "image": []
  }
}