# nodes

node_type: nodes-base.messageBirdTool
package_name: n8n-nodes-base
display_name: MessageBird Tool
description: Sends SMS via MessageBird (AI Tool variant for use with AI Agents)
category: output
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "messageBirdApi",
  "required": true
  }
  ]

outputs:
  [
  {
  "type": "ai_tool",
  "displayName": "Tool"
  }
  ]

output_names:
  [
  "Tool"
  ]

updated_at: 2026-03-18 15:15:48
tool_variant_of: nodes-base.messageBird
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: MessageBird node documentation
  description: Learn how to use the MessageBird node in n8n. Follow technical documentation to integrate MessageBird node into your workflows.
  contentType: [integration, reference]
  ---

  # MessageBird node

  Use the MessageBird node to automate work in MessageBird, and integrate MessageBird with other applications. n8n has built-in support for a wide range of MessageBird features, including sending messages, and getting balances. 

  On this page, you'll find a list of operations the MessageBird node supports and links to more resources.

  /// note | Credentials
  Refer to [MessageBird credentials](/integrations/builtin/credentials/messagebird.md) for guidance on setting up authentication. 
  ///

  ## Operations

  * SMS
      * Send text messages (SMS)
  * Balance
      * Get the balance

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'messagebird') ]]

properties_schema:
  [
    {
      "displayName": "Tool Description",
      "name": "toolDescription",
      "type": "string",
      "default": "",
      "required": false,
      "description": "Description for the AI to understand what this tool does and when to use it",
      "typeOptions": {
        "rows": 3
      },
      "placeholder": "e.g., Use this tool to send messages and communicate"
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "sms",
      "options": [
        {
          "name": "SMS",
          "value": "sms"
        },
        {
          "name": "Balance",
          "value": "balance"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "send",
      "options": [
        {
          "name": "Send",
          "value": "send",
          "description": "Send text messages (SMS)",
          "action": "Send an SMS"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "sms"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "get",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get the balance",
          "action": "Get the current balance"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "balance"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "From",
      "name": "originator",
      "type": "string",
      "default": "",
      "description": "The number from which to send the message",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "send"
          ],
          "resource": [
            "sms"
          ]
        }
      }
    },
    {
      "displayName": "To",
      "name": "recipients",
      "type": "string",
      "default": "",
      "description": "All recipients separated by commas",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "send"
          ],
          "resource": [
            "sms"
          ]
        }
      }
    },
    {
      "displayName": "Message",
      "name": "message",
      "type": "string",
      "default": "",
      "description": "The message to be send",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "send"
          ],
          "resource": [
            "sms"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Created Date-Time",
          "name": "createdDatetime",
          "type": "dateTime",
          "default": "",
          "description": "The date and time of the creation of the message in RFC3339 format (Y-m-dTH:i:sP)"
        },
        {
          "displayName": "Datacoding",
          "name": "datacoding",
          "type": "options",
          "options": [
            {
              "name": "Auto",
              "value": "auto"
            },
            {
              "name": "Plain",
              "value": "plain"
            },
            {
              "name": "Unicode",
              "value": "unicode"
            }
          ],
          "default": "",
          "description": "Using unicode will limit the maximum number of characters to 70 instead of 160"
        },
        {
          "displayName": "Gateway",
          "name": "gateway",
          "type": "number",
          "default": "",
          "description": "The SMS route that is used to send the message"
        },
        {
          "displayName": "Group IDs",
          "name": "groupIds",
          "placeholder": "1,2",
          "type": "string",
          "default": "",
          "description": "Group IDs separated by commas, If provided recipients can be omitted"
        },
        {
          "displayName": "Message Type",
          "name": "mclass",
          "type": "options",
          "placeholder": "Permissible values from 0-3",
          "options": [
            {
              "name": "Flash",
              "value": 1
            },
            {
              "name": "Normal",
              "value": 0
            }
          ],
          "default": 1,
          "description": "Indicated the message type. 1 is a normal message, 0 is a flash message."
        },
        {
          "displayName": "Reference",
          "name": "reference",
          "type": "string",
          "default": "",
          "description": "A client reference"
        },
        {
          "displayName": "Report Url",
          "name": "reportUrl",
          "type": "string",
          "default": "",
          "description": "The status report URL to be used on a per-message basis. Reference is required for a status report webhook to be sent."
        },
        {
          "displayName": "Scheduled Date-Time",
          "name": "scheduledDatetime",
          "type": "dateTime",
          "default": "",
          "description": "The scheduled date and time of the message in RFC3339 format (Y-m-dTH:i:sP)"
        },
        {
          "displayName": "Type",
          "name": "type",
          "type": "options",
          "options": [
            {
              "name": "Binary",
              "value": "binary"
            },
            {
              "name": "Flash",
              "value": "flash"
            },
            {
              "name": "SMS",
              "value": "sms"
            }
          ],
          "default": "",
          "description": "The type of message. Values can be: sms, binary, or flash."
        },
        {
          "displayName": "Type Details",
          "name": "typeDetails",
          "type": "string",
          "default": "",
          "description": "A hash with extra information. Is only used when a binary message is sent."
        },
        {
          "displayName": "Validity",
          "name": "validity",
          "type": "number",
          "default": 1,
          "typeOptions": {
            "minValue": 1
          },
          "description": "The amount of seconds that the message is valid"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "send"
          ],
          "resource": [
            "sms"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "send",
      "name": "Send",
      "description": "Send text messages (SMS)"
    }
  ]


node_type: nodes-base.messageBird
package_name: n8n-nodes-base
display_name: MessageBird
description: Sends SMS via MessageBird
category: output
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "messageBirdApi",
  "required": true
  }
  ]

outputs:
  [
  "main"
  ]

updated_at: 2026-03-18 15:15:48
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: MessageBird node documentation
  description: Learn how to use the MessageBird node in n8n. Follow technical documentation to integrate MessageBird node into your workflows.
  contentType: [integration, reference]
  ---

  # MessageBird node

  Use the MessageBird node to automate work in MessageBird, and integrate MessageBird with other applications. n8n has built-in support for a wide range of MessageBird features, including sending messages, and getting balances. 

  On this page, you'll find a list of operations the MessageBird node supports and links to more resources.

  /// note | Credentials
  Refer to [MessageBird credentials](/integrations/builtin/credentials/messagebird.md) for guidance on setting up authentication. 
  ///

  ## Operations

  * SMS
      * Send text messages (SMS)
  * Balance
      * Get the balance

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'messagebird') ]]

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "sms",
      "options": [
        {
          "name": "SMS",
          "value": "sms"
        },
        {
          "name": "Balance",
          "value": "balance"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "send",
      "options": [
        {
          "name": "Send",
          "value": "send",
          "description": "Send text messages (SMS)",
          "action": "Send an SMS"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "sms"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "get",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get the balance",
          "action": "Get the current balance"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "balance"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "From",
      "name": "originator",
      "type": "string",
      "default": "",
      "description": "The number from which to send the message",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "send"
          ],
          "resource": [
            "sms"
          ]
        }
      }
    },
    {
      "displayName": "To",
      "name": "recipients",
      "type": "string",
      "default": "",
      "description": "All recipients separated by commas",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "send"
          ],
          "resource": [
            "sms"
          ]
        }
      }
    },
    {
      "displayName": "Message",
      "name": "message",
      "type": "string",
      "default": "",
      "description": "The message to be send",
      "required": true,
      "displayOptions": {
        "show": {
          "operation": [
            "send"
          ],
          "resource": [
            "sms"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Created Date-Time",
          "name": "createdDatetime",
          "type": "dateTime",
          "default": "",
          "description": "The date and time of the creation of the message in RFC3339 format (Y-m-dTH:i:sP)"
        },
        {
          "displayName": "Datacoding",
          "name": "datacoding",
          "type": "options",
          "options": [
            {
              "name": "Auto",
              "value": "auto"
            },
            {
              "name": "Plain",
              "value": "plain"
            },
            {
              "name": "Unicode",
              "value": "unicode"
            }
          ],
          "default": "",
          "description": "Using unicode will limit the maximum number of characters to 70 instead of 160"
        },
        {
          "displayName": "Gateway",
          "name": "gateway",
          "type": "number",
          "default": "",
          "description": "The SMS route that is used to send the message"
        },
        {
          "displayName": "Group IDs",
          "name": "groupIds",
          "placeholder": "1,2",
          "type": "string",
          "default": "",
          "description": "Group IDs separated by commas, If provided recipients can be omitted"
        },
        {
          "displayName": "Message Type",
          "name": "mclass",
          "type": "options",
          "placeholder": "Permissible values from 0-3",
          "options": [
            {
              "name": "Flash",
              "value": 1
            },
            {
              "name": "Normal",
              "value": 0
            }
          ],
          "default": 1,
          "description": "Indicated the message type. 1 is a normal message, 0 is a flash message."
        },
        {
          "displayName": "Reference",
          "name": "reference",
          "type": "string",
          "default": "",
          "description": "A client reference"
        },
        {
          "displayName": "Report Url",
          "name": "reportUrl",
          "type": "string",
          "default": "",
          "description": "The status report URL to be used on a per-message basis. Reference is required for a status report webhook to be sent."
        },
        {
          "displayName": "Scheduled Date-Time",
          "name": "scheduledDatetime",
          "type": "dateTime",
          "default": "",
          "description": "The scheduled date and time of the message in RFC3339 format (Y-m-dTH:i:sP)"
        },
        {
          "displayName": "Type",
          "name": "type",
          "type": "options",
          "options": [
            {
              "name": "Binary",
              "value": "binary"
            },
            {
              "name": "Flash",
              "value": "flash"
            },
            {
              "name": "SMS",
              "value": "sms"
            }
          ],
          "default": "",
          "description": "The type of message. Values can be: sms, binary, or flash."
        },
        {
          "displayName": "Type Details",
          "name": "typeDetails",
          "type": "string",
          "default": "",
          "description": "A hash with extra information. Is only used when a binary message is sent."
        },
        {
          "displayName": "Validity",
          "name": "validity",
          "type": "number",
          "default": 1,
          "typeOptions": {
            "minValue": 1
          },
          "description": "The amount of seconds that the message is valid"
        }
      ],
      "displayOptions": {
        "show": {
          "operation": [
            "send"
          ],
          "resource": [
            "sms"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "send",
      "name": "Send",
      "description": "Send text messages (SMS)"
    }
  ]


node_type: nodes-base.metabaseTool
package_name: n8n-nodes-base
display_name: Metabase Tool
description: Use the Metabase API (AI Tool variant for use with AI Agents)
category: transform
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "metabaseApi",
  "required": true
  }
  ]

outputs:
  [
  {
  "type": "ai_tool",
  "displayName": "Tool"
  }
  ]

output_names:
  [
  "Tool"
  ]

updated_at: 2026-03-18 15:15:48
tool_variant_of: nodes-base.metabase
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Metabase node documentation
  description: Learn how to use the Metabase node in n8n. Follow technical documentation to integrate Metabase node into your workflows.
  contentType: [integration, reference]
  ---

  # Metabase node

  Use the Metabase node to automate work in Metabase, and integrate Metabase with other applications. n8n has built-in support for a wide range of Metabase features, including adding, and getting alerts, databases, metrics, and questions. 

  On this page, you'll find a list of operations the Metabase node supports and links to more resources.

  /// note | Credentials
  Refer to [Metabase credentials](/integrations/builtin/credentials/metabase.md) for guidance on setting up authentication. 
  ///

  ## Operations

  * Alert
      * Get
      * Get All
  * Database
      * Add
      * Get All
      * Get Fields
  * Metric
      * Get
      * Get All
  * Question
      * Get
      * Get All
      * Result Data

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'metabase') ]]

  --8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md"

properties_schema:
  [
    {
      "displayName": "Tool Description",
      "name": "toolDescription",
      "type": "string",
      "default": "",
      "required": false,
      "description": "Description for the AI to understand what this tool does and when to use it",
      "typeOptions": {
        "rows": 3
      },
      "placeholder": "e.g., Use this tool to interact with Metabase"
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "questions",
      "options": [
        {
          "name": "Alert",
          "value": "alerts"
        },
        {
          "name": "Database",
          "value": "databases"
        },
        {
          "name": "Metric",
          "value": "metrics"
        },
        {
          "name": "Question",
          "value": "questions"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get a specific question",
          "routing": {
            "request": {
              "method": "GET",
              "url": "={{\"/api/card/\" + $parameter.questionId}}"
            }
          },
          "action": "Get a questions"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many questions",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/api/card/"
            }
          },
          "action": "Get many questions"
        },
        {
          "name": "Result Data",
          "value": "resultData",
          "description": "Return the result of the question to a specific file format",
          "routing": {
            "request": {
              "method": "POST",
              "url": "={{\"/api/card/\" + $parameter.questionId + \"/query/\" + $parameter.format}}",
              "returnFullResponse": true,
              "encoding": "arraybuffer"
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get the results from a question"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "questions"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Question ID",
      "name": "questionId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "questions"
          ],
          "operation": [
            "get",
            "resultData"
          ]
        }
      }
    },
    {
      "displayName": "Format",
      "name": "format",
      "type": "options",
      "default": "csv",
      "options": [
        {
          "name": "CSV",
          "value": "csv"
        },
        {
          "name": "JSON",
          "value": "json"
        },
        {
          "name": "XLSX",
          "value": "xlsx"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "questions"
          ],
          "operation": [
            "resultData"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get a specific metric",
          "routing": {
            "request": {
              "method": "GET",
              "url": "={{\"/api/metric/\" + $parameter.metricId}}",
              "returnFullResponse": true
            }
          },
          "action": "Get a metric"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many metrics",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/api/metric/"
            }
          },
          "action": "Get many metrics"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "metrics"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Metric ID",
      "name": "metricId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "metrics"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Add",
          "value": "addNewDatasource",
          "description": "Add a new datasource to the metabase instance",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/api/database"
            }
          },
          "action": "Add a databases"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many databases",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/api/database/"
            },
            "output": {
              "postReceive": [
                {
                  "type": "rootProperty",
                  "properties": {
                    "property": "data"
                  }
                }
              ]
            }
          },
          "action": "Get many databases"
        },
        {
          "name": "Get Fields",
          "value": "getFields",
          "description": "Get fields from database",
          "routing": {
            "request": {
              "method": "GET",
              "url": "={{\"/api/database/\" + $parameter.databaseId + \"/fields\"}}"
            }
          },
          "action": "Get Fields a databases"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Database ID",
      "name": "databaseId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "getFields"
          ]
        }
      }
    },
    {
      "displayName": "Engine",
      "name": "engine",
      "type": "options",
      "default": "postgres",
      "options": [
        {
          "name": "H2",
          "value": "h2"
        },
        {
          "name": "MongoDB",
          "value": "mongo"
        },
        {
          "name": "Mysql",
          "value": "mysql"
        },
        {
          "name": "PostgreSQL",
          "value": "postgres"
        },
        {
          "name": "Redshift",
          "value": "redshift"
        },
        {
          "name": "Sqlite",
          "value": "sqlite"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ]
        }
      }
    },
    {
      "displayName": "Host",
      "name": "host",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      }
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ]
        }
      }
    },
    {
      "displayName": "Port",
      "name": "port",
      "type": "number",
      "default": 5432,
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      }
    },
    {
      "displayName": "User",
      "name": "user",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      }
    },
    {
      "displayName": "Password",
      "name": "password",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      },
      "typeOptions": {
        "password": true
      }
    },
    {
      "displayName": "Database Name",
      "name": "dbName",
      "type": "string",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      }
    },
    {
      "displayName": "File Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "h2",
            "sqlite"
          ]
        }
      }
    },
    {
      "displayName": "Full Sync",
      "name": "fullSync",
      "type": "boolean",
      "default": true,
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ]
        }
      }
    },
    {
      "displayName": "Simplify",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data",
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get specific alert",
          "routing": {
            "request": {
              "method": "GET",
              "url": "={{\"/api/alert/\" + $parameter.alertId}}"
            }
          },
          "action": "Get an alert"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many alerts",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/api/alert/"
            }
          },
          "action": "Get many alerts"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "alerts"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Alert ID",
      "name": "alertId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "alerts"
          ],
          "operation": [
            "get"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a specific question"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many questions"
    },
    {
      "operation": "resultData",
      "name": "Result Data",
      "description": "Return the result of the question to a specific file format"
    }
  ]


node_type: nodes-base.metabase
package_name: n8n-nodes-base
display_name: Metabase
description: Use the Metabase API
category: transform
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "metabaseApi",
  "required": true
  }
  ]

outputs:
  [
  "main"
  ]

updated_at: 2026-03-18 15:15:48
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Metabase node documentation
  description: Learn how to use the Metabase node in n8n. Follow technical documentation to integrate Metabase node into your workflows.
  contentType: [integration, reference]
  ---

  # Metabase node

  Use the Metabase node to automate work in Metabase, and integrate Metabase with other applications. n8n has built-in support for a wide range of Metabase features, including adding, and getting alerts, databases, metrics, and questions. 

  On this page, you'll find a list of operations the Metabase node supports and links to more resources.

  /// note | Credentials
  Refer to [Metabase credentials](/integrations/builtin/credentials/metabase.md) for guidance on setting up authentication. 
  ///

  ## Operations

  * Alert
      * Get
      * Get All
  * Database
      * Add
      * Get All
      * Get Fields
  * Metric
      * Get
      * Get All
  * Question
      * Get
      * Get All
      * Result Data

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'metabase') ]]

  --8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md"

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "questions",
      "options": [
        {
          "name": "Alert",
          "value": "alerts"
        },
        {
          "name": "Database",
          "value": "databases"
        },
        {
          "name": "Metric",
          "value": "metrics"
        },
        {
          "name": "Question",
          "value": "questions"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get a specific question",
          "routing": {
            "request": {
              "method": "GET",
              "url": "={{\"/api/card/\" + $parameter.questionId}}"
            }
          },
          "action": "Get a questions"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many questions",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/api/card/"
            }
          },
          "action": "Get many questions"
        },
        {
          "name": "Result Data",
          "value": "resultData",
          "description": "Return the result of the question to a specific file format",
          "routing": {
            "request": {
              "method": "POST",
              "url": "={{\"/api/card/\" + $parameter.questionId + \"/query/\" + $parameter.format}}",
              "returnFullResponse": true,
              "encoding": "arraybuffer"
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get the results from a question"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "questions"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Question ID",
      "name": "questionId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "questions"
          ],
          "operation": [
            "get",
            "resultData"
          ]
        }
      }
    },
    {
      "displayName": "Format",
      "name": "format",
      "type": "options",
      "default": "csv",
      "options": [
        {
          "name": "CSV",
          "value": "csv"
        },
        {
          "name": "JSON",
          "value": "json"
        },
        {
          "name": "XLSX",
          "value": "xlsx"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "questions"
          ],
          "operation": [
            "resultData"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get a specific metric",
          "routing": {
            "request": {
              "method": "GET",
              "url": "={{\"/api/metric/\" + $parameter.metricId}}",
              "returnFullResponse": true
            }
          },
          "action": "Get a metric"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many metrics",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/api/metric/"
            }
          },
          "action": "Get many metrics"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "metrics"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Metric ID",
      "name": "metricId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "metrics"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Add",
          "value": "addNewDatasource",
          "description": "Add a new datasource to the metabase instance",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/api/database"
            }
          },
          "action": "Add a databases"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many databases",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/api/database/"
            },
            "output": {
              "postReceive": [
                {
                  "type": "rootProperty",
                  "properties": {
                    "property": "data"
                  }
                }
              ]
            }
          },
          "action": "Get many databases"
        },
        {
          "name": "Get Fields",
          "value": "getFields",
          "description": "Get fields from database",
          "routing": {
            "request": {
              "method": "GET",
              "url": "={{\"/api/database/\" + $parameter.databaseId + \"/fields\"}}"
            }
          },
          "action": "Get Fields a databases"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Database ID",
      "name": "databaseId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "getFields"
          ]
        }
      }
    },
    {
      "displayName": "Engine",
      "name": "engine",
      "type": "options",
      "default": "postgres",
      "options": [
        {
          "name": "H2",
          "value": "h2"
        },
        {
          "name": "MongoDB",
          "value": "mongo"
        },
        {
          "name": "Mysql",
          "value": "mysql"
        },
        {
          "name": "PostgreSQL",
          "value": "postgres"
        },
        {
          "name": "Redshift",
          "value": "redshift"
        },
        {
          "name": "Sqlite",
          "value": "sqlite"
        }
      ],
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ]
        }
      }
    },
    {
      "displayName": "Host",
      "name": "host",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      }
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ]
        }
      }
    },
    {
      "displayName": "Port",
      "name": "port",
      "type": "number",
      "default": 5432,
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      }
    },
    {
      "displayName": "User",
      "name": "user",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      }
    },
    {
      "displayName": "Password",
      "name": "password",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      },
      "typeOptions": {
        "password": true
      }
    },
    {
      "displayName": "Database Name",
      "name": "dbName",
      "type": "string",
      "default": "",
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "postgres",
            "redshift",
            "mysql",
            "mongo"
          ]
        }
      }
    },
    {
      "displayName": "File Path",
      "name": "filePath",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ],
          "engine": [
            "h2",
            "sqlite"
          ]
        }
      }
    },
    {
      "displayName": "Full Sync",
      "name": "fullSync",
      "type": "boolean",
      "default": true,
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "addNewDatasource"
          ]
        }
      }
    },
    {
      "displayName": "Simplify",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data",
      "displayOptions": {
        "show": {
          "resource": [
            "databases"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "description": "Get specific alert",
          "routing": {
            "request": {
              "method": "GET",
              "url": "={{\"/api/alert/\" + $parameter.alertId}}"
            }
          },
          "action": "Get an alert"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get many alerts",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/api/alert/"
            }
          },
          "action": "Get many alerts"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "alerts"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Alert ID",
      "name": "alertId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "alerts"
          ],
          "operation": [
            "get"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "get",
      "name": "Get",
      "description": "Get a specific question"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Get many questions"
    },
    {
      "operation": "resultData",
      "name": "Result Data",
      "description": "Return the result of the question to a specific file format"
    }
  ]


node_type: nodes-base.azureCosmosDb
package_name: n8n-nodes-base
display_name: Azure Cosmos DB
description: Interact with Azure Cosmos DB API
category: transform
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "microsoftAzureCosmosDbSharedKeyApi",
  "required": true
  }
  ]

outputs:
  [
  "main"
  ]

updated_at: 2026-03-18 15:15:48
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Azure Cosmos DB node documentation
  description: Learn how to use the Azure Cosmos DB node in n8n. Follow technical documentation to integrate Azure Cosmos DB node into your workflows.
  contentType: [integration, reference]
  ---

  # Azure Cosmos DB node

  Use the Azure Cosmos DB node to automate work in Azure Cosmos DB and integrate Azure Cosmos DB with other applications. n8n has built-in support for a wide range of Azure Cosmos DB features, which includes creating, getting, updating, and deleting containers and items.

  On this page, you'll find a list of operations the Azure Cosmos DB node supports, and links to more resources.

  ///  note  | Credentials
  You can find authentication information for this node [here](/integrations/builtin/credentials/azurecosmosdb.md).
  ///


  ## Operations

  * **Container**:
  	* **Create**
  	* **Delete**
  	* **Get**
  	* **Get Many**
  * **Item**:
  	* **Create**
  	* **Delete**
  	* **Get**
  	* **Get Many**
  	* **Execute Query**
  	* **Update**

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'azure-cosmos-db') ]]

  ## Related resources

  <!-- vale Vale.Spelling = NO -->
  Refer to [Azure Cosmos DB's documentation](https://learn.microsoft.com/en-us/rest/api/cosmos-db/) for more information about the service.
  <!-- vale Vale.Spelling = YES -->

  --8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md"

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "container",
      "options": [
        {
          "name": "Container",
          "value": "container"
        },
        {
          "name": "Item",
          "value": "item"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a container",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/colls"
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Create container"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a container",
          "routing": {
            "request": {
              "method": "DELETE",
              "url": "=/colls/{{ $parameter[\"container\"] }}"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"deleted\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Delete container"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve a container",
          "routing": {
            "request": {
              "method": "GET",
              "url": "=/colls/{{ $parameter[\"container\"] }}"
            },
            "output": {
              "postReceive": [
                null,
                null
              ]
            }
          },
          "action": "Get container"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of containers",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/colls"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "rootProperty",
                  "properties": {
                    "property": "DocumentCollections"
                  }
                },
                null
              ]
            }
          },
          "action": "Get many containers"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "container"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "ID",
      "name": "containerCreate",
      "type": "string",
      "default": "",
      "description": "Unique identifier for the new container",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "container"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Partition Key",
      "name": "partitionKey",
      "type": "json",
      "default": "{\n\t\"paths\": [\n\t\t\"/id\"\n\t],\n\t\"kind\": \"Hash\",\n\t\"version\": 2\n}",
      "description": "The partition key is used to automatically distribute data across partitions for scalability. Choose a property in your JSON document that has a wide range of values and evenly distributes request volume.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "container"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Indexing Policy",
          "name": "indexingPolicy",
          "default": "{\n\t\"indexingMode\": \"consistent\",\n\t\"automatic\": true,\n\t\"includedPaths\": [\n\t\t{\n\t\t\t\"path\": \"/*\"\n\t\t}\n\t],\n\t\"excludedPaths\": []\n}",
          "description": "This value is used to configure indexing policy",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "type": "json"
        },
        {
          "displayName": "Max RU/s (for Autoscale)",
          "name": "maxThroughput",
          "default": 1000,
          "description": "The user specified autoscale max RU/s",
          "displayOptions": {
            "hide": {
              "/additionalFields.offerThroughput": [
                {
                  "_cnd": {
                    "exists": true
                  }
                }
              ]
            }
          },
          "routing": {
            "request": {
              "headers": {
                "x-ms-cosmos-offer-autopilot-setting": "={{ $value }}"
              }
            }
          },
          "type": "number",
          "typeOptions": {
            "minValue": 1000
          }
        },
        {
          "displayName": "Manual Throughput RU/s",
          "name": "offerThroughput",
          "default": 400,
          "description": "The user specified manual throughput (RU/s) for the collection expressed in units of 100 request units per second",
          "displayOptions": {
            "hide": {
              "/additionalFields.maxThroughput": [
                {
                  "_cnd": {
                    "exists": true
                  }
                }
              ]
            }
          },
          "routing": {
            "request": {
              "headers": {
                "x-ms-offer-throughput": "={{ $value }}"
              }
            }
          },
          "type": "number",
          "typeOptions": {
            "minValue": 400
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "container"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Container",
      "name": "container",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the container you want to delete",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "container"
          ],
          "operation": [
            "delete"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchContainers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the container ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The container ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Container",
      "name": "container",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the container you want to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "container"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchContainers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the container ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The container ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Simplify",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data",
      "displayOptions": {
        "show": {
          "resource": [
            "container"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "container"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "returnAll": [
            false
          ],
          "resource": [
            "container"
          ],
          "operation": [
            "getAll"
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Simplify",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data",
      "displayOptions": {
        "show": {
          "resource": [
            "container"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a new item",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            },
            "request": {
              "method": "POST",
              "url": "=/colls/{{ $parameter[\"container\"] }}/docs",
              "headers": {
                "x-ms-documentdb-is-upsert": "True"
              }
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Create item"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete an existing item",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            },
            "request": {
              "method": "DELETE",
              "url": "=/colls/{{ $parameter[\"container\"] }}/docs/{{ $parameter[\"item\"] }}"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"deleted\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Delete item"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve an item",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            },
            "request": {
              "method": "GET",
              "url": "=/colls/{{ $parameter[\"container\"]}}/docs/{{$parameter[\"item\"]}}",
              "headers": {
                "x-ms-documentdb-is-upsert": "True"
              }
            },
            "output": {
              "postReceive": [
                null,
                null
              ]
            }
          },
          "action": "Get item"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of items",
          "routing": {
            "request": {
              "method": "GET",
              "url": "=/colls/{{ $parameter[\"container\"] }}/docs"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "rootProperty",
                  "properties": {
                    "property": "Documents"
                  }
                },
                null
              ]
            }
          },
          "action": "Get many items"
        },
        {
          "name": "Execute Query",
          "value": "query",
          "routing": {
            "request": {
              "method": "POST",
              "url": "=/colls/{{ $parameter[\"container\"] }}/docs",
              "headers": {
                "Content-Type": "application/query+json",
                "x-ms-documentdb-isquery": "True",
                "x-ms-documentdb-query-enablecrosspartition": "True"
              }
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "rootProperty",
                  "properties": {
                    "property": "Documents"
                  }
                },
                null
              ]
            }
          },
          "action": "Query items"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update an existing item",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            },
            "request": {
              "method": "PUT",
              "url": "=/colls/{{ $parameter[\"container\"] }}/docs/{{ $parameter[\"item\"] }}",
              "headers": {
                "Content-Type": "application/json-patch+json"
              }
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Update item"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Container",
      "name": "container",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the container you want to use",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchContainers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the container ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The container ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Item Contents",
      "name": "customProperties",
      "type": "json",
      "default": "{\n\t\"id\": \"replace_with_new_document_id\"\n}",
      "description": "The item contents as a JSON object",
      "required": true,
      "displayOptions": {
        "hide": {
          "container": [
            ""
          ]
        },
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Container",
      "name": "container",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the container you want to use",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "delete"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchContainers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the container ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The container ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Item",
      "name": "item",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the item to be deleted",
      "required": true,
      "displayOptions": {
        "hide": {
          "container": [
            ""
          ]
        },
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "delete"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchItems",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the item ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The item ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Partition Key",
          "name": "partitionKey",
          "default": "",
          "hint": "Only required if a custom partition key is set for the container",
          "type": "string"
        }
      ],
      "displayOptions": {
        "hide": {
          "container": [
            ""
          ],
          "item": [
            ""
          ]
        },
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "delete"
          ]
        }
      }
    },
    {
      "displayName": "Container",
      "name": "container",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the container you want to use",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchContainers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the container ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The container ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Item",
      "name": "item",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the item you want to retrieve",
      "required": true,
      "displayOptions": {
        "hide": {
          "container": [
            ""
          ]
        },
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchItems",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the item ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The item ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Simplify",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data",
      "displayOptions": {
        "hide": {
          "container": [
            ""
          ],
          "item": [
            ""
          ]
        },
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Partition Key",
          "name": "partitionKey",
          "default": "",
          "hint": "Only required if a custom partition key is set for the container",
          "type": "string"
        }
      ],
      "displayOptions": {
        "hide": {
          "container": [
            ""
          ],
          "item": [
            ""
          ]
        },
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Container",
      "name": "container",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the container you want to use",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "getAll"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchContainers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the container ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The container ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "returnAll": [
            false
          ],
          "resource": [
            "item"
          ],
          "operation": [
            "getAll"
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Simplify",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data",
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Container",
      "name": "container",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the container you want to use",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "query"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchContainers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the container ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The container ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Query",
      "name": "query",
      "type": "string",
      "default": "",
      "description": "The SQL query to execute. Use $1, $2, $3, etc., to reference the 'Query Parameters' set in the options below.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "query"
          ]
        }
      },
      "typeOptions": {
        "editor": "sqlEditor",
        "sqlDialect": "StandardSQL"
      },
      "noDataExpression": true
    },
    {
      "displayName": "Simplify",
      "name": "simple",
      "type": "boolean",
      "default": true,
      "description": "Whether to return a simplified version of the response instead of the raw data",
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "query"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Query Options",
          "name": "queryOptions",
          "values": [
            {
              "displayName": "Query Parameters",
              "name": "queryParameters",
              "default": "",
              "description": "Comma-separated list of values used as query parameters. Use $1, $2, $3, etc., in your query.",
              "hint": "Reference them in your query as $1, $2, $3…",
              "placeholder": "e.g. value1,value2,value3",
              "routing": {
                "send": {
                  "preSend": [
                    null
                  ]
                }
              },
              "type": "string"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "query"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": false
      }
    },
    {
      "displayName": "Container",
      "name": "container",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the container you want to use",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchContainers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the container ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The container ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Item",
      "name": "item",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "description": "Select the item to be updated",
      "required": true,
      "displayOptions": {
        "hide": {
          "container": [
            ""
          ]
        },
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From list",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchItems",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "hint": "Enter the item ID",
          "placeholder": "e.g. AndersenFamily",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "^[\\w+=,.@-]+$",
                "errorMessage": "The item ID must follow the allowed pattern"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Item Contents",
      "name": "customProperties",
      "type": "json",
      "default": "{}",
      "description": "The item contents as a JSON object",
      "required": true,
      "displayOptions": {
        "hide": {
          "container": [
            ""
          ],
          "item": [
            ""
          ]
        },
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Partition Key",
          "name": "partitionKey",
          "type": "string",
          "hint": "Only required if a custom partition key is set for the container",
          "default": ""
        }
      ],
      "displayOptions": {
        "hide": {
          "container": [
            ""
          ],
          "item": [
            ""
          ]
        },
        "show": {
          "resource": [
            "item"
          ],
          "operation": [
            "update"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a container"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a container"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Retrieve a container"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Retrieve a list of containers"
    }
  ]


node_type: nodes-base.microsoftDynamicsCrmTool
package_name: n8n-nodes-base
display_name: Microsoft Dynamics CRM Tool
description: Consume Microsoft Dynamics CRM API (AI Tool variant for use with AI Agents)
category: input
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "microsoftDynamicsOAuth2Api",
  "required": true
  }
  ]

outputs:
  [
  {
  "type": "ai_tool",
  "displayName": "Tool"
  }
  ]

output_names:
  [
  "Tool"
  ]

updated_at: 2026-03-18 15:15:48
tool_variant_of: nodes-base.microsoftDynamicsCrm
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Microsoft Dynamics CRM node documentation
  description: Learn how to use the Microsoft Dynamics CRM node in n8n. Follow technical documentation to integrate Microsoft Dynamics CRM node into your workflows.
  contentType: [integration, reference]
  ---

  # Microsoft Dynamics CRM node

  Use the Microsoft Dynamics CRM node to automate work in Microsoft Dynamics CRM, and integrate Microsoft Dynamics CRM with other applications. n8n has built-in support for  creating, updating, deleting, and getting Microsoft Dynamics CRM accounts. 

  On this page, you'll find a list of operations the Microsoft Dynamics CRM node supports and links to more resources.

  /// note | Credentials
  Refer to [Microsoft credentials](/integrations/builtin/credentials/microsoft.md) for guidance on setting up authentication.
  ///

  ## Operations

  * Account
      * Create
      * Delete
      * Get
      * Get All
      * Update

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'microsoft-dynamics-crm') ]]

  --8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md"

properties_schema:
  [
    {
      "displayName": "Tool Description",
      "name": "toolDescription",
      "type": "string",
      "default": "",
      "required": false,
      "description": "Description for the AI to understand what this tool does and when to use it",
      "typeOptions": {
        "rows": 3
      },
      "placeholder": "e.g., Use this tool to interact with Microsoft Dynamics CRM"
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "account",
      "options": [
        {
          "name": "Account",
          "value": "account"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "action": "Create an account"
        },
        {
          "name": "Delete",
          "value": "delete",
          "action": "Delete an account"
        },
        {
          "name": "Get",
          "value": "get",
          "action": "Get an account"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "action": "Get many accounts"
        },
        {
          "name": "Update",
          "value": "update",
          "action": "Update an account"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "description": "Company or business name",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Account Category Name or ID",
          "name": "accountcategorycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getAccountCategories"
          },
          "default": "",
          "description": "Category to indicate whether the customer account is standard or preferred. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Account Rating Name or ID",
          "name": "accountratingcode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getAccountRatingCodes"
          },
          "default": ""
        },
        {
          "displayName": "Address",
          "name": "addresses",
          "type": "fixedCollection",
          "default": {},
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Address Field",
          "options": [
            {
              "displayName": "Address Fields",
              "name": "address",
              "values": [
                {
                  "displayName": "Address Type Name or ID",
                  "name": "addresstypecode",
                  "type": "options",
                  "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
                  "typeOptions": {
                    "loadOptionsMethod": "getAddressTypes"
                  },
                  "default": ""
                },
                {
                  "displayName": "Line1",
                  "name": "line1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line2",
                  "name": "line2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line3",
                  "name": "line3",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "City",
                  "name": "city",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "State or Province",
                  "name": "stateorprovince",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Country",
                  "name": "country",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Postalcode",
                  "name": "postalcode",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Primary Contact Name",
                  "name": "primarycontactname",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Telephone1",
                  "name": "telephone1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Telephone2",
                  "name": "telephone2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Fax",
                  "name": "fax",
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ]
        },
        {
          "displayName": "Business Type Name or ID",
          "name": "businesstypecode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getBusinessTypes"
          },
          "default": "",
          "description": "The legal designation or other business type of the account for contracts or reporting purposes. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Customer Size Name or ID",
          "name": "customersizecode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getCustomerSizeCodes"
          },
          "default": ""
        },
        {
          "displayName": "Customer Type Name or ID",
          "name": "customertypecode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getCustomerTypeCodes"
          },
          "default": ""
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "Additional information to describe the account, such as an excerpt from the company’s website"
        },
        {
          "displayName": "Email Address 1",
          "name": "emailaddress1",
          "type": "string",
          "default": "",
          "description": "The primary email address for the account"
        },
        {
          "displayName": "Email Address 2",
          "name": "emailaddress2",
          "type": "string",
          "default": "",
          "description": "The secondary email address for the account"
        },
        {
          "displayName": "Email Address 3",
          "name": "emailaddress3",
          "type": "string",
          "default": "",
          "description": "Alternate email address for the account"
        },
        {
          "displayName": "Fax",
          "name": "fax",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "FTP site URL",
          "name": "ftpsiteurl",
          "type": "string",
          "default": "",
          "description": "URL for the account’s FTP site to enable users to access data and share documents"
        },
        {
          "displayName": "Industry Name or ID",
          "name": "industrycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getIndustryCodes"
          },
          "default": "",
          "description": "The account’s primary industry for use in marketing segmentation and demographic analysis. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "displayOptions": {
            "show": {
              "/resource": [
                "account"
              ],
              "/operation": [
                "update"
              ]
            }
          },
          "description": "Company o business name"
        },
        {
          "displayName": "Credit Limit",
          "name": "creditlimit",
          "type": "number",
          "default": "",
          "description": "Credit limit of the account. This is a useful reference when you address invoice and accounting issues with the customer."
        },
        {
          "displayName": "Number Of Employees",
          "name": "numberofemployees",
          "type": "number",
          "default": 0,
          "description": "Number of employees that work at the account for use in marketing segmentation and demographic analysis"
        },
        {
          "displayName": "Payment Terms Name or ID",
          "name": "paymenttermscode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPaymentTermsCodes"
          },
          "default": "",
          "description": "The payment terms to indicate when the customer needs to pay the total amount. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Preferred Appointment Day Name or ID",
          "name": "preferredappointmentdaycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredAppointmentDayCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Preferred Appointment Time Name or ID",
          "name": "preferredappointmenttimecode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredAppointmentTimeCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Preferred Contact Method Name or ID",
          "name": "preferredcontactmethodcode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredContactMethodCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Primary Satori ID",
          "name": "primarysatoriid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Primary Twitter ID",
          "name": "primarytwitterid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Revenue",
          "name": "revenue",
          "type": "number",
          "default": "",
          "description": "The annual revenue for the account, used as an indicator in financial performance analysis"
        },
        {
          "displayName": "Shares Outstanding",
          "name": "sharesoutstanding",
          "type": "number",
          "default": "",
          "description": "The number of shares available to the public for the account. This number is used as an indicator in financial performance analysis."
        },
        {
          "displayName": "Shipping Method Name or ID",
          "name": "shippingmethodcode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getShippingMethodCodes"
          },
          "default": "",
          "description": "Shipping method for deliveries sent to the account’s address to designate the preferred carrier or other delivery option. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "SIC",
          "name": "sic",
          "type": "string",
          "default": "",
          "description": "The Standard Industrial Classification (SIC) code that indicates the account’s primary industry of business, for use in marketing segmentation and demographic analysis"
        },
        {
          "displayName": "Stage ID",
          "name": "stageid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Stock Exchange",
          "name": "stockexchange",
          "type": "string",
          "default": "",
          "description": "The stock exchange at which the account is listed to track their stock and financial performance of the company"
        },
        {
          "displayName": "Telephone 1",
          "name": "telephone1",
          "type": "string",
          "default": "",
          "description": "The main phone number for this account"
        },
        {
          "displayName": "Telephone 2",
          "name": "telephone2",
          "type": "string",
          "default": "",
          "description": "The second phone number for this account"
        },
        {
          "displayName": "Telephone 3",
          "name": "telephone3",
          "type": "string",
          "default": "",
          "description": "The third phone number for this account"
        },
        {
          "displayName": "Territory Name or ID",
          "name": "territorycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getTerritoryCodes"
          },
          "default": "",
          "description": "Region or territory for the account for use in segmentation and analysis. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Ticker Symbol",
          "name": "tickersymbol",
          "type": "string",
          "default": "",
          "description": "Type the stock exchange symbol for the account to track financial performance of the company. You can click the code entered in this field to access the latest trading information from MSN Money."
        },
        {
          "displayName": "Website URL",
          "name": "websiteurl",
          "type": "string",
          "default": "",
          "description": "The account’s website URL to get quick details about the company profile"
        },
        {
          "displayName": "Yomi Name",
          "name": "yominame",
          "type": "string",
          "default": "",
          "description": "The phonetic spelling of the company name, if specified in Japanese, to make sure the name is pronounced correctly in phone calls and other communications"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Account ID",
      "name": "accountId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "delete",
            "get",
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 5,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 10
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Return Field Names or IDs",
          "name": "returnFields",
          "type": "multiOptions",
          "description": "Choose from the list, or specify IDs using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getAccountFields"
          },
          "default": []
        },
        {
          "displayName": "Expand Field Names or IDs",
          "name": "expandFields",
          "type": "multiOptions",
          "description": "Choose from the list, or specify IDs using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getExpandableAccountFields"
          },
          "default": []
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "get",
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Query",
          "name": "query",
          "type": "string",
          "default": "",
          "description": "Query to filter the results. Check <a href=\"https://docs.microsoft.com/en-us/powerapps/developer/data-platform/webapi/query-data-web-api#filter-results\" target=\"_blank\">filters</a>."
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Account Category Name or ID",
          "name": "accountcategorycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getAccountCategories"
          },
          "default": "",
          "description": "Category to indicate whether the customer account is standard or preferred. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Account Rating Name or ID",
          "name": "accountratingcode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getAccountRatingCodes"
          },
          "default": ""
        },
        {
          "displayName": "Address",
          "name": "addresses",
          "type": "fixedCollection",
          "default": {},
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Address Field",
          "options": [
            {
              "displayName": "Address Fields",
              "name": "address",
              "values": [
                {
                  "displayName": "Address Type Name or ID",
                  "name": "addresstypecode",
                  "type": "options",
                  "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
                  "typeOptions": {
                    "loadOptionsMethod": "getAddressTypes"
                  },
                  "default": ""
                },
                {
                  "displayName": "Line1",
                  "name": "line1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line2",
                  "name": "line2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line3",
                  "name": "line3",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "City",
                  "name": "city",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "State or Province",
                  "name": "stateorprovince",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Country",
                  "name": "country",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Postalcode",
                  "name": "postalcode",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Primary Contact Name",
                  "name": "primarycontactname",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Telephone1",
                  "name": "telephone1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Telephone2",
                  "name": "telephone2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Fax",
                  "name": "fax",
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ]
        },
        {
          "displayName": "Business Type Name or ID",
          "name": "businesstypecode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getBusinessTypes"
          },
          "default": "",
          "description": "The legal designation or other business type of the account for contracts or reporting purposes. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Customer Size Name or ID",
          "name": "customersizecode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getCustomerSizeCodes"
          },
          "default": ""
        },
        {
          "displayName": "Customer Type Name or ID",
          "name": "customertypecode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getCustomerTypeCodes"
          },
          "default": ""
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "Additional information to describe the account, such as an excerpt from the company’s website"
        },
        {
          "displayName": "Email Address 1",
          "name": "emailaddress1",
          "type": "string",
          "default": "",
          "description": "The primary email address for the account"
        },
        {
          "displayName": "Email Address 2",
          "name": "emailaddress2",
          "type": "string",
          "default": "",
          "description": "The secondary email address for the account"
        },
        {
          "displayName": "Email Address 3",
          "name": "emailaddress3",
          "type": "string",
          "default": "",
          "description": "Alternate email address for the account"
        },
        {
          "displayName": "Fax",
          "name": "fax",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "FTP site URL",
          "name": "ftpsiteurl",
          "type": "string",
          "default": "",
          "description": "URL for the account’s FTP site to enable users to access data and share documents"
        },
        {
          "displayName": "Industry Name or ID",
          "name": "industrycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getIndustryCodes"
          },
          "default": "",
          "description": "The account’s primary industry for use in marketing segmentation and demographic analysis. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "displayOptions": {
            "show": {
              "/resource": [
                "account"
              ],
              "/operation": [
                "update"
              ]
            }
          },
          "description": "Company o business name"
        },
        {
          "displayName": "Credit Limit",
          "name": "creditlimit",
          "type": "number",
          "default": "",
          "description": "Credit limit of the account. This is a useful reference when you address invoice and accounting issues with the customer."
        },
        {
          "displayName": "Number Of Employees",
          "name": "numberofemployees",
          "type": "number",
          "default": 0,
          "description": "Number of employees that work at the account for use in marketing segmentation and demographic analysis"
        },
        {
          "displayName": "Payment Terms Name or ID",
          "name": "paymenttermscode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPaymentTermsCodes"
          },
          "default": "",
          "description": "The payment terms to indicate when the customer needs to pay the total amount. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Preferred Appointment Day Name or ID",
          "name": "preferredappointmentdaycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredAppointmentDayCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Preferred Appointment Time Name or ID",
          "name": "preferredappointmenttimecode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredAppointmentTimeCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Preferred Contact Method Name or ID",
          "name": "preferredcontactmethodcode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredContactMethodCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Primary Satori ID",
          "name": "primarysatoriid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Primary Twitter ID",
          "name": "primarytwitterid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Revenue",
          "name": "revenue",
          "type": "number",
          "default": "",
          "description": "The annual revenue for the account, used as an indicator in financial performance analysis"
        },
        {
          "displayName": "Shares Outstanding",
          "name": "sharesoutstanding",
          "type": "number",
          "default": "",
          "description": "The number of shares available to the public for the account. This number is used as an indicator in financial performance analysis."
        },
        {
          "displayName": "Shipping Method Name or ID",
          "name": "shippingmethodcode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getShippingMethodCodes"
          },
          "default": "",
          "description": "Shipping method for deliveries sent to the account’s address to designate the preferred carrier or other delivery option. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "SIC",
          "name": "sic",
          "type": "string",
          "default": "",
          "description": "The Standard Industrial Classification (SIC) code that indicates the account’s primary industry of business, for use in marketing segmentation and demographic analysis"
        },
        {
          "displayName": "Stage ID",
          "name": "stageid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Stock Exchange",
          "name": "stockexchange",
          "type": "string",
          "default": "",
          "description": "The stock exchange at which the account is listed to track their stock and financial performance of the company"
        },
        {
          "displayName": "Telephone 1",
          "name": "telephone1",
          "type": "string",
          "default": "",
          "description": "The main phone number for this account"
        },
        {
          "displayName": "Telephone 2",
          "name": "telephone2",
          "type": "string",
          "default": "",
          "description": "The second phone number for this account"
        },
        {
          "displayName": "Telephone 3",
          "name": "telephone3",
          "type": "string",
          "default": "",
          "description": "The third phone number for this account"
        },
        {
          "displayName": "Territory Name or ID",
          "name": "territorycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getTerritoryCodes"
          },
          "default": "",
          "description": "Region or territory for the account for use in segmentation and analysis. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Ticker Symbol",
          "name": "tickersymbol",
          "type": "string",
          "default": "",
          "description": "Type the stock exchange symbol for the account to track financial performance of the company. You can click the code entered in this field to access the latest trading information from MSN Money."
        },
        {
          "displayName": "Website URL",
          "name": "websiteurl",
          "type": "string",
          "default": "",
          "description": "The account’s website URL to get quick details about the company profile"
        },
        {
          "displayName": "Yomi Name",
          "name": "yominame",
          "type": "string",
          "default": "",
          "description": "The phonetic spelling of the company name, if specified in Japanese, to make sure the name is pronounced correctly in phone calls and other communications"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Return Field Names or IDs",
          "name": "returnFields",
          "type": "multiOptions",
          "typeOptions": {
            "loadOptionsMethod": "getAccountFields"
          },
          "default": [],
          "description": "Fields the response will include. Choose from the list, or specify IDs using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "create",
            "update"
          ]
        }
      }
    }
  ]

operations:
[cell repeats an earlier one in this file: 283 characters]


node_type: nodes-base.microsoftDynamicsCrm
package_name: n8n-nodes-base
display_name: Microsoft Dynamics CRM
description: Consume Microsoft Dynamics CRM API
category: input
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "microsoftDynamicsOAuth2Api",
  "required": true
  }
  ]

outputs:
  [
  "main"
  ]

updated_at: 2026-03-18 15:15:48
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Microsoft Dynamics CRM node documentation
  description: Learn how to use the Microsoft Dynamics CRM node in n8n. Follow technical documentation to integrate Microsoft Dynamics CRM node into your workflows.
  contentType: [integration, reference]
  ---

  # Microsoft Dynamics CRM node

  Use the Microsoft Dynamics CRM node to automate work in Microsoft Dynamics CRM, and integrate Microsoft Dynamics CRM with other applications. n8n has built-in support for  creating, updating, deleting, and getting Microsoft Dynamics CRM accounts. 

  On this page, you'll find a list of operations the Microsoft Dynamics CRM node supports and links to more resources.

  /// note | Credentials
  Refer to [Microsoft credentials](/integrations/builtin/credentials/microsoft.md) for guidance on setting up authentication.
  ///

  ## Operations

  * Account
      * Create
      * Delete
      * Get
      * Get All
      * Update

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'microsoft-dynamics-crm') ]]

  --8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md"

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "account",
      "options": [
        {
          "name": "Account",
          "value": "account"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "create",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "action": "Create an account"
        },
        {
          "name": "Delete",
          "value": "delete",
          "action": "Delete an account"
        },
        {
          "name": "Get",
          "value": "get",
          "action": "Get an account"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "action": "Get many accounts"
        },
        {
          "name": "Update",
          "value": "update",
          "action": "Update an account"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Name",
      "name": "name",
      "type": "string",
      "default": "",
      "description": "Company or business name",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Account Category Name or ID",
          "name": "accountcategorycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getAccountCategories"
          },
          "default": "",
          "description": "Category to indicate whether the customer account is standard or preferred. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Account Rating Name or ID",
          "name": "accountratingcode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getAccountRatingCodes"
          },
          "default": ""
        },
        {
          "displayName": "Address",
          "name": "addresses",
          "type": "fixedCollection",
          "default": {},
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Address Field",
          "options": [
            {
              "displayName": "Address Fields",
              "name": "address",
              "values": [
                {
                  "displayName": "Address Type Name or ID",
                  "name": "addresstypecode",
                  "type": "options",
                  "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
                  "typeOptions": {
                    "loadOptionsMethod": "getAddressTypes"
                  },
                  "default": ""
                },
                {
                  "displayName": "Line1",
                  "name": "line1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line2",
                  "name": "line2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line3",
                  "name": "line3",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "City",
                  "name": "city",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "State or Province",
                  "name": "stateorprovince",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Country",
                  "name": "country",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Postalcode",
                  "name": "postalcode",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Primary Contact Name",
                  "name": "primarycontactname",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Telephone1",
                  "name": "telephone1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Telephone2",
                  "name": "telephone2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Fax",
                  "name": "fax",
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ]
        },
        {
          "displayName": "Business Type Name or ID",
          "name": "businesstypecode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getBusinessTypes"
          },
          "default": "",
          "description": "The legal designation or other business type of the account for contracts or reporting purposes. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Customer Size Name or ID",
          "name": "customersizecode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getCustomerSizeCodes"
          },
          "default": ""
        },
        {
          "displayName": "Customer Type Name or ID",
          "name": "customertypecode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getCustomerTypeCodes"
          },
          "default": ""
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "Additional information to describe the account, such as an excerpt from the company’s website"
        },
        {
          "displayName": "Email Address 1",
          "name": "emailaddress1",
          "type": "string",
          "default": "",
          "description": "The primary email address for the account"
        },
        {
          "displayName": "Email Address 2",
          "name": "emailaddress2",
          "type": "string",
          "default": "",
          "description": "The secondary email address for the account"
        },
        {
          "displayName": "Email Address 3",
          "name": "emailaddress3",
          "type": "string",
          "default": "",
          "description": "Alternate email address for the account"
        },
        {
          "displayName": "Fax",
          "name": "fax",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "FTP site URL",
          "name": "ftpsiteurl",
          "type": "string",
          "default": "",
          "description": "URL for the account’s FTP site to enable users to access data and share documents"
        },
        {
          "displayName": "Industry Name or ID",
          "name": "industrycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getIndustryCodes"
          },
          "default": "",
          "description": "The account’s primary industry for use in marketing segmentation and demographic analysis. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "displayOptions": {
            "show": {
              "/resource": [
                "account"
              ],
              "/operation": [
                "update"
              ]
            }
          },
          "description": "Company o business name"
        },
        {
          "displayName": "Credit Limit",
          "name": "creditlimit",
          "type": "number",
          "default": "",
          "description": "Credit limit of the account. This is a useful reference when you address invoice and accounting issues with the customer."
        },
        {
          "displayName": "Number Of Employees",
          "name": "numberofemployees",
          "type": "number",
          "default": 0,
          "description": "Number of employees that work at the account for use in marketing segmentation and demographic analysis"
        },
        {
          "displayName": "Payment Terms Name or ID",
          "name": "paymenttermscode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPaymentTermsCodes"
          },
          "default": "",
          "description": "The payment terms to indicate when the customer needs to pay the total amount. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Preferred Appointment Day Name or ID",
          "name": "preferredappointmentdaycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredAppointmentDayCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Preferred Appointment Time Name or ID",
          "name": "preferredappointmenttimecode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredAppointmentTimeCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Preferred Contact Method Name or ID",
          "name": "preferredcontactmethodcode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredContactMethodCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Primary Satori ID",
          "name": "primarysatoriid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Primary Twitter ID",
          "name": "primarytwitterid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Revenue",
          "name": "revenue",
          "type": "number",
          "default": "",
          "description": "The annual revenue for the account, used as an indicator in financial performance analysis"
        },
        {
          "displayName": "Shares Outstanding",
          "name": "sharesoutstanding",
          "type": "number",
          "default": "",
          "description": "The number of shares available to the public for the account. This number is used as an indicator in financial performance analysis."
        },
        {
          "displayName": "Shipping Method Name or ID",
          "name": "shippingmethodcode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getShippingMethodCodes"
          },
          "default": "",
          "description": "Shipping method for deliveries sent to the account’s address to designate the preferred carrier or other delivery option. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "SIC",
          "name": "sic",
          "type": "string",
          "default": "",
          "description": "The Standard Industrial Classification (SIC) code that indicates the account’s primary industry of business, for use in marketing segmentation and demographic analysis"
        },
        {
          "displayName": "Stage ID",
          "name": "stageid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Stock Exchange",
          "name": "stockexchange",
          "type": "string",
          "default": "",
          "description": "The stock exchange at which the account is listed to track their stock and financial performance of the company"
        },
        {
          "displayName": "Telephone 1",
          "name": "telephone1",
          "type": "string",
          "default": "",
          "description": "The main phone number for this account"
        },
        {
          "displayName": "Telephone 2",
          "name": "telephone2",
          "type": "string",
          "default": "",
          "description": "The second phone number for this account"
        },
        {
          "displayName": "Telephone 3",
          "name": "telephone3",
          "type": "string",
          "default": "",
          "description": "The third phone number for this account"
        },
        {
          "displayName": "Territory Name or ID",
          "name": "territorycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getTerritoryCodes"
          },
          "default": "",
          "description": "Region or territory for the account for use in segmentation and analysis. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Ticker Symbol",
          "name": "tickersymbol",
          "type": "string",
          "default": "",
          "description": "Type the stock exchange symbol for the account to track financial performance of the company. You can click the code entered in this field to access the latest trading information from MSN Money."
        },
        {
          "displayName": "Website URL",
          "name": "websiteurl",
          "type": "string",
          "default": "",
          "description": "The account’s website URL to get quick details about the company profile"
        },
        {
          "displayName": "Yomi Name",
          "name": "yominame",
          "type": "string",
          "default": "",
          "description": "The phonetic spelling of the company name, if specified in Japanese, to make sure the name is pronounced correctly in phone calls and other communications"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Account ID",
      "name": "accountId",
      "type": "string",
      "default": "",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "delete",
            "get",
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 5,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 10
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Return Field Names or IDs",
          "name": "returnFields",
          "type": "multiOptions",
          "description": "Choose from the list, or specify IDs using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getAccountFields"
          },
          "default": []
        },
        {
          "displayName": "Expand Field Names or IDs",
          "name": "expandFields",
          "type": "multiOptions",
          "description": "Choose from the list, or specify IDs using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getExpandableAccountFields"
          },
          "default": []
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "get",
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Query",
          "name": "query",
          "type": "string",
          "default": "",
          "description": "Query to filter the results. Check <a href=\"https://docs.microsoft.com/en-us/powerapps/developer/data-platform/webapi/query-data-web-api#filter-results\" target=\"_blank\">filters</a>."
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Account Category Name or ID",
          "name": "accountcategorycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getAccountCategories"
          },
          "default": "",
          "description": "Category to indicate whether the customer account is standard or preferred. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Account Rating Name or ID",
          "name": "accountratingcode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getAccountRatingCodes"
          },
          "default": ""
        },
        {
          "displayName": "Address",
          "name": "addresses",
          "type": "fixedCollection",
          "default": {},
          "typeOptions": {
            "multipleValues": true
          },
          "placeholder": "Add Address Field",
          "options": [
            {
              "displayName": "Address Fields",
              "name": "address",
              "values": [
                {
                  "displayName": "Address Type Name or ID",
                  "name": "addresstypecode",
                  "type": "options",
                  "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
                  "typeOptions": {
                    "loadOptionsMethod": "getAddressTypes"
                  },
                  "default": ""
                },
                {
                  "displayName": "Line1",
                  "name": "line1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line2",
                  "name": "line2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Line3",
                  "name": "line3",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "City",
                  "name": "city",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "State or Province",
                  "name": "stateorprovince",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Country",
                  "name": "country",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Name",
                  "name": "name",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Postalcode",
                  "name": "postalcode",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Primary Contact Name",
                  "name": "primarycontactname",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Telephone1",
                  "name": "telephone1",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Telephone2",
                  "name": "telephone2",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Fax",
                  "name": "fax",
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ]
        },
        {
          "displayName": "Business Type Name or ID",
          "name": "businesstypecode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getBusinessTypes"
          },
          "default": "",
          "description": "The legal designation or other business type of the account for contracts or reporting purposes. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Customer Size Name or ID",
          "name": "customersizecode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getCustomerSizeCodes"
          },
          "default": ""
        },
        {
          "displayName": "Customer Type Name or ID",
          "name": "customertypecode",
          "type": "options",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
          "typeOptions": {
            "loadOptionsMethod": "getCustomerTypeCodes"
          },
          "default": ""
        },
        {
          "displayName": "Description",
          "name": "description",
          "type": "string",
          "default": "",
          "description": "Additional information to describe the account, such as an excerpt from the company’s website"
        },
        {
          "displayName": "Email Address 1",
          "name": "emailaddress1",
          "type": "string",
          "default": "",
          "description": "The primary email address for the account"
        },
        {
          "displayName": "Email Address 2",
          "name": "emailaddress2",
          "type": "string",
          "default": "",
          "description": "The secondary email address for the account"
        },
        {
          "displayName": "Email Address 3",
          "name": "emailaddress3",
          "type": "string",
          "default": "",
          "description": "Alternate email address for the account"
        },
        {
          "displayName": "Fax",
          "name": "fax",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "FTP site URL",
          "name": "ftpsiteurl",
          "type": "string",
          "default": "",
          "description": "URL for the account’s FTP site to enable users to access data and share documents"
        },
        {
          "displayName": "Industry Name or ID",
          "name": "industrycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getIndustryCodes"
          },
          "default": "",
          "description": "The account’s primary industry for use in marketing segmentation and demographic analysis. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "displayOptions": {
            "show": {
              "/resource": [
                "account"
              ],
              "/operation": [
                "update"
              ]
            }
          },
          "description": "Company o business name"
        },
        {
          "displayName": "Credit Limit",
          "name": "creditlimit",
          "type": "number",
          "default": "",
          "description": "Credit limit of the account. This is a useful reference when you address invoice and accounting issues with the customer."
        },
        {
          "displayName": "Number Of Employees",
          "name": "numberofemployees",
          "type": "number",
          "default": 0,
          "description": "Number of employees that work at the account for use in marketing segmentation and demographic analysis"
        },
        {
          "displayName": "Payment Terms Name or ID",
          "name": "paymenttermscode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPaymentTermsCodes"
          },
          "default": "",
          "description": "The payment terms to indicate when the customer needs to pay the total amount. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Preferred Appointment Day Name or ID",
          "name": "preferredappointmentdaycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredAppointmentDayCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Preferred Appointment Time Name or ID",
          "name": "preferredappointmenttimecode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredAppointmentTimeCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Preferred Contact Method Name or ID",
          "name": "preferredcontactmethodcode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getPreferredContactMethodCodes"
          },
          "default": "",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>"
        },
        {
          "displayName": "Primary Satori ID",
          "name": "primarysatoriid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Primary Twitter ID",
          "name": "primarytwitterid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Revenue",
          "name": "revenue",
          "type": "number",
          "default": "",
          "description": "The annual revenue for the account, used as an indicator in financial performance analysis"
        },
        {
          "displayName": "Shares Outstanding",
          "name": "sharesoutstanding",
          "type": "number",
          "default": "",
          "description": "The number of shares available to the public for the account. This number is used as an indicator in financial performance analysis."
        },
        {
          "displayName": "Shipping Method Name or ID",
          "name": "shippingmethodcode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getShippingMethodCodes"
          },
          "default": "",
          "description": "Shipping method for deliveries sent to the account’s address to designate the preferred carrier or other delivery option. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "SIC",
          "name": "sic",
          "type": "string",
          "default": "",
          "description": "The Standard Industrial Classification (SIC) code that indicates the account’s primary industry of business, for use in marketing segmentation and demographic analysis"
        },
        {
          "displayName": "Stage ID",
          "name": "stageid",
          "type": "string",
          "default": ""
        },
        {
          "displayName": "Stock Exchange",
          "name": "stockexchange",
          "type": "string",
          "default": "",
          "description": "The stock exchange at which the account is listed to track their stock and financial performance of the company"
        },
        {
          "displayName": "Telephone 1",
          "name": "telephone1",
          "type": "string",
          "default": "",
          "description": "The main phone number for this account"
        },
        {
          "displayName": "Telephone 2",
          "name": "telephone2",
          "type": "string",
          "default": "",
          "description": "The second phone number for this account"
        },
        {
          "displayName": "Telephone 3",
          "name": "telephone3",
          "type": "string",
          "default": "",
          "description": "The third phone number for this account"
        },
        {
          "displayName": "Territory Name or ID",
          "name": "territorycode",
          "type": "options",
          "typeOptions": {
            "loadOptionsMethod": "getTerritoryCodes"
          },
          "default": "",
          "description": "Region or territory for the account for use in segmentation and analysis. Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        },
        {
          "displayName": "Ticker Symbol",
          "name": "tickersymbol",
          "type": "string",
          "default": "",
          "description": "Type the stock exchange symbol for the account to track financial performance of the company. You can click the code entered in this field to access the latest trading information from MSN Money."
        },
        {
          "displayName": "Website URL",
          "name": "websiteurl",
          "type": "string",
          "default": "",
          "description": "The account’s website URL to get quick details about the company profile"
        },
        {
          "displayName": "Yomi Name",
          "name": "yominame",
          "type": "string",
          "default": "",
          "description": "The phonetic spelling of the company name, if specified in Japanese, to make sure the name is pronounced correctly in phone calls and other communications"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Return Field Names or IDs",
          "name": "returnFields",
          "type": "multiOptions",
          "typeOptions": {
            "loadOptionsMethod": "getAccountFields"
          },
          "default": [],
          "description": "Fields the response will include. Choose from the list, or specify IDs using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>."
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "account"
          ],
          "operation": [
            "create",
            "update"
          ]
        }
      }
    }
  ]

operations:
[cell repeats an earlier one in this file: 283 characters]


node_type: nodes-base.microsoftEntraTool
package_name: n8n-nodes-base
display_name: Microsoft Entra ID Tool
description: Interact with Microsoft Entra ID API (AI Tool variant for use with AI Agents)
category: transform
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "microsoftEntraOAuth2Api",
  "required": true
  }
  ]

outputs:
  [
  {
  "type": "ai_tool",
  "displayName": "Tool"
  }
  ]

output_names:
  [
  "Tool"
  ]

updated_at: 2026-03-18 15:15:48
tool_variant_of: nodes-base.microsoftEntra
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Microsoft Entra ID node documentation
  description: Learn how to use the Microsoft Entra ID node in n8n. Follow technical documentation to integrate Microsoft Entra ID node into your workflows.
  contentType: [integration, reference]
  ---

  # Microsoft Entra ID node

  Use the Microsoft Entra ID node to automate work in Microsoft Entra ID and integrate Microsoft Entra ID with other applications. n8n has built-in support for a wide range of Microsoft Entra ID features, which includes creating, getting, updating, and deleting users and groups, as well as adding users to and removing them from groups.

  On this page, you'll find a list of operations the Microsoft Entra ID node supports, and links to more resources.

  ///  note  | Credentials
  You can find authentication information for this node [here](/integrations/builtin/credentials/microsoftentra.md).
  ///


  ## Operations

  * **Group**
  	* **Create**: Create a new group
  	* **Delete**: Delete an existing group
  	* **Get**: Retrieve data for a specific group
  	* **Get Many**: Retrieve a list of groups
  	* **Update**: Update a group
  * **User**
  	* **Create**: Create a new user
  	* **Delete**: Delete an existing user
  	* **Get**: Retrieve data for a specific user
  	* **Get Many**: Retrieve a list of users
  	* **Update**: Update a user
  	* **Add to Group**: Add user to a group
  	* **Remove from Group**: Remove user from a group

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'microsoft-entra-id-azure-active-directory') ]]

  ## Related resources

  <!-- vale from-microsoft.We = NO -->
  Refer to [Microsoft Entra ID's documentation](https://learn.microsoft.com/en-us/graph/api/resources/identity-network-access-overview?view=graph-rest-1.0){:target=_blank .external-link} for more information about the service.
  <!-- vale from-microsoft.We = YES -->

  --8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md"

  ## Common issues

  Here are some common errors and issues with the Microsoft Entra ID node and steps to resolve or troubleshoot them.

  ### Updating the Allow External Senders and Auto Subscribe New Members options fails

  You can't update the **Allow External Senders** and **Auto Subscribe New Members** options directly after creating a new group. You must wait after creating a group before you can change the values of these options.

  When designing workflows that use multiple Microsoft Entra ID nodes to first create groups and then update these options, add a [Wait](/integrations/builtin/core-nodes/n8n-nodes-base.wait.md) node between the two operations. A Wait node configured to pause for at least two seconds allows time for the group to fully initialize. After the wait, the update operation can complete without erroring.

properties_schema:
  [
    {
      "displayName": "Tool Description",
      "name": "toolDescription",
      "type": "string",
      "default": "",
      "required": false,
      "description": "Description for the AI to understand what this tool does and when to use it",
      "typeOptions": {
        "rows": 3
      },
      "placeholder": "e.g., Use this tool to interact with Microsoft Entra ID"
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "user",
      "options": [
        {
          "name": "Group",
          "value": "group"
        },
        {
          "name": "User",
          "value": "user"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a group",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "POST",
              "url": "/groups"
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Create group"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a group",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "DELETE",
              "url": "=/groups/{{ $parameter[\"group\"] }}"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"deleted\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Delete group"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve data for a specific group",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "GET",
              "url": "=/groups/{{ $parameter[\"group\"] }}"
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get group"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of groups",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "GET",
              "url": "/groups"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "rootProperty",
                  "properties": {
                    "property": "value"
                  }
                }
              ]
            }
          },
          "action": "Get many groups"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a group",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "PATCH",
              "url": "=/groups/{{ $parameter[\"group\"] }}"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"updated\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Update group"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Group Type",
      "name": "groupType",
      "type": "options",
      "default": "",
      "options": [
        {
          "name": "Microsoft 365",
          "value": "Unified"
        },
        {
          "name": "Security",
          "value": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Group Name",
      "name": "displayName",
      "type": "string",
      "default": "",
      "description": "The name to display in the address book for the group",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Group Email Address",
      "name": "mailNickname",
      "type": "string",
      "default": "",
      "description": "The mail alias for the group. Only enter the local-part without the domain.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Mail Enabled",
      "name": "mailEnabled",
      "type": "boolean",
      "default": false,
      "description": "Whether the group is mail-enabled",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ],
          "groupType": [
            "Unified"
          ]
        }
      }
    },
    {
      "displayName": "Membership Type",
      "name": "membershipType",
      "type": "options",
      "default": "",
      "options": [
        {
          "name": "Assigned",
          "value": "",
          "description": "Lets you add specific users as members of a group and have unique permissions"
        },
        {
          "name": "Dynamic",
          "value": "DynamicMembership",
          "description": "Lets you use rules to automatically add and remove users as members"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Security Enabled",
      "name": "securityEnabled",
      "type": "boolean",
      "default": true,
      "description": "Whether the group is a security group",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ],
          "groupType": [
            "Unified"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Assignable to Role",
          "name": "isAssignableToRole",
          "default": false,
          "description": "Whether Microsoft Entra roles can be assigned to the group",
          "displayOptions": {
            "hide": {
              "/membershipType": [
                "DynamicMembership"
              ]
            }
          },
          "routing": {
            "send": {
              "property": "isAssignableToRole",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Description",
          "name": "description",
          "default": "",
          "description": "Description for the group",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Membership Rule",
          "name": "membershipRule",
          "default": "",
          "description": "The <a href=\"https://learn.microsoft.com/en-us/entra/identity/users/groups-dynamic-membership\">dynamic membership rules</a>",
          "displayOptions": {
            "show": {
              "/membershipType": [
                "DynamicMembership"
              ]
            }
          },
          "placeholder": "e.g. user.department -eq \"Marketing\"",
          "routing": {
            "send": {
              "property": "membershipRule",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Membership Rule Processing State",
          "name": "membershipRuleProcessingState",
          "default": "On",
          "description": "Indicates whether the dynamic membership processing is on or paused",
          "displayOptions": {
            "show": {
              "/membershipType": [
                "DynamicMembership"
              ]
            }
          },
          "options": [
            {
              "name": "On",
              "value": "On"
            },
            {
              "name": "Paused",
              "value": "Paused"
            }
          ],
          "routing": {
            "send": {
              "property": "membershipRuleProcessingState",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Preferred Data Location",
          "name": "preferredDataLocation",
          "default": "",
          "description": "A property set for the group that Office 365 services use to provision the corresponding data-at-rest resources (mailbox, OneDrive, groups sites, and so on)",
          "displayOptions": {
            "show": {
              "/groupType": [
                "Unified"
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Unique Name",
          "name": "uniqueName",
          "default": "",
          "description": "The unique identifier for the group, can only be updated if null, and is immutable once set",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Visibility",
          "name": "visibility",
          "default": "Public",
          "description": "Specifies the visibility of the group",
          "options": [
            {
              "name": "Private",
              "value": "Private"
            },
            {
              "name": "Public",
              "value": "Public"
            }
          ],
          "type": "options",
          "validateType": "options"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Group to Delete",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "delete"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Group to Get",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Output",
      "name": "output",
      "type": "options",
      "default": "simple",
      "options": [
        {
          "name": "Simplified",
          "value": "simple",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,createdDateTime,description,displayName,mail,mailEnabled,mailNickname,securityEnabled,securityIdentifier,visibility"
            }
          }
        },
        {
          "name": "Raw",
          "value": "raw"
        },
        {
          "name": "Selected Fields",
          "value": "fields"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Fields",
      "name": "fields",
      "type": "multiOptions",
      "default": [],
      "description": "The fields to add to the output",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "get"
          ],
          "output": [
            "fields"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getGroupProperties"
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Include Members",
          "name": "includeMembers",
          "default": false,
          "routing": {
            "send": {
              "property": "$expand",
              "type": "query",
              "value": "={{ $value ? \"members($select=id,accountEnabled,createdDateTime,displayName,employeeId,mail,securityIdentifier,userPrincipalName,userType)\" : undefined }}"
            }
          },
          "type": "boolean",
          "validateType": "boolean"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filter",
      "name": "filter",
      "type": "string",
      "default": "",
      "description": "<a href=\"https://docs.microsoft.com/en-us/graph/query-parameters#filter-parameter\">Query parameter</a> to filter results by",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Output",
      "name": "output",
      "type": "options",
      "default": "simple",
      "options": [
        {
          "name": "Simplified",
          "value": "simple",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,createdDateTime,description,displayName,mail,mailEnabled,mailNickname,securityEnabled,securityIdentifier,visibility"
            }
          }
        },
        {
          "name": "Raw",
          "value": "raw"
        },
        {
          "name": "Selected Fields",
          "value": "fields"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Fields",
      "name": "fields",
      "type": "multiOptions",
      "default": [],
      "description": "The fields to add to the output",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ],
          "output": [
            "fields"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getGroupPropertiesGetAll"
      }
    },
    {
      "displayName": "Group to Update",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Allow External Senders",
          "name": "allowExternalSenders",
          "default": false,
          "description": "Whether people external to the organization can send messages to the group. Wait a few seconds before editing this field in a newly created group.",
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Auto Subscribe New Members",
          "name": "autoSubscribeNewMembers",
          "default": false,
          "description": "Whether new members added to the group will be auto-subscribed to receive email notifications. Wait a few seconds before editing this field in a newly created group.",
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Description",
          "name": "description",
          "default": "",
          "description": "Description for the group",
          "routing": {
            "send": {
              "property": "description",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Group Name",
          "name": "displayName",
          "default": "",
          "description": "The name to display in the address book for the group",
          "routing": {
            "send": {
              "property": "displayName",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Group Email Address",
          "name": "mailNickname",
          "default": "",
          "description": "The mail alias for the group. Only enter the local-part without the domain.",
          "placeholder": "e.g. alias",
          "routing": {
            "send": {
              "property": "mailNickname",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Membership Rule",
          "name": "membershipRule",
          "default": "",
          "description": "The <a href=\"https://learn.microsoft.com/en-us/entra/identity/users/groups-dynamic-membership\">dynamic membership rules</a>",
          "placeholder": "e.g. user.department -eq \"Marketing\"",
          "routing": {
            "send": {
              "property": "membershipRule",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Membership Rule Processing State",
          "name": "membershipRuleProcessingState",
          "default": "On",
          "description": "Indicates whether the dynamic membership processing is on or paused",
          "options": [
            {
              "name": "On",
              "value": "On"
            },
            {
              "name": "Paused",
              "value": "Paused"
            }
          ],
          "routing": {
            "send": {
              "property": "membershipRuleProcessingState",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Preferred Data Location",
          "name": "preferredDataLocation",
          "default": "",
          "description": "A property set for the group that Office 365 services use to provision the corresponding data-at-rest resources (mailbox, OneDrive, groups sites, and so on)",
          "routing": {
            "send": {
              "property": "preferredDataLocation",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Security Enabled",
          "name": "securityEnabled",
          "default": true,
          "description": "Whether the group is a security group",
          "routing": {
            "send": {
              "property": "securityEnabled",
              "type": "body"
            }
          },
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Unique Name",
          "name": "uniqueName",
          "default": "",
          "description": "The unique identifier for the group, can only be updated if null, and is immutable once set",
          "routing": {
            "send": {
              "property": "uniqueName",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Visibility",
          "name": "visibility",
          "default": "Public",
          "description": "Specifies the visibility of the group",
          "options": [
            {
              "name": "Private",
              "value": "Private"
            },
            {
              "name": "Public",
              "value": "Public"
            }
          ],
          "routing": {
            "send": {
              "property": "visibility",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Add to Group",
          "value": "addGroup",
          "description": "Add user to group",
          "routing": {
            "request": {
              "method": "POST",
              "url": "=/groups/{{ $parameter[\"group\"] }}/members/$ref",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"added\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Add user to group"
        },
        {
          "name": "Create",
          "value": "create",
          "description": "Create a user",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/users",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Create user"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a user",
          "routing": {
            "request": {
              "method": "DELETE",
              "url": "=/users/{{ $parameter[\"user\"] }}",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"deleted\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Delete user"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve data for a specific user",
          "routing": {
            "request": {
              "method": "GET",
              "url": "=/users/{{ $parameter[\"user\"] }}",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get user"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of users",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/users",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "rootProperty",
                  "properties": {
                    "property": "value"
                  }
                }
              ]
            }
          },
          "action": "Get many users"
        },
        {
          "name": "Remove from Group",
          "value": "removeGroup",
          "description": "Remove user from group",
          "routing": {
            "request": {
              "method": "DELETE",
              "url": "=/groups/{{ $parameter[\"group\"] }}/members/{{ $parameter[\"user\"] }}/$ref",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"removed\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Remove user from group"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a user",
          "routing": {
            "request": {
              "method": "PATCH",
              "url": "=/users/{{ $parameter[\"user\"] }}",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"updated\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Update user"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Group",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "addGroup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "User to Add",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "addGroup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Account Enabled",
      "name": "accountEnabled",
      "type": "boolean",
      "default": true,
      "description": "Whether the account is enabled",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Display Name",
      "name": "displayName",
      "type": "string",
      "default": "",
      "description": "The name to display in the address book for the user",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "User Principal Name",
      "name": "userPrincipalName",
      "type": "string",
      "default": "",
      "description": "The user principal name (UPN)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Mail Nickname",
      "name": "mailNickname",
      "type": "string",
      "default": "",
      "description": "The mail alias for the user",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Password",
      "name": "password",
      "type": "string",
      "default": "",
      "description": "The password for the user",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "password": true
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "About Me",
          "name": "aboutMe",
          "default": "",
          "description": "A freeform text entry field for the user to describe themselves",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Age Group",
          "name": "ageGroup",
          "default": "Adult",
          "description": "Sets the age group of the user",
          "options": [
            {
              "name": "Adult",
              "value": "Adult"
            },
            {
              "name": "Minor",
              "value": "Minor"
            },
            {
              "name": "Not Adult",
              "value": "NotAdult"
            }
          ],
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Birthday",
          "name": "birthday",
          "default": "",
          "description": "The birthday of the user",
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Business Phone",
          "name": "businessPhones",
          "default": "",
          "description": "The telephone number for the user",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "City",
          "name": "city",
          "default": "",
          "description": "The city in which the user is located",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Company Name",
          "name": "companyName",
          "default": "",
          "description": "The name of the company associated with the user",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Consent Provided",
          "name": "consentProvidedForMinor",
          "default": "Denied",
          "description": "Specifies if consent is provided for minors",
          "options": [
            {
              "name": "Denied",
              "value": "Denied"
            },
            {
              "name": "Granted",
              "value": "Granted"
            },
            {
              "name": "Not Required",
              "value": "NotRequired"
            }
          ],
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Country",
          "name": "country",
          "default": "",
          "description": "The country/region of the user",
          "placeholder": "e.g. US",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Department",
          "name": "department",
          "default": "",
          "description": "The department name where the user works",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee ID",
          "name": "employeeId",
          "default": "",
          "description": "Employee identifier assigned by the organization",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee Type",
          "name": "employeeType",
          "default": "",
          "description": "Defines enterprise worker type",
          "placeholder": "e.g. Contractor",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee Hire Date",
          "name": "employeeHireDate",
          "default": "",
          "description": "The hire date of the user",
          "placeholder": "e.g. 2014-01-01T00:00:00Z",
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Employee Leave Date",
          "name": "employeeLeaveDateTime",
          "default": "",
          "description": "The date and time when the user left or will leave the organization",
          "placeholder": "e.g. 2014-01-01T00:00:00Z",
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Employee Organization Data",
          "name": "employeeOrgData",
          "default": {},
          "description": "Represents organization data (for example, division and costCenter) associated with a user",
          "options": [
            {
              "displayName": "Employee Organization Data",
              "name": "employeeOrgValues",
              "values": [
                {
                  "displayName": "Cost Center",
                  "name": "costCenter",
                  "description": "The cost center associated with the user",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Division",
                  "name": "division",
                  "description": "The name of the division in which the user works",
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ],
          "type": "fixedCollection",
          "validateType": "string"
        },
        {
          "displayName": "First Name",
          "name": "givenName",
          "default": "",
          "description": "The given name (first name) of the user",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Force Change Password",
          "name": "forceChangePassword",
          "default": "forceChangePasswordNextSignIn",
          "description": "Whether the user must change their password on the next sign-in",
          "options": [
            {
              "name": "Next Sign In",
              "value": "forceChangePasswordNextSignIn"
            },
            {
              "name": "Next Sign In with MFA",
              "value": "forceChangePasswordNextSignInWithMfa"
            }
          ],
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Interests",
          "name": "interests",
          "default": [],
          "description": "A list for the user to describe their interests",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Job Title",
          "name": "jobTitle",
          "default": "",
          "description": "The user's job title",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Last Name",
          "name": "surname",
          "default": "",
          "description": "The user's last name (family name)",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mail",
          "name": "mail",
          "default": "",
          "description": "The SMTP address for the user",
          "placeholder": "e.g. jeff@contoso.com",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mobile Phone",
          "name": "mobilePhone",
          "default": "",
          "description": "The primary cellular telephone number for the user",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "My Site",
          "name": "mySite",
          "default": "",
          "description": "The URL for the user's personal site",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Office Location",
          "name": "officeLocation",
          "default": "",
          "description": "The office location for the user",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "On Premises Immutable ID",
          "name": "onPremisesImmutableId",
          "default": "",
          "description": "This property is used to associate an on-premises Active Directory user account to their Microsoft Entra user object",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Other Emails",
          "name": "otherMails",
          "default": [],
          "description": "Additional email addresses for the user",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Password Policies",
          "name": "passwordPolicies",
          "default": [],
          "description": "Specifies password policies",
          "options": [
            {
              "name": "Disable Password Expiration",
              "value": "DisablePasswordExpiration"
            },
            {
              "name": "Disable Strong Password",
              "value": "DisableStrongPassword"
            }
          ],
          "type": "multiOptions"
        },
        {
          "displayName": "Past Projects",
          "name": "pastProjects",
          "default": [],
          "description": "A list of past projects the user has worked on",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Postal Code",
          "name": "postalCode",
          "default": "",
          "description": "The postal code for the user's address",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Preferred Language",
          "name": "preferredLanguage",
          "default": "",
          "description": "User's preferred language in ISO 639-1 code",
          "placeholder": "e.g. en-US",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Responsibilities",
          "name": "responsibilities",
          "default": [],
          "description": "A list of responsibilities the user has",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Schools Attended",
          "name": "schools",
          "default": [],
          "description": "A list of schools the user attended",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Skills",
          "name": "skills",
          "default": [],
          "description": "A list of skills the user possesses",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "State",
          "name": "state",
          "default": "",
          "description": "The state or province of the user's address",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Street Address",
          "name": "streetAddress",
          "default": "",
          "description": "The street address of the user's place of business",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Usage Location",
          "name": "usageLocation",
          "default": "",
          "description": "Two-letter country code where the user is located",
          "placeholder": "e.g. US",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "User Type",
          "name": "userType",
          "default": "Guest",
          "description": "Classifies the user type",
          "options": [
            {
              "name": "Guest",
              "value": "Guest"
            },
            {
              "name": "Member",
              "value": "Member"
            }
          ],
          "type": "options",
          "validateType": "options"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "User to Delete",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "delete"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "User to Get",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Output",
      "name": "output",
      "type": "options",
      "default": "simple",
      "options": [
        {
          "name": "Simplified",
          "value": "simple",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,createdDateTime,displayName,userPrincipalName,mail,mailNickname,securityIdentifier"
            }
          }
        },
        {
          "name": "Raw",
          "value": "raw",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,accountEnabled,ageGroup,assignedLicenses,assignedPlans,authorizationInfo,businessPhones,city,companyName,consentProvidedForMinor,country,createdDateTime,creationType,customSecurityAttributes,deletedDateTime,department,displayName,employeeHireDate,employeeId,employeeLeaveDateTime,employeeOrgData,employeeType,externalUserState,externalUserStateChangeDateTime,faxNumber,givenName,identities,imAddresses,isManagementRestricted,isResourceAccount,jobTitle,lastPasswordChangeDateTime,legalAgeGroupClassification,licenseAssignmentStates,mail,mailNickname,mobilePhone,officeLocation,onPremisesDistinguishedName,onPremisesDomainName,onPremisesExtensionAttributes,onPremisesImmutableId,onPremisesLastSyncDateTime,onPremisesProvisioningErrors,onPremisesSamAccountName,onPremisesSecurityIdentifier,onPremisesSyncEnabled,onPremisesUserPrincipalName,otherMails,passwordPolicies,passwordProfile,postalCode,preferredDataLocation,preferredLanguage,provisionedPlans,proxyAddresses,securityIdentifier,serviceProvisioningErrors,showInAddressList,signInSessionsValidFromDateTime,state,streetAddress,surname,usageLocation,userPrincipalName,userType"
            }
          }
        },
        {
          "name": "Selected Fields",
          "value": "fields"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Fields",
      "name": "fields",
      "type": "multiOptions",
      "default": [],
      "description": "The fields to add to the output",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "get"
          ],
          "output": [
            "fields"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getUserProperties"
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filter",
      "name": "filter",
      "type": "string",
      "default": "",
      "description": "<a href=\"https://docs.microsoft.com/en-us/graph/query-parameters#filter-parameter\">Query parameter</a> to filter results by",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Output",
      "name": "output",
      "type": "options",
      "default": "simple",
      "options": [
        {
          "name": "Simplified",
          "value": "simple",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,createdDateTime,displayName,userPrincipalName,mail,mailNickname,securityIdentifier"
            }
          }
        },
        {
          "name": "Raw",
          "value": "raw",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,accountEnabled,ageGroup,assignedLicenses,assignedPlans,authorizationInfo,businessPhones,city,companyName,consentProvidedForMinor,country,createdDateTime,creationType,customSecurityAttributes,deletedDateTime,department,displayName,employeeHireDate,employeeId,employeeLeaveDateTime,employeeOrgData,employeeType,externalUserState,externalUserStateChangeDateTime,faxNumber,givenName,identities,imAddresses,isManagementRestricted,isResourceAccount,jobTitle,lastPasswordChangeDateTime,legalAgeGroupClassification,licenseAssignmentStates,mail,mailNickname,mobilePhone,officeLocation,onPremisesDistinguishedName,onPremisesDomainName,onPremisesExtensionAttributes,onPremisesImmutableId,onPremisesLastSyncDateTime,onPremisesProvisioningErrors,onPremisesSamAccountName,onPremisesSecurityIdentifier,onPremisesSyncEnabled,onPremisesUserPrincipalName,otherMails,passwordPolicies,passwordProfile,postalCode,preferredDataLocation,preferredLanguage,provisionedPlans,proxyAddresses,securityIdentifier,serviceProvisioningErrors,showInAddressList,signInSessionsValidFromDateTime,state,streetAddress,surname,usageLocation,userPrincipalName,userType"
            }
          }
        },
        {
          "name": "Selected Fields",
          "value": "fields"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Fields",
      "name": "fields",
      "type": "multiOptions",
      "default": [],
      "description": "The fields to add to the output",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ],
          "output": [
            "fields"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getUserPropertiesGetAll"
      }
    },
    {
      "displayName": "Group",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "removeGroup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "User to Remove",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "removeGroup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "User to Update",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "About Me",
          "name": "aboutMe",
          "default": "",
          "description": "A freeform text entry field for the user to describe themselves",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Account Enabled",
          "name": "accountEnabled",
          "default": true,
          "description": "Whether the account is enabled",
          "routing": {
            "send": {
              "property": "accountEnabled",
              "type": "body"
            }
          },
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Age Group",
          "name": "ageGroup",
          "default": "Adult",
          "description": "Sets the age group of the user",
          "options": [
            {
              "name": "Adult",
              "value": "Adult"
            },
            {
              "name": "Minor",
              "value": "Minor"
            },
            {
              "name": "Not Adult",
              "value": "NotAdult"
            }
          ],
          "routing": {
            "send": {
              "property": "ageGroup",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Birthday",
          "name": "birthday",
          "default": "",
          "description": "The birthday of the user",
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Business Phone",
          "name": "businessPhones",
          "default": "",
          "description": "The telephone number for the user",
          "routing": {
            "send": {
              "property": "businessPhones",
              "type": "body",
              "value": "={{ $value ? [$value] : [] }}"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "City",
          "name": "city",
          "default": "",
          "description": "The city in which the user is located",
          "routing": {
            "send": {
              "property": "city",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Company Name",
          "name": "companyName",
          "default": "",
          "description": "The name of the company associated with the user",
          "routing": {
            "send": {
              "property": "companyName",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Consent Provided",
          "name": "consentProvidedForMinor",
          "default": "Denied",
          "description": "Specifies if consent is provided for minors",
          "options": [
            {
              "name": "Denied",
              "value": "Denied"
            },
            {
              "name": "Granted",
              "value": "Granted"
            },
            {
              "name": "Not Required",
              "value": "NotRequired"
            }
          ],
          "routing": {
            "send": {
              "property": "consentProvidedForMinor",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Country",
          "name": "country",
          "default": "",
          "description": "The country/region of the user",
          "placeholder": "e.g. US",
          "routing": {
            "send": {
              "property": "country",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Department",
          "name": "department",
          "default": "",
          "description": "The department name where the user works",
          "routing": {
            "send": {
              "property": "department",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Display Name",
          "name": "displayName",
          "default": "",
          "description": "The name to display in the address book for the user",
          "routing": {
            "send": {
              "property": "displayName",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee ID",
          "name": "employeeId",
          "default": "",
          "description": "Employee identifier assigned by the organization",
          "routing": {
            "send": {
              "property": "employeeId",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee Type",
          "name": "employeeType",
          "default": "",
          "description": "Defines enterprise worker type",
          "placeholder": "e.g. Contractor",
          "routing": {
            "send": {
              "property": "employeeType",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "First Name",
          "name": "givenName",
          "default": "",
          "description": "The given name (first name) of the user",
          "routing": {
            "send": {
              "property": "givenName",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee Hire Date",
          "name": "employeeHireDate",
          "default": "",
          "description": "The hire date of the user",
          "placeholder": "e.g. 2014-01-01T00:00:00Z",
          "routing": {
            "send": {
              "property": "employeeHireDate",
              "type": "body",
              "value": "={{ $value?.toUTC().toISO() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Employee Leave Date",
          "name": "employeeLeaveDateTime",
          "default": "",
          "description": "The date and time when the user left or will leave the organization",
          "placeholder": "e.g. 2014-01-01T00:00:00Z",
          "routing": {
            "send": {
              "property": "employeeLeaveDateTime",
              "type": "body",
              "value": "={{ $value?.toUTC().toISO() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Employee Organization Data",
          "name": "employeeOrgData",
          "default": {},
          "description": "Represents organization data (for example, division and costCenter) associated with a user",
          "options": [
            {
              "displayName": "Employee Organization Data",
              "name": "employeeOrgValues",
              "values": [
                {
                  "displayName": "Cost Center",
                  "name": "costCenter",
                  "description": "The cost center associated with the user",
                  "routing": {
                    "send": {
                      "property": "employeeOrgData.costCenter",
                      "type": "body"
                    }
                  },
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Division",
                  "name": "division",
                  "description": "The name of the division in which the user works",
                  "routing": {
                    "send": {
                      "property": "employeeOrgData.division",
                      "type": "body"
                    }
                  },
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ],
          "type": "fixedCollection",
          "validateType": "string"
        },
        {
          "displayName": "Force Change Password",
          "name": "forceChangePassword",
          "default": "forceChangePasswordNextSignIn",
          "description": "Whether the user must change their password on the next sign-in",
          "options": [
            {
              "name": "Next Sign In",
              "value": "forceChangePasswordNextSignIn"
            },
            {
              "name": "Next Sign In with MFA",
              "value": "forceChangePasswordNextSignInWithMfa"
            }
          ],
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Interests",
          "name": "interests",
          "default": [],
          "description": "A list for the user to describe their interests",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Job Title",
          "name": "jobTitle",
          "default": "",
          "description": "The user's job title",
          "routing": {
            "send": {
              "property": "jobTitle",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Last Name",
          "name": "surname",
          "default": "",
          "description": "The user's last name (family name)",
          "routing": {
            "send": {
              "property": "surname",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mail",
          "name": "mail",
          "default": "",
          "description": "The SMTP address for the user",
          "placeholder": "e.g. jeff@contoso.com",
          "routing": {
            "send": {
              "property": "mail",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mail Nickname",
          "name": "mailNickname",
          "default": "",
          "description": "The mail alias for the user",
          "routing": {
            "send": {
              "property": "mailNickname",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mobile Phone",
          "name": "mobilePhone",
          "default": "",
          "description": "The primary cellular telephone number for the user",
          "routing": {
            "send": {
              "property": "mobilePhone",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "My Site",
          "name": "mySite",
          "default": "",
          "description": "The URL for the user's personal site",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Office Location",
          "name": "officeLocation",
          "default": "",
          "description": "The office location for the user",
          "routing": {
            "send": {
              "property": "officeLocation",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "On Premises Immutable ID",
          "name": "onPremisesImmutableId",
          "default": "",
          "description": "This property is used to associate an on-premises Active Directory user account to their Microsoft Entra user object",
          "routing": {
            "send": {
              "property": "onPremisesImmutableId",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Other Emails",
          "name": "otherMails",
          "default": [],
          "description": "Additional email addresses for the user",
          "routing": {
            "send": {
              "property": "otherMails",
              "type": "body"
            }
          },
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Password",
          "name": "password",
          "default": "",
          "description": "The password for the user. The password must satisfy minimum requirements as specified by the passwordPolicies property.",
          "routing": {
            "send": {
              "property": "passwordProfile.password",
              "type": "body"
            }
          },
          "type": "string",
          "typeOptions": {
            "password": true
          },
          "validateType": "string"
        },
        {
          "displayName": "Password Policies",
          "name": "passwordPolicies",
          "default": [],
          "description": "Specifies password policies",
          "options": [
            {
              "name": "Disable Password Expiration",
              "value": "DisablePasswordExpiration"
            },
            {
              "name": "Disable Strong Password",
              "value": "DisableStrongPassword"
            }
          ],
          "routing": {
            "send": {
              "property": "passwordPolicies",
              "type": "body",
              "value": "={{ $value?.join(\",\") }}"
            }
          },
          "type": "multiOptions"
        },
        {
          "displayName": "Past Projects",
          "name": "pastProjects",
          "default": [],
          "description": "A list of past projects the user has worked on",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Postal Code",
          "name": "postalCode",
          "default": "",
          "description": "The postal code for the user's address",
          "routing": {
            "send": {
              "property": "postalCode",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Preferred Language",
          "name": "preferredLanguage",
          "default": "",
          "description": "User's preferred language in ISO 639-1 code",
          "placeholder": "e.g. en-US",
          "routing": {
            "send": {
              "property": "preferredLanguage",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Responsibilities",
          "name": "responsibilities",
          "default": [],
          "description": "A list of responsibilities the user has",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Schools Attended",
          "name": "schools",
          "default": [],
          "description": "A list of schools the user attended",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Skills",
          "name": "skills",
          "default": [],
          "description": "A list of skills the user possesses",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "State",
          "name": "state",
          "default": "",
          "description": "The state or province of the user's address",
          "routing": {
            "send": {
              "property": "state",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Street Address",
          "name": "streetAddress",
          "default": "",
          "description": "The street address of the user's place of business",
          "routing": {
            "send": {
              "property": "streetAddress",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Usage Location",
          "name": "usageLocation",
          "default": "",
          "description": "Two-letter country code where the user is located",
          "placeholder": "e.g. US",
          "routing": {
            "send": {
              "property": "usageLocation",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "User Principal Name",
          "name": "userPrincipalName",
          "default": "",
          "description": "The user principal name (UPN)",
          "placeholder": "e.g. AdeleV@contoso.com",
          "routing": {
            "send": {
              "property": "userPrincipalName",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "User Type",
          "name": "userType",
          "default": "Guest",
          "description": "Classifies the user type",
          "options": [
            {
              "name": "Guest",
              "value": "Guest"
            },
            {
              "name": "Member",
              "value": "Member"
            }
          ],
          "routing": {
            "send": {
              "property": "userType",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "update"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a group"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a group"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Retrieve data for a specific group"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Retrieve a list of groups"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a group"
    }
  ]


node_type: nodes-base.microsoftEntra
package_name: n8n-nodes-base
display_name: Microsoft Entra ID
description: Interact with Microsoft Entra ID API
category: transform
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "microsoftEntraOAuth2Api",
  "required": true
  }
  ]

outputs:
  [
  "main"
  ]

updated_at: 2026-03-18 15:15:48
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Microsoft Entra ID node documentation
  description: Learn how to use the Microsoft Entra ID node in n8n. Follow technical documentation to integrate Microsoft Entra ID node into your workflows.
  contentType: [integration, reference]
  ---

  # Microsoft Entra ID node

  Use the Microsoft Entra ID node to automate work in Microsoft Entra ID and integrate Microsoft Entra ID with other applications. n8n has built-in support for a wide range of Microsoft Entra ID features, which includes creating, getting, updating, and deleting users and groups, as well as adding users to and removing them from groups.

  On this page, you'll find a list of operations the Microsoft Entra ID node supports, and links to more resources.

  ///  note  | Credentials
  You can find authentication information for this node [here](/integrations/builtin/credentials/microsoftentra.md).
  ///


  ## Operations

  * **Group**
  	* **Create**: Create a new group
  	* **Delete**: Delete an existing group
  	* **Get**: Retrieve data for a specific group
  	* **Get Many**: Retrieve a list of groups
  	* **Update**: Update a group
  * **User**
  	* **Create**: Create a new user
  	* **Delete**: Delete an existing user
  	* **Get**: Retrieve data for a specific user
  	* **Get Many**: Retrieve a list of users
  	* **Update**: Update a user
  	* **Add to Group**: Add user to a group
  	* **Remove from Group**: Remove user from a group

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'microsoft-entra-id-azure-active-directory') ]]

  ## Related resources

  <!-- vale from-microsoft.We = NO -->
  Refer to [Microsoft Entra ID's documentation](https://learn.microsoft.com/en-us/graph/api/resources/identity-network-access-overview?view=graph-rest-1.0){:target=_blank .external-link} for more information about the service.
  <!-- vale from-microsoft.We = YES -->

  --8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md"

  ## Common issues

  Here are some common errors and issues with the Microsoft Entra ID node and steps to resolve or troubleshoot them.

  ### Updating the Allow External Senders and Auto Subscribe New Members options fails

  You can't update the **Allow External Senders** and **Auto Subscribe New Members** options directly after creating a new group. You must wait after creating a group before you can change the values of these options.

  When designing workflows that use multiple Microsoft Entra ID nodes to first create groups and then update these options, add a [Wait](/integrations/builtin/core-nodes/n8n-nodes-base.wait.md) node between the two operations. A Wait node configured to pause for at least two seconds allows time for the group to fully initialize. After the wait, the update operation can complete without erroring.

properties_schema:
  [
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "user",
      "options": [
        {
          "name": "Group",
          "value": "group"
        },
        {
          "name": "User",
          "value": "user"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Create",
          "value": "create",
          "description": "Create a group",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "POST",
              "url": "/groups"
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Create group"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a group",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "DELETE",
              "url": "=/groups/{{ $parameter[\"group\"] }}"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"deleted\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Delete group"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve data for a specific group",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "GET",
              "url": "=/groups/{{ $parameter[\"group\"] }}"
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get group"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of groups",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "GET",
              "url": "/groups"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "rootProperty",
                  "properties": {
                    "property": "value"
                  }
                }
              ]
            }
          },
          "action": "Get many groups"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a group",
          "routing": {
            "request": {
              "ignoreHttpStatusErrors": true,
              "method": "PATCH",
              "url": "=/groups/{{ $parameter[\"group\"] }}"
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"updated\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Update group"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Group Type",
      "name": "groupType",
      "type": "options",
      "default": "",
      "options": [
        {
          "name": "Microsoft 365",
          "value": "Unified"
        },
        {
          "name": "Security",
          "value": ""
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Group Name",
      "name": "displayName",
      "type": "string",
      "default": "",
      "description": "The name to display in the address book for the group",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Group Email Address",
      "name": "mailNickname",
      "type": "string",
      "default": "",
      "description": "The mail alias for the group. Only enter the local-part without the domain.",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Mail Enabled",
      "name": "mailEnabled",
      "type": "boolean",
      "default": false,
      "description": "Whether the group is mail-enabled",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ],
          "groupType": [
            "Unified"
          ]
        }
      }
    },
    {
      "displayName": "Membership Type",
      "name": "membershipType",
      "type": "options",
      "default": "",
      "options": [
        {
          "name": "Assigned",
          "value": "",
          "description": "Lets you add specific users as members of a group and have unique permissions"
        },
        {
          "name": "Dynamic",
          "value": "DynamicMembership",
          "description": "Lets you use rules to automatically add and remove users as members"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Security Enabled",
      "name": "securityEnabled",
      "type": "boolean",
      "default": true,
      "description": "Whether the group is a security group",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ],
          "groupType": [
            "Unified"
          ]
        }
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Assignable to Role",
          "name": "isAssignableToRole",
          "default": false,
          "description": "Whether Microsoft Entra roles can be assigned to the group",
          "displayOptions": {
            "hide": {
              "/membershipType": [
                "DynamicMembership"
              ]
            }
          },
          "routing": {
            "send": {
              "property": "isAssignableToRole",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Description",
          "name": "description",
          "default": "",
          "description": "Description for the group",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Membership Rule",
          "name": "membershipRule",
          "default": "",
          "description": "The <a href=\"https://learn.microsoft.com/en-us/entra/identity/users/groups-dynamic-membership\">dynamic membership rules</a>",
          "displayOptions": {
            "show": {
              "/membershipType": [
                "DynamicMembership"
              ]
            }
          },
          "placeholder": "e.g. user.department -eq \"Marketing\"",
          "routing": {
            "send": {
              "property": "membershipRule",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Membership Rule Processing State",
          "name": "membershipRuleProcessingState",
          "default": "On",
          "description": "Indicates whether the dynamic membership processing is on or paused",
          "displayOptions": {
            "show": {
              "/membershipType": [
                "DynamicMembership"
              ]
            }
          },
          "options": [
            {
              "name": "On",
              "value": "On"
            },
            {
              "name": "Paused",
              "value": "Paused"
            }
          ],
          "routing": {
            "send": {
              "property": "membershipRuleProcessingState",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Preferred Data Location",
          "name": "preferredDataLocation",
          "default": "",
          "description": "A property set for the group that Office 365 services use to provision the corresponding data-at-rest resources (mailbox, OneDrive, groups sites, and so on)",
          "displayOptions": {
            "show": {
              "/groupType": [
                "Unified"
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Unique Name",
          "name": "uniqueName",
          "default": "",
          "description": "The unique identifier for the group, can only be updated if null, and is immutable once set",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Visibility",
          "name": "visibility",
          "default": "Public",
          "description": "Specifies the visibility of the group",
          "options": [
            {
              "name": "Private",
              "value": "Private"
            },
            {
              "name": "Public",
              "value": "Public"
            }
          ],
          "type": "options",
          "validateType": "options"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Group to Delete",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "delete"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Group to Get",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Output",
      "name": "output",
      "type": "options",
      "default": "simple",
      "options": [
        {
          "name": "Simplified",
          "value": "simple",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,createdDateTime,description,displayName,mail,mailEnabled,mailNickname,securityEnabled,securityIdentifier,visibility"
            }
          }
        },
        {
          "name": "Raw",
          "value": "raw"
        },
        {
          "name": "Selected Fields",
          "value": "fields"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Fields",
      "name": "fields",
      "type": "multiOptions",
      "default": [],
      "description": "The fields to add to the output",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "get"
          ],
          "output": [
            "fields"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getGroupProperties"
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Include Members",
          "name": "includeMembers",
          "default": false,
          "routing": {
            "send": {
              "property": "$expand",
              "type": "query",
              "value": "={{ $value ? \"members($select=id,accountEnabled,createdDateTime,displayName,employeeId,mail,securityIdentifier,userPrincipalName,userType)\" : undefined }}"
            }
          },
          "type": "boolean",
          "validateType": "boolean"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filter",
      "name": "filter",
      "type": "string",
      "default": "",
      "description": "<a href=\"https://docs.microsoft.com/en-us/graph/query-parameters#filter-parameter\">Query parameter</a> to filter results by",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Output",
      "name": "output",
      "type": "options",
      "default": "simple",
      "options": [
        {
          "name": "Simplified",
          "value": "simple",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,createdDateTime,description,displayName,mail,mailEnabled,mailNickname,securityEnabled,securityIdentifier,visibility"
            }
          }
        },
        {
          "name": "Raw",
          "value": "raw"
        },
        {
          "name": "Selected Fields",
          "value": "fields"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Fields",
      "name": "fields",
      "type": "multiOptions",
      "default": [],
      "description": "The fields to add to the output",
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "getAll"
          ],
          "output": [
            "fields"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getGroupPropertiesGetAll"
      }
    },
    {
      "displayName": "Group to Update",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Allow External Senders",
          "name": "allowExternalSenders",
          "default": false,
          "description": "Whether people external to the organization can send messages to the group. Wait a few seconds before editing this field in a newly created group.",
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Auto Subscribe New Members",
          "name": "autoSubscribeNewMembers",
          "default": false,
          "description": "Whether new members added to the group will be auto-subscribed to receive email notifications. Wait a few seconds before editing this field in a newly created group.",
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Description",
          "name": "description",
          "default": "",
          "description": "Description for the group",
          "routing": {
            "send": {
              "property": "description",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Group Name",
          "name": "displayName",
          "default": "",
          "description": "The name to display in the address book for the group",
          "routing": {
            "send": {
              "property": "displayName",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Group Email Address",
          "name": "mailNickname",
          "default": "",
          "description": "The mail alias for the group. Only enter the local-part without the domain.",
          "placeholder": "e.g. alias",
          "routing": {
            "send": {
              "property": "mailNickname",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Membership Rule",
          "name": "membershipRule",
          "default": "",
          "description": "The <a href=\"https://learn.microsoft.com/en-us/entra/identity/users/groups-dynamic-membership\">dynamic membership rules</a>",
          "placeholder": "e.g. user.department -eq \"Marketing\"",
          "routing": {
            "send": {
              "property": "membershipRule",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Membership Rule Processing State",
          "name": "membershipRuleProcessingState",
          "default": "On",
          "description": "Indicates whether the dynamic membership processing is on or paused",
          "options": [
            {
              "name": "On",
              "value": "On"
            },
            {
              "name": "Paused",
              "value": "Paused"
            }
          ],
          "routing": {
            "send": {
              "property": "membershipRuleProcessingState",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Preferred Data Location",
          "name": "preferredDataLocation",
          "default": "",
          "description": "A property set for the group that Office 365 services use to provision the corresponding data-at-rest resources (mailbox, OneDrive, groups sites, and so on)",
          "routing": {
            "send": {
              "property": "preferredDataLocation",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Security Enabled",
          "name": "securityEnabled",
          "default": true,
          "description": "Whether the group is a security group",
          "routing": {
            "send": {
              "property": "securityEnabled",
              "type": "body"
            }
          },
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Unique Name",
          "name": "uniqueName",
          "default": "",
          "description": "The unique identifier for the group, can only be updated if null, and is immutable once set",
          "routing": {
            "send": {
              "property": "uniqueName",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Visibility",
          "name": "visibility",
          "default": "Public",
          "description": "Specifies the visibility of the group",
          "options": [
            {
              "name": "Private",
              "value": "Private"
            },
            {
              "name": "Public",
              "value": "Public"
            }
          ],
          "routing": {
            "send": {
              "property": "visibility",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "group"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Add to Group",
          "value": "addGroup",
          "description": "Add user to group",
          "routing": {
            "request": {
              "method": "POST",
              "url": "=/groups/{{ $parameter[\"group\"] }}/members/$ref",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"added\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Add user to group"
        },
        {
          "name": "Create",
          "value": "create",
          "description": "Create a user",
          "routing": {
            "request": {
              "method": "POST",
              "url": "/users",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Create user"
        },
        {
          "name": "Delete",
          "value": "delete",
          "description": "Delete a user",
          "routing": {
            "request": {
              "method": "DELETE",
              "url": "=/users/{{ $parameter[\"user\"] }}",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"deleted\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Delete user"
        },
        {
          "name": "Get",
          "value": "get",
          "description": "Retrieve data for a specific user",
          "routing": {
            "request": {
              "method": "GET",
              "url": "=/users/{{ $parameter[\"user\"] }}",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null
              ]
            }
          },
          "action": "Get user"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Retrieve a list of users",
          "routing": {
            "request": {
              "method": "GET",
              "url": "/users",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "rootProperty",
                  "properties": {
                    "property": "value"
                  }
                }
              ]
            }
          },
          "action": "Get many users"
        },
        {
          "name": "Remove from Group",
          "value": "removeGroup",
          "description": "Remove user from group",
          "routing": {
            "request": {
              "method": "DELETE",
              "url": "=/groups/{{ $parameter[\"group\"] }}/members/{{ $parameter[\"user\"] }}/$ref",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"removed\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Remove user from group"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update a user",
          "routing": {
            "request": {
              "method": "PATCH",
              "url": "=/users/{{ $parameter[\"user\"] }}",
              "ignoreHttpStatusErrors": true
            },
            "output": {
              "postReceive": [
                null,
                {
                  "type": "set",
                  "properties": {
                    "value": "={{ { \"updated\": true } }}"
                  }
                }
              ]
            }
          },
          "action": "Update user"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Group",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "addGroup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "User to Add",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "addGroup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Account Enabled",
      "name": "accountEnabled",
      "type": "boolean",
      "default": true,
      "description": "Whether the account is enabled",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Display Name",
      "name": "displayName",
      "type": "string",
      "default": "",
      "description": "The name to display in the address book for the user",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "User Principal Name",
      "name": "userPrincipalName",
      "type": "string",
      "default": "",
      "description": "The user principal name (UPN)",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Mail Nickname",
      "name": "mailNickname",
      "type": "string",
      "default": "",
      "description": "The mail alias for the user",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "Password",
      "name": "password",
      "type": "string",
      "default": "",
      "description": "The password for the user",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      },
      "typeOptions": {
        "password": true
      }
    },
    {
      "displayName": "Additional Fields",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "About Me",
          "name": "aboutMe",
          "default": "",
          "description": "A freeform text entry field for the user to describe themselves",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Age Group",
          "name": "ageGroup",
          "default": "Adult",
          "description": "Sets the age group of the user",
          "options": [
            {
              "name": "Adult",
              "value": "Adult"
            },
            {
              "name": "Minor",
              "value": "Minor"
            },
            {
              "name": "Not Adult",
              "value": "NotAdult"
            }
          ],
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Birthday",
          "name": "birthday",
          "default": "",
          "description": "The birthday of the user",
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Business Phone",
          "name": "businessPhones",
          "default": "",
          "description": "The telephone number for the user",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "City",
          "name": "city",
          "default": "",
          "description": "The city in which the user is located",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Company Name",
          "name": "companyName",
          "default": "",
          "description": "The name of the company associated with the user",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Consent Provided",
          "name": "consentProvidedForMinor",
          "default": "Denied",
          "description": "Specifies if consent is provided for minors",
          "options": [
            {
              "name": "Denied",
              "value": "Denied"
            },
            {
              "name": "Granted",
              "value": "Granted"
            },
            {
              "name": "Not Required",
              "value": "NotRequired"
            }
          ],
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Country",
          "name": "country",
          "default": "",
          "description": "The country/region of the user",
          "placeholder": "e.g. US",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Department",
          "name": "department",
          "default": "",
          "description": "The department name where the user works",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee ID",
          "name": "employeeId",
          "default": "",
          "description": "Employee identifier assigned by the organization",
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee Type",
          "name": "employeeType",
          "default": "",
          "description": "Defines enterprise worker type",
          "placeholder": "e.g. Contractor",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee Hire Date",
          "name": "employeeHireDate",
          "default": "",
          "description": "The hire date of the user",
          "placeholder": "e.g. 2014-01-01T00:00:00Z",
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Employee Leave Date",
          "name": "employeeLeaveDateTime",
          "default": "",
          "description": "The date and time when the user left or will leave the organization",
          "placeholder": "e.g. 2014-01-01T00:00:00Z",
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Employee Organization Data",
          "name": "employeeOrgData",
          "default": {},
          "description": "Represents organization data (for example, division and costCenter) associated with a user",
          "options": [
            {
              "displayName": "Employee Organization Data",
              "name": "employeeOrgValues",
              "values": [
                {
                  "displayName": "Cost Center",
                  "name": "costCenter",
                  "description": "The cost center associated with the user",
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Division",
                  "name": "division",
                  "description": "The name of the division in which the user works",
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ],
          "type": "fixedCollection",
          "validateType": "string"
        },
        {
          "displayName": "First Name",
          "name": "givenName",
          "default": "",
          "description": "The given name (first name) of the user",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Force Change Password",
          "name": "forceChangePassword",
          "default": "forceChangePasswordNextSignIn",
          "description": "Whether the user must change their password on the next sign-in",
          "options": [
            {
              "name": "Next Sign In",
              "value": "forceChangePasswordNextSignIn"
            },
            {
              "name": "Next Sign In with MFA",
              "value": "forceChangePasswordNextSignInWithMfa"
            }
          ],
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Interests",
          "name": "interests",
          "default": [],
          "description": "A list for the user to describe their interests",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Job Title",
          "name": "jobTitle",
          "default": "",
          "description": "The user's job title",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Last Name",
          "name": "surname",
          "default": "",
          "description": "The user's last name (family name)",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mail",
          "name": "mail",
          "default": "",
          "description": "The SMTP address for the user",
          "placeholder": "e.g. jeff@contoso.com",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mobile Phone",
          "name": "mobilePhone",
          "default": "",
          "description": "The primary cellular telephone number for the user",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "My Site",
          "name": "mySite",
          "default": "",
          "description": "The URL for the user's personal site",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Office Location",
          "name": "officeLocation",
          "default": "",
          "description": "The office location for the user",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "On Premises Immutable ID",
          "name": "onPremisesImmutableId",
          "default": "",
          "description": "This property is used to associate an on-premises Active Directory user account to their Microsoft Entra user object",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Other Emails",
          "name": "otherMails",
          "default": [],
          "description": "Additional email addresses for the user",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Password Policies",
          "name": "passwordPolicies",
          "default": [],
          "description": "Specifies password policies",
          "options": [
            {
              "name": "Disable Password Expiration",
              "value": "DisablePasswordExpiration"
            },
            {
              "name": "Disable Strong Password",
              "value": "DisableStrongPassword"
            }
          ],
          "type": "multiOptions"
        },
        {
          "displayName": "Past Projects",
          "name": "pastProjects",
          "default": [],
          "description": "A list of past projects the user has worked on",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Postal Code",
          "name": "postalCode",
          "default": "",
          "description": "The postal code for the user's address",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Preferred Language",
          "name": "preferredLanguage",
          "default": "",
          "description": "User's preferred language in ISO 639-1 code",
          "placeholder": "e.g. en-US",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Responsibilities",
          "name": "responsibilities",
          "default": [],
          "description": "A list of responsibilities the user has",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Schools Attended",
          "name": "schools",
          "default": [],
          "description": "A list of schools the user attended",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Skills",
          "name": "skills",
          "default": [],
          "description": "A list of skills the user possesses",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "State",
          "name": "state",
          "default": "",
          "description": "The state or province of the user's address",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Street Address",
          "name": "streetAddress",
          "default": "",
          "description": "The street address of the user's place of business",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Usage Location",
          "name": "usageLocation",
          "default": "",
          "description": "Two-letter country code where the user is located",
          "placeholder": "e.g. US",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "User Type",
          "name": "userType",
          "default": "Guest",
          "description": "Classifies the user type",
          "options": [
            {
              "name": "Guest",
              "value": "Guest"
            },
            {
              "name": "Member",
              "value": "Member"
            }
          ],
          "type": "options",
          "validateType": "options"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "create"
          ]
        }
      }
    },
    {
      "displayName": "User to Delete",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "delete"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "User to Get",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "get"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Output",
      "name": "output",
      "type": "options",
      "default": "simple",
      "options": [
        {
          "name": "Simplified",
          "value": "simple",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,createdDateTime,displayName,userPrincipalName,mail,mailNickname,securityIdentifier"
            }
          }
        },
        {
          "name": "Raw",
          "value": "raw",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,accountEnabled,ageGroup,assignedLicenses,assignedPlans,authorizationInfo,businessPhones,city,companyName,consentProvidedForMinor,country,createdDateTime,creationType,customSecurityAttributes,deletedDateTime,department,displayName,employeeHireDate,employeeId,employeeLeaveDateTime,employeeOrgData,employeeType,externalUserState,externalUserStateChangeDateTime,faxNumber,givenName,identities,imAddresses,isManagementRestricted,isResourceAccount,jobTitle,lastPasswordChangeDateTime,legalAgeGroupClassification,licenseAssignmentStates,mail,mailNickname,mobilePhone,officeLocation,onPremisesDistinguishedName,onPremisesDomainName,onPremisesExtensionAttributes,onPremisesImmutableId,onPremisesLastSyncDateTime,onPremisesProvisioningErrors,onPremisesSamAccountName,onPremisesSecurityIdentifier,onPremisesSyncEnabled,onPremisesUserPrincipalName,otherMails,passwordPolicies,passwordProfile,postalCode,preferredDataLocation,preferredLanguage,provisionedPlans,proxyAddresses,securityIdentifier,serviceProvisioningErrors,showInAddressList,signInSessionsValidFromDateTime,state,streetAddress,surname,usageLocation,userPrincipalName,userType"
            }
          }
        },
        {
          "name": "Selected Fields",
          "value": "fields"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Fields",
      "name": "fields",
      "type": "multiOptions",
      "default": [],
      "description": "The fields to add to the output",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "get"
          ],
          "output": [
            "fields"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getUserProperties"
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1
      }
    },
    {
      "displayName": "Filter",
      "name": "filter",
      "type": "string",
      "default": "",
      "description": "<a href=\"https://docs.microsoft.com/en-us/graph/query-parameters#filter-parameter\">Query parameter</a> to filter results by",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Output",
      "name": "output",
      "type": "options",
      "default": "simple",
      "options": [
        {
          "name": "Simplified",
          "value": "simple",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,createdDateTime,displayName,userPrincipalName,mail,mailNickname,securityIdentifier"
            }
          }
        },
        {
          "name": "Raw",
          "value": "raw",
          "routing": {
            "send": {
              "property": "$select",
              "type": "query",
              "value": "id,accountEnabled,ageGroup,assignedLicenses,assignedPlans,authorizationInfo,businessPhones,city,companyName,consentProvidedForMinor,country,createdDateTime,creationType,customSecurityAttributes,deletedDateTime,department,displayName,employeeHireDate,employeeId,employeeLeaveDateTime,employeeOrgData,employeeType,externalUserState,externalUserStateChangeDateTime,faxNumber,givenName,identities,imAddresses,isManagementRestricted,isResourceAccount,jobTitle,lastPasswordChangeDateTime,legalAgeGroupClassification,licenseAssignmentStates,mail,mailNickname,mobilePhone,officeLocation,onPremisesDistinguishedName,onPremisesDomainName,onPremisesExtensionAttributes,onPremisesImmutableId,onPremisesLastSyncDateTime,onPremisesProvisioningErrors,onPremisesSamAccountName,onPremisesSecurityIdentifier,onPremisesSyncEnabled,onPremisesUserPrincipalName,otherMails,passwordPolicies,passwordProfile,postalCode,preferredDataLocation,preferredLanguage,provisionedPlans,proxyAddresses,securityIdentifier,serviceProvisioningErrors,showInAddressList,signInSessionsValidFromDateTime,state,streetAddress,surname,usageLocation,userPrincipalName,userType"
            }
          }
        },
        {
          "name": "Selected Fields",
          "value": "fields"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Fields",
      "name": "fields",
      "type": "multiOptions",
      "default": [],
      "description": "The fields to add to the output",
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "getAll"
          ],
          "output": [
            "fields"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsMethod": "getUserPropertiesGetAll"
      }
    },
    {
      "displayName": "Group",
      "name": "group",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "removeGroup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getGroups",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "User to Remove",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "removeGroup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "User to Update",
      "name": "user",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getUsers",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "placeholder": "e.g. 02bd9fd6-8f93-4758-87c3-1fb73740a315",
          "type": "string"
        }
      ]
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "About Me",
          "name": "aboutMe",
          "default": "",
          "description": "A freeform text entry field for the user to describe themselves",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Account Enabled",
          "name": "accountEnabled",
          "default": true,
          "description": "Whether the account is enabled",
          "routing": {
            "send": {
              "property": "accountEnabled",
              "type": "body"
            }
          },
          "type": "boolean",
          "validateType": "boolean"
        },
        {
          "displayName": "Age Group",
          "name": "ageGroup",
          "default": "Adult",
          "description": "Sets the age group of the user",
          "options": [
            {
              "name": "Adult",
              "value": "Adult"
            },
            {
              "name": "Minor",
              "value": "Minor"
            },
            {
              "name": "Not Adult",
              "value": "NotAdult"
            }
          ],
          "routing": {
            "send": {
              "property": "ageGroup",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Birthday",
          "name": "birthday",
          "default": "",
          "description": "The birthday of the user",
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Business Phone",
          "name": "businessPhones",
          "default": "",
          "description": "The telephone number for the user",
          "routing": {
            "send": {
              "property": "businessPhones",
              "type": "body",
              "value": "={{ $value ? [$value] : [] }}"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "City",
          "name": "city",
          "default": "",
          "description": "The city in which the user is located",
          "routing": {
            "send": {
              "property": "city",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Company Name",
          "name": "companyName",
          "default": "",
          "description": "The name of the company associated with the user",
          "routing": {
            "send": {
              "property": "companyName",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Consent Provided",
          "name": "consentProvidedForMinor",
          "default": "Denied",
          "description": "Specifies if consent is provided for minors",
          "options": [
            {
              "name": "Denied",
              "value": "Denied"
            },
            {
              "name": "Granted",
              "value": "Granted"
            },
            {
              "name": "Not Required",
              "value": "NotRequired"
            }
          ],
          "routing": {
            "send": {
              "property": "consentProvidedForMinor",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Country",
          "name": "country",
          "default": "",
          "description": "The country/region of the user",
          "placeholder": "e.g. US",
          "routing": {
            "send": {
              "property": "country",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Department",
          "name": "department",
          "default": "",
          "description": "The department name where the user works",
          "routing": {
            "send": {
              "property": "department",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Display Name",
          "name": "displayName",
          "default": "",
          "description": "The name to display in the address book for the user",
          "routing": {
            "send": {
              "property": "displayName",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee ID",
          "name": "employeeId",
          "default": "",
          "description": "Employee identifier assigned by the organization",
          "routing": {
            "send": {
              "property": "employeeId",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee Type",
          "name": "employeeType",
          "default": "",
          "description": "Defines enterprise worker type",
          "placeholder": "e.g. Contractor",
          "routing": {
            "send": {
              "property": "employeeType",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "First Name",
          "name": "givenName",
          "default": "",
          "description": "The given name (first name) of the user",
          "routing": {
            "send": {
              "property": "givenName",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Employee Hire Date",
          "name": "employeeHireDate",
          "default": "",
          "description": "The hire date of the user",
          "placeholder": "e.g. 2014-01-01T00:00:00Z",
          "routing": {
            "send": {
              "property": "employeeHireDate",
              "type": "body",
              "value": "={{ $value?.toUTC().toISO() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Employee Leave Date",
          "name": "employeeLeaveDateTime",
          "default": "",
          "description": "The date and time when the user left or will leave the organization",
          "placeholder": "e.g. 2014-01-01T00:00:00Z",
          "routing": {
            "send": {
              "property": "employeeLeaveDateTime",
              "type": "body",
              "value": "={{ $value?.toUTC().toISO() }}"
            }
          },
          "type": "dateTime",
          "validateType": "dateTime"
        },
        {
          "displayName": "Employee Organization Data",
          "name": "employeeOrgData",
          "default": {},
          "description": "Represents organization data (for example, division and costCenter) associated with a user",
          "options": [
            {
              "displayName": "Employee Organization Data",
              "name": "employeeOrgValues",
              "values": [
                {
                  "displayName": "Cost Center",
                  "name": "costCenter",
                  "description": "The cost center associated with the user",
                  "routing": {
                    "send": {
                      "property": "employeeOrgData.costCenter",
                      "type": "body"
                    }
                  },
                  "type": "string",
                  "default": ""
                },
                {
                  "displayName": "Division",
                  "name": "division",
                  "description": "The name of the division in which the user works",
                  "routing": {
                    "send": {
                      "property": "employeeOrgData.division",
                      "type": "body"
                    }
                  },
                  "type": "string",
                  "default": ""
                }
              ]
            }
          ],
          "type": "fixedCollection",
          "validateType": "string"
        },
        {
          "displayName": "Force Change Password",
          "name": "forceChangePassword",
          "default": "forceChangePasswordNextSignIn",
          "description": "Whether the user must change their password on the next sign-in",
          "options": [
            {
              "name": "Next Sign In",
              "value": "forceChangePasswordNextSignIn"
            },
            {
              "name": "Next Sign In with MFA",
              "value": "forceChangePasswordNextSignInWithMfa"
            }
          ],
          "routing": {
            "send": {
              "preSend": [
                null
              ]
            }
          },
          "type": "options",
          "validateType": "options"
        },
        {
          "displayName": "Interests",
          "name": "interests",
          "default": [],
          "description": "A list for the user to describe their interests",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Job Title",
          "name": "jobTitle",
          "default": "",
          "description": "The user's job title",
          "routing": {
            "send": {
              "property": "jobTitle",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Last Name",
          "name": "surname",
          "default": "",
          "description": "The user's last name (family name)",
          "routing": {
            "send": {
              "property": "surname",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mail",
          "name": "mail",
          "default": "",
          "description": "The SMTP address for the user",
          "placeholder": "e.g. jeff@contoso.com",
          "routing": {
            "send": {
              "property": "mail",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mail Nickname",
          "name": "mailNickname",
          "default": "",
          "description": "The mail alias for the user",
          "routing": {
            "send": {
              "property": "mailNickname",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Mobile Phone",
          "name": "mobilePhone",
          "default": "",
          "description": "The primary cellular telephone number for the user",
          "routing": {
            "send": {
              "property": "mobilePhone",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "My Site",
          "name": "mySite",
          "default": "",
          "description": "The URL for the user's personal site",
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Office Location",
          "name": "officeLocation",
          "default": "",
          "description": "The office location for the user",
          "routing": {
            "send": {
              "property": "officeLocation",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "On Premises Immutable ID",
          "name": "onPremisesImmutableId",
          "default": "",
          "description": "This property is used to associate an on-premises Active Directory user account to their Microsoft Entra user object",
          "routing": {
            "send": {
              "property": "onPremisesImmutableId",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Other Emails",
          "name": "otherMails",
          "default": [],
          "description": "Additional email addresses for the user",
          "routing": {
            "send": {
              "property": "otherMails",
              "type": "body"
            }
          },
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Password",
          "name": "password",
          "default": "",
          "description": "The password for the user. The password must satisfy minimum requirements as specified by the passwordPolicies property.",
          "routing": {
            "send": {
              "property": "passwordProfile.password",
              "type": "body"
            }
          },
          "type": "string",
          "typeOptions": {
            "password": true
          },
          "validateType": "string"
        },
        {
          "displayName": "Password Policies",
          "name": "passwordPolicies",
          "default": [],
          "description": "Specifies password policies",
          "options": [
            {
              "name": "Disable Password Expiration",
              "value": "DisablePasswordExpiration"
            },
            {
              "name": "Disable Strong Password",
              "value": "DisableStrongPassword"
            }
          ],
          "routing": {
            "send": {
              "property": "passwordPolicies",
              "type": "body",
              "value": "={{ $value?.join(\",\") }}"
            }
          },
          "type": "multiOptions"
        },
        {
          "displayName": "Past Projects",
          "name": "pastProjects",
          "default": [],
          "description": "A list of past projects the user has worked on",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Postal Code",
          "name": "postalCode",
          "default": "",
          "description": "The postal code for the user's address",
          "routing": {
            "send": {
              "property": "postalCode",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Preferred Language",
          "name": "preferredLanguage",
          "default": "",
          "description": "User's preferred language in ISO 639-1 code",
          "placeholder": "e.g. en-US",
          "routing": {
            "send": {
              "property": "preferredLanguage",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Responsibilities",
          "name": "responsibilities",
          "default": [],
          "description": "A list of responsibilities the user has",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Schools Attended",
          "name": "schools",
          "default": [],
          "description": "A list of schools the user attended",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "Skills",
          "name": "skills",
          "default": [],
          "description": "A list of skills the user possesses",
          "type": "string",
          "typeOptions": {
            "multipleValues": true
          },
          "validateType": "array"
        },
        {
          "displayName": "State",
          "name": "state",
          "default": "",
          "description": "The state or province of the user's address",
          "routing": {
            "send": {
              "property": "state",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Street Address",
          "name": "streetAddress",
          "default": "",
          "description": "The street address of the user's place of business",
          "routing": {
            "send": {
              "property": "streetAddress",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "Usage Location",
          "name": "usageLocation",
          "default": "",
          "description": "Two-letter country code where the user is located",
          "placeholder": "e.g. US",
          "routing": {
            "send": {
              "property": "usageLocation",
              "type": "body"
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "User Principal Name",
          "name": "userPrincipalName",
          "default": "",
          "description": "The user principal name (UPN)",
          "placeholder": "e.g. AdeleV@contoso.com",
          "routing": {
            "send": {
              "property": "userPrincipalName",
              "type": "body",
              "preSend": [
                null
              ]
            }
          },
          "type": "string",
          "validateType": "string"
        },
        {
          "displayName": "User Type",
          "name": "userType",
          "default": "Guest",
          "description": "Classifies the user type",
          "options": [
            {
              "name": "Guest",
              "value": "Guest"
            },
            {
              "name": "Member",
              "value": "Member"
            }
          ],
          "routing": {
            "send": {
              "property": "userType",
              "type": "body"
            }
          },
          "type": "options",
          "validateType": "options"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "user"
          ],
          "operation": [
            "update"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "create",
      "name": "Create",
      "description": "Create a group"
    },
    {
      "operation": "delete",
      "name": "Delete",
      "description": "Delete a group"
    },
    {
      "operation": "get",
      "name": "Get",
      "description": "Retrieve data for a specific group"
    },
    {
      "operation": "getAll",
      "name": "Get Many",
      "description": "Retrieve a list of groups"
    },
    {
      "operation": "update",
      "name": "Update",
      "description": "Update a group"
    }
  ]


node_type: nodes-base.microsoftExcel
package_name: n8n-nodes-base
display_name: Microsoft Excel 365
description: Consume Microsoft Excel API
category: input
development_style: programmatic
version: 2.2
credentials_required:
  [
  {
  "name": "microsoftExcelOAuth2Api",
  "required": true
  }
  ]

outputs:
  [
  "main"
  ]

updated_at: 2026-03-18 15:15:48
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Microsoft Excel 365 node documentation
  description: Learn how to use the Microsoft Excel node in n8n. Follow technical documentation to integrate Microsoft Excel node into your workflows.
  contentType: [integration, reference]
  priority: high
  ---

  # Microsoft Excel 365 node

  Use the Microsoft Excel node to automate work in Microsoft Excel, and integrate Microsoft Excel with other applications. n8n has built-in support for a wide range of Microsoft Excel features, including adding and retrieving lists of table data, and workbooks, as well as getting worksheets. 

  On this page, you'll find a list of operations the Microsoft Excel node supports and links to more resources.

  /// note | Credentials
  Refer to [Microsoft credentials](/integrations/builtin/credentials/microsoft.md) for guidance on setting up authentication.
  ///

  --8<-- "_snippets/integrations/builtin/app-nodes/ai-tools.md"

  ## Operations

  * Table
      * Adds rows to the end of the table
      * Retrieve a list of table columns
      * Retrieve a list of table rows
      * Looks for a specific column value and then returns the matching row
  * Workbook
      * Adds a new worksheet to the workbook.
      * Get data of all workbooks
  * Worksheet
      * Get all worksheets
      * Get worksheet content

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'microsoft-excel') ]]

  --8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md"

properties_schema:
  [
    {
      "displayName": "This node connects to the Microsoft 365 cloud platform. Use the 'Extract from File' and 'Convert to File' nodes to directly manipulate spreadsheet files (.xls, .csv, etc). <a href=\"https://n8n.io/workflows/890-read-in-an-excel-spreadsheet-file/\" target=\"_blank\">More info</a>.",
      "name": "notice",
      "type": "notice",
      "default": ""
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "workbook",
      "options": [
        {
          "name": "Table",
          "value": "table",
          "description": "Represents an Excel table"
        },
        {
          "name": "Workbook",
          "value": "workbook",
          "description": "A workbook is the top level object which contains one or more worksheets"
        },
        {
          "name": "Sheet",
          "value": "worksheet",
          "description": "A sheet is a grid of cells which can contain data, tables, charts, etc"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "append",
      "options": [
        {
          "name": "Append",
          "value": "append",
          "description": "Add rows to the end of the table",
          "action": "Append rows to table"
        },
        {
          "name": "Convert to Range",
          "value": "convertToRange",
          "description": "Convert a table to a range",
          "action": "Convert to range"
        },
        {
          "name": "Create",
          "value": "addTable",
          "description": "Add a table based on range",
          "action": "Create a table"
        },
        {
          "name": "Delete",
          "value": "deleteTable",
          "description": "Delete a table",
          "action": "Delete a table"
        },
        {
          "name": "Get Columns",
          "value": "getColumns",
          "description": "Retrieve a list of table columns",
          "action": "Get columns"
        },
        {
          "name": "Get Rows",
          "value": "getRows",
          "description": "Retrieve a list of table rows",
          "action": "Get rows"
        },
        {
          "name": "Lookup",
          "value": "lookup",
          "description": "Look for rows that match a given value in a column",
          "action": "Lookup a column"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "append"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "append"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Table",
      "name": "table",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "append"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetTables"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Table ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Data Mode",
      "name": "dataMode",
      "type": "options",
      "default": "define",
      "options": [
        {
          "name": "Auto-Map Input Data to Columns",
          "value": "autoMap",
          "description": "Use when node input properties match destination column names"
        },
        {
          "name": "Map Each Column Below",
          "value": "define",
          "description": "Set the value for each destination column"
        },
        {
          "name": "Raw",
          "value": "raw",
          "description": "Send raw data as JSON"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "append"
          ]
        }
      }
    },
    {
      "displayName": "Data",
      "name": "data",
      "type": "json",
      "default": "",
      "description": "Raw values for the specified range as array of string arrays in JSON format",
      "required": true,
      "displayOptions": {
        "show": {
          "dataMode": [
            "raw"
          ],
          "resource": [
            "table"
          ],
          "operation": [
            "append"
          ]
        }
      }
    },
    {
      "displayName": "Values to Send",
      "name": "fieldsUi",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Field",
          "name": "values",
          "values": [
            {
              "displayName": "Column",
              "name": "column",
              "type": "options",
              "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
              "typeOptions": {
                "loadOptionsDependsOn": [
                  "table.value",
                  "worksheet.value",
                  "workbook.value"
                ],
                "loadOptionsMethod": "getTableColumns"
              },
              "default": ""
            },
            {
              "displayName": "Value",
              "name": "fieldValue",
              "type": "string",
              "default": "",
              "requiresDataPath": "single"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "dataMode": [
            "define"
          ],
          "resource": [
            "table"
          ],
          "operation": [
            "append"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Index",
          "name": "index",
          "type": "number",
          "default": 0,
          "typeOptions": {
            "minValue": 0
          },
          "description": "Specifies the relative position of the new row. If not defined, the addition happens at the end. Any row below the inserted row will be shifted downwards. First row index is 0."
        },
        {
          "displayName": "RAW Data",
          "name": "rawData",
          "type": "boolean",
          "default": 0,
          "description": "Whether the data should be returned RAW instead of parsed into keys according to their header"
        },
        {
          "displayName": "Data Property",
          "name": "dataProperty",
          "type": "string",
          "default": "data",
          "required": true,
          "displayOptions": {
            "show": {
              "rawData": [
                true
              ]
            }
          },
          "description": "The name of the property into which to write the RAW data"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "append"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "addTable"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "addTable"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Select Range",
      "name": "selectRange",
      "type": "options",
      "default": "auto",
      "options": [
        {
          "name": "Automatically",
          "value": "auto",
          "description": "The whole used range on the selected sheet will be converted into a table"
        },
        {
          "name": "Manually",
          "value": "manual",
          "description": "Select a range that will be converted into a table"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "addTable"
          ]
        }
      }
    },
    {
      "displayName": "Range",
      "name": "range",
      "type": "string",
      "default": "",
      "description": "The range of cells that will be converted to a table",
      "displayOptions": {
        "show": {
          "selectRange": [
            "manual"
          ],
          "resource": [
            "table"
          ],
          "operation": [
            "addTable"
          ]
        }
      }
    },
    {
      "displayName": "Has Headers",
      "name": "hasHeaders",
      "type": "boolean",
      "default": true,
      "description": "Whether the range has column labels. When this property set to false Excel will automatically generate header shifting the data down by one row.",
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "addTable"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "convertToRange"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "convertToRange"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Table",
      "name": "table",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "convertToRange"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetTables"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Table ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "deleteTable"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "deleteTable"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Table",
      "name": "table",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "deleteTable"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetTables"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Table ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getColumns"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getColumns"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Table",
      "name": "table",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getColumns"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetTables"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Table ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getColumns"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 100,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "returnAll": [
            false
          ],
          "resource": [
            "table"
          ],
          "operation": [
            "getColumns"
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 500
      }
    },
    {
      "displayName": "RAW Data",
      "name": "rawData",
      "type": "boolean",
      "default": false,
      "description": "Whether the data should be returned RAW instead of parsed into keys according to their header",
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getColumns"
          ]
        }
      }
    },
    {
      "displayName": "Data Property",
      "name": "dataProperty",
      "type": "string",
      "default": "data",
      "description": "The name of the property into which to write the RAW data",
      "displayOptions": {
        "show": {
          "rawData": [
            true
          ],
          "resource": [
            "table"
          ],
          "operation": [
            "getColumns"
          ]
        }
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Fields",
          "name": "fields",
          "type": "string",
          "default": "",
          "description": "A comma-separated list of the fields to include in the response"
        }
      ],
      "displayOptions": {
        "show": {
          "rawData": [
            true
          ],
          "resource": [
            "table"
          ],
          "operation": [
            "getColumns"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getRows"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getRows"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Table",
      "name": "table",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getRows"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetTables"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Table ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getRows"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 100,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "returnAll": [
            false
          ],
          "resource": [
            "table"
          ],
          "operation": [
            "getRows"
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 500
      }
    },
    {
      "displayName": "RAW Data",
      "name": "rawData",
      "type": "boolean",
      "default": false,
      "description": "Whether the data should be returned RAW instead of parsed into keys according to their header",
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getRows"
          ]
        }
      }
    },
    {
      "displayName": "Data Property",
      "name": "dataProperty",
      "type": "string",
      "default": "data",
      "description": "The name of the property into which to write the RAW data",
      "displayOptions": {
        "show": {
          "rawData": [
            true
          ],
          "resource": [
            "table"
          ],
          "operation": [
            "getRows"
          ]
        }
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Fields",
          "name": "fields",
          "type": "string",
          "default": "",
          "description": "A comma-separated list of the fields to include in the response",
          "displayOptions": {
            "show": {
              "/rawData": [
                true
              ]
            }
          }
        },
        {
          "displayName": "Column Names or IDs",
          "name": "column",
          "type": "multiOptions",
          "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>. Choose from the list, or specify IDs using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>.",
          "typeOptions": {
            "loadOptionsDependsOn": [
              "table.value",
              "worksheet.value",
              "workbook.value"
            ],
            "loadOptionsMethod": "getTableColumns"
          },
          "default": [],
          "displayOptions": {
            "show": {
              "/rawData": [
                false
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "getRows"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "lookup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "lookup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Table",
      "name": "table",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "lookup"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetTables"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Table ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Lookup Column",
      "name": "lookupColumn",
      "type": "string",
      "default": "",
      "description": "The name of the column in which to look for value",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "lookup"
          ]
        }
      }
    },
    {
      "displayName": "Lookup Value",
      "name": "lookupValue",
      "type": "string",
      "default": "",
      "description": "The value to look for in column",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "lookup"
          ]
        }
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Return All Matches",
          "name": "returnAllMatches",
          "type": "boolean",
          "default": false,
          "description": "By default only the first result gets returned. If options gets set all found matches get returned."
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "table"
          ],
          "operation": [
            "lookup"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Add Sheet",
          "value": "addWorksheet",
          "description": "Add a new sheet to the workbook",
          "action": "Add a sheet to a workbook"
        },
        {
          "name": "Delete",
          "value": "deleteWorkbook",
          "description": "Delete workbook",
          "action": "Delete workbook"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get workbooks",
          "action": "Get workbooks"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "workbook"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "workbook"
          ],
          "operation": [
            "addWorksheet"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Options",
      "name": "additionalFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Name",
          "name": "name",
          "type": "string",
          "default": "",
          "description": "The name of the sheet to be added. The name should be unique. If not specified, Excel will determine the name of the new worksheet."
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "workbook"
          ],
          "operation": [
            "addWorksheet"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "workbook"
          ],
          "operation": [
            "deleteWorkbook"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "workbook"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 100,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "returnAll": [
            false
          ],
          "resource": [
            "workbook"
          ],
          "operation": [
            "getAll"
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 500
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Fields",
          "name": "fields",
          "type": "string",
          "default": "",
          "description": "A comma-separated list of the fields to include in the response"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "workbook"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "getAll",
      "options": [
        {
          "name": "Append",
          "value": "append",
          "description": "Append data to sheet",
          "action": "Append data to sheet"
        },
        {
          "name": "Append or Update",
          "value": "upsert",
          "description": "Append a new row or update the current one if it already exists (upsert)",
          "action": "Append or update a sheet"
        },
        {
          "name": "Clear",
          "value": "clear",
          "description": "Clear sheet",
          "action": "Clear sheet"
        },
        {
          "name": "Delete",
          "value": "deleteWorksheet",
          "description": "Delete sheet",
          "action": "Delete sheet"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "description": "Get a list of sheets",
          "action": "Get sheets"
        },
        {
          "name": "Get Rows",
          "value": "readRows",
          "description": "Retrieve a list of sheet rows",
          "action": "Get rows from sheet"
        },
        {
          "name": "Update",
          "value": "update",
          "description": "Update rows of a sheet or sheet range",
          "action": "Update sheet"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "append"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "append"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Data Mode",
      "name": "dataMode",
      "type": "options",
      "default": "define",
      "options": [
        {
          "name": "Auto-Map Input Data to Columns",
          "value": "autoMap",
          "description": "Use when node input properties match destination column names"
        },
        {
          "name": "Map Each Column Below",
          "value": "define",
          "description": "Set the value for each destination column"
        },
        {
          "name": "Raw",
          "value": "raw",
          "description": "Send raw data as JSON"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "append"
          ]
        }
      }
    },
    {
      "displayName": "Data",
      "name": "data",
      "type": "json",
      "default": "",
      "description": "Raw values for the specified range as array of string arrays in JSON format",
      "required": true,
      "displayOptions": {
        "show": {
          "dataMode": [
            "raw"
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "append"
          ]
        }
      }
    },
    {
      "displayName": "Values to Send",
      "name": "fieldsUi",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Field",
          "name": "values",
          "values": [
            {
              "displayName": "Column",
              "name": "column",
              "type": "options",
              "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
              "typeOptions": {
                "loadOptionsDependsOn": [
                  "worksheet.value"
                ],
                "loadOptionsMethod": "getWorksheetColumnRow"
              },
              "default": ""
            },
            {
              "displayName": "Value",
              "name": "fieldValue",
              "type": "string",
              "default": ""
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "dataMode": [
            "define"
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "append"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "RAW Data",
          "name": "rawData",
          "type": "boolean",
          "default": 0,
          "description": "Whether the data should be returned RAW instead of parsed into keys according to their header"
        },
        {
          "displayName": "Data Property",
          "name": "dataProperty",
          "type": "string",
          "default": "data",
          "required": true,
          "displayOptions": {
            "show": {
              "rawData": [
                true
              ]
            }
          },
          "description": "The name of the property into which to write the RAW data"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "append"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "clear"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "clear"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Apply To",
      "name": "applyTo",
      "type": "options",
      "default": "All",
      "options": [
        {
          "name": "All",
          "value": "All",
          "description": "Clear data in cells and remove all formatting"
        },
        {
          "name": "Formats",
          "value": "Formats",
          "description": "Clear formatting(e.g. font size, color) of cells"
        },
        {
          "name": "Contents",
          "value": "Contents",
          "description": "Clear data contained in cells"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "clear"
          ]
        }
      }
    },
    {
      "displayName": "Select a Range",
      "name": "useRange",
      "type": "boolean",
      "default": false,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "clear"
          ]
        }
      }
    },
    {
      "displayName": "Range",
      "name": "range",
      "type": "string",
      "default": "",
      "description": "The sheet range that would be cleared, specified using a A1-style notation",
      "displayOptions": {
        "show": {
          "useRange": [
            true
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "clear"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "deleteWorksheet"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "deleteWorksheet"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "getAll"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 100,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "returnAll": [
            false
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "getAll"
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 500
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Fields",
          "name": "fields",
          "type": "string",
          "default": "",
          "description": "A comma-separated list of the fields to include in the response"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "readRows"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "readRows"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Select a Range",
      "name": "useRange",
      "type": "boolean",
      "default": false,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "readRows"
          ]
        }
      }
    },
    {
      "displayName": "Range",
      "name": "range",
      "type": "string",
      "default": "",
      "description": "The sheet range to read the data from specified using a A1-style notation, has to be specific e.g A1:B5, generic ranges like A:B are not supported",
      "displayOptions": {
        "show": {
          "useRange": [
            true
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "readRows"
          ]
        }
      }
    },
    {
      "displayName": "Header Row",
      "name": "keyRow",
      "type": "number",
      "default": 0,
      "description": "Relative to selected 'Range', first row index is 0",
      "displayOptions": {
        "show": {
          "useRange": [
            true
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "readRows"
          ]
        }
      },
      "typeOptions": {
        "minValue": 0
      }
    },
    {
      "displayName": "First Data Row",
      "name": "dataStartRow",
      "type": "number",
      "default": 1,
      "description": "Relative to selected 'Range', first row index is 0",
      "displayOptions": {
        "show": {
          "useRange": [
            true
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "readRows"
          ]
        }
      },
      "typeOptions": {
        "minValue": 0
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "RAW Data",
          "name": "rawData",
          "type": "boolean",
          "default": 0,
          "description": "Whether the data should be returned RAW instead of parsed into keys according to their header"
        },
        {
          "displayName": "Data Property",
          "name": "dataProperty",
          "type": "string",
          "default": "data",
          "required": true,
          "displayOptions": {
            "show": {
              "rawData": [
                true
              ]
            }
          },
          "description": "The name of the property into which to write the RAW data"
        },
        {
          "displayName": "Fields",
          "name": "fields",
          "type": "string",
          "default": "",
          "description": "Fields the response will containt. Multiple can be added separated by ,.",
          "displayOptions": {
            "show": {
              "rawData": [
                true
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "readRows"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Select a Range",
      "name": "useRange",
      "type": "boolean",
      "default": false,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Range",
      "name": "range",
      "type": "string",
      "default": "",
      "description": "The sheet range to read the data from specified using a A1-style notation, has to be specific e.g A1:B5, generic ranges like A:B are not supported. Leave blank to use whole used range in the sheet.",
      "displayOptions": {
        "show": {
          "dataMode": [
            "autoMap",
            "define"
          ],
          "useRange": [
            true
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Range",
      "name": "range",
      "type": "string",
      "default": "",
      "description": "The sheet range to read the data from specified using a A1-style notation",
      "displayOptions": {
        "show": {
          "dataMode": [
            "raw"
          ],
          "useRange": [
            true
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Data Mode",
      "name": "dataMode",
      "type": "options",
      "default": "define",
      "options": [
        {
          "name": "Auto-Map Input Data to Columns",
          "value": "autoMap",
          "description": "Use when node input properties match destination column names"
        },
        {
          "name": "Map Each Column Below",
          "value": "define",
          "description": "Set the value for each destination column"
        },
        {
          "name": "Raw",
          "value": "raw",
          "description": "Send raw data as JSON, the whole selected range would be updated with the new values"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Data",
      "name": "data",
      "type": "json",
      "default": "",
      "description": "Raw values for the specified range as array of string arrays in JSON format. Should match the specified range: one array item for each row.",
      "required": true,
      "displayOptions": {
        "show": {
          "dataMode": [
            "raw"
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Column to match on",
      "name": "columnToMatchOn",
      "type": "options",
      "default": "",
      "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
      "displayOptions": {
        "show": {
          "dataMode": [
            "autoMap",
            "define"
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsDependsOn": [
          "worksheet.value",
          "workbook.value",
          "range"
        ],
        "loadOptionsMethod": "getWorksheetColumnRow"
      }
    },
    {
      "displayName": "Value of Column to Match On",
      "name": "valueToMatchOn",
      "type": "string",
      "default": "",
      "displayOptions": {
        "show": {
          "dataMode": [
            "define"
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Values to Send",
      "name": "fieldsUi",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Field",
          "name": "values",
          "values": [
            {
              "displayName": "Column",
              "name": "column",
              "type": "options",
              "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
              "typeOptions": {
                "loadOptionsDependsOn": [
                  "columnToMatchOn",
                  "range"
                ],
                "loadOptionsMethod": "getWorksheetColumnRowSkipColumnToMatchOn"
              },
              "default": ""
            },
            {
              "displayName": "Value",
              "name": "fieldValue",
              "type": "string",
              "default": ""
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "dataMode": [
            "define"
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "RAW Data",
          "name": "rawData",
          "type": "boolean",
          "default": 0,
          "description": "Whether the data should be returned RAW instead of parsed into keys according to their header"
        },
        {
          "displayName": "Data Property",
          "name": "dataProperty",
          "type": "string",
          "default": "data",
          "required": true,
          "displayOptions": {
            "show": {
              "rawData": [
                true
              ]
            }
          },
          "description": "The name of the property into which to write the RAW data"
        },
        {
          "displayName": "Fields",
          "name": "fields",
          "type": "string",
          "default": "",
          "description": "Fields the response will containt. Multiple can be added separated by ,.",
          "displayOptions": {
            "show": {
              "rawData": [
                true
              ]
            }
          }
        },
        {
          "displayName": "Update All Matches",
          "name": "updateAll",
          "type": "boolean",
          "default": false,
          "description": "Whether to update all matching rows or just the first match",
          "displayOptions": {
            "hide": {
              "/dataMode": [
                "raw"
              ]
            }
          }
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Workbook",
      "name": "workbook",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "upsert"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "searchWorkbooks",
            "searchable": true
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "[a-zA-Z0-9]{2,}",
                "errorMessage": "Not a valid Workbook ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Sheet",
      "name": "worksheet",
      "type": "resourceLocator",
      "default": {
        "mode": "list",
        "value": ""
      },
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "upsert"
          ]
        }
      },
      "modes": [
        {
          "displayName": "From List",
          "name": "list",
          "type": "list",
          "typeOptions": {
            "searchListMethod": "getWorksheetsList"
          }
        },
        {
          "displayName": "By ID",
          "name": "id",
          "type": "string",
          "validation": [
            {
              "type": "regex",
              "properties": {
                "regex": "{[a-zA-Z0-9\\-_]{2,}}",
                "errorMessage": "Not a valid Sheet ID"
              }
            }
          ]
        }
      ]
    },
    {
      "displayName": "Select a Range",
      "name": "useRange",
      "type": "boolean",
      "default": false,
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "upsert"
          ]
        }
      }
    },
    {
      "displayName": "Range",
      "name": "range",
      "type": "string",
      "default": "",
      "description": "The sheet range to read the data from specified using a A1-style notation, has to be specific e.g A1:B5, generic ranges like A:B are not supported. Leave blank to use whole used range in the sheet.",
      "displayOptions": {
        "show": {
          "dataMode": [
            "autoMap",
            "define"
          ],
          "useRange": [
            true
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "upsert"
          ]
        }
      }
    },
    {
      "displayName": "Data Mode",
      "name": "dataMode",
      "type": "options",
      "default": "define",
      "options": [
        {
          "name": "Auto-Map Input Data to Columns",
          "value": "autoMap",
          "description": "Use when node input properties match destination column names"
        },
        {
          "name": "Map Each Column Below",
          "value": "define",
          "description": "Set the value for each destination column"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "upsert"
          ]
        }
      }
    },
    {
      "displayName": "Column to match on",
      "name": "columnToMatchOn",
      "type": "options",
      "default": "",
      "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
      "displayOptions": {
        "show": {
          "dataMode": [
            "autoMap",
            "define"
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "upsert"
          ]
        }
      },
      "typeOptions": {
        "loadOptionsDependsOn": [
          "worksheet.value",
          "workbook.value",
          "range"
        ],
        "loadOptionsMethod": "getWorksheetColumnRow"
      }
    },
    {
      "displayName": "Value of Column to Match On",
      "name": "valueToMatchOn",
      "type": "string",
      "default": "",
      "displayOptions": {
        "show": {
          "dataMode": [
            "define"
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "upsert"
          ]
        }
      }
    },
    {
      "displayName": "Values to Send",
      "name": "fieldsUi",
      "type": "fixedCollection",
      "default": {},
      "options": [
        {
          "displayName": "Field",
          "name": "values",
          "values": [
            {
              "displayName": "Column",
              "name": "column",
              "type": "options",
              "description": "Choose from the list, or specify an ID using an <a href=\"https://docs.n8n.io/code/expressions/\">expression</a>",
              "typeOptions": {
                "loadOptionsDependsOn": [
                  "columnToMatchOn",
                  "range"
                ],
                "loadOptionsMethod": "getWorksheetColumnRowSkipColumnToMatchOn"
              },
              "default": ""
            },
            {
              "displayName": "Value",
              "name": "fieldValue",
              "type": "string",
              "default": ""
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "dataMode": [
            "define"
          ],
          "resource": [
            "worksheet"
          ],
          "operation": [
            "upsert"
          ]
        }
      },
      "typeOptions": {
        "multipleValues": true
      }
    },
    {
      "displayName": "Options",
      "name": "options",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Append After Selected Range",
          "name": "appendAfterSelectedRange",
          "type": "boolean",
          "default": false,
          "description": "Whether to append data after the selected range or used range",
          "displayOptions": {
            "show": {
              "/dataMode": [
                "autoMap",
                "define"
              ],
              "/useRange": [
                true
              ]
            }
          }
        },
        {
          "displayName": "RAW Data",
          "name": "rawData",
          "type": "boolean",
          "default": 0,
          "description": "Whether the data should be returned RAW instead of parsed into keys according to their header"
        },
        {
          "displayName": "Data Property",
          "name": "dataProperty",
          "type": "string",
          "default": "data",
          "required": true,
          "displayOptions": {
            "show": {
              "rawData": [
                true
              ]
            }
          },
          "description": "The name of the property into which to write the RAW data"
        },
        {
          "displayName": "Update All Matches",
          "name": "updateAll",
          "type": "boolean",
          "default": false,
          "description": "Whether to update all matching rows or just the first match"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "worksheet"
          ],
          "operation": [
            "upsert"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "append",
      "name": "Append",
      "description": "Add rows to the end of the table"
    },
    {
      "operation": "convertToRange",
      "name": "Convert to Range",
      "description": "Convert a table to a range"
    },
    {
      "operation": "addTable",
      "name": "Create",
      "description": "Add a table based on range"
    },
    {
      "operation": "deleteTable",
      "name": "Delete",
      "description": "Delete a table"
    },
    {
      "operation": "getColumns",
      "name": "Get Columns",
      "description": "Retrieve a list of table columns"
    },
    {
      "operation": "getRows",
      "name": "Get Rows",
      "description": "Retrieve a list of table rows"
    },
    {
      "operation": "lookup",
      "name": "Lookup",
      "description": "Look for rows that match a given value in a column"
    }
  ]


node_type: nodes-base.microsoftGraphSecurityTool
package_name: n8n-nodes-base
display_name: Microsoft Graph Security Tool
description: Consume the Microsoft Graph Security API (AI Tool variant for use with AI Agents)
category: transform
development_style: programmatic
version: 1
credentials_required:
  [
  {
  "name": "microsoftGraphSecurityOAuth2Api",
  "required": true
  }
  ]

outputs:
  [
  {
  "type": "ai_tool",
  "displayName": "Tool"
  }
  ]

output_names:
  [
  "Tool"
  ]

updated_at: 2026-03-18 15:15:48
tool_variant_of: nodes-base.microsoftGraphSecurity
documentation:
  ---
  #https://www.notion.so/n8n/Frontmatter-432c2b8dff1f43d4b1c8d20075510fe4
  title: Microsoft Graph Security node documentation
  description: Learn how to use the Microsoft Graph Security node in n8n. Follow technical documentation to integrate Microsoft Graph Security node into your workflows.
  contentType: [integration, reference]
  ---

  # Microsoft Graph Security node

  Use the Microsoft Graph Security node to automate work in Microsoft Graph Security, and integrate Microsoft Graph Security with other applications. n8n has built-in support for a wide range of Microsoft Graph Security features, including getting, and updating scores, and profiles. 

  On this page, you'll find a list of operations the Microsoft Graph Security node supports and links to more resources.

  /// note | Credentials
  Refer to [Microsoft credentials](/integrations/builtin/credentials/microsoft.md) for guidance on setting up authentication.
  ///

  ## Operations

  * Secure Score
      * Get
      * Get All
  * Secure Score Control Profile
      * Get
      * Get All
      * Update

  ## Templates and examples

  <!-- see https://www.notion.so/n8n/Pull-in-templates-for-the-integrations-pages-37c716837b804d30a33b47475f6e3780 -->
  [[ templatesWidget(page.title, 'microsoft-graph-security') ]]

  --8<-- "_snippets/integrations/builtin/app-nodes/operation-not-supported.md"

properties_schema:
  [
    {
      "displayName": "Tool Description",
      "name": "toolDescription",
      "type": "string",
      "default": "",
      "required": false,
      "description": "Description for the AI to understand what this tool does and when to use it",
      "typeOptions": {
        "rows": 3
      },
      "placeholder": "e.g., Use this tool to interact with Microsoft Graph Security"
    },
    {
      "displayName": "Resource",
      "name": "resource",
      "type": "options",
      "default": "secureScore",
      "options": [
        {
          "name": "Secure Score",
          "value": "secureScore"
        },
        {
          "name": "Secure Score Control Profile",
          "value": "secureScoreControlProfile"
        }
      ],
      "noDataExpression": true
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "get",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "action": "Get a secure score"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "action": "Get many secure scores"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "secureScore"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Secure Score ID",
      "name": "secureScoreId",
      "type": "string",
      "default": "",
      "description": "ID of the secure score to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "secureScore"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "secureScore"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "secureScore"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 1000
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Filter Query Parameter",
          "name": "filter",
          "description": "<a href=\"https://docs.microsoft.com/en-us/graph/query-parameters#filter-parameter\">Query parameter</a> to filter results by",
          "type": "string",
          "default": "",
          "placeholder": "currentScore eq 13"
        },
        {
          "displayName": "Include Control Scores",
          "name": "includeControlScores",
          "type": "boolean",
          "default": false
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "secureScore"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Operation",
      "name": "operation",
      "type": "options",
      "default": "get",
      "options": [
        {
          "name": "Get",
          "value": "get",
          "action": "Get a secure score control profile"
        },
        {
          "name": "Get Many",
          "value": "getAll",
          "action": "Get many secure score control profiles"
        },
        {
          "name": "Update",
          "value": "update",
          "action": "Update a secure score control profile"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "secureScoreControlProfile"
          ]
        }
      },
      "noDataExpression": true
    },
    {
      "displayName": "Secure Score Control Profile ID",
      "name": "secureScoreControlProfileId",
      "type": "string",
      "default": "",
      "description": "ID of the secure score control profile to retrieve",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "secureScoreControlProfile"
          ],
          "operation": [
            "get"
          ]
        }
      }
    },
    {
      "displayName": "Return All",
      "name": "returnAll",
      "type": "boolean",
      "default": false,
      "description": "Whether to return all results or only up to a given limit",
      "displayOptions": {
        "show": {
          "resource": [
            "secureScoreControlProfile"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Limit",
      "name": "limit",
      "type": "number",
      "default": 50,
      "description": "Max number of results to return",
      "displayOptions": {
        "show": {
          "resource": [
            "secureScoreControlProfile"
          ],
          "operation": [
            "getAll"
          ],
          "returnAll": [
            false
          ]
        }
      },
      "typeOptions": {
        "minValue": 1,
        "maxValue": 1000
      }
    },
    {
      "displayName": "Filters",
      "name": "filters",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "Filter Query Parameter",
          "name": "filter",
          "description": "<a href=\"https://docs.microsoft.com/en-us/graph/query-parameters#filter-parameter\">Query parameter</a> to filter results by",
          "type": "string",
          "default": "",
          "placeholder": "startsWith(id, 'AATP')"
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "secureScoreControlProfile"
          ],
          "operation": [
            "getAll"
          ]
        }
      }
    },
    {
      "displayName": "Secure Score Control Profile ID",
      "name": "secureScoreControlProfileId",
      "type": "string",
      "default": "",
      "description": "ID of the secure score control profile to update",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "secureScoreControlProfile"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Provider",
      "name": "provider",
      "type": "string",
      "default": "",
      "description": "Name of the provider of the security product or service",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "secureScoreControlProfile"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Vendor",
      "name": "vendor",
      "type": "string",
      "default": "",
      "description": "Name of the vendor of the security product or service",
      "required": true,
      "displayOptions": {
        "show": {
          "resource": [
            "secureScoreControlProfile"
          ],
          "operation": [
            "update"
          ]
        }
      }
    },
    {
      "displayName": "Update Fields",
      "name": "updateFields",
      "type": "collection",
      "default": {},
      "options": [
        {
          "displayName": "State",
          "name": "state",
          "type": "options",
          "default": "Default",
          "description": "Analyst driven setting on the control",
          "options": [
            {
              "name": "Default",
              "value": "Default"
            },
            {
              "name": "Ignored",
              "value": "Ignored"
            },
            {
              "name": "Third Party",
              "value": "ThirdParty"
            }
          ]
        }
      ],
      "displayOptions": {
        "show": {
          "resource": [
            "secureScoreControlProfile"
          ],
          "operation": [
            "update"
          ]
        }
      }
    }
  ]

operations:
  [
    {
      "operation": "get",
      "name": "Get"
    },
    {
      "operation": "getAll",
      "name": "Get Many"
    }
  ]


